|
From: <axl...@us...> - 2009-08-02 02:21:00
|
Revision: 451
http://hgengine.svn.sourceforge.net/hgengine/?rev=451&view=rev
Author: axlecrusher
Date: 2009-08-02 02:20:50 +0000 (Sun, 02 Aug 2009)
Log Message:
-----------
more fixes and uniforms for shaders
Modified Paths:
--------------
Mercury2/src/Camera.cpp
Mercury2/src/GLHelpers.cpp
Mercury2/src/MercuryFBO.cpp
Mercury2/src/RawImageData.cpp
Mercury2/src/RawImageData.h
Modified: Mercury2/src/Camera.cpp
===================================================================
--- Mercury2/src/Camera.cpp 2009-08-01 17:48:06 UTC (rev 450)
+++ Mercury2/src/Camera.cpp 2009-08-02 02:20:50 UTC (rev 451)
@@ -3,6 +3,8 @@
#include <MercuryInput.h>
#include <Viewport.h>
+#include <Shader.h>
+
REGISTER_NODE_TYPE(CameraNode);
CameraNode::CameraNode()
@@ -37,6 +39,14 @@
m_lookAt = m_lookAt.Rotate( r );
m_lookAt.NormalizeSelf();
LOOKAT = m_lookAt;
+
+ ShaderAttribute sa;
+ sa.type = ShaderAttribute::TYPE_FLOATV4;
+ sa.value.fFloatV4[0] = LOOKAT.GetX();
+ sa.value.fFloatV4[1] = LOOKAT.GetY();
+ sa.value.fFloatV4[2] = LOOKAT.GetZ();
+ sa.value.fFloatV4[3] = 0;
+ Shader::SetAttribute("HG_LookVector", sa);
r.W() *= -1; //reverse angle for camera
Modified: Mercury2/src/GLHelpers.cpp
===================================================================
--- Mercury2/src/GLHelpers.cpp 2009-08-01 17:48:06 UTC (rev 450)
+++ Mercury2/src/GLHelpers.cpp 2009-08-02 02:20:50 UTC (rev 451)
@@ -91,10 +91,14 @@
case RGBA:
return GL_RGBA;
case RGB16:
- return GL_RGBA16;
+ return GL_RGB16;
case RGBA16:
return GL_RGBA16;
- break;
+ case RGBA16F:
+ return GL_RGBA16F_ARB;
+ case RGBA32F:
+ printf( "GL_RGBA32F_ARB unsupported using GL_RGBA16F_ARB\n" );
+ return GL_RGBA16F_ARB;
default:
printf( "Unsupported color byte type (%d)\n", cbt );
return GL_RGB;
Modified: Mercury2/src/MercuryFBO.cpp
===================================================================
--- Mercury2/src/MercuryFBO.cpp 2009-08-01 17:48:06 UTC (rev 450)
+++ Mercury2/src/MercuryFBO.cpp 2009-08-02 02:20:50 UTC (rev 451)
@@ -11,7 +11,7 @@
for (uint8_t i = 0; i < 4; ++i)
{
m_textures[i] = NULL;
- m_cbt[i] = RGB;
+ m_cbt[i] = RGBA;
}
}
Modified: Mercury2/src/RawImageData.cpp
===================================================================
--- Mercury2/src/RawImageData.cpp 2009-08-01 17:48:06 UTC (rev 450)
+++ Mercury2/src/RawImageData.cpp 2009-08-02 02:20:50 UTC (rev 451)
@@ -21,7 +21,11 @@
return RGB16;
else if (s == "RGBA16")
return RGBA16;
-
+ else if (s == "RGBA16F")
+ return RGBA16F;
+ else if (s == "RGBA32F")
+ return RGBA32F;
+ printf("Color Byte Type %s unknown\n", s.c_str());
return RGB;
}
Modified: Mercury2/src/RawImageData.h
===================================================================
--- Mercury2/src/RawImageData.h 2009-08-01 17:48:06 UTC (rev 450)
+++ Mercury2/src/RawImageData.h 2009-08-02 02:20:50 UTC (rev 451)
@@ -11,6 +11,8 @@
RGBA,
RGB16,
RGBA16,
+ RGBA16F,
+ RGBA32F
};
ColorByteType ToColorByteType(const MString& s);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|