Class Renderer

java.lang.Object
dev.engine.graphics.common.Renderer
All Implemented Interfaces:
AutoCloseable

public class Renderer extends Object implements AutoCloseable
The single public entry point for all rendering operations.

Orchestrates the rendering pipeline by delegating to focused managers: MeshManager, TextureManager, UniformManager, RenderStateManager, and ShaderManager.

  • Constructor Details

  • Method Details

    • createHeadless

      public static Renderer createHeadless()
    • createCamera

      public Camera createCamera()
    • setActiveCamera

      public void setActiveCamera(Camera camera)
    • activeCamera

      public Camera activeCamera()
    • createMesh

      public Handle<MeshTag> createMesh(float[] vertices, int[] indices, VertexFormat format)
    • createMeshFromData

      public Handle<MeshTag> createMeshFromData(MeshData data)
    • shaderManager

      public ShaderManager shaderManager()
    • setDefaultPipeline

      public void setDefaultPipeline(Handle<PipelineResource> pipeline)
    • createPipeline

      public Handle<PipelineResource> createPipeline(PipelineDescriptor descriptor)
    • registerGlobalParams

      public <T extends Record> void registerGlobalParams(String name, Class<T> recordType, int binding)
    • registerGlobalParams

      public <T extends Record> void registerGlobalParams(String name, Class<T> recordType)
    • updateGlobalParams

      public void updateGlobalParams(String name, Object data)
    • globalParams

      public GlobalParamsRegistry globalParams()
    • setViewport

      public void setViewport(Viewport viewport)
    • setViewport

      public void setViewport(int width, int height)
    • viewport

      public Viewport viewport()
    • setClearColor

      public void setClearColor(float r, float g, float b, float a)
    • setDefault

      public <T> void setDefault(PropertyKey<RenderState, T> key, T value)
    • forceProperty

      public <T> void forceProperty(PropertyKey<RenderState, T> key, T value)
    • clearForced

      public <T> void clearForced(PropertyKey<RenderState, T> key)
    • updateTime

      public void updateTime(float time, float deltaTime)
      Updates engine timing. Called by BaseApplication each frame.
    • renderFrame

      public void renderFrame(List<Transaction> transactions)
    • addPostSceneCallback

      public void addPostSceneCallback(Runnable callback)
      Registers a callback to run after scene rendering but before endFrame.
    • removePostSceneCallback

      public void removePostSceneCallback(Runnable callback)
      Removes a previously registered post-scene callback.
    • queryCapability

      public <T> T queryCapability(DeviceCapability<T> capability)
    • supports

      public boolean supports(DeviceCapability<Boolean> feature)
    • backendName

      public String backendName()
    • device

      public RenderDevice device()
    • gpu

      public GpuResourceManager gpu()
    • meshManager

      public MeshManager meshManager()
    • textureManager

      public TextureManager textureManager()
    • uniformManager

      public UniformManager uniformManager()
    • renderStateManager

      public RenderStateManager renderStateManager()
    • renderTargetManager

      public RenderTargetManager renderTargetManager()
    • pipelineManager

      public PipelineManager pipelineManager()
    • samplerManager

      public SamplerManager samplerManager()
    • renderStats

      public RenderStats renderStats()
    • close

      public void close()
      Specified by:
      close in interface AutoCloseable