RAMSES is designed to optimize the rendering of content from the entertainment systems, containing several screens.
BMW has released the sources code of its project RAMSES (Rendering Architecture for Multi-Screen EnvironmentS) under the GENIVI in-vehicle infotainment alliance.
RAMSES implements a distributed system for rendering 3D content with a focus on ensuring high performance in terms of bandwidth and resource consumption.
The code, written in C++, is licensed under the MPL 2.0 (Mozilla Public License).
According to KTelegram, RAMSES is designed to optimize the rendering of content from the entertainment systems, containing several screens. It is a layer that applies a client-server model for the rendering. One process generates the 3D content and the other process is engaged in its rendering. Rendering can be performed on another device or in a virtual environment.
RAMSES provides piping around existing OpenGL implementations, which allows to apply the proposed model of distributed rendering for all OpenGL applications. It supports different versions of OpenGL (OpenGL ES 3.0+, OpenGL 4.2, 4.5, etc.), allowing developers to use one code base on different platforms that provide different OpenGL versions.
RAMSES also provides its own low-level API which encapsulates and packages the commands and resources to minimize traffic between the client and the server. This allows the transmission of high-quality 3D content over conventional networks for display, without delays and gaps.