2012-06-01 11 views

答えて

10
  1. テクスチャサンプルをフェッチ中

    glTexParameteri(TextureID, L_TEXTURE_WRAP_S, GL_REPEAT)

  2. を使用してテクスチャラッピングモードを使用して、

  3. あなたのテクスチャシェーダにtexture2D(sampler, u + Time, v)のようなものを

  4. Timeという名前のフロートの制服を追加設定。

  5. Timeのコードをタイマーを使用して更新します。

ここでGLSLシェーダです:

/*VERTEX_PROGRAM*/ 

in vec4 in_Vertex; 
in vec4 in_TexCoord; 

uniform mat4 ModelViewMatrix; 
uniform mat4 ProjectionMatrix; 

out vec2 TexCoord; 

void main() 
{ 
    gl_Position = ProjectionMatrix * ModelViewMatrix * in_Vertex; 

    TexCoord = vec2(in_TexCoord); 
} 

/*FRAGMENT_PROGRAM*/ 

in vec2 TexCoord; 

uniform sampler2D Texture0; 

/// Updated in external code 
uniform float Time; 

out vec4 out_FragColor; 

void main() 
{ 
    /// "u" coordinate is altered 
    out_FragColor = texture(Texture0, vec2(TexCoord.x + Time, TexCoord.y)); 
} 
関連する問題