|
From: <axl...@us...> - 2009-12-14 20:16:47
|
Revision: 626
http://hgengine.svn.sourceforge.net/hgengine/?rev=626&view=rev
Author: axlecrusher
Date: 2009-12-14 20:16:40 +0000 (Mon, 14 Dec 2009)
Log Message:
-----------
updates
Modified Paths:
--------------
Mercury2/src/GLHeaders.h
Mercury2/src/MercuryNode.h
Mercury2/src/Shader.cpp
Mercury2/src/StateChanger.cpp
Modified: Mercury2/src/GLHeaders.h
===================================================================
--- Mercury2/src/GLHeaders.h 2009-11-18 23:03:51 UTC (rev 625)
+++ Mercury2/src/GLHeaders.h 2009-12-14 20:16:40 UTC (rev 626)
@@ -1,8 +1,8 @@
#ifndef GLHEADERS_H
#define GLHEADERS_H
-
-#include <configuration.h>
+#include <configuration.h>
+
#ifdef WIN32
#include <windows.h>
#else
@@ -29,6 +29,7 @@
uint32_t e = GLCALL( glGetError() ); \
if ( e != GL_NO_ERROR ) { \
LOG.Write(ssprintf("GL Error:%s", GlError2String(e).c_str())); \
+printf("GL Error:%s", GlError2String(e).c_str()); \
assert(0); } }
#define CHECKFBO { \
Modified: Mercury2/src/MercuryNode.h
===================================================================
--- Mercury2/src/MercuryNode.h 2009-11-18 23:03:51 UTC (rev 625)
+++ Mercury2/src/MercuryNode.h 2009-12-14 20:16:40 UTC (rev 626)
@@ -34,6 +34,8 @@
MercuryNode();
virtual ~MercuryNode();
+ virtual void Init() {};
+
virtual void AddChild(MercuryNode* n);
virtual void RemoveChild(MercuryNode* n);
Modified: Mercury2/src/Shader.cpp
===================================================================
--- Mercury2/src/Shader.cpp 2009-11-18 23:03:51 UTC (rev 625)
+++ Mercury2/src/Shader.cpp 2009-12-14 20:16:40 UTC (rev 626)
@@ -160,7 +160,7 @@
f2->Read( Buffer, i );
f2->Close();
Buffer[i] = '\0';
- LOG.Write("Compiling: %s"+s2);
+ LOG.Write("Compiling: "+s2);
if( !LoadShaderVert( Buffer ) )
{
if( f3 )
@@ -178,7 +178,7 @@
f3->Read( Buffer, i );
f3->Close();
Buffer[i] = '\0';
- LOG.Write("Compiling: %s"+s3);
+ LOG.Write("Compiling: "+s3);
if( !LoadShaderGeom( Buffer ) )
{
free( Buffer );
@@ -485,11 +485,13 @@
GLCALL( glUniform1iARB( location, x.value.iInt ) );
break;
case ShaderAttribute::TYPE_FLOAT:
+ GLCALL( glUniform1fARB( location, x.value.fFloat ) );
+ break;
case ShaderAttribute::TYPE_FLOATV4:
GLCALL( glUniform4fvARB( location, 1, &x.value.fFloatV4[0] ) );
break;
case ShaderAttribute::TYPE_MATRIX:
- GLCALL( glUniformMatrix4fvARB(location, 1, 1, x.value.matrix) ); //transpase too
+ GLCALL( glUniformMatrix4fvARB(location, 1, 1, x.value.matrix) ); //transpose too
break;
case ShaderAttribute::TYPE_INT4:
GLCALL( glUniform4ivARB( location, 1, x.value.iInts ) );
Modified: Mercury2/src/StateChanger.cpp
===================================================================
--- Mercury2/src/StateChanger.cpp 2009-11-18 23:03:51 UTC (rev 625)
+++ Mercury2/src/StateChanger.cpp 2009-12-14 20:16:40 UTC (rev 626)
@@ -112,7 +112,36 @@
REGISTER_STATECHANGE( DepthTest );
+class DepthWrite : public StateChange
+{
+public:
+ DepthWrite( const MVector< MString > & sParameters ) : StateChange( sParameters )
+ {
+ if( sParameters.size() < 1 )
+ {
+ LOG.Write( ssprintf( "Error: DepthWrite state has invalid number of parameters(%d).", sParameters.size() ) );
+ return;
+ }
+ bEnable = StrToBool( sParameters[0] );
+ }
+
+ void Stringify( MString & sOut )
+ {
+ sOut = ssprintf( "%f", bEnable );
+ }
+
+ void Activate()
+ {
+ glDepthMask( bEnable );
+ }
+
+ STATECHANGE_RTTI( DepthWrite );
+ bool bEnable;
+};
+
+REGISTER_STATECHANGE( DepthWrite );
+
//////////////////////////////////////STATE CHANGE CHUNK//////////////////////////////////////
StateChangeRegister * StateChangeRegister::m_Instance;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|