Renderer
classin packageklyn.graphics3d
public class Renderer implements AutoClosable
Renderer
All Implemented Interfaces: AutoClosable

Renderer with persistent mesh uploads and one native submission per frame. Windows and Linux/X11 use OpenGL 3.3: CPU submission work is O(visible nodes), while the GPU transforms vertices and shades fragments. KlynOS explicitly uses a CPU software rasterizer, with work proportional to geometry and covered pixels; identical batches reuse the previous image. It does not emulate a GPU. Use and close on the creating thread. Offscreen OpenGL needs a display; offscreen CPU rendering on KlynOS does not create a native window. Example: try renderer = Renderer(): renderer.render(scene, camera, 640, 480)

Properties
Modifier and Type Member Description
public readonly property deviceDescription
deviceDescription as String
Backend description after first render; explicitly identifies CPU on KlynOS.
public readonly property statistics
statistics as RenderStatistics
Counter snapshot, O(1), without GPU synchronization or CPU rendering.
Methods
Modifier and Type Member Description
public bindSurface
bindSurface(owner as Object, window as Object, x as Int, y as Int) as Void
Internal GUI binding, performed before the first render; does not create a GUI dependency in the scene API.
public capture
capture(path as String) as Void
Explicit synchronous framebuffer capture, BMP format.
public clearMeshCache
clearMeshCache() as Void
Releases cached meshes, retaining the backend.
public close
close() as Void
Releases native renderer resources, idempotently.
public recordSurface
recordSurface(painter as Object) as Void
Records a GUI viewport for clipping, overlays and explicit capture.
public render
render(scene as Scene, camera as PerspectiveCamera, width as Int, height as Int) as Void
Draws scene using the camera.
Inherited Methods
methodInherited Methods from AutoClosable: close