Open ManuelKugelmann opened 2 years ago
Hi @ManuelKugelmann thanks for the report. We are aware of this, but didn't think it's necessary to provide such kind of extensibility. We will discuss this internally, meanwhile if you have code which demonstrates what you want to do, would be great if you can offer it as a branch/PR so that we can use it as an example
Imho this is one of the more obscure parts of the build system. To add a new platform I have to touch at least to locations: the dependencies in the main CMakeLists.txt and the platform list in rendererModulePerConfig.cmake. Maybe inserting an entry into the list could be moved into the dependency, similar to how the MIXINs are set?
@violinyanev On what I did: I created an additional Platform that acts as a Spout-Sender (https://spout.zeal.co/) so that ramses renderer output can be used as a texture inside DirectX and OpenGL engines like Unity3D, Unreal, etc.. I'll check if I can contribute that to ramses OSS.
In the future I might also add a ramses client that has a Spout-Receiver to inject external rendering into the ramses system as a streaming texture...
Hi @ManuelKugelmann alright, so you need to do special stuff on the spout-specific backend I guess. We are aware that the rendering platform code is suboptimal, build-system wise and also class-wise. Contributions which make a reasonable proposal how to improve it are welcome ;) Will see what we can do to make the extension of the classes easier for you, but as I said, it would be a lot easier if you can just share the code so that we can also test our implementation works. You are also welcome to suggest what you need/your hurrent "hacks".
Will check how much I can share.
The current setup makes it difficult to extend ramses in a purely additive way. I cannot easily add my custom platform into the existing build chain through extension of this configuration at a place where I do not need to modify any original ramses files.