Что такое позиция освещения OpenGL по умолчанию?

Я хочу узнать о положениях света по умолчанию в OpenGL.

у меня система настроена как; если в сцене нет света, система добавляет свет окружающей среды в сцену:

Gl.glEnable(Gl.GL_LIGHT0);
Gl.glLightf(Gl.GL_LIGHT0, Gl.GL_CONSTANT_ATTENUATION, 99999);

если я не касаюсь параметра "Положение света", то свет похож на свет окружающей среды, кажется, что он не имеет направления, поэтому мои объекты получают свет со всех сторон... это круто... но если я это сделаю:

Gl.glEnable(Gl.GL_LIGHT0);
Gl.glLightf(Gl.GL_LIGHT0, Gl.GL_CONSTANT_ATTENUATION, 99999);
Gl.glLightfv(Gl.GL_LIGHT0, Gl.GL_POSITION, new Vector4(0f, 0f, 1f, 0f).ToArray());

(которое уже является исходным значением, потому что я проверил его с помощью Gl.glGetLightfv(Gl.GL_LIGHT0, Gl.GL_POSITION, vec); и это то же самое). после того, как я связался с положением, он действительно становится похожим на направленный солнечный свет, но я хочу, чтобы он работал как свет окружающей среды. что мне здесь не хватает?

0 ответов

Другие вопросы по тегам