Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Проблема с шейдером
#1
Попытался написать шейдер освещения на GLSL. Сделал все как по инструкции, но почему-то на выходе получаю сплошной черный цвет.
Вот код

Вертексный шейдер
Код:
[== Неизвестный ==]
varying vec3 normal;
varying vec3 position;

void main() {
    normal = gl_NormalMatrix * gl_Normal;
    position = (gl_ModelViewMatrix * gl_Vertex).xyz;
    gl_Position = ftransform();
}

Пиксельный шейдер
Код:
[== Неизвестный ==]
varying vec3 normal;
varying vec3 position;

vec3 light_pos;

void main() {
    light_pos = vec3(0.0, 10.0, 0.0);
    vec3 N = normalize(normal);
    vec3 LN = normalize(light_pos - position);
    float L = max(dot(N, LN), 0.0);
    vec3 color = gl_FrontMaterial.diffuse * L;
    gl_FragColor = vec4(color, 1.0);
}
Ответ


Сообщения в этой теме

Перейти к форуму:


Пользователи, просматривающие эту тему: 2 Гость(ей)