Use the RestCollection to access those attributes instead.
#rb cedric.caillaud, vincent.robert, Benn.Gallagher
[CL 29246315 by titouan deslandes in ue5-main branch]
- Removed old vertex-attribute centered buffers & useless translation code & replace with GPU-scene centric data
- Made the instance data persistent over scene proxy re-creates.
- Tracks per-instance data changes in the ISM & implement delta updates, remove need to call "MarkRenderStateDirty" for most instance updates
- Added preliminary ID-based interface for ISM such that users can forego needing to match the internals (e.g., remove swap, required when using indices).
- Unified the instance data use in the renderer (removed mix of old & new buffers and processing sites) - all code now sees orthogonalized transforms, the same as is in GPU-Scene.
- Added FInstanceSceneDataBuffers and moved instance data buffer arrays to that from the Primitive proxy
- Added FISMInstanceDataManager, which is responsible for tracking changes & dispatching updates. The ISMC owns one of these.
- Instance data update tasks are async and waits are only done when needed, e.g., for GPU-scene update moving this off RT and later in the frame.
- Added FInstanceDataSceneProxy, which is the owner of the scene data buffers and is updated by the manager by way if a shared reference with the primitive proxy.
- Removed FPerInstanceRenderData, ISMC::PerInstanceRenderData
- Removed FInstanceUpdateCmdBuffer
- Lumen, GPUScene, SceneCulling, RT, DF all now retrieve data from FInstanceSceneDataBuffers rather than a mix of previous buffers. All now use the primitive-relative space.
- Geometry Collection & Spline Mesh now manage FInstanceSceneDataBuffers, since they manipulate instance data in one way or another.
- Mass: contained re-implementations of significant internals of ISMC, converted to ID-based interface
- PCG: minor changes to avoid touching ISM internals.
#jira UE-191955,PLAY-11918
#rb jamie.hayes,jeremy.moore,jonathan.bard,krzysztof.narkowicz,mieszko.zielinski,julien.lheureux,zach.bethel,aleksander.netzel,yuriy.odonnell
[CL 28371398 by ola olsson in ue5-main branch]
- Create / Destroy render thread resources is now deferred until scene update and runs async.
- Added bConstrainToRenderThread option to FPrimitiveSceneProxy, which controls whether the scene pipe is used for proxy virtual function calls.
#rb krzysztof.narkowicz, christopher.waters
[CL 27799388 by zach bethel in ue5-main branch]
- RHICreate{Vertex, Index, Structured}Buffer
- RHICreate{ShaderResource, UnorderedAccess}View
- RHIUpdateUniformBuffer
- Various initialization / locking methods for helper buffer types in RHIUtilities.h
The goal is to continue to force resource creation through command lists to avoid surprises with moving things off the render thread.
#rb christopher.waters
[CL 26183242 by zach bethel in ue5-main branch]
- added new runtime field (NumStreamedClusters) to Nanite::FResources
- modified logic in Nanite::FStreamingManager to update number of streamted clusters when pages are installed/uninstalled.
- modified NaniteStreamOut to output number of clusters to be able to check for incorrect count on CPU side.
- On CitySample, peak NaniteRayTracing.StagingAuxiliaryDataBuffer size is reduced from close to 1GB to about 200MB.
#rb rune.stubbe
#preflight 646e3399f85111e06ca30efa
[CL 25607114 by tiago costa in ue5-main branch]
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]
Fixes crash caused by scene proxy recreating without the required render data update.
#preflight 63efee4713586f2c103e2673
[CL 24295291 by jeremy moore 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]