Interface LightTypeRenderer<T extends Light>

Type Parameters:
T - The type of lights to render
All Superinterfaces:
AutoCloseable, org.lwjgl.system.NativeResource
All Known Implementing Classes:
AreaLightRenderer, DirectionalLightRenderer, IndirectLightRenderer, IndirectPointLightRenderer, InstancedLightRenderer, InstancedPointLightRenderer

public interface LightTypeRenderer<T extends Light> extends org.lwjgl.system.NativeResource
Renders all lights of a specific type.
  • Method Summary

    Modifier and Type
    Method
    Description
    static void
    createInvertedCube(com.mojang.blaze3d.vertex.VertexConsumer builder)
    Draws a unit inverted cube into the specified buffer
    static void
    createQuad(com.mojang.blaze3d.vertex.VertexConsumer builder)
    Draws a unit quad into the specified buffer
    int
     
    void
    prepareLights(LightRenderer lightRenderer, List<T> lights, Set<T> removedLights, CullFrustum frustum)
    Prepares the specified lights to be rendered.
    void
    renderLights(LightRenderer lightRenderer, List<T> lights)
    Renders all prepared lights with this renderer.

    Methods inherited from interface org.lwjgl.system.NativeResource

    close, free
  • Method Details

    • prepareLights

      @OverrideOnly void prepareLights(LightRenderer lightRenderer, List<T> lights, Set<T> removedLights, CullFrustum frustum)
      Prepares the specified lights to be rendered.
      Parameters:
      lightRenderer - The light renderer instance
      lights - The lights to render
      removedLights - The lights that will be removed this frame
      frustum - The culling view frustum
    • renderLights

      @OverrideOnly void renderLights(LightRenderer lightRenderer, List<T> lights)

      Renders all prepared lights with this renderer.

      Shaders, custom uniforms, and the way lights are rendered is up to the individual renderer.

      Parameters:
      lightRenderer - The light renderer instance
      lights - The lights to render
    • getVisibleLights

      int getVisibleLights()
      Returns:
      The number of lights visible last frame
    • createQuad

      static void createQuad(com.mojang.blaze3d.vertex.VertexConsumer builder)
      Draws a unit quad into the specified buffer
      Parameters:
      builder - The builder to draw into
    • createInvertedCube

      static void createInvertedCube(com.mojang.blaze3d.vertex.VertexConsumer builder)
      Draws a unit inverted cube into the specified buffer
      Parameters:
      builder - The builder to draw into