【发布时间】:2012-05-14 21:28:40
【问题描述】:
短:
我可以定义一个每个着色器都可以使用的函数吗? 或者我必须为每个着色器定义它?
整个故事:
我想创建许多着色器,旨在使用预定义的渐变渐变为输入片段着色(类似这样 - http://www.thinkboxsoftware.com/storage/krakatoa-support-images/krakatoa15_kcm_densitybyage_gradientrampmap.png)。
我想为每个着色器定义一个渐变渐变常量(一个vec4颜色样本数组,其中alpha值保持渐变位置,见上图中的Pos) p>
我需要一个函数,它可以从给定的渐变渐变中返回一个颜色样本,用于特定的纹理坐标位置。
所以渐变需要每个着色器定义一次,并且函数应该一次性定义所有每个着色器都可以安全使用.
我有算法,问题是共享函数,并在 GLSL 中定义常量。
这可能吗? 或者我必须将函数复制到每个着色器中?至少有一些预编译选项吗?
【问题讨论】:
标签: glsl opengl-es-2.0 fragment-shader