Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Игры";
Текущий архив: 2007.07.22;
Скачать: [xml.tar.bz2];

Вниз

Какие существуют способы вычисления нормалей?   Найти похожие ветки 

 
Normal   (2006-08-21 01:53) [0]

Можно 1 треугольник = 1 нормаль. Можно для каждой точки вычислять нормаль суммируя нормали принадлежащих ей треугольников. А как ещё можно?

Может кто знает какие статьи, пусть даже на английском?


 
@!!ex ©   (2006-08-21 08:46) [1]

А как еще нужно? :))


 
XProger ©   (2006-08-21 17:25) [2]

А ещё можно учитывая группы сглаживания задавать нормали для вершин.


 
ANTPro ©   (2006-08-21 20:48) [3]

Normal   (21.08.06 1:53)
demo.design 3D programming FAQ:

5.3. Освещение по Ламберту
5.4. Освещение по Гуро
5.5. Освещение по Фонгу

Скорей всего можно найти тут: http://www.enlight.ru/


 
Normal   (2006-08-22 01:55) [4]


> XProger ©   (21.08.06 17:25) [2]
>
> А ещё можно учитывая группы сглаживания задавать нормали
> для вершин.

Что такое группы сглаживания? В GLScene есть группы фейсов. Но там они по материалам разделены.


 
Normal   (2006-08-22 02:05) [5]


> ANTPro ©   (21.08.06 20:48) [3]
> 5.3. Освещение по Ламберту


Читаю:
Освещение по Ламберту

Это, видимо, самое сильное упрощение формулы, которое можно придумать. Делаются такие предположения:

     V не сильно зависит от P, т.о. V принимается постоянным для всей грани

     L не сильно зависит от P, т.о. L принимается постоянным для всей грани

     Ks = 0 (то есть грань не отражает свет, а только рассеивает)

     нормаль к объекту N равна нормали к грани n в любой точке грани P

В этом случае формула принимает вид

intensity = ambient + amp * cos(n, L),


где n - нормаль к грани.

Причем в этой формуле, по предположениям, нет величин, зависящих от P. Так что освещенность равна константе для всей грани, то есть все точки грани освещены одинаково. Тогда достаточно посчитать ее лишь один раз на грань. Осталось упомянуть, что освещение по Ламберту обычно принято называть flat shading.


Если честно, как считать нормали, не понял абсолютно ...


 
XProger ©   (2006-08-22 02:34) [6]

http://www.wbz.ru/index.php?page=lesns&hid=1&pid=18


 
Normal   (2006-08-24 06:15) [7]


> XProger ©   (22.08.06 02:34) [6]
>
> http://www.wbz.ru/index.php?page=lesns&hid=1&pid=18


Один и тотже треугольник может принадлежать одновременно разным smooth-группам? И если да, то как это понять?
Потому, что в МилкШейпе - не может.


 
Normal   (2006-08-28 02:44) [8]

Ответьте кто нибудь, а?


 
XProger ©   (2006-08-28 04:38) [9]

Normal, может


 
Normal   (2006-08-29 01:52) [10]


> XProger ©   (28.08.06 04:38) [9]
>
> Normal, может


А как это понять и вычислять?

Если НЕ может, то для каждой Smooth-группы я нахожу свои вершины ( вершины принадлежащих им треугольников ). И для каждой из них ( вершин ) вычисляю свою нормаль.

А если один и тот же треугольник находится в нескольких группах, то как вообще вычислять тогда?

Наверно в MilkShape этого нет, потому, что он тоже не понял.



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

Форум: "Игры";
Текущий архив: 2007.07.22;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.054 c
2-1182966867
Ivolg
2007-06-27 21:54
2007.07.22
Проблема с вкладками


2-1182628711
Zaffar
2007-06-23 23:58
2007.07.22
по ООП


15-1182299605
multilink
2007-06-20 04:33
2007.07.22
Программа для управления несколькими соединениями


8-1162272218
Darvin
2006-10-31 08:23
2007.07.22
Проигрывание звукового сигнала


4-1164897111
MU
2006-11-30 17:31
2007.07.22
Сканер штрих-кодов





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский