您的位置:首页 > 运维架构

openGL ES 2.0 笔记 5

2011-04-18 02:05 176 查看

预处理指令

和C语言一样,有如下预处理指令

#define
#undef
#if
#ifdef
#ifndef
#else
#elif
#endif


下面是一些预处理宏,在编译是被替换为适当的值

__LINE__ // Replaced with the current line number in a shader
__FILE__ // Always 0 in OpenGL ES 2.0
__VERSION__ // The OpenGL ES shading language version (e.g., 100)
GL_ES // This will be defined for ES shaders to a value of 1


#error log 编译错误退出,并生成一个LOG 信息

#pragma 编译器相关指示

#version 100 用于向后兼容,指示当前shader是用哪个版本的opengl es。opengl es 2.0的版本是100

#extension 指示一个扩展函数是,或者所有扩展函数是否可用,格式如下:

// Set behavior for an extension
#extension extension_name : behavior
// Set behavior for ALL extensions
#extension all : behavior


behavior有4个可选值:

require,必须有这个扩展,如果GPU不支持,抛出错误;

enable, 扩展使能,如果不支持,抛出告警;

warn, 所有使用到扩展的语句,抛出告警;

disable, 禁用扩展
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: