Demos (master): util: add LinkShaders3()
Brian Paul
brianp at kemper.freedesktop.org
Sat Mar 26 12:09:27 UTC 2011
Module: Demos
Branch: master
Commit: b7104db4fd17d41ed1b8f3855dc1c18a9706576b
URL: http://cgit.freedesktop.org/mesa/demos/commit/?id=b7104db4fd17d41ed1b8f3855dc1c18a9706576b
Author: Brian Paul <brianp at vmware.com>
Date: Sat Mar 26 06:05:36 2011 -0600
util: add LinkShaders3()
---
src/util/shaderutil.c | 13 +++++++++++--
src/util/shaderutil.h | 3 +++
2 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/src/util/shaderutil.c b/src/util/shaderutil.c
index 96002fc..3a39b02 100644
--- a/src/util/shaderutil.c
+++ b/src/util/shaderutil.c
@@ -176,15 +176,24 @@ CompileShaderFile(GLenum shaderType, const char *filename)
GLuint
LinkShaders(GLuint vertShader, GLuint fragShader)
{
+ return LinkShaders3(vertShader, 0, fragShader);
+}
+
+
+GLuint
+LinkShaders3(GLuint vertShader, GLuint geomShader, GLuint fragShader)
+{
GLuint program = CreateProgram();
GLdouble t0, t1;
assert(vertShader || fragShader);
- if (fragShader)
- AttachShader(program, fragShader);
if (vertShader)
AttachShader(program, vertShader);
+ if (geomShader)
+ AttachShader(program, geomShader);
+ if (fragShader)
+ AttachShader(program, fragShader);
t0 = glutGet(GLUT_ELAPSED_TIME) * 0.001;
LinkProgram(program);
diff --git a/src/util/shaderutil.h b/src/util/shaderutil.h
index 9aad294..08b2f28 100644
--- a/src/util/shaderutil.h
+++ b/src/util/shaderutil.h
@@ -36,6 +36,9 @@ CompileShaderFile(GLenum shaderType, const char *filename);
extern GLuint
LinkShaders(GLuint vertShader, GLuint fragShader);
+extern GLuint
+LinkShaders3(GLuint vertShader, GLuint geomShader, GLuint fragShader);
+
extern GLboolean
ValidateShaderProgram(GLuint program);
More information about the mesa-commit
mailing list