de.grogra.imp3d.glsl.light.shadow
Class GLSLShadowMap
java.lang.Object
de.grogra.imp3d.glsl.utility.GLSLTexture
de.grogra.imp3d.glsl.utility.TextureRenderTarget
de.grogra.imp3d.glsl.light.shadow.GLSLShadowMap
- All Implemented Interfaces:
- FBOAttachment, GLSLOpenGLObject
- Direct Known Subclasses:
- GLSLShadowCube, GLSLShadowParallel, GLSLShadowPerspective
public abstract class GLSLShadowMap
- extends TextureRenderTarget
This class is the base for all shadowmaps.
- Author:
- Konni Hartmann
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
GRAPH_STAMP
protected int GRAPH_STAMP
invalid
protected boolean invalid
GLSLShadowMap
public GLSLShadowMap()
create
public abstract boolean create(javax.media.opengl.GL gl)
create
public abstract boolean create(javax.media.opengl.GL gl,
int width,
int height)
delete
public void delete(OpenGLState glState,
boolean javaonly)
- Specified by:
delete
in interface FBOAttachment
- Overrides:
delete
in class TextureRenderTarget
fill
public abstract void fill(GLSLDisplay disp,
OpenGLState glState)
getDefaultLightType
public abstract java.lang.Class<?> getDefaultLightType()
getInstance
public abstract GLSLShadowMap getInstance()
getLightToView
public Matrix4d getLightToView()
getLightToView
public Matrix4d getLightToView(int side)
getSize
public abstract int getSize()
getViewToClip
public Matrix4d getViewToClip()
renderCachedScene
protected void renderCachedScene(GLSLDisplay disp,
OpenGLState glState,
Matrix4d round)
setCamDir
public void setCamDir(Vector3d camDir)
setCamPos
public void setCamPos(Point4d camPos)
setInvalid
public void setInvalid()
- Mark this Shadow map as invalid may be called to mark changes in matrices
that are not covered by changes in graph (for example caching may present
a instance to other lightsources)
setLightTransf
public void setLightTransf(LightPos light)
setupTextureMatrices
public abstract void setupTextureMatrices(OpenGLState glState,
Matrix4d ViewToWorld,
LightPos light)