Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.30;
Скачать: CL | DM;

Вниз

Вектор нормали   Найти похожие ветки 

 
Rudi   (2004-02-04 12:01) [0]

Здравствуйте ВСЕ! Подскажите пожалуйста начинающему юзеру OpenGL в Delphi. Есть такая задача- нарисовать поверхность по заданному набору точек в пространстве. Хочу это сделать треугольниками. И тут столкнулся с такой проблемой - насколько я понял, для правильного освещения моей поверхности, для каждого треугольника должен быть задан вектор нормали. Вопрос: этот вектор мне самому надо рассчитывать, или в ЖэЭль есть свои средства расчета нормали? Или нужен какой-то другой метод вобще?
Заранее спасибо всем!


 
Leon   (2004-02-04 15:26) [1]

ИМХО:
r1 = {x1,y1,z1};
r2 = {x2,y2,z2};
r3 = ...        - радиус-векторы точек треугольника.
Вектор нормали можно найти как векторное произведение двух векторов лежащих в грани, н-р (r1-r2) и (r3-r2):

N2 = [(r3-r2)x(r1-r2)] - нормаль к точке с р.в. r2.
и т.д.

Определение векторного произведения см. в любом учебнике по линейной алгебре.


 
Rudi   (2004-02-04 16:39) [2]

Leon:
значит вы утверждаете, что в opengl нет встроенных средств для определения вектора нормали...
тогда вопрос - имеет ли принципиальное значение длина вектора нормали?


 
MrAngel   (2004-02-04 17:58) [3]

По моему да. Влияет на интенсивность освещения.


 
Asteroid ©   (2004-02-04 22:28) [4]

Длина вектора нормали должна быть равна 1. Поэтому тот вектор, который будет получен из векторного произведения еще нужно будет поделить на его длину. А интенсивность - это уже параметры источника света.



Страницы: 1 вся ветка

Текущий архив: 2004.05.30;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.025 c
3-1083913960
}|{yk
2004-05-07 11:12
2004.05.30
Логическая ошибка в триггере


9-1074171885
Шишкин Илья
2004-01-15 16:04
2004.05.30
GLScene VS PowerDraw


3-1084004683
Andrew Frol
2004-05-08 12:24
2004.05.30
Можно ли программно в ODBC прописывать DSN???


3-1083844894
alex123
2004-05-06 16:01
2004.05.30
Изменение размера поля


3-1084116682
Alleum
2004-05-09 19:31
2004.05.30
реализовать перемену строк местами