LWJGL教程03 - 改进 让Render类处理渲染相关的事123456789101112131415161718192021[imports ...]public class Render { public static void createRender() { // createCapabilities 创建功能 GL.createCapabilities(); } public static void cleanup() { // TODO } public static void render() { glClearColor( Window.settings.color[0], Window.settings.color[1], Window.settings.color[2], Window.settings.color[3]); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glViewport(0, 0, Window.getWidth(), Window.getHeight()); }} 创建完Render类后,需要在正确的位置调用它。 所以要修改Engine类 12345678910111213141516171819202122232425262728293031323334[imports ...]public class Engine { [...] public void run() { Window.createWindow(Engine.window_settings); // 添加在 Window.createWindow() 后 Render.createRender(); Window.setWindowVisible(); [...] while(!Window.windowShouldClose()) { Window.pollEvents(); logic.input(); // 添加在 Window.update() 前 Render.render(); Window.update(); [...] } cleanup(); } private void cleanup() { // 别忘了 Render.cleanup(); Window.cleanup(); }} 测试一下能不能修改颜色。 123456789101112131415public class TestEngine { public static void main(String[] args) { Engine.init(); Window.settings .setTitle("Test Color") .setVsync(true) .setColor(255, 255, 255, 255); /* glClearColor(r, g, b, a) 的三个参数均是不大于1的浮点数 所以想用小于255的int设置颜色还需要除以255 */ Engine.logic = new TestLogic(); new Engine().run(); }} 技术 #Java #LWJGL LWJGL教程03 - 改进 https://panxy02.github.io/2024/07/18/lwjgl-03/ 作者 52Hertz 发布于 2024年7月18日 许可协议 LWJGL教程04 - 渲染 上一篇 LWJGL教程02 - 循环 下一篇