![]() |
RAMSES Documentation
27.0.130
Information for RAMSES users and developers
|
Ramses provides logs and various tools to help find issues in your application. In the sections below you will find hints where to find those and how to use them.
The easiest way to find problems in your content/scene is to use the validation layer of the Ramses client. The validation is an optional layer of Ramses which shows hints of possible undefined behavior, performance problems, or missing data which can cause your content to render not as expected. This is similar to how Vulkan works - you can enable the validation to find issues, and disable it for production to save resources.
Each ramses::StatusObject derived class has a validate() method. Call it to find issues in that object. You can do this for an entire scene by calling validate() on a ramses::Scene, ramses::RamsesRenderer or any other object. Validation works recursively, i.e. a RamsesClient will validate all its scenes, a ramses::Scene will validate all its scene objects, and so on.
For a detailed overview of the various ways to profile your content and optimize performance, refer to the Performance and profiling section.
Compiling shaders typically consumes a lot of compute time and resources. RAMSES provides a chain of command line tools to help reduce the time for loading effects for final deployments by preparing binary versions of them and deploying them as cache directly on the renderer side. The last tool in the chain - the Resource Packer, can be used to combine not only effects into files, but also other types of RAMSES resources.
Storing GLSL as binary shaders
Storing effects in resource files
Packing resources into larger files
Full Example of how to use Shader Tools in RAMSES
Ramses scenes can be stored to a file ramses::Scene::saveToFile(). These scene files can be viewed and inspected by the ramses-scene-viewer.
Ramses uses DLT to publish logs. See General introduction to Diagnostic Log and Trace (DLT) for an overview of DLT in general, and Using DLT with RAMSES for details on usage of DLT in the Ramses context.