@Override public void cleanup() { renderer.cleanup(); scene.cleanup(); } }
public void render(Window window, Camera camera, Scene scene, IHud hud) { clear(); if ( window.isResized() ) { glViewport(0, 0, window.getWidth(), window.getHeight()); window.setResized(false); } renderScene(window, camera, scene); renderSkyBox(window, camera, scene); renderHud(window, hud); }
@Override public void render(Window window) { if (firstTime) { sceneChanged = true; firstTime = false; } renderer.render(window, camera, scene, sceneChanged); }
public void init(Window window) throws Exception { setupSkyBoxShader(); setupSceneShader(); setupHudShader(); }
public void init(Window window) throws Exception { shadowMap = new ShadowMap(); setupDepthShader(); setupSkyBoxShader(); setupSceneShader(); setupParticlesShader(); setupHudShader(); }
public void init(Window window) throws Exception { shadowRenderer.init(window); setupSkyBoxShader(); setupSceneShader(); setupParticlesShader(); }
public void renderScene(Window window, Camera camera, Scene scene) { sceneShaderProgram.bind(); Matrix4f projectionMatrix = window.getProjectionMatrix(); sceneShaderProgram.setUniform("projectionMatrix", projectionMatrix); Matrix4f orthoProjMatrix = transformation.getOrthoProjectionMatrix(); sceneShaderProgram.setUniform("orthoProjectionMatrix", orthoProjMatrix); Matrix4f lightViewMatrix = transformation.getLightViewMatrix(); Matrix4f viewMatrix = camera.getViewMatrix(); SceneLight sceneLight = scene.getSceneLight(); renderLights(viewMatrix, sceneLight); sceneShaderProgram.setUniform("fog", scene.getFog()); sceneShaderProgram.setUniform("texture_sampler", 0); sceneShaderProgram.setUniform("normalMap", 1); sceneShaderProgram.setUniform("shadowMap", 2); sceneShaderProgram.setUniform("renderShadow", scene.isRenderShadows() ? 1 : 0); renderNonInstancedMeshes(scene, sceneShaderProgram, viewMatrix, lightViewMatrix); renderInstancedMeshes(scene, sceneShaderProgram, viewMatrix, lightViewMatrix); sceneShaderProgram.unbind(); }
public void render(Window window, Camera camera, Scene scene) { clear(); // Render depth map before view ports has been set up renderDepthMap(window, camera, scene); glViewport(0, 0, window.getWidth(), window.getHeight()); // Update projection matrix once per render cycle window.updateProjectionMatrix(); renderScene(window, camera, scene); renderSkyBox(window, camera, scene); renderParticles(window, camera, scene); //renderAxes(camera); renderCrossHair(window); }
public void render(Window window, Camera camera, GameItem[] gameItems, SceneLight sceneLight, IHud hud) { clear(); if ( window.isResized() ) { glViewport(0, 0, window.getWidth(), window.getHeight()); window.setResized(false); } renderScene(window, camera, gameItems, sceneLight); renderHud(window, hud); }
public DummyGame() { renderer = new Renderer(); camera = new Camera(); cameraInc = new Vector3f(0.0f, 0.0f, 0.0f); lightAngle = -90; }
@Override public void init(Window window) throws Exception { renderer.init(window); scene = new Scene(); float skyBoxScale = 50.0f; float terrainScale = 10; int terrainSize = 3; float minY = -0.1f; float maxY = 0.1f; int textInc = 40; Terrain terrain = new Terrain(terrainSize, terrainScale, minY, maxY, "/textures/heightmap.png", "/textures/terrain.png", textInc); scene.setGameItems(terrain.getGameItems()); // Setup SkyBox SkyBox skyBox = new SkyBox("/models/skybox.obj", "/textures/skybox.png"); skyBox.setScale(skyBoxScale); scene.setSkyBox(skyBox); // Setup Lights setupLights(); // Create HUD hud = new Hud("DEMO"); camera.getPosition().x = 0.0f; camera.getPosition().z = 0.0f; camera.getPosition().y = -0.2f; camera.getRotation().x = 10.f; }
public void renderScene(Window window, Camera camera, Scene scene) { sceneShaderProgram.bind(); Matrix4f projectionMatrix = transformation.getProjectionMatrix(); sceneShaderProgram.setUniform("projectionMatrix", projectionMatrix); Matrix4f viewMatrix = transformation.getViewMatrix(); SceneLight sceneLight = scene.getSceneLight(); renderLights(viewMatrix, sceneLight); sceneShaderProgram.setUniform("texture_sampler", 0); // Render each mesh with the associated game Items Map<Mesh, List<GameItem>> mapMeshes = scene.getGameMeshes(); for (Mesh mesh : mapMeshes.keySet()) { sceneShaderProgram.setUniform("material", mesh.getMaterial()); mesh.renderList(mapMeshes.get(mesh), (GameItem gameItem) -> { Matrix4f modelViewMatrix = transformation.buildModelViewMatrix(gameItem, viewMatrix); sceneShaderProgram.setUniform("modelViewMatrix", modelViewMatrix); } ); } sceneShaderProgram.unbind(); }
public void init(Window window) throws Exception { shadowMap = new ShadowMap(); setupDepthShader(); setupSkyBoxShader(); setupSceneShader(); setupParticlesShader(); setupHudShader(); }
public void renderScene(Window window, Camera camera, Scene scene) { sceneShaderProgram.bind(); Matrix4f projectionMatrix = window.getProjectionMatrix(); sceneShaderProgram.setUniform("projectionMatrix", projectionMatrix); Matrix4f orthoProjMatrix = transformation.getOrthoProjectionMatrix(); sceneShaderProgram.setUniform("orthoProjectionMatrix", orthoProjMatrix); Matrix4f lightViewMatrix = transformation.getLightViewMatrix(); Matrix4f viewMatrix = camera.getViewMatrix(); SceneLight sceneLight = scene.getSceneLight(); renderLights(viewMatrix, sceneLight); sceneShaderProgram.setUniform("fog", scene.getFog()); sceneShaderProgram.setUniform("texture_sampler", 0); sceneShaderProgram.setUniform("normalMap", 1); sceneShaderProgram.setUniform("shadowMap", 2); sceneShaderProgram.setUniform("renderShadow", scene.isRenderShadows() ? 1 : 0); renderNonInstancedMeshes(scene, sceneShaderProgram, viewMatrix, lightViewMatrix); renderInstancedMeshes(scene, sceneShaderProgram, viewMatrix, lightViewMatrix); sceneShaderProgram.unbind(); }
public void init(Window window) throws Exception { setupSkyBoxShader(); setupSceneShader(); setupHudShader(); }
public void render(Window window, Camera camera, GameItem[] gameItems, SceneLight sceneLight, IHud hud) { clear(); if ( window.isResized() ) { glViewport(0, 0, window.getWidth(), window.getHeight()); window.setResized(false); } renderScene(window, camera, gameItems, sceneLight); renderHud(window, hud); }
public DummyGame() { renderer = new Renderer(); camera = new Camera(); cameraInc = new Vector3f(0.0f, 0.0f, 0.0f); lightAngle = -90; }
@Override public void init(Window window) throws Exception { renderer.init(window); scene = new Scene(); float skyBoxScale = 50.0f; float terrainScale = 10; //int terrainSize = 3; int terrainSize = 3; float minY = -0.1f; float maxY = 0.1f; int textInc = 40; terrain = new Terrain(terrainSize, terrainScale, minY, maxY, "/textures/heightmap.png", "/textures/terrain.png", textInc); //terrain = new Terrain(terrainSize, terrainScale, minY, maxY, "/textures/heightmap_test.png", "/textures/terrain.png", textInc); scene.setGameItems(terrain.getGameItems()); // Setup SkyBox SkyBox skyBox = new SkyBox("/models/skybox.obj", "/textures/skybox.png"); skyBox.setScale(skyBoxScale); scene.setSkyBox(skyBox); // Setup Lights setupLights(); // Create HUD hud = new Hud("DEMO"); camera.getPosition().x = 0.0f; camera.getPosition().y = 5.0f; camera.getPosition().z = 0.0f; camera.getRotation().x = 90; }
public void renderScene(Window window, Camera camera, Scene scene) { sceneShaderProgram.bind(); Matrix4f projectionMatrix = transformation.getProjectionMatrix(); sceneShaderProgram.setUniform("projectionMatrix", projectionMatrix); Matrix4f viewMatrix = transformation.getViewMatrix(); SceneLight sceneLight = scene.getSceneLight(); renderLights(viewMatrix, sceneLight); sceneShaderProgram.setUniform("texture_sampler", 0); // Render each mesh with the associated game Items Map<Mesh, List<GameItem>> mapMeshes = scene.getGameMeshes(); for (Mesh mesh : mapMeshes.keySet()) { sceneShaderProgram.setUniform("material", mesh.getMaterial()); mesh.renderList(mapMeshes.get(mesh), (GameItem gameItem) -> { Matrix4f modelViewMatrix = transformation.buildModelViewMatrix(gameItem, viewMatrix); sceneShaderProgram.setUniform("modelViewMatrix", modelViewMatrix); } ); } sceneShaderProgram.unbind(); }
public void render(Window window, Camera camera, Scene scene, IHud hud) { clear(); // Render depth map before view ports has been set up renderDepthMap(window, camera, scene); glViewport(0, 0, window.getWidth(), window.getHeight()); // Update projection and view atrices once per render cycle transformation.updateProjectionMatrix(FOV, window.getWidth(), window.getHeight(), Z_NEAR, Z_FAR); transformation.updateViewMatrix(camera); renderScene(window, camera, scene); renderSkyBox(window, camera, scene); renderParticles(window, camera, scene); renderHud(window, hud); //renderAxes(camera); }