953 Commits

Author SHA1 Message Date
yushan han
8638758dd6 ChaosFlesh: fixed USkeleton refskeleton inconsistency, deprecated SkeletonToCollection with SkeletalMeshToCollection, added TransferVertexSkinWeights node
#rb brice.criswell
#jira UE-227340

Merging

//Fortnite/Main/Engine/...

to //Fortnite/Release-32.00/Engine/...

[CL 37054807 by yushan han in 5.5 branch]
2024-10-11 13:01:00 -04:00
yushan han
88225d7101 ChaosFlesh: refactor kinematic vertex attribute, transfer skin weights between collections, skeletal mesh to collection now contains skin weights, add particle radius cvar
ChaosFlesh: CIS fix
backward compatibility for per-vertex kinematic attribute
Embedded positions are now initialized to 0 even without embedding info.
Fixed BoneWeightsFacade.IsValid() by allowing KinematicAttribute to be invalid for backward compatibility
#rb Brice.Criswell
#jira UE-227225

Merging

//Fortnite/Main/Engine/...

to //Fortnite/Release-32.00/Engine/...

[CL 37027497 by yushan han in 5.5 branch]
2024-10-10 13:48:27 -04:00
michael forot
a3213e2828 Change Dataflow namespace to UE::Dataflow to be ok with coding standard
#rb Alex.McAdams, kriss.gossart

[CL 36755837 by michael forot in 5.5 branch]
2024-10-01 19:11:14 -04:00
cedric caillaud
0d10f2feae Geometry collection : fix issues where geometry collection do not properly update the velocity buffer
- this is because the previous transforms are not properly set

#rb jeremy.moore

[CL 36747865 by cedric caillaud in 5.5 branch]
2024-10-01 17:48:47 -04:00
cedric caillaud
e4667121f3 Fix geometry collection component removal logic preventing internal clusters from crumbling into smaller pieces
- HasDynamicInternalClusterParent and HasClusterUnionParent are mutually exclusive and testing both was resulting in getting always false for computing HasDynamicInternalClusterParent

[CL 36747843 by cedric caillaud in 5.5 branch]
2024-10-01 17:48:28 -04:00
cedric caillaud
47741f7940 Dataflow : Fix various issues isues and crashes with Dataflow nodes
- Fix out of bound related crashes when using the select by box node ( when there was more transforms than geometry in the collection )
    - now properly access the centroid array by geometry index
- StaticMeshToCollection node now outputs collection with a single root when using the Split Element option

#rb gustav.melich
#jira UE-225106

#p4v-cherrypick 36466212

[CL 36485897 by cedric caillaud in 5.5 branch]
2024-09-20 17:15:44 -04:00
jeremy moore
3490ecb33d #jira UE-202340
Add support for non-nanite fallback mesh for nanite geometry collections.
Strip geometry collection nanite render data when cooking non-nanite platforms.
#rb cedric.caillaud

[CL 36439857 by jeremy moore in 5.5 branch]
2024-09-19 13:08:02 -04:00
jeremy moore
37005c2a09 #jira UE-224160
Fix nanite geometry collection not visually rotating on gizmo driven rotations.
Needed to reapply modified instance transforms after primitive transform update.
This is because, for nanite, Geom Collection GPU instance transforms are stored relative to the relative (non-rotated) world transform.
This bug wasn't visible for non-gizmo use movement cases which go through full scene proxy recreate.
This bug wasn't visible for gizmo translation use case because this is in the relative transform.
#rb cedric.caillaud

[CL 36344776 by jeremy moore in 5.5 branch]
2024-09-17 14:36:27 -04:00
gustav melich
d2cf8c7133 Dataflow:
- Added random BoneColor generation to FGeometryCollectionTerminalDataflowNode

#rb cedric.caillaud

[CL 36326481 by gustav melich in 5.5 branch]
2024-09-16 23:11:55 -04:00
cedric caillaud
c19ac15348 Dataflow : add mesh transform to StaticMeshToCollection node
[CL 36309252 by cedric caillaud in 5.5 branch]
2024-09-16 13:59:09 -04:00
cedric caillaud
e103e963e0 Dataflow / Geometry collection : fix crash when geometry collection are empty
- this also allow terminal node to actually properly process empty collection

#jira UE-223273
#rb brice.criswell, michael.forot, gustav.melich

[CL 36289407 by cedric caillaud in 5.5 branch]
2024-09-13 21:28:49 -04:00
Ryan Hummer
4af2fd066d Updating Dev-Release-5.5 from Main at CL #36144969
#okforversepublic

[CL 36146571 by Ryan Hummer in Dev-5.5 branch]
2024-09-10 10:26:02 -04:00
tiago costa
278827a78a [Ray Tracing Instance Gathering Refactor] Refactored dynamic ray tracing instance gathering.
- Deprecated FRayTracingMeshResourceCollector and FRayTracingMaterialGatheringContext.
- Instead GetDynamicRayTracingInstances(...) implementations should use the new FRayTracingInstanceCollector which extends FMeshElementCollector with ray tracing functionality (AddRayTracingInstance/AddReferencedGeometryGroup/AddRayTracingGeometryUpdate)
    - this is similar to GetDynamicMeshElements(...) using FMeshElementCollector.
    - FRayTracingInstanceCollector uses a dedicated RHI command list to gather instances, which is different than FRayTracingMaterialGatheringContext which used the immediate command list.
