I would (and most likely working with engine) welcome “Freeze” functionality to be added to World Outliner same way as it is with Eye(visibility) icon right now. Maybe next to it as next column with snowflake icon (standard icon for this stuff). Going through right click context menu just to lock actor movement is VERY ineffective and still does not prevent from accidentally selecting something I do not need most of the time (this is waste of clicks = waste of time = more stress).
This is one of basic thing most 3D packages have. I see no point in managing complex scenes with hiding and unhiding as sometime you want just see object to compose rest of scene but you want to prevent from selecting it in dense scene with overlapping geometry.
If you would search for inspiration just look at 3DS Outliner as an example… It is simple and effective.
If you would like to implement it it would be awesome if we could chose global material/shader override for frozen objects. (EG use of some really cheap shader or even engine default one would do.) That way one could ease up on editor when constructing scenes to let it render with cheap shader and do not switch render states to benefit. Other option would be just draw some visually non intrusive overlay texture in screen space if you decide to keep original shader active. In 3DS when frozen with default shader override active even heavy scenes get considerable rendering boost (more FPS in viewport)!
As a bonus I would very much welcome not just whole freeze but one extra row for freezing Transform only.
I think it should be trivial and non time consuming to implement as there are already hooks in AActor class to inject EDITOR_ONLY_DATA to objects to handle this functionality per object or just manage it directly in World Outliner class…
If you think it would clutter workspace, well it won’t as working with 3D/2D editors is just used to this type of things to be present. If you want to dig to this deep then let user decide which columns should be displayed (Visibility, Freeze, Lock Position, Object Name, Type, Scene, …)
What I see as benefit of having this build to engine ASAP:
- Better, more practical and content oriented Workflow
- Less Error prone scene and object handling
- Increased editor performance (see my comment with temporary shader override)
- Less clicks = always win!
I’m open for discussion as I see it as elemental thing to effective work with engine.
Thank you very much Epic Guys