* Forward custom primitive data info to material baking
* Added Custom Primitive Data case to material baking engine test
* Also updated broken Material Baking tests screenshots as subtle differences are now occuring on shadows... Disabled shadows from the map light source to minimize noise in future test results
#rb JeanFrancois.Dube
#virtualized
[CL 32499424 by sebastien lussier in 5.4 branch]
- We can't simply enqueue a render command and `delete` the proxy.
- Call the `FMaterial::DeferredDeleteArray` helper function which will properly cancel shader compilation if in-flight.
#rb Sebastien.Lussier
#rnx
[CL 29864493 by jason nadro in ue5-main branch]
- Added GetRHICommandList() method to FMeshElementCollector.
- Removed global dynamic vertex / index buffers in favor of local variants.
- Added some locks to shared systems.
#rb stu.mckenna
#jira none
[CL 27800441 by zach bethel in ue5-main branch]
* Prevent blocking call to UTexture::ForceUpdateTextureStreaming(). Some requests require the main thread to be ticked in order to run to completion.
#rb trivial
[CL 27434808 by sebastien lussier in ue5-main branch]
Please note that this change doesn't actually affect any baking results, because EmissiveColor always reads linear data from its HDR rendertarget regardless of PerPropertyColorSpace. The fix only affects the value returned by FMaterialBakingModule::IsLinearBake for EmissiveColor, which until now has been incorrect due to the missmatch between PerPropertyColorSpace and how EmissiveColor is actually baked.
#jira UE-184310
#review-25298709 @Jason.Nadro
#preflight 6450d1a70e33f2d51d22b142
[CL 25301160 by aidin abedi in ue5-main branch]
- Also moved FPrimitiveUniformShaderParametersBuilder to its own header to cut down rebuilding when changing scene & nanite definitions.
#rb jamie.hayes
#preflight 644919d41c2846595cfdbf28
[CL 25199110 by Ola Olsson in ue5-main branch]
Previous fix only works when mesh data is a quad, this amended fix works for arbitrary mesh data.
#jira UE-183148
#review @Jason.Nadro
#preflight 643ef22fb550f425ace042c9
[CL 25095680 by aidin abedi in ue5-main branch]
* In this case, instead of baking each mesh material property to it's own buffer, we can write all the meshes to the same buffer as their UVs are already the final ones that do not overlap
* Memory usage is greatly reduced (in test case with ~300 materials to bake, peak is reduced by 5.5GB)
* A lot faster to process (~2x in most cases) as we are doing a single RT readback per baked material property
* We can also skip the final merge of the baked outputs, as we have a single one
Refactored the material baking module to have both code paths (single output and multi outputs) share as much code as possible
#rb jeanfrancois.dube
#preflight 63eba6e0284e76cdadbecb48
[CL 24226039 by sebastien lussier in ue5-main branch]