2012-07-26 20 views
6

için gl_TexCoord'un karşılığı nedir? Gl_TexCoord kullanan aşağıdaki gibi bir OpenGL gölgelendiricim var. Ancak OpenGL ES'de gl_TexCoord desteklenmiyor. OpenGL ES üzerinde çalışmak için kodu yeniden kodlamak için ne yapabilirim?OpenGL ES 2.0

void main() 
{ 
    //scene depth calculation 
    float depth = linearize(texture2D(inputImageTexture2,gl_TexCoord[0].xy).x); 
    if (depthblur) 
    { 
     depth = linearize(bdepth(gl_TexCoord[0].xy)); 
    } 

    ... 
} 

cevap

6

Bir tane yok. Bunu, vertex gölgelendiricinizden geçirilen kullanıcı tanımlı bir varying ile gerçekleştirirsiniz. Zaten her şey bu kadardı; parça gölgelendiricinizin aldığı her bir köşe başı çıkışı.

+0

anladı. dahası, gl_TexCoord [0] ve gl_TexCoord [3] arasındaki fark nedir? Bunu anlamak için başvurulan herhangi bir makale/belge? – tom

+0

@tom: Bu bir * dizi *. Bu, [] sözdiziminin çoğu dilde ifade ettiği şeydir. –

+0

Elbette bu kesin. Gl_TexCoord [0] ve gl_TexCoord [3] 'un ne için olduğunu anlamaya çalışıyordum. Miras ettiğim kodda, gl_TexCoord [0] ve gl_TexCoord [3] 'a atıfta bulunuldu, ancak gl_TexCoord [1] ve gl_TexCoord [2] diye bir açıklama yapılmadı, bu yüzden nedenini merak ettim. Baska öneri? – tom