-
Здравствуйте. Проблема следующая : у меня есть несколько сложных объектов, один из них активный, я хочу чтобы вокруг активного объекта появился контур. Пытаюсь сделать следующим образом: 1. Вывожу объект белым цветом в WireFrame c LineWidth(5); 2. Вывожу объект чёрным цветом с glDisable(GL_DEPTH_TEST) и шейдером который устанавливает gl_FragDepth=1; 3. Вывожу свой объект с обычными настройками и вижу что на нём появляются чёрные линии от WireFrame (первый шаг); т.е. судя по всему на втором шаге буфер цвета перезаписывается, а вот z буфер не перезаписывается. Сразу хочу добавить, что пробовал с текстурами, но при этом теряется z координата контура, а хотелось бы чтобы ближние объекты закрывали контур, а дальние нет.
-
Отключи запись в буффер глубины в первом шаге?
-
Если отключу на первом шаге, то контур будет затираться даже дальними объектами
-
> [2] CrytoGen (24.06.08 11:24)
Рисуй этот объект последним.
-
То же не подходит, потому что иногда требуется рисовать объект WireFrame, в этом случае внутреннюю часть нужно затереть чёрным цветом. В принципе как сделать чтобы затиралось разобрался - glDepthFunc(GL_ALWAYS).
|