aboutsummaryrefslogtreecommitdiffstats
path: root/src/jogl/classes/jogamp/opengl/util/glsl/GLSLArrayHandler.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/jogl/classes/jogamp/opengl/util/glsl/GLSLArrayHandler.java')
-rw-r--r--src/jogl/classes/jogamp/opengl/util/glsl/GLSLArrayHandler.java17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/jogl/classes/jogamp/opengl/util/glsl/GLSLArrayHandler.java b/src/jogl/classes/jogamp/opengl/util/glsl/GLSLArrayHandler.java
index d2fc52d5c..96bb02b19 100644
--- a/src/jogl/classes/jogamp/opengl/util/glsl/GLSLArrayHandler.java
+++ b/src/jogl/classes/jogamp/opengl/util/glsl/GLSLArrayHandler.java
@@ -33,8 +33,9 @@ import java.nio.Buffer;
import javax.media.opengl.GL;
import javax.media.opengl.GL2ES2;
+import jogamp.opengl.util.GLArrayHandler;
+
import com.jogamp.opengl.util.GLArrayDataEditable;
-import com.jogamp.opengl.util.GLArrayHandler;
import com.jogamp.opengl.util.glsl.ShaderState;
/**
@@ -43,10 +44,8 @@ import com.jogamp.opengl.util.glsl.ShaderState;
*/
public class GLSLArrayHandler implements GLArrayHandler {
private GLArrayDataEditable ad;
- private ShaderState st;
- public GLSLArrayHandler(ShaderState st, GLArrayDataEditable ad) {
- this.st = st;
+ public GLSLArrayHandler(GLArrayDataEditable ad) {
this.ad = ad;
}
@@ -54,9 +53,10 @@ public class GLSLArrayHandler implements GLArrayHandler {
throw new UnsupportedOperationException();
}
- public final void syncData(GL gl, boolean enable) {
+ public final void syncData(GL gl, boolean enable, Object ext) {
final GL2ES2 glsl = gl.getGL2ES2();
-
+ final ShaderState st = (ShaderState) ext;
+
if(enable) {
final Buffer buffer = ad.getBuffer();
/*
@@ -100,9 +100,10 @@ public class GLSLArrayHandler implements GLArrayHandler {
}
}
- public final void enableState(GL gl, boolean enable) {
+ public final void enableState(GL gl, boolean enable, Object ext) {
final GL2ES2 glsl = gl.getGL2ES2();
-
+ final ShaderState st = (ShaderState) ext;
+
if(enable) {
st.enableVertexAttribArray(glsl, ad);
} else {