3,102 Commits over 915 Days - 0.14cph!
Cherrypick
100111 (BiomeVisuals2 RendererLOD fix)
Fix RendererLOD not having it's settings copied over by BiomeVisuals2
Merge from main -> biome_visuals_2
Merge from fix_barricade_subway_entrance -> main
Fixed "not in terrain" error phrase accidently defaulting to "Can't Place On Monument"
- only affected phrases when generated, didn't affect the ingame messages (yet)
Move a few more error phrases to the ConstructionErrors class
Fix subway entrance prefabs not having `PreventBuildingMonumentTag` as they aren't apart of the S2P system that all other monuments are
- should fix them not being placeable outside of subway entrances
Merge from main -> fix_barricade_subway_entrance
merge from editor_count_components -> main
Added right click menu option `Stats/Component Count`
- print the number of each type of component of the selected GameObject
- if multiple objects are selected, prints the amount per object
merge from simulate_compile_errors -> main
Added `Switch/Test Compile Errors` menu option
- will run parallel dotnet build in background in CLIENT and SERVER mode even if you are in CLIENT + SERVER
- will output whether the build succeeded or failed (and include the errors)
- only runs on windows atm
Merge from runtime_profiling_update_markers -> main
Simplify StartOfFrameHook as the first of FixedUpdate() or Update()
Rename "CPU" in perf 6 -> "SCRIPTS"
Estimate time taken to measure Physics.Update()
- time taken between `FixedUpdate()` and `yield WaitForFixedUpdate`
- include physics update time in server runtime profiler
- add to perf 8 alongside FixedUpdate ms
Merge from runtime_profiling_update_markers -> main
Add script execution time for Update(), LateUpdate() and FixedUpdate()
merge from runtime_profiling_entity_csv -> main
Switch from multiple bools for tracking invokes to a single int
0 = off
1 = total execution of invokes per frame
2 = execution time per type of invoke per frame
Reimplement detailed entity profiling that was lost instead of stashed
Change to single int to describe entity profiling mode
0 = off
1 = count spawned per frame
2 = count per type of entity spawned per frame
3 = count per type of entity across server every 5 minutes
Reset all profiling measurements on the first frame profiling is enabled
- fixes some stats counting incredibly high
Merge from qol_building_preview_lerp_snapping -> main
Add `int guideVersion` that is incremented every time a building guide snaps to a socket or rotates
- lets us snap the lerping to the next position instead of lerping strangely
Merge from analytics_junkyard -> main
Add analytics when cars are shredded in junkyard
Merge from fix_barricade_subway_entrance -> main
Fix checking `GameObject.tag == "Value"` instead of "GameObject.CompareTag( "Value" )`
Add code to handle "BlockBarricadePlacment" tag
Add "ConstructionErrors" class to store Translate phrases for construction errors
Fix barricades sometimes showing "Not In Terrain" instead of "Can't Place On Monument"
Add `BlockBarricadePlacement` tag to subway entrance as it's not considered a monument
Merge from fix_batching_rainbow_logs -> main
Missed removing the old early exit
Fix logs inheriting the color of shipping container after recent fix for white barrels
Scene to prefab everything
Cherrypick all the code from the /prefabs subbranch
merge from biome_visuals_2/prefabs -> aux1
#if CLIENT for compile errors
Attempt #2 at converting prefabs
Convert LODComponent disabled and only enable after we copy over the render settings after spawn
Update converter to only convert prefabs that are nested prefabs
Convert moss prefabs into nested prefabs so they work with the conversion
Update biome_visuals_2/prefabs
Switch bulk converter to use the PrefabUtility api instead of AssetDatabase
Undo first prefab conversion
Commit upgraded prefabs onto subbranch so code can be merged seperate from prefabs
Try catch the actual conversion, throw an error and continue converting the rest of prefabs incase of error
Print error if there are additional components that would be stripped (example: Imposter)
Add Tools/Optimize/Convert BiomeVisuals -> BiomeVisuals2 to bulk convert all foilage
Add `Tools/Import/Begin & End` to disable auto imports when testing converting prefabs
Add "CantBeConverted" override to BiomeVisuals to tag prefabs that can't be converted (for whatever reason)
Add RendererBatch if all biome variants have it present
Add new BiomeVisuals2 component
- swaps meshes & materials of renderers instead of destroying all gameobjects not in the biome
Added tool to convert from BiomeVisuals -> BiomeVisuals2
▇▉▇▆▊ ▌▍▄▌ █▅▍_▉▌▅▆_▆▉▍█▋▍▊█▅_▌█▆▅▊█▆ -> ▌▊▌▍
▌▆▊▍▅ ▍▉▉▋▅▇▅ ▌▇█▊▌▍▍▅ ▉▊ █▄▄▅ ▊▊▌▌▄▄█▉▉ ▌█ ▉▇▆▇▍▊▄ ▄▊ ▉▆▄▊ ▋▉▅▄▆▆▌ ▉▍▄▇▌▊▌ ▄▇