Модераторы: Rickert, Alexeis, BorisVorontsov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Построение векторов нормалей к поверхности 
V
    Опции темы
iAnthony
Дата 19.1.2009, 12:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 30
Регистрация: 19.1.2009
Где: Moscow

Репутация: нет
Всего: нет



Здравствуте!

Пришлось сделать преждевременный скачек в изучении OpenGL (а точнее почти не зная его) , и выполнить то, что ни разу не делал и не знаю пока как.
Подскажите, пожалуйста, как показать вектор нормали к поверхности?

Есть тетраэдр, который построен поворотом треугольника,  необходимо построить векторы нормалей к каждой его грани.

Заранее премного благодарен за помощь.
PM MAIL   Вверх
TDM
Дата 19.1.2009, 22:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 133
Регистрация: 1.2.2006
Где: SPB

Репутация: нет
Всего: нет



Векторы строятся так:

n = cross(v2-v0, v1-v0);
где v0, v1, v2 точки поверхностии
PM MAIL ICQ   Вверх
Rickert
Дата 20.1.2009, 08:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ситхи не пройдут!
****


Профиль
Группа: Комодератор
Сообщений: 3356
Регистрация: 11.7.2006
Где: Лакрима

Репутация: 2
Всего: 52



Модель состоит из треугольников. Нормаль считается тремя способами:
0) Самый топорный, быстрый и грубый: берём вектор от первой точки ко второй, и от первой к третьей, перемножаем их векторно, нормализуем - и получаем нормаль к данной плоскости (к данному треугольнику). Это значение будет нормалью для всех трёх вершин. Именно его описал TDM
1) Более грамотный: каждая вершина принадлежит ни одному треугольнику, а нескольким. Берём первую вершину, ищем нормали всех треугольников, к которым она (вершина) относится, складываем и нормализуем. Получается нормально к данной вершине.
2) То же что и второе, но там ещё устанавливается зависимость от площадей этих треугольников. Этим вариантом я никогда не интересовался и не занимался. Надо спрашивать на gamedev.ru - там точно знают.
Удачи smile 


--------------------
Ни что не внушает сна крепче, чем день приисполненный трудов!
PM MAIL WWW Skype GTalk   Вверх
iAnthony
Дата 20.1.2009, 14:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 30
Регистрация: 19.1.2009
Где: Moscow

Репутация: нет
Всего: нет



Спасибо за помощь!

Для себя возьму на заметку грамотные варианты и позже с ними разбирусь, а сейчас, использую тот, что проще, т.к. думать времени нет, надо тупо сделать.
PM MAIL   Вверх
Rickert
Дата 20.1.2009, 15:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ситхи не пройдут!
****


Профиль
Группа: Комодератор
Сообщений: 3356
Регистрация: 11.7.2006
Где: Лакрима

Репутация: 2
Всего: 52



Удачи! smile 


--------------------
Ни что не внушает сна крепче, чем день приисполненный трудов!
PM MAIL WWW Skype GTalk   Вверх
Rickert
Дата 22.1.2009, 09:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ситхи не пройдут!
****


Профиль
Группа: Комодератор
Сообщений: 3356
Регистрация: 11.7.2006
Где: Лакрима

Репутация: 2
Всего: 52



Не забывайте пометить тему как решённую smile 


--------------------
Ни что не внушает сна крепче, чем день приисполненный трудов!
PM MAIL WWW Skype GTalk   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Вы можете найти полезным что...
Alexeis
Rickert
  • Английская документация по DirectX лежит где-то здесь.
  • Английская документация по OpenGL лежит где-то там.
  • Гейм-дев у нас обсуждают где-то тут

Ждём вас! С уважением, Alexeis, Rickert.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Мультимедия, OpenGL/DirectX | Следующая тема »


 




[ Время генерации скрипта: 0.0472 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.