While trying to process all slices and levels in Automated Testing, a few bugs came up that needed to be addressed:
- [LYN-3832] TransformComponent had a field removed without updating the version number and converter, which caused a lot of excessive warnings
- SliceComponent would crash in debug builds on instantiation failures due to a null dereference that was guarded against in most but not all places
- SliceConverter now detects when nested slices exist and gracefully warns about it.
- InstanceUpdateExecutor / TemplateInstanceMapper will now immediately remove instances that are unregistered, so that any in the queue don't get processed on a subsequent tick. This was causing crashes when the instance was destroyed before the processing occurred. It also has a side benefit of preventing the same instance from executing multiple times.
- Minor logic bugfix to the pack close warning, the boolean check was flipped.
Also added an early-out on SetTemplateId, since this was causing some unnecessary instance queue entries.
* add find entity in viewport functionality to new camera
* fix AZ_CVAR usage
* updates following review feedback
- updated comment styles from /// to //!
- retrieve fov of camera (add test for fov access)
* update namespace naming, fix AZ_CVAR usage
* update missed namespace and use AZ::Transform::CreateLookAt
* add missing include
* move EditorViewportSettings to EditorLib
* update DLL import/export API and rename namespace usage
* improve selection in the viewport
* remove debug code
* updates following review feedback
- update API comments from /// to //! from
- add [[nodiscard]] attribute to member function
- move constructor implementations to .cpp files
* use lambda instead of ternary operator
* fix unit test failure caused by typo
Lots of unrelated removals, I basically tried to remove everything exposed via gEnv that isn't used anymore, and following the threads found a few other things to remove also.
Several UI property handlers were incorrectly using the autoDelete feature by calling UnregisterPropertyType and deleting the pointer themselves, which caused double-delete crashes on application shutdown. PropertyManagerComponent now gracefully handles that condition but also explicitly asserts explaining how the code should be changed, and the "known offenders" have been fixed up to use autoDelete correctly.
* use new ViewportContext interface to set camera transform on load
* WIP fixes for camera viewport handler callbacks
* disable synchonization with old camera when new camera system is enabled
* further updates to camera-input
* ensure event is signalled when camera transform is set
* updates to ModernViewportCameraController
* fix for right click menu appearing with camera
* updates following review feedback
* convert std:: usage to AZStd::
Moves transform notification logic from CComponentEntityObject::InvalidateTM (which will eventually go away) to AzToolsFramework::TransformComponent::OnTransformChanged.
We also specifically make sure PropertyEditorEntityChangeNotifications::OnEntityComponentPropertyChanged fires, which is used by Track View to detect camera position changes.
* add overload to ActionManager to support capturing an AZStd::function
* move snapping settings to new settings registry
* remove unneeded reference in ViewportSettings
* move viewport setting function implementations to .cpp file
* add more sensible default values for snapping
* fix variable name for angle snapping
* remove const from function prototype value parameters
* add import/export api for free functions
* change from std::bind to a lambda
* remove redundant const for constexpr string_view
* add AZStd alias for std::abs