attribute vec3 vPosition; attribute vec3 vColor; uniform mat4 ProjectionModelViewMatrix; uniform mat4 ModelViewMatrix; varying vec3 color; varying vec3 vViewPosition; // Новая переменная: позиция вершины в пространстве вида void main() { // Расчет позиции в пространстве отсечения (как у вас) gl_Position = ProjectionModelViewMatrix * vec4(vPosition.xyz, 1.0); // Передача позиции в пространстве вида во фрагментный шейдер vViewPosition = vec3(ModelViewMatrix * vec4(vPosition.xyz, 1.0)); //vViewPosition = vPosition.xyz; color = vColor; }