Имея объект в качестве источника света, IE The Sun - PullRequest
2 голосов
/ 13 марта 2011

Я работаю над моделью солнечной системы для класса, у меня не было реальных проблем с выполнением различных преобразований объектов + вращений.

Но одно требование поставило меня в тупик, Солнце (расположенное в 0,0,0) должно быть источником света.Я пошел вперед и создал точечный источник света в этом месте и настроил его.Проблема в том, что солнце не освещается от света, я полагаю, потому что свет исходит изнутри, поэтому он не отражается снаружи, чтобы осветить его, у кого-нибудь есть какие-то советы по правильной работе?

Ответы [ 2 ]

0 голосов
/ 17 марта 2011

Вы можете повернуть нормали солнца так, чтобы они были обращены внутрь (просто отрицая x, y & z).Теперь все они будут указывать на точечный источник света.

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

0 голосов
/ 14 марта 2011

Светоизлучающие объекты обычно создаются путем установки коэффициента «Эмиссия» материала на значение, отличное от черного.с OpenGL это делается с использованием glMaterial() и GL_EMISSION.С Direct3D похоже, что вы хотите изменить параметр Emissive на D3DMATERIAL9

Этот коэффициент позволяет вам создавать объект, который излучает свет, а не просто отражает его от других источников.Обратите внимание, что этот коэффициент является цветом, таким же, как коэффициенты диффузии и окружающей среды, поэтому вы можете получить слегка желтоватое излучение для солнца.

Солнце обычно также имеет своего рода "ауру" вокруг него.Это не может быть легко смоделировано с помощью коэффициента излучения или других традиционных механизмов освещения и затенения.Возможно, вы захотите подделать его, используя четырехугольную камеру с альфа-смешанной текстурой.

...