diff --git a/nanoWrap.cpp b/nanoWrap.cpp
index 3a6fb389186ffabacd6c7c2f95abab39d0631dd8..3e88b0f8150d9c6a2b16dc5388ec49c16c0e525f 100644 (file)
--- a/nanoWrap.cpp
+++ b/nanoWrap.cpp
GLboolean depth_test;
GLboolean dither;
GLboolean fog;
- GLboolean lighti;
+ GLboolean light0;
+ GLboolean light1;
+ GLboolean light2;
+ GLboolean light3;
+ GLboolean light4;
+ GLboolean light5;
+ GLboolean light6;
+ GLboolean light7;
GLboolean lighting;
GLboolean line_smooth;
GLboolean matrix_palette_oes;
GL_FALSE,
GL_FALSE,
GL_FALSE,
+ GL_FALSE,
+ GL_FALSE,
+ GL_FALSE,
+ GL_FALSE,
+ GL_FALSE,
+ GL_FALSE,
+ GL_FALSE,
GL_TRUE,
GL_FALSE,
GL_FALSE,
static struct nanotmuState *activetmuState = &tmuState0;
-extern "C++" GlESInterface *glEsImpl;
+extern GlESInterface *glEsImpl;
static GLenum wrapperPrimitiveMode = GL_QUADS;
GLboolean useTexCoordArray = GL_FALSE;
*ptrIndexArray++ = indexCount++;
*ptrIndexArray++ = indexCount++;
*ptrIndexArray++ = indexCount++;
- int vcount = ( ( vertexCount - vertexMark ) - 3 );
+ int vcount = ( ( vertexCount - vertexMark ) - 3 );
for ( int count = 0; count < vcount; count++ )
{
*ptrIndexArray++ = indexbase;
break;
}
case GL_FOG:
- //case GL_LIGHTi
+ {
+ if ( !nanoglState.fog )
{
- if ( !nanoglState.fog )
- {
- nanoglState.fog = GL_TRUE;
- statechanged = GL_TRUE;
- }
- break;
+ nanoglState.fog = GL_TRUE;
+ statechanged = GL_TRUE;
+ }
+ break;
+ }
+ case GL_LIGHT0:
+ {
+ if ( !nanoglState.light0 )
+ {
+ nanoglState.light0 = GL_TRUE;
+ statechanged = GL_TRUE;
+ }
+ break;
+ }
+ case GL_LIGHT1:
+ {
+ if ( !nanoglState.light1 )
+ {
+ nanoglState.light1 = GL_TRUE;
+ statechanged = GL_TRUE;
+ }
+ break;
+ }
+ case GL_LIGHT2:
+ {
+ if ( !nanoglState.light2 )
+ {
+ nanoglState.light2 = GL_TRUE;
+ statechanged = GL_TRUE;
+ }
+ break;
+ }
+ case GL_LIGHT3:
+ {
+ if ( !nanoglState.light3 )
+ {
+ nanoglState.light3 = GL_TRUE;
+ statechanged = GL_TRUE;
+ }
+ break;
+ }
+ case GL_LIGHT4:
+ {
+ if ( !nanoglState.light4 )
+ {
+ nanoglState.light4 = GL_TRUE;
+ statechanged = GL_TRUE;
+ }
+ break;
+ }
+ case GL_LIGHT5:
+ {
+ if ( !nanoglState.light5 )
+ {
+ nanoglState.light5 = GL_TRUE;
+ statechanged = GL_TRUE;
+ }
+ break;
+ }
+ case GL_LIGHT6:
+ {
+ if ( !nanoglState.light6 )
+ {
+ nanoglState.light6 = GL_TRUE;
+ statechanged = GL_TRUE;
+ }
+ break;
+ }
+ case GL_LIGHT7:
+ {
+ if ( !nanoglState.light7 )
+ {
+ nanoglState.light7 = GL_TRUE;
+ statechanged = GL_TRUE;
}
+ break;
+ }
case GL_LIGHTING:
{
if ( !nanoglState.lighting )
break;
}
case GL_FOG:
- //case GL_LIGHTi
+ {
+ if ( nanoglState.fog )
{
- if ( nanoglState.fog )
- {
- nanoglState.fog = GL_FALSE;
- statechanged = GL_TRUE;
- }
- break;
+ nanoglState.fog = GL_FALSE;
+ statechanged = GL_TRUE;
+ }
+ break;
+ }
+ case GL_LIGHT0:
+ {
+ if ( !nanoglState.light0 )
+ {
+ nanoglState.light0 = GL_FALSE;
+ statechanged = GL_TRUE;
+ }
+ break;
+ }
+ case GL_LIGHT1:
+ {
+ if ( !nanoglState.light1 )
+ {
+ nanoglState.light1 = GL_FALSE;
+ statechanged = GL_TRUE;
+ }
+ break;
+ }
+ case GL_LIGHT2:
+ {
+ if ( !nanoglState.light2 )
+ {
+ nanoglState.light2 = GL_FALSE;
+ statechanged = GL_TRUE;
+ }
+ break;
+ }
+ case GL_LIGHT3:
+ {
+ if ( !nanoglState.light3 )
+ {
+ nanoglState.light3 = GL_FALSE;
+ statechanged = GL_TRUE;
+ }
+ break;
+ }
+ case GL_LIGHT4:
+ {
+ if ( !nanoglState.light4 )
+ {
+ nanoglState.light4 = GL_FALSE;
+ statechanged = GL_TRUE;
+ }
+ break;
+ }
+ case GL_LIGHT5:
+ {
+ if ( !nanoglState.light5 )
+ {
+ nanoglState.light5 = GL_FALSE;
+ statechanged = GL_TRUE;
+ }
+ break;
+ }
+ case GL_LIGHT6:
+ {
+ if ( !nanoglState.light6 )
+ {
+ nanoglState.light6 = GL_FALSE;
+ statechanged = GL_TRUE;
+ }
+ break;
+ }
+ case GL_LIGHT7:
+ {
+ if ( !nanoglState.light7 )
+ {
+ nanoglState.light7 = GL_FALSE;
+ statechanged = GL_TRUE;
}
+ break;
+ }
case GL_LIGHTING:
{
if ( nanoglState.lighting )
@@ -1055,6 +1211,50 @@ void glOrtho( GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat
#endif
}
+// Rikku2000: Light
+void glLightf( GLenum light, GLenum pname, GLfloat param )
+{
+ FlushOnStateChange( );
+
+ glEsImpl->glLightf( light, pname, param );
+}
+void glLightfv( GLenum light, GLenum pname, const GLfloat *params )
+{
+ FlushOnStateChange( );
+
+ glEsImpl->glLightfv( light, pname, params );
+}
+void glLightModelf( GLenum pname, GLfloat param )
+{
+ FlushOnStateChange( );
+
+ glEsImpl->glLightModelf( pname, param );
+}
+void glLightModelfv( GLenum pname, const GLfloat *params )
+{
+ FlushOnStateChange( );
+
+ glEsImpl->glLightModelfv( pname, params );
+}
+void glMaterialf( GLenum face, GLenum pname, GLfloat param )
+{
+ FlushOnStateChange( );
+
+ glEsImpl->glMaterialf( face, pname, param );
+}
+void glMaterialfv( GLenum face, GLenum pname, const GLfloat *params )
+{
+ FlushOnStateChange( );
+
+ glEsImpl->glMaterialfv( face, pname, params );
+}
+void glColorMaterial( GLenum face, GLenum mode )
+{
+ FlushOnStateChange( );
+
+ glEsImpl->glColorMaterial( face, mode );
+}
+
void glMatrixMode( GLenum mode )
{
if ( nanoglState.matrixmode == mode )
GLfloat *vert = (GLfloat *)ptrVertexAttribArray++;
*vert++ = x;
*vert++ = y;
- *vert++ = z;
+ *vert++ = z;
#if defined( __MULTITEXTURE_SUPPORT__ )
memcpy( vert, ¤tVertexAttrib.red, 5 * sizeof( GLfloat ) );
#else
void glBufferSubDataARB( GLuint target, GLsizei offset, GLsizei size, void *buffer )
{
glEsImpl->glBufferSubData( target, offset, size, buffer );
-}
\ No newline at end of file
+}