2012-04-06 11 views
6

Doğrusal olarak, gölgelendiriciye gönderilen köşe dizilerindeki dizinlerine bağlı olarak, vertex konumlarını hesaplayarak bir nokta ızgara oluşturmaya çalışıyorum. Gölgemde arayabileceğim gl_VertexID değişkeninin bir karşılığı var mı? Veya GPU'ya daha fazla veri göndermek zorunda kalmadan dizideki konumlarına erişmenin başka bir yolu? Teşekkür ederim Josh.OpenGLES 2.0: gl_VertexID eşdeğeri?

attribute vec4 vertexPosition; 
uniform mat4 modelViewProjectionMatrix; 
vec4 temp; 
uniform float width; 

void main() 
{  
    temp = vertexPosition; 

    // Calculate x and y values based on index: 
    temp.y = floor(gl_VertexID/width); 
    temp.x = gl_VertexID - width*temp.y; 

    gl_Position = modelViewProjectionMatrix * temp; 
} 
+3

Orijinal sorunuza bir cevap değil, ancak bu GLES 3.0'a eklenmiştir. http://www.khronos.org/registry/gles/specs/3.0/es_spec_3.0.0.pdf – nullspace

cevap

12

Maalesef GLES2 hiçbir gl_VertexID eşdeğer vardır:

İşte benim tepe tarayıcı bulunuyor. Ek verileri kendiniz oluşturmalı ve iletmelisiniz.