From a17c51157e10262944354d00bc3af12b1795cb01 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=83=A4=E9=BE=99?= <68932014+12gch138@users.noreply.github.com> Date: Sat, 17 Dec 2022 16:54:07 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9C=B0=E5=BD=A2=E5=9B=BE=E5=AE=8C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- FinalProject/sceneviewer.cpp | 26 +++++++++++++++----------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/FinalProject/sceneviewer.cpp b/FinalProject/sceneviewer.cpp index 0614ea9..7f79608 100644 --- a/FinalProject/sceneviewer.cpp +++ b/FinalProject/sceneviewer.cpp @@ -103,12 +103,24 @@ void SceneViewer::resizeGL(int w, int h) { void SceneViewer::paintGL() { glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); + + + terrainShader.bind(); + glm::mat4 Model = glm::mat4(1.0f); + glm::mat4 view = _camera.viewMatrix(); + glm::mat4 projection = glm::perspective(glm::radians(_camera.zoomVal()), (float)width() / (float)height(), 0.1f, 100.0f); + Model = glm::translate(Model, glm::vec3(0.0f, -5.0f, 0.0f)); + Model = glm::scale(Model, glm::vec3(10.0f)); + terrainShader.setUniform("view", view); + terrainShader.setUniform("projection", projection); + terrainShader.setUniform("model", Model); + terrainShader.setUniform("texture1", 2); + ter->render(); + terrainShader.unbind(); _shaderProgram.bind(); // Set view and projection matrices - glm::mat4 view = _camera.viewMatrix(); - glm::mat4 projection = glm::perspective(glm::radians(_camera.zoomVal()), (float)width() / (float)height(), 0.1f, 100.0f); _shaderProgram.setUniform("view", view); _shaderProgram.setUniform("projection", projection); @@ -118,15 +130,7 @@ void SceneViewer::paintGL() { _shaderProgram.unbind(); - //terrainShader.bind(); - //glm::mat4 Model = glm::mat4(1.0f); - //Model = glm::translate(Model, glm::vec3(0.0f, 0.0f, -2.0f)); - //terrainShader.setUniform("view", view); - //terrainShader.setUniform("projection", projection); - //terrainShader.setUniform("model", Model); - //terrainShader.setUniform("texture1", 2); - //ter->render(); - //terrainShader.unbind(); + skyShader.bind();