Also add a per component custom data which, if present, is added to all ISM pool instances that the component generates.
#preflight 6409444bcf5fe1e28c0e065c
[CL 24571716 by jeremy moore in ue5-main branch]
- also cache RootIndex in Geometry collection asset to avoid scanning through all the transforms each time to find it
#rb benn.gallagher, jimmy.andrews
#preflight 64017a41d249add4a224c288
[CL 24509670 by cedric caillaud in ue5-main branch]
Deprecated the FSoftObjectPath "StaticMesh" property in FGeometryCollectionAutoInstanceMesh and replaced it with a TObjectPtr<UStaticMesh> Mesh property. This fixes an issue where asserts would fire because we were doing sync loads after the loadscreen.
These changes saved roughly 100MBs in our test level.
#jira
#rb cedric.caillaud
#preflight 63f846e9c35a14198085d30e
[CL 24406749 by bryan sefcik in ue5-main branch]
Add flag for strip render data on cook to Geometry Collection.
This can be used if we have a non-native rendering replacement such as using ISM pools.
Added p.GeometryCollectionAssetForceStripRenderDataOnCook as a per-project way to force this.
#preflight 63f64517ff5afbbb03b47a1a
[CL 24370976 by jeremy moore in ue5-main branch]
[FYI] bob.tellez
Original CL Desc
-----------------------------------------------------------------
[Backout] - CL24248607
[FYI] bryan.sefcik
Original CL Desc
-----------------------------------------------------------------
Updated the static mesh property("RootProxy") in UGeometryCollection to be a FGeometryCollectionProxyMeshData which currently contains an array of static meshes.
Deprecated the old RootProxy property in UGeometryCollection. Old data will still work.
#rb cedric.caillaud
#preflight 63ed6ac996073a3e191d8b6d
[CL 24265247 by bryan sefcik in ue5-main branch]
This is built as part of geometry collection DDC contents.
Reworked scene proxy to use this data. Some big changes there:
* Tidied up hit proxy code so that all hit proxy clients use the same path.
* Removing of internal faces are now handled without an additional index buffer by always storing internal faces at the end of a section and providing different section descriptions for including internal faces.
* Dynamic geometry hiding in editor is now done by zeroing transforms instead of rebuilding the index buffer.
#rb cedric.caillaud
#preflight 63edc2e55c7bd278c11efe51
[CL 24261113 by jeremy moore in ue5-main branch]
[FYI] bryan.sefcik
Original CL Desc
-----------------------------------------------------------------
Updated the static mesh property("RootProxy") in UGeometryCollection to be a FGeometryCollectionProxyMeshData which currently contains an array of static meshes.
Deprecated the old RootProxy property in UGeometryCollection. Old data will still work.
#rb cedric.caillaud
#preflight 63ed6ac996073a3e191d8b6d
[CL 24253444 by bob tellez in ue5-main branch]
Deprecated the old RootProxy property in UGeometryCollection. Old data will still work.
#rb cedric.caillaud
#preflight 63ed6ac996073a3e191d8b6d
[CL 24253387 by bryan sefcik in ue5-main branch]
- add explicit tracking of internal surfaces in fracture geometry, and remove concept of 'internal-only' materials in odd-numbered slots.
- add tooling to set internal materials, and to set default internal materials to be assigned on fracture
- add option to preserve internal face data via odd material numbers in ToMesh tool + option to re-import these ToMesh outputs w/ internal material IDs set
#rb cedric.caillaud
#rb david.hill
#preflight 63e66867de74ffbae51e5dc7
#jira UE-165320
[CL 24136970 by jimmy andrews in ue5-main branch]
- avoid calling it over and over when components using the same asset are registered
- make creation of physics state faster
- make duplication of components faster
#rb brice.criswell
#preflight 63940c5fcf0e31f727516720
[CL 23499843 by cedric caillaud in ue5-main branch]
- Improved InitializeMaterials to be able to handle material list only made of external materials
- Added CollectionInstancedMeshFacade and update code using the attribute directly to use the facade instead
- Added new input / output to Geometry Collection Terminal node ( InstancedMeshes )
- Simplified FindOrAddAutoInstanceMesh methods
[FYI] jimmy.andrews
#rb none
#preflight 6389699c0e4613faeded4210
[CL 23370012 by cedric caillaud in ue5-main branch]
* GeometryCollectionComponent.h - Most files are related to the removal of includes in this file. Removed 7 headers
- Moved GeometryCollectionDamagePropagationData in to its own file
- Changed COPY_ON_WRITE_ATTRIBUTE to be set in a way so implementations can be placed in cpp file.
- Moved some function implementations to cpp file
* Removed include in FieldSystemActor.h
* Removed include in FieldSystem.h
* Removed include in CommonUISettings.h
#preflight 636b325c376a9cd6a8818aae
#rb cedric.caillaud (for the actual changes, not additional includes and a couple include removals outside GeometryCollection)
[CL 23069399 by henrik karlsson in ue5-main branch]
- Added a Proximity tool to Fracture Mode to visualize and change generation settings for GeometryCollection bone proximity.
- Added more user controls for how proximity is generated, including a "Convex Hull distance" method for deciding contact, which should help include connections that were missed by the default proximity detection method.
- Made proximity settings live on the GeometryCollection as (non-cooked) attributes, so proximity re-generates with the desired method after further fracturing/clustering.
- Added an option to automatically convert the proximity graph to a pre-computed connection graph used by simulation.
- Reduce redundant proximity calculations: Be more consistent in relying on FGeometryCollectionEdit to update proximity as needed, and call 'RequireProximity' instead of 'UpdateProximity' in cases where we expect a valid proximity may already be present.
#rb cedric.caillaud
#preflight 6356d21b0313c24974eea2f8
[CL 22735429 by Jimmy Andrews in ue5-main branch]