aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2012-04-19 18:21:34 -0700
committerAlon Zakai <alonzakai@gmail.com>2012-04-19 18:21:34 -0700
commit2ee73207c8a565ef21fbf3a5869cf5a8e83f8780 (patch)
tree74bd3353614dea23ba75cf9bfa9e8d4fd3b9f4a9
parent04753136fa88a1a046f3420b650a6e3f4d731db8 (diff)
some color and normal stubs for immediate mode
-rw-r--r--src/library_gl.js19
1 files changed, 16 insertions, 3 deletions
diff --git a/src/library_gl.js b/src/library_gl.js
index 59782b2c..1b951826 100644
--- a/src/library_gl.js
+++ b/src/library_gl.js
@@ -1111,10 +1111,14 @@ var LibraryGL = {
// Clientside attributes
TEXTURE: 0,
VERTEX: 1,
- NUM_ATTRIBUTES: 2,
+ NORMAL: 2,
+ COLOR: 3,
+ NUM_ATTRIBUTES: 4,
ATTRIBUTE_BY_NAME: {
'T': 0,
- 'V': 1
+ 'V': 1,
+ 'N': 2,
+ 'C': 3
},
totalEnabledClientAttributes: 0,
@@ -1410,6 +1414,10 @@ var LibraryGL = {
GL.immediate.enabledClientAttributes[GL.immediate.TEXTURE] = !disable; break;
case 0x8074: // GL_VERTEX_ARRAY
GL.immediate.enabledClientAttributes[GL.immediate.VERTEX] = !disable; break;
+ case 0x8075: // GL_NORMAL_ARRAY
+ GL.immediate.enabledClientAttributes[GL.immediate.NORMAL] = !disable; break;
+ case 0x8076: // GL_COLOR_ARRAY
+ GL.immediate.enabledClientAttributes[GL.immediate.COLOR] = !disable; break;
default:
throw 'unhandled clientstate: ' + cap;
}
@@ -1426,10 +1434,15 @@ var LibraryGL = {
glTexCoordPointer: function(size, type, stride, pointer) {
GL.immediate.setClientAttribute(GL.immediate.TEXTURE, 'T', size, type, stride, pointer);
},
-
glVertexPointer: function(size, type, stride, pointer) {
GL.immediate.setClientAttribute(GL.immediate.VERTEX, 'V', size, type, stride, pointer);
},
+ glNormalPointer: function(size, type, stride, pointer) {
+ GL.immediate.setClientAttribute(GL.immediate.NORMAL, 'N', size, type, stride, pointer);
+ },
+ glColorPointer: function(size, type, stride, pointer) {
+ GL.immediate.setClientAttribute(GL.immediate.COLOR, 'C', size, type, stride, pointer);
+ },
// OpenGL Immediate Mode matrix routines.
// Note that in the future we might make these available only in certain modes.