刚学 OpenGL,如下是一段 GLSL 的代码,但是和网上搜到的 GLSL 代码结构完全不一样,请问这是什么写法?
//!HOOK SCALED
//!BIND HOOKED
//!BIND POSTKERNEL
//!SAVE POSTKERNEL
//!DESC Anime4K-ComputeLuma-v1.0RC
float getLum(vec4 rgb) {
return (rgb.r + rgb.r + rgb.g + rgb.g + rgb.g + rgb.b) / 6.0;
}
vec4 hook() { //Save lum on OUTPUT
vec4 rgb = HOOKED_tex(HOOKED_pos);
float lum = getLum(rgb);
return vec4(lum);
}
我所知道的 GLSL 需要顶点着色器和片段着色器,并且以 void main 函数起始。这段代码仅一个文件,无 main 函数,并且定义了多个hook
函数,是什么意思呢?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.