branchrust_reboot/main/remove_treeentity_updatecancel
10 Commits over 0 Days - ∞cph!
Bugfix: TreeToolRenderer can render on editor start
- Replaced sceneOpened with activeSceneChangedInEditMode, as former didn't react to boot process changing scenes
Tests: closed editor and reopened, trees started to render
Merge: from main
Tests: none (trivial merge)
Update: TreeToolRenderer tracks everything via a dictionary instead of a list
- Also track trees that are roots of scene(helps with domain reloads)
This'll avoid stutters in large monuments with a lot of pre-placed trees.
Tests: in swamp_a spawned a tree, triggered domain reload, and was able to see prefab changes afterwards
Bugfix: Don't allow TreeToolRenderer to react to changes of existing trees in wrong scenes
Tests: opened craggy, add a tree and tried to change prefab - nothing happened.
Update: TreeToolRenderer can visualize newly created trees
- Also added tracking for the active scene, to avoid letting TreeToolRenderer running on the wrong/unsupported scene
Tests: added a new tree to swamp_a. Switchet to Craggy, tried the same - didn't get visualized. Went back to swamp_a and added a tree - all good.
Update: TreeToolRenderer can track modifications to existing trees
- replaces previously half-working OnToolGUI
Tests: on swamp_a, modified tree's prefab - saw visuals change
Clean: remove unnecessary event callback for TreeToolRenderer
Tests: reopened swamp_a
Update: TreeToolRenderer only runs on prefab scenes
Tests: loaded up swamp_a - trees were visible.
Update: move TreeEntityEditor closer to Resource Editor folder
It was in a generic editor folder previously, and we have a specialized folder now
Tests: loaded up swamp_a monument and checked gizmos still draw
Optim: Replace TreeEntity.Update with a an editor-only renderer
- Handled by an EditorTool(work in progress, doesn't track all changes to the scene)
This wins back 16ms on a 6k world in editor.
Tests: Loaded swamp_a scene from a cold start, was able to see trees. Started 6k procgen map, fps was better.