是否有任何关于如何使用 LWJGL 在 Java 中完成高效照明系统的教程或文章?
据我所知,LWJGL 支持 8 或 11 个灯(我不看代码就记不得了),我对如何使用它来实际正确使用它们很感兴趣,以便在世界上轻松分发它们并管理灯光。也许有一个图书馆?
我也对使用 LWJGL 做阴影的任何技术感兴趣。
LWJGL 本质上为您提供了一个用于 OpenGL 的 java 绑定。支持的光源数量因硬件而异。要找出答案,您的程序需要获得GL_MAX_LIGHTS
:
int lights = GL11.glGetInteger(GL1.GL_MAX_LIGHTS);
如果您想查找有关 LWJGL 照明的文章,只需查找使用 OpenGL 涵盖相同主题的文章。
请记住,您可以使用OpenGL 站点来获得对所有各种功能的更好解释。只需忽略特定于 C 的部分。
闪电和各种映射技术(法线映射、阴影映射)是计算方面最复杂的图形主题之一,...
网上有几个教程。
例如,一个很好的教程: http: //learnopengl.com/# !Advanced-Lighting/Advanced-Lighting
它不是 LWJGL,但这也不重要,因为您主要使用顶点、片段和几何着色器进行渲染,并且我已经阅读了所有教程,您将对退出高级图形主题有一个很好的概述。大多数 C 代码可以很容易地传送到 LWJGL。
我不 建议您使用各种youtube频道(thebennybox、thinmatrix)来学习 opengl(lwjgl),因为您只需按照他们的教程逐行输入所有内容。当然,你会从他们那里得到一个很好的概述某些事情是如何工作的,但不要根据教程编写你的游戏。
其他一些来源: