一 shadertoy是什么
下面是维基百科上的定义:
Shadertoy.com is a cross-browser online community and tool for creating and sharing shaders through WebGL, used both for learning and teaching 3D computer graphics in a web browser
翻译成中文即shadertoy是一个在浏览器中教学3D图形学的在线社区和通过WebGL创建分享shader程序的工具。
从定义中可以看出,首先,shadertoy是一个在线社区,指的是shadertoy这个网站;其次,shadertoy是一个工具,这个工具是用来创建和分享shader程序的。
shadertoy 按字面意直接翻译过来就是着色器玩具。
二 怎么玩
既然shadertoy就是一玩具,那么要怎么玩呢?
首先,要明白的是shadertoy上我们编程的程序是pixel shader或者fragment shader,这个shader是用来计算屏幕上每个像素点的颜色的,以RGBA的形式输出给屏幕显示。
shadertoy社区上给了一个howto,对shadertoy中的函数接口和输入变量做了简单的介绍,此处只看图像着色器。
/** * fragColor 计算出的像素颜色 * fragCoord 像素坐标 */void mainImage( out vec4 fragColor, in vec2 fragCoord );// 计算每个像素的颜色/** *常量定义 */uniform