Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Erwin <significant.bit@gmail.com>2016-10-16 23:59:57 +0300
committerMike Erwin <significant.bit@gmail.com>2016-10-17 00:48:35 +0300
commit9cdf4afb76b1b5627bcad637dbd0d2452c472caf (patch)
tree4e55957fdad27ec88f762384966b3322d2573064 /source/blender/gpu
parentf7414b7412694c904354e6921795d1cec9728d96 (diff)
Gawain: new immUniform4fv function
Diffstat (limited to 'source/blender/gpu')
-rw-r--r--source/blender/gpu/gawain/immediate.c13
-rw-r--r--source/blender/gpu/gawain/immediate.h1
2 files changed, 13 insertions, 1 deletions
diff --git a/source/blender/gpu/gawain/immediate.c b/source/blender/gpu/gawain/immediate.c
index f8d851ea8ea..a382240746a 100644
--- a/source/blender/gpu/gawain/immediate.c
+++ b/source/blender/gpu/gawain/immediate.c
@@ -701,6 +701,17 @@ void immUniform4f(const char* name, float x, float y, float z, float w)
glUniform4f(loc, x, y, z, w);
}
+void immUniform4fv(const char* name, const float data[4])
+ {
+ int loc = glGetUniformLocation(imm.bound_program, name);
+
+#if TRUST_NO_ONE
+ assert(loc != -1);
+#endif
+
+ glUniform4fv(loc, 1, data);
+ }
+
void immUniform1i(const char* name, int x)
{
int loc = glGetUniformLocation(imm.bound_program, name);
@@ -722,7 +733,7 @@ void immUniformColor4f(float r, float g, float b, float a)
void immUniformColor4fv(const float rgba[4])
{
- immUniform4f("color", rgba[0], rgba[1], rgba[2], rgba[3]);
+ immUniform4fv("color", rgba);
}
void immUniformColor3fv(const float rgb[3])
diff --git a/source/blender/gpu/gawain/immediate.h b/source/blender/gpu/gawain/immediate.h
index e0764dc0bd6..271d8440219 100644
--- a/source/blender/gpu/gawain/immediate.h
+++ b/source/blender/gpu/gawain/immediate.h
@@ -76,6 +76,7 @@ void immVertex2iv(unsigned attrib_id, const int data[2]);
void immUniform1i(const char* name, int x);
void immUniform1f(const char* name, float x);
void immUniform4f(const char* name, float x, float y, float z, float w);
+void immUniform4fv(const char* name, const float data[4]);
// convenience functions for setting "uniform vec4 color"