From: Johan S. <jo...@us...> - 2006-12-04 10:25:14
|
Update of /cvsroot/shallows/shallows/include/shallows In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv14482/include/shallows Modified Files: GLProgram.hpp Program.hpp Log Message: Added removeOutputTarget function, Preliminary support for Geometry Shaders. Index: GLProgram.hpp =================================================================== RCS file: /cvsroot/shallows/shallows/include/shallows/GLProgram.hpp,v retrieving revision 1.23 retrieving revision 1.24 diff -C2 -d -r1.23 -r1.24 *** GLProgram.hpp 23 Aug 2006 09:59:43 -0000 1.23 --- GLProgram.hpp 4 Dec 2006 10:25:10 -0000 1.24 *************** *** 137,140 **** --- 137,141 ---- pGLShader vertexShader_; pGLShader fragmentShader_; + pGLShader geometryShader_; /** Init a shader. Will throw compile_error if the compile fails. *************** *** 143,146 **** --- 144,151 ---- std::string source ); + /** Detach a shader + * */ + void detachShader( pGLShader shader ); + // void buildUniformsMap( std::string shaderSource ); Index: Program.hpp =================================================================== RCS file: /cvsroot/shallows/shallows/include/shallows/Program.hpp,v retrieving revision 1.24 retrieving revision 1.25 diff -C2 -d -r1.24 -r1.25 *** Program.hpp 11 Sep 2006 11:45:19 -0000 1.24 --- Program.hpp 4 Dec 2006 10:25:10 -0000 1.25 *************** *** 173,180 **** --- 173,187 ---- virtual void useNormalizedTexCoords(); + /** Fetch the Vertex Shader source from a string. */ static std::string getVertexShaderSource( std::string programText, std::string defines = "" ); + + /** Fetch the Geometry Shader source from a string. + * */ + static std::string getGeometryShaderSource( std::string programText, + std::string defines = "" ); + /** Fetch the Fragment Shader source from a string. */ *************** *** 182,185 **** --- 189,195 ---- std::string defines = "" ); + /** Find the position of the different shader marker tokens in the source sringr ) */ + static void findSourcePositions( std::string ProgramText, int& posVS, int& posGS, int& posFS ); + typedef std::map<std::string, std::string> NameTypeMap; *************** *** 205,208 **** --- 215,222 ---- boost::shared_ptr<RenderTarget> target ); + /** Remove an outputtarget from a shader. + */ + void removeOutputTarget( unsigned int colorNum ); + /** Set the texture to be used as input by the program. \param name The logical name of the parameter defined |