java.lang.Object
gaiasky.util.gdx.contrib.postprocess.PostProcessorEffect
gaiasky.util.gdx.contrib.postprocess.effects.Raymarching
All Implemented Interfaces:
com.badlogic.gdx.utils.Disposable

public final class Raymarching
extends PostProcessorEffect
Implements a raymarching effect, usually for SDFs.
  • Field Summary

    Fields inherited from class gaiasky.util.gdx.contrib.postprocess.PostProcessorEffect

    enabled
  • Constructor Summary

    Constructors
    Constructor Description
    Raymarching​(java.lang.String fragmentShader, float viewportWidth, float viewportHeight)  
    Raymarching​(java.lang.String fragmentShader, int viewportWidth, int viewportHeight)  
  • Method Summary

    Modifier and Type Method Description
    void dispose()  
    void rebind()
    Concrete objects shall be responsible to recreate or rebind its own resources whenever its needed, usually when the OpenGL context is lost.
    void render​(com.badlogic.gdx.graphics.glutils.FrameBuffer src, com.badlogic.gdx.graphics.glutils.FrameBuffer dest, GaiaSkyFrameBuffer main)
    Concrete objects shall implements its own rendering, given the source and destination buffers.
    void setAdditional​(float[] additional)  
    void setAdditional​(float a, float b, float c, float d)  
    void setAdditional​(int index, float value)  
    void setAdditionalTexture​(com.badlogic.gdx.graphics.Texture tex)  
    void setCamInvView​(com.badlogic.gdx.math.Matrix4 civ)  
    void setFrustumCorners​(com.badlogic.gdx.math.Matrix4 frustumCorners)  
    void setModelView​(com.badlogic.gdx.math.Matrix4 civ)  
    void setPos​(com.badlogic.gdx.math.Vector3 pos)  
    void setTime​(float seconds)  
    void setViewportSize​(int width, int height)  
    void setZfarK​(float zfar, float k)  

    Methods inherited from class gaiasky.util.gdx.contrib.postprocess.PostProcessorEffect

    isEnabled, restoreViewport, setEnabled

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • Raymarching

      public Raymarching​(java.lang.String fragmentShader, float viewportWidth, float viewportHeight)
    • Raymarching

      public Raymarching​(java.lang.String fragmentShader, int viewportWidth, int viewportHeight)
  • Method Details

    • setViewportSize

      public void setViewportSize​(int width, int height)
    • setFrustumCorners

      public void setFrustumCorners​(com.badlogic.gdx.math.Matrix4 frustumCorners)
    • setCamInvView

      public void setCamInvView​(com.badlogic.gdx.math.Matrix4 civ)
    • setModelView

      public void setModelView​(com.badlogic.gdx.math.Matrix4 civ)
    • setPos

      public void setPos​(com.badlogic.gdx.math.Vector3 pos)
    • setTime

      public void setTime​(float seconds)
    • setZfarK

      public void setZfarK​(float zfar, float k)
    • setAdditionalTexture

      public void setAdditionalTexture​(com.badlogic.gdx.graphics.Texture tex)
    • setAdditional

      public void setAdditional​(float[] additional)
    • setAdditional

      public void setAdditional​(float a, float b, float c, float d)
    • setAdditional

      public void setAdditional​(int index, float value)
    • dispose

      public void dispose()
    • rebind

      public void rebind()
      Description copied from class: PostProcessorEffect
      Concrete objects shall be responsible to recreate or rebind its own resources whenever its needed, usually when the OpenGL context is lost. Eg., framebuffer textures should be updated and shader parameters should be reuploaded/rebound.
      Specified by:
      rebind in class PostProcessorEffect
    • render

      public void render​(com.badlogic.gdx.graphics.glutils.FrameBuffer src, com.badlogic.gdx.graphics.glutils.FrameBuffer dest, GaiaSkyFrameBuffer main)
      Description copied from class: PostProcessorEffect
      Concrete objects shall implements its own rendering, given the source and destination buffers.
      Specified by:
      render in class PostProcessorEffect