three.js使用自定义着色材质的粒子中的动画纹理

时间:2016-10-21 21:06:56

标签: three.js

如何让每个粒子动画并循环遍历精灵表中的所有图块?

这是我的着色器程序:

<script type="x-shader/x-vertex" id="vertexshader"> 

attribute vec2 offset; 
varying vec2 vOffset; 

void main() 
{ 
     vOffset = offset; 
     gl_PointSize = 25.0; 
     gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); 
} 
</script> 

<script type="x-shader/x-fragment" id="fragmentshader"> 

uniform sampler2D texture; 
uniform vec2 repeat; 
varying vec2 vOffset; 

void main() 
{ 
     vec2 uv = vec2( gl_PointCoord.x, 1.0 - gl_PointCoord.y ); 
     vec4 tex = texture2D( texture, uv * repeat + vOffset ); 
     if ( tex.a < 0.5 ) discard; 

     gl_FragColor = tex; 
} 
</script>

基本上是一个例子:http://jsfiddle.net/myy7x4zd/4/

0 个答案:

没有答案