Package icyllis.arc3d.granite

# Class UniformTracker

java.lang.Object
icyllis.arc3d.granite.UniformTracker

public class UniformTracker extends Object

See Also:
  - `UniformDataCache`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `UniformTracker()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `bindUniforms(int binding, DrawCommandList commandList)`
  `boolean`
  `setCurrentUniforms(int pipelineIndex, int uniformIndex)`
  `int`
  `trackUniforms(int pipelineIndex, IntBuffer data)`
  Maps a given {pipeline index, uniform data cache index} pair to a buffer index within the pipeline's accumulated array of uniforms.
  `boolean`
  `writeUniforms(DrawBufferManager bufferManager)`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### UniformTracker

    public UniformTracker()

- ## Method Details

  - ### trackUniforms

    public int trackUniforms(int pipelineIndex, @Nullable IntBuffer data)
    Maps a given {pipeline index, uniform data cache index} pair to a buffer index within the pipeline's accumulated array of uniforms.
    Parameters:
      `data` - a stable pointer to uniform data
    Returns:
      uniform index

  - ### writeUniforms

    public boolean writeUniforms(DrawBufferManager bufferManager)

  - ### setCurrentUniforms

    public boolean setCurrentUniforms(int pipelineIndex, int uniformIndex)

  - ### bindUniforms

    public void bindUniforms(int binding, DrawCommandList commandList)