Package Overview
Building Tools is in active development, completely free, and open source. I’m tracking features and bugs in a GitHub project KanBan, so you can see exactly what’s in the pipeline by checking out the Building Tools Project Page.
Core Functions
The latest version of Building Tools provides these functions:
- Initialise Building
- Adds a new
Buildingcomponent, providing core component functionality to your building. - Shifts the pivot of the building so that it is easier to place on an uneven surface, such as a terrain.
- Adds a new
- Configure Meshes
- Applies configurable
MeshRendererpreset properties to all Exterior, Interior and Props meshes.- For example, presets can be created for “Lightmapped Meshes” with properties set for consistent lighting to be applied to all “Outdoor Props”
- Applies configurable
- Configure Props
- Adds any missing
Collidersto props, such as barrels, crates, carpets, chairs, tables, etc. - Aligns any outdoor props to the terrain, such as barrels, stables, and fences.
- Adds any missing
- Configure Doors
- Adds a
Door Controllercomponent and configuresDoorcomponents on all door mesh games objects, giving you lots of control over the state of doors within a building. - Adds
Door Triggercomponents that open and close doors when a player enters the trigger, plays audio effects, and providesUnity Eventsto hook in your own functionality.
- Adds a
- Configure Lighting
- Adds a
BuildingLightManagergame object to your active scene and adds aBuildingLightControllercomponent and configuresBuildingLightcomponents on all lights within your building Game Object. This gives you loads of control over light states, with specific public methods for turning on and off candles, fires, and outdoor lights. - Preconfigure light properties, allowing you to apply consistent preset light properties (think intensity, range, temperature etc), across all similar light types.
- Replaces unsupported
LensFlarecomponents withSRPLensFlarecomponents. (URP and HDRP only) - Optionally adds a
OnDemandShadowMapUpdatecomponent, allowing you to fine tune shadow updates on individual lights, offering significant performance gains. (HDRP only) - Samples include a very simple
TimeOfDaycomponent, demonstrating how lights can be turned on and off as time progresses.
- Adds a
- Configure Volumes
- Adds a lighting
Volumewith an “interior volume profile”, allowing you to fine tune lighting within the bounds of your building. (URP and HDRP only) - Adds an
InteriorAudioFiltercomponent that allows you to “muffle” ambient / outdoor audio when the player is in your building. - Components provide
UnityEventsthat you can hook into to trigger your own functionality when a player or character enters and leaves the building.
- Adds a lighting
- Mesh Optimisation
- Combines exterior, interior and prop meshes into merge meshes within your building. Greatly reduces draw calls and shadow casters and can offer huge performance gains.
Samples
The package comes with options samples, with preconfigured settings and sample assets to get you started. Included are some presets for working with 3D Forge Village Interiors and Exteriors assets, which is my primary use case when developing these tools.