- Moved dynamic instance gathering logic in RayTracing.cpp into a new class FDynamicRayTracingInstancesContext laying the foundation of gathering dynamic instances in parallel threads on follow up changes.

#rb Kenzo.Terelst

[CL 36034312 by tiago costa in ue5-main branch]
2024-09-05 05:19:35 -04:00
Michael Forot
dcf4d77016 6- Chaos rigid dataflow simulation support
#rb cedric.caillaud
#jira none

#virtualized

[CL 36009893 by Michael Forot in ue5-main branch]
2024-09-04 11:01:32 -04:00
trapper mcferron
9460d774b1 Build fix - rename to prevent global namespace conflicts
Original CL:
Commit 1 of 3 - Decoupling ISMPool from GeometryCollection

Create a copy of the GC_ISM pool files in its own Runtime/Experimental folder.  This allows our non-GC assets to take advantage of the ISMPooling and custom instance data.

#rb cedric.caillaud

[CL 35979457 by trapper mcferron in ue5-main branch]
2024-09-03 16:09:07 -04:00
cedric caillaud
e641026ef0 Add recent fixes ( 35911153 ) behind cvars
- p.Chaos.GC.CustomRendererHiddenActorFix ( true by default )
- Juno.DoNotHideActorWithGCWhenDestroyed ( true by default )

#rb aidan.mcdu, robert.taylor

[CL 35941225 by cedric caillaud in ue5-main branch]
2024-08-30 18:57:46 -04:00
todd eckert
2256e3f14c [Backout] - CL35901297
[FYI] Todd.Eckert
Original CL Desc
-----------------------------------------------------------------
Fixed an issue when running a construction script that was causing geometry collection component's custom render to try and spawn actors

#rb cedric.caillaud

[CL 35924892 by todd eckert in ue5-main branch]
2024-08-30 09:53:33 -04:00
cedric caillaud
83dddda3e9 Geometry collection : Add GetLocalRestTransform blueprint function
[CL 35912879 by cedric caillaud in ue5-main branch]
2024-08-29 23:06:41 -04:00
cedric caillaud
b951f7b9d2 Geometry collection : add support for SetActorHiidenInGame when using custom renderers
- make sure to account for the hidden flag of the actor in the RefreshCustomrenderer method
- also change game specific code to account for this new behaviour

#rb aidan.mcdu, todd.eckert, jeremy.moore
[FYI] shaun.kime, kurtis.schmidt

[CL 35911176 by cedric caillaud in ue5-main branch]
2024-08-29 20:22:39 -04:00
todd eckert
e0476cb17e Fixed an issue when running a construction script that was causing geometry collection component's custom render to try and spawn actors
#rb cedric.caillaud

[CL 35902519 by todd eckert in ue5-main branch]
2024-08-29 14:52:25 -04:00
sebastien lussier
93c6874ab9 World Partition - HLODs - Improved support for Geometry Collection components
* Will now rely on the Geometry Collection ISM Pool components to generate the HLOD, allowing PerInstanceData to be taken into account in the HLOD
* As a side effect, this allow the computation of a valid "HLOD hash"  for HLODs from GC on building actors - previously only correct for JunoBuildingProp
#jira UE-220875
#rb Jeremy.Moore, Richard.Malo

[CL 35825057 by sebastien lussier in ue5-main branch]
2024-08-27 10:37:53 -04:00
sebastien lussier
3eea399bed World Partition - HLOD: Improved hash computation to avoid unnecessary HLOD rebuilds in some cases
* Some of the code still relied on possibly non-persistent GetTypeHash()
* Fixed an issue with the transient Geometry Collection ISM Pool components getting a random value for their InstancingRandomSeed property.
* Improved verbose logging to ease debugging in the future

#rb Dominic.Couture, Richard.Malo, jeanfrancois.dube

[CL 35824182 by sebastien lussier in ue5-main branch]
2024-08-27 10:09:50 -04:00
jeremy moore
2854e73533 Move MeshPaintVisualize global functions and data into their own file and out of SceneManagement.h
To maintain backward compatibility for previous engine version include orders, SceneManagement.h includes the new MeshPaintVisualize.h.

[CL 35808897 by jeremy moore in ue5-main branch]
2024-08-26 15:58:31 -04:00
cedric caillaud
b00751115c Geometry collection : add support for collision visualization for the nanite scene proxy
#rb jeremy.moore

[CL 35775269 by cedric caillaud in ue5-main branch]
2024-08-23 13:15:29 -04:00
cedric caillaud
e03dad4378 Fix assert about CachedDensityFromPhysicsMaterialInGCm3 when saving an empty geometry collection
- make sure the cache data is computed before saving of the asset happens

#rb Jimmy.Andrews
#jira UE-194284

[CL 35718317 by cedric caillaud in ue5-main branch]
2024-08-21 16:22:11 -04:00