Шейдер OpenGL ES 2.0, как называется переменная времени? - PullRequest
3 голосов
/ 03 июня 2011

Я пытаюсь выполнить такой пиксельный шейдер:

"#ifdef GL_ES\n"
"    precision highp float;\n"
"    #endif\n"
"    \n"
"   uniform float time;\n"
"       uniform vec2 resolution;\n"
"\n"
"       void main( void ) {\n"
"\n"
"        vec3 rgb = vec3( abs( sin( time / 5.0 ) ), 0.0, 0.0 );\n"
"        gl_FragColor = vec4( rgb, 1.0 );\n"
"\n"
"       }\n"

Я хочу, чтобы он работал так же, как этот пример webGL mrdoob (от черного до красного). Но похоже, что переменная времени здесь просто 0 ... (

BTW образец, показанный здесь Руны, как и ожидалось.

Так есть ли переменная времени в пиксельных шейдерах для OpenGL ES 2.0?

1 Ответ

4 голосов
/ 03 июня 2011

Проверьте источник страницы по вашей первой ссылке.Вы должны рассчитать и передать значение time из вашей хост-программы.

OpenGL ES 2.0 не имеет представления о времени, настенных часах или иным образом.

...