Commit Graph

165 Commits

Author SHA1 Message Date
Benjamin Jillich 733dc31518 Fixed emfx unit tests
Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-08-09 09:44:56 +02:00
Benjamin Jillich 8a47476498 Merge branch 'development' into jillich/EmfxAabbImprovements 2021-08-05 15:13:29 +02:00
Benjamin Jillich f65bf1a06b Increased version in the actor group exporter to automatically reprocess all actors to use the new node chunks
Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-08-05 15:10:16 +02:00
Benjamin Jillich 60fa18ec27 Added box expansion percentage to the (editor)actor components
Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-08-05 15:09:00 +02:00
Benjamin Jillich d134deee1d Add bounding volume expansion to the actor instance
Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-08-05 15:07:14 +02:00
Benjamin Jillich 1b002dcc82 Saving node chunk v2 and adapting the chunk processor and importer to it
Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-08-04 11:48:47 +02:00
Benjamin Jillich 8190d61e18 Removed MCore::OBB
Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-08-03 17:14:04 +02:00
Benjamin Jillich b335285e19 Removed OBB rendering helpers and color options (was already hidden from the UI)
Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-08-03 17:13:19 +02:00
Benjamin Jillich aab8ab9706 Removed OBBs from Actor including the node infos
Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-08-03 17:04:26 +02:00
Benjamin Jillich f9d5a4a93b Ported MCommon::RenderUtil
* Removed collision mesh based AABB rendering.
* Ported to AZ::Aabb
* Reduced the number of triangles used for rendering default spheres for joints to improve rendering times.

Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-08-03 16:06:51 +02:00
Chris Burel 3a95243df5 Allow special characters in Actor node group names
Relying on the command system's string processing syntax prevents certain
names from being used. This converts the AdjustNodeGroup command to be
directly invokable, so that arguments can be passed directly, instead of
going through the CommandLine string parsing.

Signed-off-by: Chris Burel <burelc@amazon.com>
2021-08-02 11:33:55 -07:00
Chris Burel 02c16a318e Prefer unique_ptr to a raw pointer for CommandAdjustNodeGroup's members
Signed-off-by: Chris Burel <burelc@amazon.com>
2021-08-02 11:33:52 -07:00
Chris Burel 9e6832c6a9 Remove BaseObject as a base class from NodeGroup
Nothing uses the use count that the `BaseObject` base class provides, so
there's no reason to keep it.

Signed-off-by: Chris Burel <burelc@amazon.com>
2021-08-02 11:33:50 -07:00
Chris Burel 8730d5657f Allow special characters in AnimGraph node group names
Relying on the command system's string processing syntax prevents certain
names from being used. This converts the AnimGraphAdjustNodeGroup command
to be directly invokable, so that arguments can be passed directly, instead
of going through the CommandLine string parsing.

