Mercurial > hg > forks > bilotrip-mj12
view src/shader.h @ 62:301805d68a97 default tip
Clean up better.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Tue, 06 Jan 2015 04:33:07 +0200 |
parents | 785057719d9b |
children |
line wrap: on
line source
/* ============================================================================ * Freetype GL - A C OpenGL Freetype engine * Platform: Any * WWW: http://code.google.com/p/freetype-gl/ * ---------------------------------------------------------------------------- * Copyright 2011,2012,2013 Nicolas P. Rougier. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: * * 1. Redistributions of source code must retain the above copyright notice, * this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY NICOLAS P. ROUGIER ''AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO * EVENT SHALL NICOLAS P. ROUGIER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * * The views and conclusions contained in the software and documentation are * those of the authors and should not be interpreted as representing official * policies, either expressed or implied, of Nicolas P. Rougier. * ---------------------------------------------------------------------------- */ #ifndef __SHADER_H__ #define __SHADER_H__ #include "opengl.h" #ifdef __cplusplus extern "C" { #endif /** * @file shader.h * @author Nicolas Rougier (Nicolas.Rougier@inria.fr) * * @defgroup shader Shader * * Simple functions for loading/building a shader from sources. * * <b>Example Usage</b>: * @code * #include "shader.h" * * int main( int arrgc, char *argv[] ) * { * GLuint shader = shader_load("shader.vert", "shader.frag"); * * return 0; * } * @endcode * * @{ */ /** * Read a fragment or vertex shader from a file * * @param filename file to read shader from * @return a newly-allocated text buffer containing code. This buffer * must be freed after usage. * */ char * shader_read( const char *filename ); /** * Compile a shader from a text buffer. * * @param source code of the shader * @param type type of the shader * * @return a handle on the compiled program * */ GLuint shader_compile( const char* source, const GLenum type ); /** * Load a vertex and fragment shader sources and build program * * @param vert_filename vertex shader filename * @param frag_filename fragment shader filename * * @return a handle on the built program * */ GLuint shader_load( const char * vert_filename, const char * frag_filename ); /** * */ GLuint shader_get( GLuint self, const char * name ); /** @} */ #ifdef __cplusplus } #endif #endif /* __SHADER_H__ */