I need to provide additional parameters to the material instance used by CesiumGltfComponent, but I’m not sure of how I could do that.
For what I see in the plugin code, the best place to register shader parameters is inside “UCesiumGltfComponent::CreateOnGameThread” (“loadModelGameThreadPart”) function… This function is called inside “UnrealResourcePreparer::prepareInMainThread”, and this class is instanced inside “ACesium3DTileset::LoadTileset”. The cleaner would be to allow user dev to override the default “UnrealResourcePreparer” with a custom one.
Another method would be to create a custom tileset actor (inheriting from “ACesiumTileset”) and check new “UCesiumGltfComponent” on each tick, to setup our additional shader params, but I think it’s a more “hackish” way of doing.
What do you think of those 2 approach, and what would you recommend to provide programmatically additional parameters to the shader (any other idea?)