Signed-off-by: Chris Burel <burelc@amazon.com>
2021-08-02 11:33:48 -07:00
Benjamin Jillich b840b24de2 Ported the actor and a few other places
* Fixed a bug with updating the static aabb for actors. It called that before the mesh was loaded resulting in an invalid aabb.
* Ported a few more places to AZ::Aabb from MCore::AABB

Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-08-02 14:38:20 +02:00
Benjamin Jillich e651f25577 Ported the render plugin, render update callback and render widget
Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-08-02 13:17:34 +02:00
Benjamin Jillich a1051b15ee Merge branch 'development' into jillich/EmfxAabbImprovements 2021-08-02 10:58:20 +02:00
lumberyard-employee-dm bb372f05cd Fixed the emplace function implementations for stack and queue (#2657)
* Fixed the emplace function implementations for stack and queue

Cleaned up several functions in the stack, queue and priority_queue
classes that were non-standard or weren't needed.

Updated the "style" of the code to use more modern concepts: "typedef" ->
"using", empty constructor body -> default keyword.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Replaced the custom implementations of AZStd stack, (proirity)queue

Theses classes now have a template alias to the standard library version
of the classes

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
2021-07-30 18:20:21 -05:00
Benjamin Jillich cd25dbf71f Removed MCore::Quaternion AZ::Quaternion comparison tests
Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-07-29 17:09:57 +02:00
Benjamin Jillich aa98be18b7 Removed leftover MCore::Quaternion usages and fixes some include issues
Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-07-29 14:34:56 +02:00
Benjamin Jillich 5bb8a17d79 Removed MCore::Quaternion.h/.inl/.cpp files
Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-07-29 14:17:29 +02:00
Benjamin Jillich e80931185b Ported RenderPlugin from MCore::AABB to AZ::AaBB
* Containing functionality verified.
* Zoom to joints
* Normals scale multiplier
* View closeup
* Calculating the scene aabb
* Rendering the actor instance aabbs
* Selection aabb

Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-07-28 15:59:11 +02:00
Benjamin Jillich e9718d9ce8 Converted the EMFX Mesh to use AZ::Aabb instead of MCore::AABB
Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-07-28 15:30:34 +02:00
Benjamin Jillich 416f9aecf7 Removed collision mesh aabb color from render option
Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-07-28 15:09:38 +02:00
Benjamin Jillich 96aa9fde06 Removed legacy loading automated tests and ported file format for anim graph for remaining automated tests
Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-07-26 10:00:07 +02:00
Benjamin Jillich ff2649d0c8 Adapted loading calls to removed legacy file loading
Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-07-26 09:59:19 +02:00
Benjamin Jillich abc501e535 Removed legacy file format loading for anim graphs and motion sets
Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-07-26 09:58:24 +02:00
Benjamin Jillich c097d19215 Removed legacy chunk processors for anim graphs and motion sets together with unused shared data
Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-07-26 09:57:51 +02:00
Benjamin Jillich a287b67b43 Removed ReadDataSize/ReadData() helpers for attributes
Used only by legacy binary file format

Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-07-26 09:57:01 +02:00
Benjamin Jillich a3e90b878c Removed legacy anim graph node parsers and legacy file format chunks
Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-07-26 09:55:37 +02:00
sphrose 9639003a7d LYN-4774 Fix missing box icons inside the main Viewport (#2297)
* LYN-4774 Fix missing box icons inside the main Viewport

Signed-off-by: sphrose <82213493+sphrose@users.noreply.github.com>

* V2 icons

Signed-off-by: sphrose <82213493+sphrose@users.noreply.github.com>

* Bug fixes

Signed-off-by: sphrose <82213493+sphrose@users.noreply.github.com>
2021-07-21 16:33:04 -07:00
Esteban Papp a08f850766 Merge pull request #2284 from nemerle/header_inclution_reductions_pt1
Reduce inclusion overhead a little bit
2021-07-20 10:51:25 -07:00
Benjamin Jillich e85d6e9c4c Fixing a crash for animated transforms having a bone as parent (#2255)
Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-07-20 08:01:49 +02:00
nemerle e76b65fce9 Reduce inclusion overhead a little bit
Signed-off-by: nemerle <96597+nemerle@users.noreply.github.com>
2021-07-20 02:31:38 +02:00
Esteban Papp 1f9b284de2 Merge branch 'development' into cmake/SPEC-7179
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

# Conflicts:
#	Code/Editor/Plugins/ComponentEntityEditorPlugin/ComponentEntityEditorPlugin_precompiled.h
#	Code/Editor/Plugins/EditorCommon/EditorCommon_precompiled.h
#	Code/Editor/Plugins/EditorCommon/stdafx.cpp
#	Code/Editor/Plugins/FFMPEGPlugin/FFMPEGPlugin_precompiled.h
#	Code/Editor/Plugins/PerforcePlugin/PerforcePlugin_precompiled.h
#	Code/Editor/Plugins/ProjectSettingsTool/ProjectSettingsTool_precompiled.h
#	Code/Framework/AzToolsFramework/AzToolsFramework/AzToolsFramework_precompiled.h
#	Code/Tools/AssetProcessor/native/precompiled.h
#	Code/Tools/Standalone/StandaloneTools_precompiled.h
#	Gems/AssetMemoryAnalyzer/Code/Source/AssetMemoryAnalyzer_precompiled.h
#	Gems/Atom/Asset/ImageProcessingAtom/Code/Source/ImageProcessing_precompiled.h
#	Gems/Atom/RHI/DX12/Code/Source/RHI/Atom_RHI_DX12_precompiled.h
#	Gems/Atom/RHI/Metal/Code/Include/Platform/Mac/Atom_RHI_Metal_precompiled_Platform.h
#	Gems/Atom/RHI/Metal/Code/Include/Platform/iOS/Atom_RHI_Metal_precompiled_Platform.h
#	Gems/Atom/RHI/Metal/Code/Source/Atom_RHI_Metal_precompiled.h
#	Gems/Atom/RHI/Metal/Code/atom_rhi_metal_common_files.cmake
#	Gems/Atom/RHI/Null/Code/Source/Atom_RHI_Null_precompiled.h
#	Gems/Atom/RHI/Null/Code/atom_rhi_null_common_files.cmake
#	Gems/Atom/RHI/Vulkan/Code/Include/Platform/Android/Atom_RHI_Vulkan_precompiled_Platform.h
#	Gems/Atom/RHI/Vulkan/Code/Include/Platform/Linux/Atom_RHI_Vulkan_precompiled_Platform.h
#	Gems/Atom/RHI/Vulkan/Code/Include/Platform/Mac/Atom_RHI_Vulkan_precompiled_Platform.h
#	Gems/Atom/RHI/Vulkan/Code/Include/Platform/Windows/Atom_RHI_Vulkan_precompiled_Platform.h
#	Gems/Atom/RHI/Vulkan/Code/Source/Atom_RHI_Vulkan_precompiled.h
#	Gems/Atom/RHI/Vulkan/Code/Source/RHI/SwapChain.cpp
#	Gems/Atom/RHI/Vulkan/Code/atom_rhi_vulkan_common_files.cmake
#	Gems/AtomLyIntegration/AtomFont/Code/Include/AtomLyIntegration/AtomFont/AtomFont_precompiled.h
#	Gems/Blast/Code/Source/StdAfx.cpp
#	Gems/Camera/Code/Source/Camera_precompiled.h
#	Gems/EMotionFX/Code/Source/EMotionFX_precompiled.h
#	Gems/FastNoise/Code/Source/FastNoise_precompiled.h
#	Gems/Gestures/Code/Source/Gestures_precompiled.h
#	Gems/GradientSignal/Code/Source/GradientSignal_precompiled.h
#	Gems/GraphCanvas/Code/precompiled.h
#	Gems/ImGui/Code/Source/ImGui_precompiled.h
#	Gems/InAppPurchases/Code/Source/InAppPurchases_precompiled.h
#	Gems/LmbrCentral/Code/Source/LmbrCentral_precompiled.h
#	Gems/LmbrCentral/Code/Tests/ShapeGeometryUtilTest.cpp
#	Gems/LyShine/Code/Editor/UiCanvasEditor_precompiled.h
#	Gems/LyShine/Code/Source/Animation/LyShine_precompiled.h
#	Gems/LyShine/Code/Source/LyShine_precompiled.h
#	Gems/LyShineExamples/Code/Source/LyShineExamples_precompiled.h
#	Gems/Maestro/Code/Source/Cinematics/Maestro_precompiled.h
#	Gems/Maestro/Code/Source/Maestro_precompiled.h
#	Gems/MessagePopup/Code/Source/MessagePopup_precompiled.h
#	Gems/Metastream/Code/Source/Metastream_precompiled.h
#	Gems/Microphone/Code/Source/Microphone_precompiled.h
#	Gems/Multiplayer/Code/Source/Multiplayer_precompiled.h
#	Gems/PhysX/Code/NumericalMethods/Source/NumericalMethods_precompiled.h
#	Gems/PhysX/Code/Source/PhysXUnsupported_precompiled.h
#	Gems/PhysX/Code/Source/PhysX_precompiled.h
#	Gems/PhysX/Code/physx_unsupported_files.cmake
#	Gems/PhysXDebug/Code/Source/PhysXDebugUnsupported_precompiled.h
#	Gems/PhysXDebug/Code/Source/PhysXDebug_precompiled.h
#	Gems/ScriptCanvas/Code/Editor/precompiled.h
#	Gems/ScriptCanvas/Code/Source/precompiled.h
#	Gems/ScriptCanvasDeveloper/Code/Source/precompiled.h
#	Gems/ScriptCanvasPhysics/Code/Source/ScriptCanvasPhysics_precompiled.h
#	Gems/ScriptEvents/Code/Source/precompiled.h
#	Gems/ScriptEvents/Code/Tests/Editor/EditorTests.cpp
#	Gems/ScriptedEntityTweener/Code/Source/ScriptedEntityTweener_precompiled.h
#	Gems/SliceFavorites/Code/Source/SliceFavorites_precompiled.h
#	Gems/StartingPointCamera/Code/Source/StartingPointCamera_precompiled.h
#	Gems/StartingPointInput/Code/Source/StartingPointInput_precompiled.h
#	Gems/StartingPointMovement/Code/Source/StartingPointMovement_precompiled.h
#	Gems/SurfaceData/Code/Source/SurfaceData_precompiled.h
#	Gems/TextureAtlas/Code/Source/TextureAtlas_precompiled.h
#	Gems/TickBusOrderViewer/Code/Source/TickBusOrderViewer_precompiled.h
#	Gems/Twitch/Code/Source/Twitch_precompiled.h
#	Gems/VirtualGamepad/Code/Source/VirtualGamepad_precompiled.h
#	Gems/WhiteBox/Code/Source/WhiteBoxUnsupported_precompiled.h
#	Gems/WhiteBox/Code/Source/WhiteBox_precompiled.h
2021-07-16 15:42:37 -07:00
Steve Pham 38261d0800 Shorten copyright headers by splitting into 2 lines (#2213)
* Updated all copyright headers to split the longer original copyright line into 2 shorter lines

Signed-off-by: Steve Pham <spham@amazon.com>
2021-07-16 15:25:48 -07:00
Benjamin Jillich c1ebbbc176 EMotion FX: Root bone not initialized without opening Scene Settings #2088 (#2231)
User provided model was exporting correctly with an .assetinfo while it was not when just placing the .fbx file in the project folder.
Turned out that the best matching root bone was set by opening the Scene Settings for the first time, so after saving it again it worked correctly.
We're now chosing the best matching root bone when initializing the actor group, which fixes the issue.

Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-07-16 17:53:04 +02:00
Benjamin Jillich d16b810075 Transform node animations ignored (#2160)
* Fixing user asset issue having a transform node as root rather than a bone making the whole character not animate.
* Enabled the ability to export animations for transform nodes.

Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-07-16 13:47:47 +02:00
Esteban Papp 074518454c Merge branch 'development' into cmake/SPEC-7179 2021-07-15 16:58:58 -07:00
Benjamin Jillich 3ea3d7a436 Data integrity issue, keyframe times need to be ascending (#2130)
* User provided animation resulted in a data integrity error.
* The first track had 0.66 as max time while another had a keyframe more resulting in 0.69.
* When updating the duration before fixing up the last keyframe for each of the tracks, the duration was returned early with 0.66 while there were other tracks having a keyframe more.
* We're now crawling through all tracks to determine the maximum duration.
* This results in a correct fixup of the last frame.

Signed-off-by: Benjamin Jillich <jillich@amazon.com>
2021-07-14 08:52:52 +02:00
Esteban Papp 316eb65c2c Gems/EMotionFX
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
2021-07-13 15:20:42 -07:00
Chris Galvan 3b1873b045 Merged stabilization/2106 -> development (resolved merge conflicts).
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
2021-07-08 13:56:47 -05:00
Chris Galvan cb069d68f0 Removed min/max settings that were just using the float min/max since these are the default.
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
2021-07-08 11:54:51 -05:00
Chris Galvan 86c9c04c37 Fixed EMFX nodes min/max attributes.
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
2021-07-08 08:02:27 -05:00
Chris Burel 80bdd4e17b Clang compile fixes (#1876)
* Fix compile error from -Wwritable-strings

Signed-off-by: Chris Burel <burelc@amazon.com>

* Fix flags used to build MaskedOcclusionCulling with clang

Signed-off-by: Chris Burel <burelc@amazon.com>

* Fix class that has a final destructor, but the class itself was not final

Signed-off-by: Chris Burel <burelc@amazon.com>
2021-07-07 14:34:45 -07:00
Chris Galvan d7574777a8 Resolved merge conflicts
Signed-off-by: Chris Galvan <chgalvan@amazon.com>
2021-07-02 12:42:44 -05:00
AMZN-stankowi 0c43493e29 FBX to Scene part 3, tangent generation rule FBX -> SourceScene (#1747)
* Tangent space FromFBX -> FromSourceScene

Signed-off-by: stankowi <4838196+AMZN-stankowi@users.noreply.github.com>
2021-07-02 07:56:54 -07:00
AMZN-stankowi 4c4be73bd5 First pass FBX -> Scene File conversion. (#1699)
This is the simple pass, minimizing code changes and focused on comments.

Signed-off-by: stankowi <4838196+AMZN-stankowi@users.noreply.github.com>
2021-07-01 08:53:47 -07:00
Steve Pham b4a2edec6a Final update copyright headers to reference license files at the repo root (#1693)
* Final update copyright headers to reference license files at the repo root

Signed-off-by: spham <spham@amazon.com>

* Fix copyright validator unit tests to support the stale O3DE header scenario

Signed-off-by: spham <spham@amazon.com>
2021-06-30 19:51:55 -07:00
Terry Michaels 149863c527 Removed Amazon as Company for QSettings (#1649)
* Removed Amazon as Company for QSettings

Signed-off-by: Terry Michaels <miterenc@amazon.com>
2021-06-29 14:00:11 -05:00