Commit Graph

11 Commits

Author SHA1 Message Date
karlberg 3169b3477d Adding missing files to azframework_files.cmake and fixing include errors due to network removal 2021-05-11 15:15:35 -07:00
Aaron Ruiz Mora 7ba3a19b40 Remove unnecessary transformation of tangents and bitangents in cloth CPU skinning. 2021-05-05 19:48:56 +01:00
Aaron Ruiz Mora 70bd3ea0ff Performance pass to Cloth CPU Skinning
- Added operator+(Matrix3x4), operator*(float), RetrieveScaleSq and GetReciprocalScaled to Matrix3x4. Used by Cloth CPU Linear Skinning. These operation will be performant as they use SIMD.
- Modified so there are no virtual functions calls at vertex level.
- Caching indices to simplify the loop when applying skinning.
- Caching static variables Matrix3x4 zero and DualQuaternion zero to avoid creating it for every vertex.
- Removing branching to skip joints when the weight is zero, these cases are rarely and this improves performance by removing branching from loops at vertex level.
- Changing skinning influences so it's a continuous block of memory.
- Caching the vector size() if a variable instead of directly using it in a for loop.
2021-05-04 12:09:56 +01:00
Aaron Ruiz Mora d20fb50c9d Cloth CPU Skinning using MCore DualQuaternions instead of Cry DualQuat 2021-04-27 14:52:33 +01:00
Aaron Ruiz Mora c415fcc0b4 Cloth will override all the vertices of the mesh and do CPU skinning on the non-simulated vertices when the optimization 'remove static particles' is enabled 2021-04-27 10:00:27 +01:00
Aaron Ruiz Mora 5fd8c35878 Fixing cloth working with Actors by reading directly from ModelAsset instead from EMFX Mesh. (#235)
- Fixing cloth working with Actors by reading directly from ModelAsset instead from EMFX Mesh.
- Actor caches map from joint indices in skin metadata to skeleton indices so they can be query later.
- Actor cloth skinning reads indices and weights from Model Asset instead from EMFX Mesh.
- Actor cloth skinning with unlimited skinning bones.
- Sort out cloth unit tests by disabling them until there is a way to create an Atom mesh
- Addressing feedback.
2021-04-23 19:46:57 +01:00
Aaron Ruiz Mora 1256994696 Cleaning up NvCloth gem. Removed any reference to LmbrCentral and legacy renderer since now it uses Atom. (#154)
- Removed any usage of LmbCentral and legacy renderer from NvCloth gem.
- Cloth rule can only be added to Mesh groups, not allowed in Actor groups anymore.
- Removed ActorAssetHelper since actors now share the mesh model format and therefore they also use MeshAssetHelper.
- Updated NvCloth gem.json file with the fields from the template.
- Updated cloth chicken asset to not convert axis.
2021-04-20 15:38:26 +01:00
moraaar 808fd1d3ba Cloth works with Actors in Atom. Cloth system uses MeshAssetHelper to read model mesh information for actors too. 2021-04-16 18:24:29 +01:00
alexpete 1044dc3da1 Integrating github/staging through commit ab87ed9 2021-04-09 11:27:37 -07:00
alexpete c2cbd430fe Integrating up through commit 90f050496 2021-04-07 14:03:29 -07:00
alexpete a10351f38d Initial commit 2021-03-08 14:30:57 -08:00