Browse Source

Minor cleanup

Alexander Szpakowski 12 years ago
parent
commit
37191a5953

+ 2 - 2
src/modules/graphics/opengl/OpenGL.cpp

@@ -41,6 +41,8 @@ void initializeContext()
 	
 	contextInitialized = true;
 	
+	textureUnits.clear();
+	
 	// initialize multiple texture unit support, if available
 	if (GLEE_ARB_multitexture || GLEE_VERSION_1_3)
 	{
@@ -57,7 +59,6 @@ void initializeContext()
 				maxtextureunits = maxtextureimageunits;
 		}
 		
-		textureUnits.clear();
 		textureUnits.resize(maxtextureunits, 0);
 		
 		GLenum activetextureunit;
@@ -83,7 +84,6 @@ void initializeContext()
 	else
 	{
 		// multitexturing not supported so we only have 1 texture unit
-		textureUnits.clear();
 		textureUnits.resize(1, 0);
 		curTextureUnitIndex = 0;
 		

+ 27 - 26
src/modules/graphics/opengl/ShaderEffect.cpp

@@ -21,32 +21,6 @@
 #include "ShaderEffect.h"
 #include "Graphics.h"
 
-namespace
-{
-// temporarily attaches a shader program (for setting uniforms, etc)
-// reattaches the originally active program when destroyed
-struct TemporaryAttacher
-{
-	TemporaryAttacher(love::graphics::opengl::ShaderEffect *sp)
-	: cureffect(sp)
-	, preveffect(love::graphics::opengl::ShaderEffect::current)
-	{
-		cureffect->attach(true);
-	}
-	
-	~TemporaryAttacher()
-	{
-		if (preveffect != NULL)
-			preveffect->attach();
-		else
-			love::graphics::opengl::ShaderEffect::detach();
-	}
-	
-	love::graphics::opengl::ShaderEffect *cureffect;
-	love::graphics::opengl::ShaderEffect *preveffect;
-};
-} // anonymous namespace
-
 namespace love
 {
 namespace graphics
@@ -54,6 +28,33 @@ namespace graphics
 namespace opengl
 {
 
+namespace
+{
+	// temporarily attaches a shader program (for setting uniforms, etc)
+	// reattaches the originally active program when destroyed
+	struct TemporaryAttacher
+	{
+		TemporaryAttacher(ShaderEffect *sp)
+		: cureffect(sp)
+		, preveffect(ShaderEffect::current)
+		{
+			cureffect->attach(true);
+		}
+		
+		~TemporaryAttacher()
+		{
+			if (preveffect != NULL)
+				preveffect->attach();
+			else
+				ShaderEffect::detach();
+		}
+		
+		ShaderEffect *cureffect;
+		ShaderEffect *preveffect;
+	};
+} // anonymous namespace
+
+
 ShaderEffect *ShaderEffect::current = NULL;
 
 GLint ShaderEffect::_max_texture_units = 0;

+ 4 - 1
src/modules/graphics/opengl/ShaderEffect.h

@@ -39,6 +39,7 @@ namespace opengl
 class ShaderEffect : public Object, public Volatile
 {
 public:
+	
 	enum ShaderType
 	{
 		TYPE_VERTEX,
@@ -78,6 +79,7 @@ public:
 	void sendCanvas(const std::string &name, const Canvas &canvas);
 
 private:
+	
 	GLint getUniformLocation(const std::string &name);
 	void checkSetUniformError();
 	GLuint createShader(const ShaderSource &source);
@@ -90,7 +92,7 @@ private:
 	// uniform location buffer
 	std::map<std::string, GLint> _uniforms;
 
-	static GLint _max_texture_units;
+	static GLint _max_texture_units; // total max GPU texture units for shaders
 	static std::vector<int> _texture_id_counters; // counts total number of textures bound to each texture unit in all shaders
 	
 	// texture unit pool for setting images
@@ -99,6 +101,7 @@ private:
 	GLint getTextureUnit(const std::string &name);
 	
 	void sendTexture(const std::string &name, GLuint texture);
+	
 };
 
 } // opengl

+ 1 - 1
src/modules/graphics/opengl/wrap_Graphics.cpp

@@ -436,7 +436,7 @@ int w_newCanvas(lua_State *L)
 int w_newShaderEffect(lua_State *L)
 {
 	if (!ShaderEffect::isSupported())
-		return luaL_error(L, "Sorry, your graphics card does not support pixel effects.");
+		return luaL_error(L, "Sorry, your graphics card does not support shader effects.");
 
 	try
 	{

+ 2 - 0
src/scripts/graphics.lua

@@ -1305,6 +1305,7 @@ do
 #define VertexPosition gl_Vertex
 
 uniform sampler2D _tex0_;
+
 #line 0]],
 		FOOTER = [[
 void main() {
@@ -1331,6 +1332,7 @@ void main() {
 #define VaryingTexCoord gl_TexCoord[0]
 
 uniform sampler2D _tex0_;
+
 #line 0]],
 		FOOTER = [[
 void main() {