Trailer
You can test it / play it here https://svstudio.itch.io/sims-building-system-unity-template
Different Placement Modes
- Box Selection for Floor Placement
- Path Selection For wall placement
- Free Furniture Object placement
- Near Wall placement for ex. Sink / Toilet objects
Undo Functionality
Placement, Removing and Movement functionalities all can be Reverted using a Command Pattern based Undo system
Commented Code
Most methods and classes has a short description explaining what they do.
You will also have access to videos explaining the project and how it all works.
House Building System In Unity
Have you ever wandered how to create a house building system like in many sim management games?
Here you can grab a House Building System full project created in Unity 2022.2 as a ZIP file and as a .unitypackage (should work from Unity 2021.2 up due to using C#9 features)
It is a full project that includes some CC0 models (https://kenney.nl/), SFX using CC0 sounds (https://freesound.org/) and juicy VFX implemented using DoTween. You also gets a decently coded code base in C# that you can use in your own projects and quite easily extend to add more features to the placement system.
Features:
- Different placement strategies: Box Selection, Path selection, Inside Walls (doors and windows), Near wall requirement and a simple free placement with rotation
- Removing items from the map
- Undo functionality for every operation
- Simple UI with some juicy SFX and VFX
- Data stored in a single object (easy to add a save system)
- Scriptable Objects used to easily add new furniture objects to the project.
- Decent code architecture using State patter, Strategy pattern and Command Pattern
- Custom shaders used to make the Grid visualization more reusable
-
Decently optimized in terms of C# code
I know that using someone else's project can be hard so I also am providing a short video course that should give you an overview of how the project works.
License:
You CAN use it in any of your own projects but you CAN'T share, resell the code from this project.
A detailed license document can be found inside the project.
Update 2023.03.21
Fixed a bug that did not allowed to scale the GridPlane without having to manually tweak the Grid Component setup. Now GridPlance can be scaled to increase the placement area for our system.
Update 2023.03.16
Almost all the Video documentation is now available.
A new version of the project has been uploaded with the following bug fixes:
- Movement State is now inaccessible when we are deleting objects
- Undo command for the Removing State correctly places Edge objects back on the map
- Duplication of code that I mention in the video documentation were mostly removed
-
PlacementData.cs is renamed to be called the same as the class PlacementGridData.cs
What you are getting:
- Project Overview
- Input
- Grid System
- Update - Extending Placement Area Fix
- Placement Manager Overview
- ItemData adn Placement Type enum
- Storing Data in Placement Grid Data
- Building State Class
- Selection Strategy Overview
- Box Selection - Floor Placement Strategy
- Placing Object on The Map
- Undo System
- Removing State
- Preview System
- Movement System
- Feedback System SFX / VFX
- Camera Movement