1
0
Fork 0

2008-11-18 Emmanuele Bassi <ebassi@linux.intel.com>

* clutter/cogl/cogl-shader.h: Add a function for setting an
	integer uniform, similar to cogl_program_uniform_1f().

	* clutter/cogl/gl/cogl-program.c: Implement the GL version
	of cogl_program_uniform_1i().

	* clutter/cogl/gles/cogl-program.c: Implement the GLES version
	of cogl_program_uniform_1i().
This commit is contained in:
Emmanuele Bassi 2008-11-18 15:21:02 +00:00
parent af0cb47570
commit 837d17aefc
4 changed files with 39 additions and 2 deletions

View file

@ -1,3 +1,14 @@
2008-11-18 Emmanuele Bassi <ebassi@linux.intel.com>
* clutter/cogl/cogl-shader.h: Add a function for setting an
integer uniform, similar to cogl_program_uniform_1f().
* clutter/cogl/gl/cogl-program.c: Implement the GL version
of cogl_program_uniform_1i().
* clutter/cogl/gles/cogl-program.c: Implement the GLES version
of cogl_program_uniform_1i().
2008-11-18 Emmanuele Bassi <ebassi@linux.intel.com>
Bug 1049 - Clutter doesn't support most GLSL uniforms (patch

View file

@ -218,12 +218,23 @@ COGLint cogl_program_get_uniform_location
* @uniform_no: the unform to set.
* @value: the new value of the uniform.
*
* Changes the value of a uniform in the currently used (see
* cogl_program_use()) shader program.
* Changes the value of a floating point uniform in the currently
* used (see cogl_program_use()) shader program.
*/
void cogl_program_uniform_1f (COGLint uniform_no,
gfloat value);
/**
* cogl_program_uniform_1i:
* @uniform_no: the unform to set.
* @value: the new value of the uniform.
*
* Changes the value of an integer uniform in the currently
* used (see cogl_program_use()) shader program.
*/
void cogl_program_uniform_1i (COGLint uniform_no,
gint value);
/**
* cogl_program_uniform_float:
* @uniform_no: the uniform to set.

View file

@ -167,6 +167,14 @@ cogl_program_uniform_1f (COGLint uniform_no,
glUniform1fARB (uniform_no, value);
}
void
cogl_program_uniform_1i (COGLint uniform_no,
gint value)
{
_COGL_GET_CONTEXT (ctx, NO_RETVAL);
glUniform1iARB (uniform_no, value);
}
void
cogl_program_uniform_float (COGLint uniform_no,
gint size,

View file

@ -166,6 +166,13 @@ cogl_program_uniform_1f (COGLint uniform_no,
cogl_program_uniform_float (uniform_no, 1, 1, &value);
}
void
cogl_program_uniform_1i (COGLint uniform_no,
gint value)
{
cogl_program_uniform_int (uniform_no, 1, 1, &value);
}
static void
cogl_program_uniform_x (COGLint uniform_no,
gint size,