java.lang.Object
com.jozufozu.flywheel.backend.instancing.batching.BatchingEngine
All Implemented Interfaces:
MaterialManager, Engine, RenderDispatcher

public class BatchingEngine extends Object implements Engine
  • Constructor Details

    • BatchingEngine

      public BatchingEngine()
  • Method Details

    • state

      public MaterialGroup state(RenderLayer layer, net.minecraft.client.renderer.RenderType state)
      Description copied from interface: MaterialManager
      Get a material group that will render in the given layer with the given state.
      Specified by:
      state in interface MaterialManager
      Parameters:
      layer - The RenderLayer you want to draw in.
      state - The RenderType you need to draw with.
      Returns:
      A material group whose children will
    • getOriginCoordinate

      public net.minecraft.core.Vec3i getOriginCoordinate()
      Specified by:
      getOriginCoordinate in interface MaterialManager
    • render

      public void render(TaskEngine taskEngine, RenderLayerEvent event)
      Description copied from interface: RenderDispatcher
      Render every model for every material.
      Specified by:
      render in interface RenderDispatcher
      event - Context for rendering.
    • delete

      public void delete()
      Specified by:
      delete in interface RenderDispatcher
    • beginFrame

      public void beginFrame(net.minecraft.client.Camera info)
      Description copied from interface: RenderDispatcher
      Maintain the integer origin coordinate to be within a certain distance from the camera in all directions.

      This prevents floating point precision issues at high coordinates.

      Specified by:
      beginFrame in interface RenderDispatcher
    • addDebugInfo

      public void addDebugInfo(List<String> info)
      Specified by:
      addDebugInfo in interface Engine