![]() |
![]() |
Shura |
![]()
Сообщение
#1
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 136 Пол: Мужской Реальное имя: Александр Репутация: ![]() ![]() ![]() |
Я решил начинать осваивать 3d не с 3DSMax-a, а с более глубокого уровня - типа, как всё это делается "изнутри". Ну создавал максимум выпуклые многогранники, да текстурки на кубик накладывал. И вот мучает меня вопрос: полигон, при выводе, полностью закрашиваетcя? Просто я делал чёрно-белые многогранники (черные грани, белые контуры) и действовал по принципу "Если проекция нормали отрицательна, то рисуем". А вот если полигоны накладываются друг на друга (например, при наложении двух объектов)? Тогда, что? Надо отсортировать полигоны по удалённости от камеры и рисовать, начиная с самых дальних, каждый полностью закрашивая в свой цвет/текстуру? Мне-то надо было для рисования полигона три линии вывести в 3d, а так надо полностью закрашивать что-ли?
ЗЫ. В обучалках этого нет. -------------------- Старайтесь восполнять пробелы в области незнания! ;-D
|
![]() ![]() |
Shura |
![]()
Сообщение
#2
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 136 Пол: Мужской Реальное имя: Александр Репутация: ![]() ![]() ![]() |
Z-buffer конечно дело хорошее, надёжное, но очень медленное, т.к в сложных сценах рисование ВСЕХ видимых полигонов не оптимально. Оказывается есть такой метод "обратной трассировки лучей". Из каждой точки экрана берётся перпендикулярный ему луч и ищется полигон, с которым он пересекается. Но неужели перебираются ВСЕ полигоны?! Если кто слышал о таком, не могли бы вы объяснить (на словах) как реализуется этот метод?
-------------------- Старайтесь восполнять пробелы в области незнания! ;-D
|
![]() ![]() |
![]() |
Текстовая версия | 14.07.2025 19:10 |