|
#1
|
|||
|
|||
Пирамида в OpenGL
Не могу построить пирамиду в жл... точней могу, но полигонально, с помощью набора точек.. но проблема в освещении.. никак не могу понять, как его туду приладить... Бликов нет, отражения тоже... в общем, если нормаль полигона к свету повернута хоть каким то образом- он полность залит цветом и всё... а хотелось бы что б и блики и отражения... Я думаю, что проблема в самих этих полигонах... Подскажите, как можно реализовать освещение )
|
#2
|
|||
|
|||
Не знаю, как в OpenGL, немного расскажу о DirectX. Первый подводный камень - если цвет задан в вершинах. Он должен задаваться в источнике света (можно белый) и материале. Во-вторых можно брать разные типы света: Point, Directional, Spot. Первый и третьий точно по-разному освещают точки плоскости, т.к. интенсивность зависит от угла падения. Наконец, блики появляются, если в материале установлена зеркальность (отражение, Specular), а не только рассеивание (Diffuse)
|
#3
|
|||
|
|||
да нужно именно B OpenGL... Проблема в том, что есть примеры со сферами т.п.(там и отражение, и диффузия... и т.п.) Подставляю свою фигуру(пирамиду) - не работает... а по идее должно... ведь нет разницы какие фигуры для освещения подставляются?.. Все нормали к поверхностям заданы, а всё равно не работает... и освещает вроде правильно... т.е. как только поверхность поворачиваетя к источнику - она освещается.. но такое освещение, как оно работает- не нужно)
|
#4
|
|||
|
|||
Может быть, дело в том, что у пирамиды освещается одна грань, а у сферы - всегда много (ведь это многогранник)
|
#5
|
|||
|
|||
может быть... може быть... ну всё равно.. должны же свойства поверхности влиять на освещенность?) а у меня не влияет)
|