Я хочу настроить цвета в зависимости от того, в каком положении xyz они находятся в мире.
Я пробовал это в своем шейдере фрагментов:
varying vec4 verpos;
void main(){
vec4 c;
c.x = verpos.x;
c.y = verpos.y;
c.z = verpos.z;
c.w = 1.0;
gl_FragColor = c;
}
, но кажется, что цвета меняются в зависимости от моей камеры угол / положение, как сделать координаты независимыми от положения / угла моей камеры?
Вот мой вершинный шейдер:
varying vec4 verpos;
void main(){
gl_Position = ftransform();
verpos = gl_ModelViewMatrix*gl_Vertex;
}
Edit2: изменен заголовок, поэтому мне нужны мировые координаты, а не координаты экрана!
Edit3: добавил мой полный код