* Removes legacy audio listener updates from ViewSys
These functions were empty and logging a warning, removed.
Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
* Move more audio functions to AudioSystemComponent
For global actions like Mute/Unmute, Reload, StopAll, Load/Unload Level,
we move those functions to be handled by the AudioSystemComponent in
LmbrCentral. This lets us remove some includes of IAudioSystem.h from
Editor and Legacy/CrySystem.
There were several locations where audio banks were being loaded and
unloaded for a level. Now they all call into the AudioSystemComponent
and we don't have multiple copies of the same code.
Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
* fix for events that should have been consumed by manipulators making their way to the main viewport handler
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* add missing include for SANDBOX_API macro
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* add dependency on Qt::Test for AzToolsFrameworkTestCommon
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* fix order of buttons passed to QMouseEvent
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* potential fix for vtable error on linux
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* potential fix for vtable error on linux again
Signed-off-by: hultonha <hultonha@amazon.co.uk>
These changes allow for usage of different asset import SDKs to process scene files.
Move AssImp specific code out of node, scene & material wrapper parent classes and into child wrapper classes (AssImpNodeWrapper, etc.), allowing child classes to expose import SDK code. Allows for more convenient implementation of other import SDK's elsewhere (such as in a gem).
Add a loadingComponentUuid parameter to LoadSceneFromVerifiedPath to allow for usage of different loading components. Changed tests and all calls to this function accordingly.
* Move AssImp specific code out of wrapper parent classes and into child classes for gem usage
Signed-off-by: Victor Huang <huavicto@amazon.com>
* Add loadingComponentUuid parameter to LoadSceneFromVerifiedPath function
Signed-off-by: Victor Huang <huavicto@amazon.com>
* Make wrapper members protected, change pointer cast
Signed-off-by: Victor Huang <huavicto@amazon.com>
* Adding spaces to fix style
Signed-off-by: Victor Huang <huavicto@amazon.com>
* Fix for pointer cast causing test failures
Signed-off-by: Victor Huang <huavicto@amazon.com>
* Sever dependency on legacy resource selector host
Audio resource selectors (browse dialogs) no longer need to be
registered with the legacy IResourceSelectorHost system. Set up a new
EBus specifically to handle browse button presses and directly invokes
the dialog.
Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
* Hook up legacy audio control selector to new EBus
Remaining use of legacy audio selectors (trackview) need to be able to
bypass ResourceSelectorHost now.
Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
* Removes ResourceSelectorHost and legacy selectors
This removes various Variable types that were tied to resource
selectors, such as GeomCache, Model, Animation, File. Removes the
ResourceSelectorHost completely. The two things that still appeared to
have selectors in TrackView are Audio Controls and Texture. Fixed the
audio control selector to work via EBus and the Texture selector didn't
seem to work at all, but left it in as it was.
Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
* Make the default audio selector return old value
Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
* Fix some signed/unsigned comparison warnings
Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
* Remove deleted function from Editor Mock
Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
* Change audio selector api to use string_view
Per feedback.
Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
- Replaced Cry-threading related code with AZ equivalents in the Remote Console runtime
- Replaced (or removed) usage of CryMutex/CryLock with appropriate AZStd mutex type
- Replaced usage of CrySpinLock/CryWriteLock with equivalent AZStd::spin_mutex
- Replaced usage of CryInterlocked* with AZStd atomics
- Removed all CryThread*.h files
- Removed MultiThread.h
-- Includes removal of the CryInterlocked* and Cry*CriticalSection functions defined elsewhere
- Removed re-implemented stubs of Windows synchapi.h functions
Signed-off-by: AMZN-ScottR 24445312+AMZN-ScottR@users.noreply.github.com
* Minimal TypeInfo header/reduce std interdependencies.
TypeInfoSimple.h is a small header that can replace the use of
TypeInfo.h in some cases.
Signed-off-by: Nemerle <nemerle5+git@gmail.com>
* Windows build fixed
Removed algorithm.h from string_view.h
smoke-test passed
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
* Resotore dynamic_pointer_cast in intrusive_ptr
Requested by reviewer.
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
* Fix CI build
string.h - missed alogorithm.h, since it was removed from string_view
NodeWrapper.h - missing smart_ptr.h
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
Co-authored-by: Nemerle <nemerle5+git@gmail.com>
* 1. Initial support for loading dylibs outside the bundle.
2. Child processes inherit parent's environment if no environment is explicitly specified(should change to append the parent's environment even if environment variables are explicitly specified).
3. Update some time functions to use system uptime instead of wall clock time when computing elapsed time. This fixes false timeouts when the OS goes to sleep.
4. Increase wait times for AssetBuilders and some Atom tools to connect to the AssetProcessor. This is needed because GateKeeper slows down first time bootup which results in asset processing failures.
With this change we'll be able to run Editor and AssetProcessor from an install on Mac and we will also be able to build and run projects using the installed engine as an SDK.
Signed-off-by: amzn-sj <srikkant@amazon.com>
* 1. Remove debug messages.
2. Fix license
3. Pass parent's environment variables to child processes by default(on Mac).
Signed-off-by: amzn-sj <srikkant@amazon.com>
* 1. Add more detailed comments.2. Use a custom ly_copy for Mac and leave the default as is.
Signed-off-by: amzn-sj <srikkant@amazon.com>
* Address some feedback from review
Signed-off-by: amzn-sj <srikkant@amazon.com>
A few 'typedefs' replaced by 'using's
This shouldn't have any functional changes at all, just c++17 modernization
It's a part 5 of a split #2847
Signed-off-by: Nemerle <nemerle5+git@gmail.com>
Co-authored-by: Nemerle <nemerle5+git@gmail.com>
Removal highlights include:
- File indexer (used CryThread<>) linked to long gone asset browser
- Producer/consumer queues from CryMT
- set/vector/CLocklessPointerQueue containers also from CryMT
- Cry interlocked linked list and _InterlockedCompareExchange128
- CryThread type
- SAtomicVar types
- CryAutoSet type
- Various unused lock types
-- AutoLockModify
-- AutoLockRead
-- CryOptionalAutoLock
-- CryReadModifyLock
-- CryRWLock
-- ReadLock
-- ReadLockCond
-- WriteAfterReadLock
- Misc. unused functions
-- CryInterLockedAdd (not to be confused with CryInterlockedAdd, using a lower case "locked")
-- CryInterlockedExchange64 (which was only defined for unix platforms)
-- SpinLock
-- JobSpinLock
-- AtomicAdd
-- JobAtomicAdd
Signed-off-by: AMZN-ScottR <24445312+AMZN-ScottR@users.noreply.github.com>
* fix an error with addr_impl_ref assignment operator
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
* chrono duration unary '+' was missing a return
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
* HierarchyMenu constructor logic fix
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
* at least assert in case of invalid arguments to ring_buffer::insert
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
* EditorSettings using incorrect string_view::find result comparison
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
A few 'typedefs' replaced by 'using's
This shouldn't have any functional changes at all, just c++17 modernization
It's a part 6 of a split #2847
Signed-off-by: Nemerle <nemerle5+git@gmail.com>
A few 'typedefs' replaced by 'using's
This shouldn't have any functional changes at all, just c++17 modernization
It's a part 4 of a split #2847
Signed-off-by: Nemerle <nemerle5+git@gmail.com>
A few 'typedefs' replaced by 'using's
This shouldn't have any functional changes at all, just c++17 modernization
It's a part 3 of a split #2847
Signed-off-by: Nemerle <nemerle5+git@gmail.com>
A few 'typedefs' replaced by 'using's
This shouldn't have any functional changes at all, just c++17 modernization
It's a part 2 of a split #2847
Signed-off-by: Nemerle <nemerle5+git@gmail.com>
A few 'typedefs' replaced by 'using's
This shouldn't have any functional changes at all, just c++17 modernization
It's a part 1 of a split #2847
Signed-off-by: Nemerle <nemerle5+git@gmail.com>
- Handle changing of active camera entirely inside CameraComponentController
- Remove a LOT of legacy Cry things related to cameras
- Add a CameraSystemComponent to handle ActiveCameraRequestBus and CameraSystemRequestBus
Signed-off-by: Yuriy Toporovskyy <toporovskyy.y@gmail.com>
* make 'should handle' logic customizable
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* updates to get priority function
Signed-off-by: hultonha <hultonha@amazon.co.uk>
* minor comment tweak
Signed-off-by: hultonha <hultonha@amazon.co.uk>
Also, SaveLevel was not using destName when constructing newFilePath
Other code changes:
* LogLoadTime is simplified by using QFile
* reduce nesting in DoSaveDocument by using early return.
* marked a few eligible methods as const
* Simplified OnEnvironmentPropertyChanged a bit
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
* The enable_gems command now registers the gem with the project if only registered with o3de_manifest.json
Updated the `enable_gems` command to register the gem with the project if the gem is not registered with either the project or the engine being used.
This allows the gem to be added to the build system if it wasn't registered before.
Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
* Adding quoting around the invocation of the OpenProjectManager command
The --project-path parameter now is able to pass in a path with spaces
to the invocation of the Project Manager.
Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
This disables WM_INPUT forwarding to the input system while in game mode and makes ImGui listen to the synthetic keyboard events from the viewport instead - these synthetic events go through Qt's event system, so will only show up when the viewport "sees" a home key press.
Signed-off-by: nvsickle <nvsickle@amazon.com>
* Create RUN target as helpers for the project-centric workflow
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
* typo fix
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
* rename target as "<target>.Imported" and create "<target>" as the metatarget that is used for debugging and building in o3de
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
Replaced a 'uint32' with AZ::u32 to fix a linux compile error that
likely came about after cleaning up includes. Rewrites a failing unit
test after the code under test was updated from CryPak to AZ::IO.
Signed-off-by: amzn-phist <52085794+amzn-phist@users.noreply.github.com>
* Add an Orthogonal Projection option to the Camera Gem
This adds a check-box to opt into an ortho projection along with a half-width parameter to adjust the size of the visible area. Includes some light tweaks to ensure debug rendering looks OK and that we generate a correct camera state for these non-perspective views.
Known issue: while in "Be this camera" mode in the Editor using an ortho projection manipulators aren't working correctly. This appears to be a downstream issue with CameraState consumers not actually checking the ortho flag.
Signed-off-by: nvsickle <nvsickle@amazon.com>
* Fix some typos
Signed-off-by: nvsickle <nvsickle@amazon.com>
* Account for reversed depth buffer
Signed-off-by: nvsickle <nvsickle@amazon.com>
* Clarify depth reversal for MakeOrthographicMatrixRH
Signed-off-by: nvsickle <nvsickle@amazon.com>
Engine improvements/fixes
Fixed behavior that made the editor automated test to be sometimes stuck if lost the focus is lost.
Added support for specifying multiple tests to in batch to the editor, this is achieved by passing --runpythontest with the tests separated by ';'
Added new cmdline argument --project-user-path for overriding the user path. This allows to have multiple editors running writing logs and crash logs in different locations.
Moved responsability of exiting after a test finishes/passes out of ExecuteByFilenameAsTest, callers will use the bool return to know if the test passed.
Editor test batch and parallelization implementation:
Now the external python portion of the editor tests will be specified via test specs which will generate the test. Requiring no code. This is almost a data-driven approach.
Tests can be specified as single tests, parallel, batchable or batchable+parallel
Command line arguments for pytest to override the maximum number of editors, disable parallelization or batching.
Automated tests for testing this new editor testing utility
Signed-off-by: Garcia Ruiz <aljanru@amazon.co.uk>
Co-authored-by: Garcia Ruiz <aljanru@amazon.co.uk>
- LyShine assets with "consume all input" could accidentally eat the escape event that exited game mode
- The main window has a shortcut for exiting game mode, but this wasn't being triggered in this context, so we go ahead and catch the Escape key event ASAP in EditorViewportWidget to ensure the game mode exit fires
Signed-off-by: nvsickle <nvsickle@amazon.com>