BMW has open-sourced its code to RAMSES ( Rendering Architecture for Multi-Screen EnvironmentS) under the GENIVI in-vehicle infotainment alliance. The code is under the Mozilla Public License 2.0 and will be useful to developers interested in distributed 3D rendering.
RAMSES implements a distributed system for rendering 3D content with a focus on ensuring high performance in terms of bandwidth and resource consumption.
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 and supports different versions of OpenGL (OpenGL ES 3.0+, OpenGL 4.2, 4.5, etc.)
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.