假设我想要两个不同的形状——一个带有颜色缓冲区,另一个带有纹理缓冲区,我将如何在着色器中编写代码,因为教程使它几乎就像你只能拥有一个或另一个,但不是两个都?
所以就像在下面的代码中一样,我有一些纹理和一些在另一行代码中使颜色变为蓝色的东西——我将如何用这种语言进行区分——我尝试使用整数来象征两者之间的选择,但它没有效果不太好...
<script id="shader-fs" type="x-shader/x-fragment">
precision mediump float;
varying vec2 vTextureCoord;
uniform sampler2D uSampler;
void main(void) {
gl_FragColor = texture2D(uSampler, vec2(vTextureCoord.s, vTextureCoord.t));
// gl_FragColor= vec4(0.0, 1.0, 0.0, 1.0);
}
</script>