Commit Graph

528 Commits

Author SHA1 Message Date
bryan sefcik
a325a91dd1 Updated the "AutoInstances" meshes to not add to the ISMPool until they are needed.
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]
2023-02-24 15:00:49 -05:00
cedric caillaud
50efd38db8 Geometry collection: make removal random generated timer values consistent between client and server
- make bone colors unique per component based on number of bones
- remove dependency to PhysXUserdata

#rb none
#preflight 63f86cbcdd78dd50f6541cca

[CL 24406423 by cedric caillaud in ue5-main branch]
2023-02-24 14:43:53 -05:00
Jeremy Moore
3a27764101 #jira UE-178300
Fix crash in FNaniteGeometryCollectionSceneProxy creation.
Issue seems to have been from bad merge of work in other stream.
#preflight 63f905fac35a141980d6a86c

[CL 24405393 by Jeremy Moore in ue5-main branch]
2023-02-24 13:59:56 -05:00
jimmy andrews
77374553ae remove legacy guard against having 0 materials on geometry collection components
#rb devon.penney
#preflight 63f5c6d77064074bd874e702

[CL 24371929 by jimmy andrews in ue5-main branch]
2023-02-22 17:59:05 -05:00
jeremy moore
6d354ea7d8 #jira UE-177467
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]
2023-02-22 17:30:06 -05:00
michael bao
dc08abbd84 ensure that the OnComponentPhysicsStateChanged gets called properly for geometry collections
#rb cedric.caillaud
#preflight 63f008a73c1eb56f05e9cd21

[CL 24327550 by michael bao in ue5-main branch]
2023-02-20 17:08:39 -05:00
jimmy andrews
24982da9e9 fix mesh paint not updating vertex colors for geometry collection + losing exploded vectors on finishing paint transactions
#rb jeremy.moore
#preflight 63f0437b61378b7ea05d43d1

[CL 24298076 by jimmy andrews in ue5-main branch]
2023-02-18 00:01:10 -05:00
jimmy andrews
6d9fd9b6de make the fracture mode 'explode amount' slider's exploded vectors affect the rendered bone transforms for geometry collections
#rb cedric.caillaud
#preflight 63f0421a81646f1f24c3d6f6

[CL 24298073 by jimmy andrews in ue5-main branch]
2023-02-18 00:01:05 -05:00
jimmy andrews
5f26fce1c5 fracture mode rendering changes: rebuild render data rather than marking the component dirty for UVs and material updates, and change 'check' to 'ensure' for invalid exploded view vectors
#rb jeremy.moore
#preflight 63f0014ae832ea950aa8cee0

[CL 24296753 by jimmy andrews in ue5-main branch]
2023-02-17 22:12:23 -05:00
jeremy moore
3d36a729fd Update render data when resetting geometry collection asset in fracture editor.
Fixes crash caused by scene proxy recreating without the required render data update.
#preflight 63efee4713586f2c103e2673

[CL 24295291 by jeremy moore in ue5-main branch]
2023-02-17 19:39:56 -05:00
Jeremy Moore
ec6e0bc61d Fix for non unity build.
#preflight skip

[CL 24276185 by Jeremy Moore in ue5-main branch]
2023-02-16 21:52:00 -05:00
bryan sefcik
aa3b70f03b [Backout] - CL24251176
[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]
2023-02-16 14:21:21 -05:00
jeremy moore
494aefa24a Fix for debug build.
#preflight skip

[CL 24261155 by jeremy moore in ue5-main branch]
2023-02-16 12:42:05 -05:00
jeremy moore
9b2c32632a Fix merge issues
[CL 24261140 by jeremy moore in ue5-main branch]
2023-02-16 12:41:39 -05:00
jeremy moore
1cae9c2d97 Move all immutable geometry collection rendering data into the geometry collection asset.
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]
2023-02-16 12:40:53 -05:00
bob tellez
dbae1e7125 [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 24253444 by bob tellez in ue5-main branch]
2023-02-16 04:18:45 -05:00
cedric caillaud
84e0a41fe9 Geometry collection : make sure Resttransform are in sync with RestCollection to avoid scrambled assets in previews
#rb trivial
#preflight none

[CL 24253436 by cedric caillaud in ue5-main branch]
2023-02-16 04:18:27 -05:00
bryan sefcik
93b6bde4c9 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 24253387 by bryan sefcik in ue5-main branch]
2023-02-16 04:16:21 -05:00
cedric caillaud
d57752d7f2 Geometry collection : add support for root proxy and leaf meshes to using ISM or HISM
- added cvar to control this
- updated ISMPool to take a pereferHISM option when registering a mesh

#rb jeremy.moore
#preflight 63ec1631f36e1a5ece8b9064

[CL 24225362 by cedric caillaud in ue5-main branch]
2023-02-14 20:54:11 -05:00
cedric caillaud
bb4d124241 Geometry collection : fix warning when cooking GC with p.Chaos.GC.EnableCollisionParticles set to 0
- use skip attribute method instead of post copy remove attribute one

#rb benn.gallagher
#preflight none

[CL 24205978 by cedric caillaud in ue5-main branch]
2023-02-14 01:21:20 -05:00
cedric caillaud
b37451d0c3 Fix crash when simulating physics with a geometry collection with no rest collection assigned
#rb brice.criswell, michael.lentine
#jira UE-171743
#preflight 63ea64f48e7e896ad280d51e

[CL 24179994 by cedric caillaud in ue5-main branch]
2023-02-13 13:02:03 -05:00
cedric caillaud
90ae3d5dff geometry collection : add cvar to enable/disable collision particles on geometry collection
#rb benn.gallagher, brice.criswell, vincent.robert
#preflight

[CL 24138252 by cedric caillaud in ue5-main branch]
2023-02-11 13:04:49 -05:00
jimmy andrews
92852cf5b1 rework how internal faces are tracked and assigned materials in geometry collections:
- 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]
2023-02-11 12:37:57 -05:00
vincent robert
a7dc3bb763 Decrease Constant Data memory
#rb cedric.caillaud
#preflight 63e5190683340ac6cbf0b1ff

[CL 24106141 by vincent robert in ue5-main branch]
2023-02-09 16:18:01 -05:00
cedric caillaud
7fb487a175 Add cvar (p.Chaos.GC.ForceAutoAssignISMPool) to force auto assigning ISMPool to GC components - false by default
#rb none
#preflight none

[CL 24067014 by cedric caillaud in ue5-main branch]
2023-02-08 00:25:53 -05:00