Josh Yelon пре 20 година
родитељ
комит
5009048577

+ 20 - 0
panda/src/display/graphicsStateGuardian.cxx

@@ -43,6 +43,7 @@
 #include "geomTristrips.h"
 #include "geomTrifans.h"
 #include "geomLinestrips.h"
+#include "shader.h"
 
 #include <algorithm>
 #include <limits.h>
@@ -413,6 +414,25 @@ void GraphicsStateGuardian::
 release_geom(GeomContext *) {
 }
 
+////////////////////////////////////////////////////////////////////
+//     Function: GraphicsStateGuardian::prepare_shader
+//       Access: Public, Virtual
+//  Description: Compile a vertex/fragment shader body.
+////////////////////////////////////////////////////////////////////
+ShaderContext *GraphicsStateGuardian::
+prepare_shader(Shader *shader) {
+  return (ShaderContext *)NULL;
+}
+
+////////////////////////////////////////////////////////////////////
+//     Function: GraphicsStateGuardian::release_shader
+//       Access: Public, Virtual
+//  Description: Releases the resources allocated by prepare_shader
+////////////////////////////////////////////////////////////////////
+void GraphicsStateGuardian::
+release_shader(ShaderContext *sc) {
+}
+
 ////////////////////////////////////////////////////////////////////
 //     Function: GraphicsStateGuardian::prepare_vertex_buffer
 //       Access: Public, Virtual

+ 4 - 1
panda/src/display/graphicsStateGuardian.h

@@ -45,10 +45,10 @@
 #include "materialAttrib.h"
 #include "lightAttrib.h"
 #include "transparencyAttrib.h"
+#include "shaderAttrib.h"
 #include "config_display.h"
 #include "geomMunger.h"
 #include "geomVertexData.h"
-
 #include "notify.h"
 #include "pvector.h"
 
@@ -139,6 +139,9 @@ public:
   virtual GeomContext *prepare_geom(Geom *geom);
   virtual void release_geom(GeomContext *gc);
 
+  virtual ShaderContext *prepare_shader(Shader *shader);
+  virtual void release_shader(ShaderContext *sc);
+  
   virtual VertexBufferContext *prepare_vertex_buffer(GeomVertexArrayData *data);
   virtual void release_vertex_buffer(VertexBufferContext *vbc);