Advanced Getting Started

= Moving from OpenGL Fixed Functions =

pmvMatrix
com.jogamp.opengl.util.PMVMatrix

pmvMatrix can make a matrix by using glTranslate/glRotate etc. FFP instructions.

Camera setup example
pmvMatrix.glMatrixMode(GLMatrixFunc.GL_PROJECTION); pmvMatrix.glLoadIdentity; pmvMatrix.gluPerspective(fov, aspect, zNear, zFar); pmvMatrix.glMatrixMode(GLMatrixFunc.GL_MODELVIEW); pmvMatrix.glLoadIdentity; pmvMatrix.glRotatef(360 - pitch, 1, 0, 0); pmvMatrix.glRotatef(360 - yaw, 0, 1, 0); pmvMatrix.glRotatef(360 - roll, 0, 0, 1); pmvMatrix.glTranslatef(-position.x, -position.y, -position.z); pmvMatrix.update;

Using with shaders example
GLUniformData pmvMatrixUniform;

init code... PMVMatrix pmvMatrix = ...; state.attachObject("pmvMatrix", pmvMatrix); pmvMatrixUniform = new GLUniformData("pmvMatrix", 4, 4, pmvMatrix.glGetPMvMatrixf); state.ownUniform(pmvMatrixUniform); state.uniform(gl, pmvMatrixUniform);

display code... state.uniform(gl, pmvMatrixUniform);

immModeSink
com.jogamp.opengl.util.ImmModeSink

ImmModeSink can make VBO by using FFP instructions