* add customization points for begin/end of camera input to all cursor customization
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* remove cursor experiments, use cursor bus
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* run clang-format
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* add additional unit tests for new camera behaviors
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* update test name to use snake_case to increase readability
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* updates to better support showing/hiding viewport ui when grid snapping is enabled/disabled
* connect up editor settings callbacks
* minor polish changes
* api rename
* updates following review feedback
- Use AZ::IConsole instead of deprecated Cry IConsole.
- Create fullscreen preview widget on the same screen where the main window is found, instead of on the 'primary' screen
- Remove "ed_previewGameInFullscreen", which had the effect of always doing a full screen preview. If this functionality is desired, it should be re-added as a registry key instead of a cvar
- Better variable names
- Close a parenthesis in a comment
- Check equality against nullptr instead of 0
- Add comment to document method of clearing a QLayout
- Format some things
- Const correctness
- Remove a TODO in a comment
- Attempt at removing concatenation of string literal AZ_FUNCTION_SIGNATURE, which might not be a literal on every compiler/platform
* ensure the new camera respects changing ui values and move camera settings to the settings registry
* factor out creation of modular camera controller
* small updates before posting PR
* updates following review feedback
* updates following review feedback
* add support for 'GoTo Position' to work with the new camera enabled
* small updates to move away from more legacy calls
* minor formatting change
* ensure values are converted from degrees to radians
* revert change to use Enumerate viewport call
* remove formatting changes from SandboxIntegration
* Fix some FOV calculation viewport issues:
-Avoid calculating FOV if we've got an invalid viewport
-Don't override game mode FOV, let the active camera components manage it instead
* Fix viewport font positioning
This updates code in a few places to respect an API change/fix made to AtomFont - also switched the default value of m_virtual800x600ScreenSize to false as it's really behavior you want to opt into
* Don't activate CameraComponentController when in the Editor / not in game mode
* wip support for mesh intersection with intersector bus
* WIP camera mesh intersection orbit logic
* remove unneeded template argument
* add bus connect/disconnect
* fix intersection logic
* small updates, additional comments, some tidy-up
* update formatting options slightly
* use aznumeric_cast
* temp workaround for negative distances with RayIntersection
-This ensures OnBootstrapSceneReady still fires even if the bootstrap system component doesn't create a default scene
-This also disables default scene creation for non-game projects by default to ease tools development
Tested with the Editor, AtomSampleViewer, the Material Editor, and the AtomTest launcher
* 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
Remove:
- CryCommon/CryExtension/*
- CryCommon/Serialization/*
- Sandbox/Plugins/EditorCommon/QPropertyTree/*
- All related CryCommon interfaces
- All CrySystem implementations
- Various related Editor classes
* 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::
* 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
Delete:
- I3DEngine
- Missions
- Time of day
- GameEffectsSystem Gem
- ImageProcessing Gem
- SVOGI Gem
- Various other things that don't do anything now that the legacy renderer has been removed.
Updated AzFramework::Scene to allow it to serve as the one-stop location for localized singletons. Localized singletons in this case are instance that can only occur once in an environment but multiple times within an application. As an example, this allows settings up a single camera per viewport for instance.
Highlights of changes:
Replaced the original ebuses with interfaces and events for easy of use and performance.
Removed the Entity Context specific code and moved that to new locations within the Entity Context itself.
Allowed basic inheritance. If a subsystem isn't found in a scene the parent can optionally be searched.
Scenes can enter a zombie state and avoid immediately being deleted. This is needed for situations where subsystems can't be destroyed until async calls have been completed.