mirror of
https://github.com/JoeyDeVries/LearnOpenGL.git
synced 2026-01-30 20:13:22 +08:00
fix narrowing conversions (eg double to float, size_t to GLsizei)
This commit is contained in:
@@ -87,7 +87,7 @@ public:
|
|||||||
|
|
||||||
// draw mesh
|
// draw mesh
|
||||||
glBindVertexArray(VAO);
|
glBindVertexArray(VAO);
|
||||||
glDrawElements(GL_TRIANGLES, indices.size(), GL_UNSIGNED_INT, 0);
|
glDrawElements(GL_TRIANGLES, static_cast<GLsizei>(indices.size()), GL_UNSIGNED_INT, 0);
|
||||||
glBindVertexArray(0);
|
glBindVertexArray(0);
|
||||||
|
|
||||||
// always good practice to set everything back to defaults once configured.
|
// always good practice to set everything back to defaults once configured.
|
||||||
|
|||||||
@@ -146,8 +146,8 @@ int main()
|
|||||||
glUseProgram(shaderProgram);
|
glUseProgram(shaderProgram);
|
||||||
|
|
||||||
// update shader uniform
|
// update shader uniform
|
||||||
float timeValue = glfwGetTime();
|
auto timeValue = glfwGetTime();
|
||||||
float greenValue = sin(timeValue) / 2.0f + 0.5f;
|
auto greenValue = static_cast<GLfloat>(sin(timeValue) / 2.0 + 0.5);
|
||||||
int vertexColorLocation = glGetUniformLocation(shaderProgram, "ourColor");
|
int vertexColorLocation = glGetUniformLocation(shaderProgram, "ourColor");
|
||||||
glUniform4f(vertexColorLocation, 0.0f, greenValue, 0.0f, 1.0f);
|
glUniform4f(vertexColorLocation, 0.0f, greenValue, 0.0f, 1.0f);
|
||||||
|
|
||||||
|
|||||||
@@ -184,7 +184,7 @@ int main()
|
|||||||
// ---------------------
|
// ---------------------
|
||||||
transform = glm::mat4(1.0f); // reset it to identity matrix
|
transform = glm::mat4(1.0f); // reset it to identity matrix
|
||||||
transform = glm::translate(transform, glm::vec3(-0.5f, 0.5f, 0.0f));
|
transform = glm::translate(transform, glm::vec3(-0.5f, 0.5f, 0.0f));
|
||||||
float scaleAmount = sin(glfwGetTime());
|
auto scaleAmount = static_cast<GLfloat>(sin(glfwGetTime()));
|
||||||
transform = glm::scale(transform, glm::vec3(scaleAmount, scaleAmount, scaleAmount));
|
transform = glm::scale(transform, glm::vec3(scaleAmount, scaleAmount, scaleAmount));
|
||||||
glUniformMatrix4fv(transformLoc, 1, GL_FALSE, &transform[0][0]); // this time take the matrix value array's first element as its memory pointer value
|
glUniformMatrix4fv(transformLoc, 1, GL_FALSE, &transform[0][0]); // this time take the matrix value array's first element as its memory pointer value
|
||||||
|
|
||||||
|
|||||||
@@ -222,8 +222,8 @@ int main()
|
|||||||
// camera/view transformation
|
// camera/view transformation
|
||||||
glm::mat4 view = glm::mat4(1.0f); // make sure to initialize matrix to identity matrix first
|
glm::mat4 view = glm::mat4(1.0f); // make sure to initialize matrix to identity matrix first
|
||||||
float radius = 10.0f;
|
float radius = 10.0f;
|
||||||
float camX = sin(glfwGetTime()) * radius;
|
auto camX = static_cast<GLfloat>(sin(glfwGetTime()) * radius);
|
||||||
float camZ = cos(glfwGetTime()) * radius;
|
auto camZ = static_cast<GLfloat>(cos(glfwGetTime()) * radius);
|
||||||
view = glm::lookAt(glm::vec3(camX, 0.0f, camZ), glm::vec3(0.0f, 0.0f, 0.0f), glm::vec3(0.0f, 1.0f, 0.0f));
|
view = glm::lookAt(glm::vec3(camX, 0.0f, camZ), glm::vec3(0.0f, 0.0f, 0.0f), glm::vec3(0.0f, 1.0f, 0.0f));
|
||||||
ourShader.setMat4("view", view);
|
ourShader.setMat4("view", view);
|
||||||
|
|
||||||
|
|||||||
@@ -212,7 +212,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -276,7 +276,7 @@ void processInput(GLFWwindow *window)
|
|||||||
if (glfwGetKey(window, GLFW_KEY_ESCAPE) == GLFW_PRESS)
|
if (glfwGetKey(window, GLFW_KEY_ESCAPE) == GLFW_PRESS)
|
||||||
glfwSetWindowShouldClose(window, true);
|
glfwSetWindowShouldClose(window, true);
|
||||||
|
|
||||||
float cameraSpeed = 2.5 * deltaTime;
|
auto cameraSpeed = static_cast<GLfloat>(2.5 * deltaTime);
|
||||||
if (glfwGetKey(window, GLFW_KEY_W) == GLFW_PRESS)
|
if (glfwGetKey(window, GLFW_KEY_W) == GLFW_PRESS)
|
||||||
cameraPos += cameraSpeed * cameraFront;
|
cameraPos += cameraSpeed * cameraFront;
|
||||||
if (glfwGetKey(window, GLFW_KEY_S) == GLFW_PRESS)
|
if (glfwGetKey(window, GLFW_KEY_S) == GLFW_PRESS)
|
||||||
|
|||||||
@@ -221,7 +221,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -289,7 +289,7 @@ void processInput(GLFWwindow *window)
|
|||||||
if (glfwGetKey(window, GLFW_KEY_ESCAPE) == GLFW_PRESS)
|
if (glfwGetKey(window, GLFW_KEY_ESCAPE) == GLFW_PRESS)
|
||||||
glfwSetWindowShouldClose(window, true);
|
glfwSetWindowShouldClose(window, true);
|
||||||
|
|
||||||
float cameraSpeed = 2.5 * deltaTime;
|
auto cameraSpeed = static_cast<GLfloat>(2.5 * deltaTime);
|
||||||
if (glfwGetKey(window, GLFW_KEY_W) == GLFW_PRESS)
|
if (glfwGetKey(window, GLFW_KEY_W) == GLFW_PRESS)
|
||||||
cameraPos += cameraSpeed * cameraFront;
|
cameraPos += cameraSpeed * cameraFront;
|
||||||
if (glfwGetKey(window, GLFW_KEY_S) == GLFW_PRESS)
|
if (glfwGetKey(window, GLFW_KEY_S) == GLFW_PRESS)
|
||||||
@@ -311,8 +311,11 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
|
|||||||
@@ -216,7 +216,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -306,8 +306,11 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -328,5 +331,5 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
@@ -157,7 +157,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -250,8 +250,11 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -272,5 +275,5 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
@@ -160,7 +160,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -254,8 +254,11 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -276,5 +279,5 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
@@ -160,7 +160,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -255,8 +255,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -277,5 +279,5 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
@@ -160,7 +160,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -180,9 +180,9 @@ int main()
|
|||||||
|
|
||||||
// light properties
|
// light properties
|
||||||
glm::vec3 lightColor;
|
glm::vec3 lightColor;
|
||||||
lightColor.x = sin(glfwGetTime() * 2.0f);
|
lightColor.x = static_cast<GLfloat>(sin(glfwGetTime() * 2.0));
|
||||||
lightColor.y = sin(glfwGetTime() * 0.7f);
|
lightColor.y = static_cast<GLfloat>(sin(glfwGetTime() * 0.7));
|
||||||
lightColor.z = sin(glfwGetTime() * 1.3f);
|
lightColor.z = static_cast<GLfloat>(sin(glfwGetTime() * 1.3));
|
||||||
glm::vec3 diffuseColor = lightColor * glm::vec3(0.5f); // decrease the influence
|
glm::vec3 diffuseColor = lightColor * glm::vec3(0.5f); // decrease the influence
|
||||||
glm::vec3 ambientColor = diffuseColor * glm::vec3(0.2f); // low influence
|
glm::vec3 ambientColor = diffuseColor * glm::vec3(0.2f); // low influence
|
||||||
lightingShader.setVec3("light.ambient", ambientColor);
|
lightingShader.setVec3("light.ambient", ambientColor);
|
||||||
@@ -270,8 +270,11 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -292,5 +295,5 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
@@ -160,7 +160,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -264,8 +264,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -286,5 +288,5 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -170,7 +170,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -276,8 +276,11 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -298,7 +301,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -172,7 +172,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -279,8 +279,11 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -301,7 +304,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -174,7 +174,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -285,8 +285,11 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -307,7 +310,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -182,7 +182,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -304,8 +304,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -326,7 +328,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -185,7 +185,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -305,8 +305,11 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -327,7 +330,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -182,7 +182,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -306,8 +306,11 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -328,7 +331,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -182,7 +182,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -306,8 +306,11 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -328,7 +331,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -192,7 +192,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -227,32 +227,32 @@ int main()
|
|||||||
lightingShader.setVec3("pointLights[0].diffuse", 0.8f, 0.8f, 0.8f);
|
lightingShader.setVec3("pointLights[0].diffuse", 0.8f, 0.8f, 0.8f);
|
||||||
lightingShader.setVec3("pointLights[0].specular", 1.0f, 1.0f, 1.0f);
|
lightingShader.setVec3("pointLights[0].specular", 1.0f, 1.0f, 1.0f);
|
||||||
lightingShader.setFloat("pointLights[0].constant", 1.0f);
|
lightingShader.setFloat("pointLights[0].constant", 1.0f);
|
||||||
lightingShader.setFloat("pointLights[0].linear", 0.09);
|
lightingShader.setFloat("pointLights[0].linear", 0.09f);
|
||||||
lightingShader.setFloat("pointLights[0].quadratic", 0.032);
|
lightingShader.setFloat("pointLights[0].quadratic", 0.032f);
|
||||||
// point light 2
|
// point light 2
|
||||||
lightingShader.setVec3("pointLights[1].position", pointLightPositions[1]);
|
lightingShader.setVec3("pointLights[1].position", pointLightPositions[1]);
|
||||||
lightingShader.setVec3("pointLights[1].ambient", 0.05f, 0.05f, 0.05f);
|
lightingShader.setVec3("pointLights[1].ambient", 0.05f, 0.05f, 0.05f);
|
||||||
lightingShader.setVec3("pointLights[1].diffuse", 0.8f, 0.8f, 0.8f);
|
lightingShader.setVec3("pointLights[1].diffuse", 0.8f, 0.8f, 0.8f);
|
||||||
lightingShader.setVec3("pointLights[1].specular", 1.0f, 1.0f, 1.0f);
|
lightingShader.setVec3("pointLights[1].specular", 1.0f, 1.0f, 1.0f);
|
||||||
lightingShader.setFloat("pointLights[1].constant", 1.0f);
|
lightingShader.setFloat("pointLights[1].constant", 1.0f);
|
||||||
lightingShader.setFloat("pointLights[1].linear", 0.09);
|
lightingShader.setFloat("pointLights[1].linear", 0.09f);
|
||||||
lightingShader.setFloat("pointLights[1].quadratic", 0.032);
|
lightingShader.setFloat("pointLights[1].quadratic", 0.032f);
|
||||||
// point light 3
|
// point light 3
|
||||||
lightingShader.setVec3("pointLights[2].position", pointLightPositions[2]);
|
lightingShader.setVec3("pointLights[2].position", pointLightPositions[2]);
|
||||||
lightingShader.setVec3("pointLights[2].ambient", 0.05f, 0.05f, 0.05f);
|
lightingShader.setVec3("pointLights[2].ambient", 0.05f, 0.05f, 0.05f);
|
||||||
lightingShader.setVec3("pointLights[2].diffuse", 0.8f, 0.8f, 0.8f);
|
lightingShader.setVec3("pointLights[2].diffuse", 0.8f, 0.8f, 0.8f);
|
||||||
lightingShader.setVec3("pointLights[2].specular", 1.0f, 1.0f, 1.0f);
|
lightingShader.setVec3("pointLights[2].specular", 1.0f, 1.0f, 1.0f);
|
||||||
lightingShader.setFloat("pointLights[2].constant", 1.0f);
|
lightingShader.setFloat("pointLights[2].constant", 1.0f);
|
||||||
lightingShader.setFloat("pointLights[2].linear", 0.09);
|
lightingShader.setFloat("pointLights[2].linear", 0.09f);
|
||||||
lightingShader.setFloat("pointLights[2].quadratic", 0.032);
|
lightingShader.setFloat("pointLights[2].quadratic", 0.032f);
|
||||||
// point light 4
|
// point light 4
|
||||||
lightingShader.setVec3("pointLights[3].position", pointLightPositions[3]);
|
lightingShader.setVec3("pointLights[3].position", pointLightPositions[3]);
|
||||||
lightingShader.setVec3("pointLights[3].ambient", 0.05f, 0.05f, 0.05f);
|
lightingShader.setVec3("pointLights[3].ambient", 0.05f, 0.05f, 0.05f);
|
||||||
lightingShader.setVec3("pointLights[3].diffuse", 0.8f, 0.8f, 0.8f);
|
lightingShader.setVec3("pointLights[3].diffuse", 0.8f, 0.8f, 0.8f);
|
||||||
lightingShader.setVec3("pointLights[3].specular", 1.0f, 1.0f, 1.0f);
|
lightingShader.setVec3("pointLights[3].specular", 1.0f, 1.0f, 1.0f);
|
||||||
lightingShader.setFloat("pointLights[3].constant", 1.0f);
|
lightingShader.setFloat("pointLights[3].constant", 1.0f);
|
||||||
lightingShader.setFloat("pointLights[3].linear", 0.09);
|
lightingShader.setFloat("pointLights[3].linear", 0.09f);
|
||||||
lightingShader.setFloat("pointLights[3].quadratic", 0.032);
|
lightingShader.setFloat("pointLights[3].quadratic", 0.032f);
|
||||||
// spotLight
|
// spotLight
|
||||||
lightingShader.setVec3("spotLight.position", camera.Position);
|
lightingShader.setVec3("spotLight.position", camera.Position);
|
||||||
lightingShader.setVec3("spotLight.direction", camera.Front);
|
lightingShader.setVec3("spotLight.direction", camera.Front);
|
||||||
@@ -260,8 +260,8 @@ int main()
|
|||||||
lightingShader.setVec3("spotLight.diffuse", 1.0f, 1.0f, 1.0f);
|
lightingShader.setVec3("spotLight.diffuse", 1.0f, 1.0f, 1.0f);
|
||||||
lightingShader.setVec3("spotLight.specular", 1.0f, 1.0f, 1.0f);
|
lightingShader.setVec3("spotLight.specular", 1.0f, 1.0f, 1.0f);
|
||||||
lightingShader.setFloat("spotLight.constant", 1.0f);
|
lightingShader.setFloat("spotLight.constant", 1.0f);
|
||||||
lightingShader.setFloat("spotLight.linear", 0.09);
|
lightingShader.setFloat("spotLight.linear", 0.09f);
|
||||||
lightingShader.setFloat("spotLight.quadratic", 0.032);
|
lightingShader.setFloat("spotLight.quadratic", 0.032f);
|
||||||
lightingShader.setFloat("spotLight.cutOff", glm::cos(glm::radians(12.5f)));
|
lightingShader.setFloat("spotLight.cutOff", glm::cos(glm::radians(12.5f)));
|
||||||
lightingShader.setFloat("spotLight.outerCutOff", glm::cos(glm::radians(15.0f)));
|
lightingShader.setFloat("spotLight.outerCutOff", glm::cos(glm::radians(15.0f)));
|
||||||
|
|
||||||
@@ -359,8 +359,11 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -381,7 +384,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -94,7 +94,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -164,8 +164,11 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -186,5 +189,5 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -177,7 +177,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -259,8 +259,11 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -281,7 +284,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -177,7 +177,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -259,8 +259,11 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -281,7 +284,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -88,7 +88,7 @@ int main()
|
|||||||
unsigned int amount = 1000;
|
unsigned int amount = 1000;
|
||||||
glm::mat4* modelMatrices;
|
glm::mat4* modelMatrices;
|
||||||
modelMatrices = new glm::mat4[amount];
|
modelMatrices = new glm::mat4[amount];
|
||||||
srand(glfwGetTime()); // initialize random seed
|
srand(static_cast<unsigned int>(glfwGetTime())); // initialize random seed
|
||||||
float radius = 50.0;
|
float radius = 50.0;
|
||||||
float offset = 2.5f;
|
float offset = 2.5f;
|
||||||
for (unsigned int i = 0; i < amount; i++)
|
for (unsigned int i = 0; i < amount; i++)
|
||||||
@@ -105,11 +105,11 @@ int main()
|
|||||||
model = glm::translate(model, glm::vec3(x, y, z));
|
model = glm::translate(model, glm::vec3(x, y, z));
|
||||||
|
|
||||||
// 2. scale: Scale between 0.05 and 0.25f
|
// 2. scale: Scale between 0.05 and 0.25f
|
||||||
float scale = (rand() % 20) / 100.0f + 0.05;
|
float scale = static_cast<GLfloat>((rand() % 20) / 100.0 + 0.05);
|
||||||
model = glm::scale(model, glm::vec3(scale));
|
model = glm::scale(model, glm::vec3(scale));
|
||||||
|
|
||||||
// 3. rotation: add random rotation around a (semi)randomly picked rotation axis vector
|
// 3. rotation: add random rotation around a (semi)randomly picked rotation axis vector
|
||||||
float rotAngle = (rand() % 360);
|
float rotAngle = static_cast<GLfloat>((rand() % 360));
|
||||||
model = glm::rotate(model, rotAngle, glm::vec3(0.4f, 0.6f, 0.8f));
|
model = glm::rotate(model, rotAngle, glm::vec3(0.4f, 0.6f, 0.8f));
|
||||||
|
|
||||||
// 4. now add to list of matrices
|
// 4. now add to list of matrices
|
||||||
@@ -122,7 +122,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -194,8 +194,11 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -216,5 +219,5 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -89,7 +89,7 @@ int main()
|
|||||||
unsigned int amount = 100000;
|
unsigned int amount = 100000;
|
||||||
glm::mat4* modelMatrices;
|
glm::mat4* modelMatrices;
|
||||||
modelMatrices = new glm::mat4[amount];
|
modelMatrices = new glm::mat4[amount];
|
||||||
srand(glfwGetTime()); // initialize random seed
|
srand(static_cast<unsigned int>(glfwGetTime())); // initialize random seed
|
||||||
float radius = 150.0;
|
float radius = 150.0;
|
||||||
float offset = 25.0f;
|
float offset = 25.0f;
|
||||||
for (unsigned int i = 0; i < amount; i++)
|
for (unsigned int i = 0; i < amount; i++)
|
||||||
@@ -106,11 +106,11 @@ int main()
|
|||||||
model = glm::translate(model, glm::vec3(x, y, z));
|
model = glm::translate(model, glm::vec3(x, y, z));
|
||||||
|
|
||||||
// 2. scale: Scale between 0.05 and 0.25f
|
// 2. scale: Scale between 0.05 and 0.25f
|
||||||
float scale = (rand() % 20) / 100.0f + 0.05;
|
auto scale = static_cast<GLfloat>((rand() % 20) / 100.0 + 0.05);
|
||||||
model = glm::scale(model, glm::vec3(scale));
|
model = glm::scale(model, glm::vec3(scale));
|
||||||
|
|
||||||
// 3. rotation: add random rotation around a (semi)randomly picked rotation axis vector
|
// 3. rotation: add random rotation around a (semi)randomly picked rotation axis vector
|
||||||
float rotAngle = (rand() % 360);
|
auto rotAngle = static_cast<GLfloat>((rand() % 360));
|
||||||
model = glm::rotate(model, rotAngle, glm::vec3(0.4f, 0.6f, 0.8f));
|
model = glm::rotate(model, rotAngle, glm::vec3(0.4f, 0.6f, 0.8f));
|
||||||
|
|
||||||
// 4. now add to list of matrices
|
// 4. now add to list of matrices
|
||||||
@@ -156,7 +156,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -194,7 +194,7 @@ int main()
|
|||||||
for (unsigned int i = 0; i < rock.meshes.size(); i++)
|
for (unsigned int i = 0; i < rock.meshes.size(); i++)
|
||||||
{
|
{
|
||||||
glBindVertexArray(rock.meshes[i].VAO);
|
glBindVertexArray(rock.meshes[i].VAO);
|
||||||
glDrawElementsInstanced(GL_TRIANGLES, rock.meshes[i].indices.size(), GL_UNSIGNED_INT, 0, amount);
|
glDrawElementsInstanced(GL_TRIANGLES, static_cast<GLsizei>(rock.meshes[i].indices.size()), GL_UNSIGNED_INT, 0, amount);
|
||||||
glBindVertexArray(0);
|
glBindVertexArray(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -236,8 +236,11 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -258,5 +261,5 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -141,7 +141,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -202,8 +202,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -224,5 +226,5 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -209,7 +209,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -294,8 +294,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -316,5 +318,5 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -181,7 +181,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -239,7 +239,7 @@ int main()
|
|||||||
glStencilMask(0x00);
|
glStencilMask(0x00);
|
||||||
glDisable(GL_DEPTH_TEST);
|
glDisable(GL_DEPTH_TEST);
|
||||||
shaderSingleColor.use();
|
shaderSingleColor.use();
|
||||||
float scale = 1.1;
|
float scale = 1.1f;
|
||||||
// cubes
|
// cubes
|
||||||
glBindVertexArray(cubeVAO);
|
glBindVertexArray(cubeVAO);
|
||||||
glBindTexture(GL_TEXTURE_2D, cubeTexture);
|
glBindTexture(GL_TEXTURE_2D, cubeTexture);
|
||||||
@@ -303,8 +303,11 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -325,7 +328,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -208,7 +208,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -302,8 +302,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -324,7 +326,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -210,7 +210,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -313,8 +313,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -335,7 +337,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -226,7 +226,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -329,8 +329,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -351,7 +353,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -226,7 +226,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -361,8 +361,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -383,7 +385,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -222,7 +222,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -309,8 +309,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -331,7 +333,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -220,7 +220,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
float currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -308,8 +308,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -330,7 +332,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -168,7 +168,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -257,8 +257,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
|
|||||||
@@ -88,7 +88,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -111,7 +111,7 @@ int main()
|
|||||||
shader.setMat4("model", model);
|
shader.setMat4("model", model);
|
||||||
|
|
||||||
// add time component to geometry shader in the form of a uniform
|
// add time component to geometry shader in the form of a uniform
|
||||||
shader.setFloat("time", glfwGetTime());
|
shader.setFloat("time", static_cast<GLfloat>(glfwGetTime()));
|
||||||
|
|
||||||
// draw model
|
// draw model
|
||||||
nanosuit.Draw(shader);
|
nanosuit.Draw(shader);
|
||||||
@@ -154,8 +154,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -176,5 +178,5 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -90,7 +90,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -161,8 +161,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -183,5 +185,5 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -129,7 +129,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -213,8 +213,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -235,7 +237,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -141,7 +141,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -226,8 +226,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -248,7 +250,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -154,7 +154,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -378,8 +378,11 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -400,7 +403,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -158,7 +158,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -402,8 +402,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -424,7 +426,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -160,7 +160,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -409,8 +409,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -431,7 +433,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -129,7 +129,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -138,7 +138,7 @@ int main()
|
|||||||
processInput(window);
|
processInput(window);
|
||||||
|
|
||||||
// move light position over time
|
// move light position over time
|
||||||
lightPos.z = sin(glfwGetTime() * 0.5) * 3.0;
|
lightPos.z = static_cast<GLfloat>(sin(glfwGetTime() * 0.5) * 3.0);
|
||||||
|
|
||||||
// render
|
// render
|
||||||
// ------
|
// ------
|
||||||
@@ -356,8 +356,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -378,7 +380,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -129,7 +129,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -138,7 +138,7 @@ int main()
|
|||||||
processInput(window);
|
processInput(window);
|
||||||
|
|
||||||
// move light position over time
|
// move light position over time
|
||||||
lightPos.z = sin(glfwGetTime() * 0.5) * 3.0;
|
lightPos.z = static_cast<GLfloat>(sin(glfwGetTime() * 0.5) * 3.0);
|
||||||
|
|
||||||
// render
|
// render
|
||||||
// ------
|
// ------
|
||||||
@@ -356,8 +356,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -378,7 +380,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -101,7 +101,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -269,8 +269,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -291,7 +293,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ void renderQuad();
|
|||||||
// settings
|
// settings
|
||||||
const unsigned int SCR_WIDTH = 800;
|
const unsigned int SCR_WIDTH = 800;
|
||||||
const unsigned int SCR_HEIGHT = 600;
|
const unsigned int SCR_HEIGHT = 600;
|
||||||
float heightScale = 0.1;
|
float heightScale = 0.1f;
|
||||||
|
|
||||||
// camera
|
// camera
|
||||||
Camera camera(glm::vec3(0.0f, 0.0f, 3.0f));
|
Camera camera(glm::vec3(0.0f, 0.0f, 3.0f));
|
||||||
@@ -107,7 +107,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -298,8 +298,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -320,7 +322,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ void renderQuad();
|
|||||||
// settings
|
// settings
|
||||||
const unsigned int SCR_WIDTH = 800;
|
const unsigned int SCR_WIDTH = 800;
|
||||||
const unsigned int SCR_HEIGHT = 600;
|
const unsigned int SCR_HEIGHT = 600;
|
||||||
float heightScale = 0.1;
|
float heightScale = 0.1f;
|
||||||
|
|
||||||
// camera
|
// camera
|
||||||
Camera camera(glm::vec3(0.0f, 0.0f, 3.0f));
|
Camera camera(glm::vec3(0.0f, 0.0f, 3.0f));
|
||||||
@@ -107,7 +107,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -298,8 +298,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -320,7 +322,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ void renderQuad();
|
|||||||
// settings
|
// settings
|
||||||
const unsigned int SCR_WIDTH = 800;
|
const unsigned int SCR_WIDTH = 800;
|
||||||
const unsigned int SCR_HEIGHT = 600;
|
const unsigned int SCR_HEIGHT = 600;
|
||||||
float heightScale = 0.1;
|
float heightScale = 0.1f;
|
||||||
|
|
||||||
// camera
|
// camera
|
||||||
Camera camera(glm::vec3(0.0f, 0.0f, 3.0f));
|
Camera camera(glm::vec3(0.0f, 0.0f, 3.0f));
|
||||||
@@ -107,7 +107,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -298,8 +298,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -320,7 +322,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -141,7 +141,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -359,8 +359,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -381,7 +383,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -177,7 +177,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -467,8 +467,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -489,7 +491,7 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// utility function for loading a 2D texture from file
|
// utility function for loading a 2D texture from file
|
||||||
|
|||||||
@@ -150,14 +150,14 @@ int main()
|
|||||||
for (unsigned int i = 0; i < NR_LIGHTS; i++)
|
for (unsigned int i = 0; i < NR_LIGHTS; i++)
|
||||||
{
|
{
|
||||||
// calculate slightly random offsets
|
// calculate slightly random offsets
|
||||||
float xPos = ((rand() % 100) / 100.0) * 6.0 - 3.0;
|
float xPos = static_cast<GLfloat>(((rand() % 100) / 100.0) * 6.0 - 3.0);
|
||||||
float yPos = ((rand() % 100) / 100.0) * 6.0 - 4.0;
|
float yPos = static_cast<GLfloat>(((rand() % 100) / 100.0) * 6.0 - 4.0);
|
||||||
float zPos = ((rand() % 100) / 100.0) * 6.0 - 3.0;
|
float zPos = static_cast<GLfloat>(((rand() % 100) / 100.0) * 6.0 - 3.0);
|
||||||
lightPositions.push_back(glm::vec3(xPos, yPos, zPos));
|
lightPositions.push_back(glm::vec3(xPos, yPos, zPos));
|
||||||
// also calculate random color
|
// also calculate random color
|
||||||
float rColor = ((rand() % 100) / 200.0f) + 0.5; // between 0.5 and 1.0
|
float rColor = static_cast<GLfloat>(((rand() % 100) / 200.0f) + 0.5); // between 0.5 and 1.0
|
||||||
float gColor = ((rand() % 100) / 200.0f) + 0.5; // between 0.5 and 1.0
|
float gColor = static_cast<GLfloat>(((rand() % 100) / 200.0f) + 0.5); // between 0.5 and 1.0
|
||||||
float bColor = ((rand() % 100) / 200.0f) + 0.5; // between 0.5 and 1.0
|
float bColor = static_cast<GLfloat>(((rand() % 100) / 200.0f) + 0.5); // between 0.5 and 1.0
|
||||||
lightColors.push_back(glm::vec3(rColor, gColor, bColor));
|
lightColors.push_back(glm::vec3(rColor, gColor, bColor));
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -174,7 +174,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -223,8 +223,8 @@ int main()
|
|||||||
shaderLightingPass.setVec3("lights[" + std::to_string(i) + "].Position", lightPositions[i]);
|
shaderLightingPass.setVec3("lights[" + std::to_string(i) + "].Position", lightPositions[i]);
|
||||||
shaderLightingPass.setVec3("lights[" + std::to_string(i) + "].Color", lightColors[i]);
|
shaderLightingPass.setVec3("lights[" + std::to_string(i) + "].Color", lightColors[i]);
|
||||||
// update attenuation parameters and calculate radius
|
// update attenuation parameters and calculate radius
|
||||||
const float linear = 0.7;
|
const float linear = 0.7f;
|
||||||
const float quadratic = 1.8;
|
const float quadratic = 1.8f;
|
||||||
shaderLightingPass.setFloat("lights[" + std::to_string(i) + "].Linear", linear);
|
shaderLightingPass.setFloat("lights[" + std::to_string(i) + "].Linear", linear);
|
||||||
shaderLightingPass.setFloat("lights[" + std::to_string(i) + "].Quadratic", quadratic);
|
shaderLightingPass.setFloat("lights[" + std::to_string(i) + "].Quadratic", quadratic);
|
||||||
}
|
}
|
||||||
@@ -403,8 +403,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -425,5 +427,5 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -150,14 +150,14 @@ int main()
|
|||||||
for (unsigned int i = 0; i < NR_LIGHTS; i++)
|
for (unsigned int i = 0; i < NR_LIGHTS; i++)
|
||||||
{
|
{
|
||||||
// calculate slightly random offsets
|
// calculate slightly random offsets
|
||||||
float xPos = ((rand() % 100) / 100.0) * 6.0 - 3.0;
|
float xPos = static_cast<GLfloat>(((rand() % 100) / 100.0) * 6.0 - 3.0);
|
||||||
float yPos = ((rand() % 100) / 100.0) * 6.0 - 4.0;
|
float yPos = static_cast<GLfloat>(((rand() % 100) / 100.0) * 6.0 - 4.0);
|
||||||
float zPos = ((rand() % 100) / 100.0) * 6.0 - 3.0;
|
float zPos = static_cast<GLfloat>(((rand() % 100) / 100.0) * 6.0 - 3.0);
|
||||||
lightPositions.push_back(glm::vec3(xPos, yPos, zPos));
|
lightPositions.push_back(glm::vec3(xPos, yPos, zPos));
|
||||||
// also calculate random color
|
// also calculate random color
|
||||||
float rColor = ((rand() % 100) / 200.0f) + 0.5; // between 0.5 and 1.0
|
float rColor = static_cast<GLfloat>(((rand() % 100) / 200.0f) + 0.5); // between 0.5 and 1.)
|
||||||
float gColor = ((rand() % 100) / 200.0f) + 0.5; // between 0.5 and 1.0
|
float gColor = static_cast<GLfloat>(((rand() % 100) / 200.0f) + 0.5); // between 0.5 and 1.)
|
||||||
float bColor = ((rand() % 100) / 200.0f) + 0.5; // between 0.5 and 1.0
|
float bColor = static_cast<GLfloat>(((rand() % 100) / 200.0f) + 0.5); // between 0.5 and 1.)
|
||||||
lightColors.push_back(glm::vec3(rColor, gColor, bColor));
|
lightColors.push_back(glm::vec3(rColor, gColor, bColor));
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -174,7 +174,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -223,9 +223,9 @@ int main()
|
|||||||
shaderLightingPass.setVec3("lights[" + std::to_string(i) + "].Position", lightPositions[i]);
|
shaderLightingPass.setVec3("lights[" + std::to_string(i) + "].Position", lightPositions[i]);
|
||||||
shaderLightingPass.setVec3("lights[" + std::to_string(i) + "].Color", lightColors[i]);
|
shaderLightingPass.setVec3("lights[" + std::to_string(i) + "].Color", lightColors[i]);
|
||||||
// update attenuation parameters and calculate radius
|
// update attenuation parameters and calculate radius
|
||||||
const float constant = 1.0; // note that we don't send this to the shader, we assume it is always 1.0 (in our case)
|
const float constant = 1.0f; // note that we don't send this to the shader, we assume it is always 1.0 (in our case)
|
||||||
const float linear = 0.7;
|
const float linear = 0.7f;
|
||||||
const float quadratic = 1.8;
|
const float quadratic = 1.8f;
|
||||||
shaderLightingPass.setFloat("lights[" + std::to_string(i) + "].Linear", linear);
|
shaderLightingPass.setFloat("lights[" + std::to_string(i) + "].Linear", linear);
|
||||||
shaderLightingPass.setFloat("lights[" + std::to_string(i) + "].Quadratic", quadratic);
|
shaderLightingPass.setFloat("lights[" + std::to_string(i) + "].Quadratic", quadratic);
|
||||||
// then calculate radius of light volume/sphere
|
// then calculate radius of light volume/sphere
|
||||||
@@ -408,8 +408,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -430,5 +432,5 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -173,7 +173,7 @@ int main()
|
|||||||
glm::vec3 sample(randomFloats(generator) * 2.0 - 1.0, randomFloats(generator) * 2.0 - 1.0, randomFloats(generator));
|
glm::vec3 sample(randomFloats(generator) * 2.0 - 1.0, randomFloats(generator) * 2.0 - 1.0, randomFloats(generator));
|
||||||
sample = glm::normalize(sample);
|
sample = glm::normalize(sample);
|
||||||
sample *= randomFloats(generator);
|
sample *= randomFloats(generator);
|
||||||
float scale = float(i) / 64.0;
|
float scale = float(i) / 64.0f;
|
||||||
|
|
||||||
// scale samples s.t. they're more aligned to center of kernel
|
// scale samples s.t. they're more aligned to center of kernel
|
||||||
scale = lerp(0.1f, 1.0f, scale * scale);
|
scale = lerp(0.1f, 1.0f, scale * scale);
|
||||||
@@ -222,7 +222,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -302,8 +302,8 @@ int main()
|
|||||||
shaderLightingPass.setVec3("light.Position", lightPosView);
|
shaderLightingPass.setVec3("light.Position", lightPosView);
|
||||||
shaderLightingPass.setVec3("light.Color", lightColor);
|
shaderLightingPass.setVec3("light.Color", lightColor);
|
||||||
// Update attenuation parameters
|
// Update attenuation parameters
|
||||||
const float linear = 0.09;
|
const float linear = 0.09f;
|
||||||
const float quadratic = 0.032;
|
const float quadratic = 0.032f;
|
||||||
shaderLightingPass.setFloat("light.Linear", linear);
|
shaderLightingPass.setFloat("light.Linear", linear);
|
||||||
shaderLightingPass.setFloat("light.Quadratic", quadratic);
|
shaderLightingPass.setFloat("light.Quadratic", quadratic);
|
||||||
glActiveTexture(GL_TEXTURE0);
|
glActiveTexture(GL_TEXTURE0);
|
||||||
@@ -462,8 +462,10 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -484,5 +486,5 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -115,7 +115,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -213,8 +213,11 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -235,13 +238,13 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// renders (and builds at first invocation) a sphere
|
// renders (and builds at first invocation) a sphere
|
||||||
// -------------------------------------------------
|
// -------------------------------------------------
|
||||||
unsigned int sphereVAO = 0;
|
unsigned int sphereVAO = 0;
|
||||||
unsigned int indexCount;
|
GLsizei indexCount;
|
||||||
void renderSphere()
|
void renderSphere()
|
||||||
{
|
{
|
||||||
if (sphereVAO == 0)
|
if (sphereVAO == 0)
|
||||||
@@ -259,7 +262,7 @@ void renderSphere()
|
|||||||
|
|
||||||
const unsigned int X_SEGMENTS = 64;
|
const unsigned int X_SEGMENTS = 64;
|
||||||
const unsigned int Y_SEGMENTS = 64;
|
const unsigned int Y_SEGMENTS = 64;
|
||||||
const float PI = 3.14159265359;
|
const float PI = 3.14159265359f;
|
||||||
for (unsigned int x = 0; x <= X_SEGMENTS; ++x)
|
for (unsigned int x = 0; x <= X_SEGMENTS; ++x)
|
||||||
{
|
{
|
||||||
for (unsigned int y = 0; y <= Y_SEGMENTS; ++y)
|
for (unsigned int y = 0; y <= Y_SEGMENTS; ++y)
|
||||||
@@ -297,7 +300,7 @@ void renderSphere()
|
|||||||
}
|
}
|
||||||
oddRow = !oddRow;
|
oddRow = !oddRow;
|
||||||
}
|
}
|
||||||
indexCount = indices.size();
|
indexCount = static_cast<GLsizei>(indices.size());
|
||||||
|
|
||||||
std::vector<float> data;
|
std::vector<float> data;
|
||||||
for (unsigned int i = 0; i < positions.size(); ++i)
|
for (unsigned int i = 0; i < positions.size(); ++i)
|
||||||
|
|||||||
@@ -120,7 +120,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -224,8 +224,11 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -246,13 +249,13 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// renders (and builds at first invocation) a sphere
|
// renders (and builds at first invocation) a sphere
|
||||||
// -------------------------------------------------
|
// -------------------------------------------------
|
||||||
unsigned int sphereVAO = 0;
|
unsigned int sphereVAO = 0;
|
||||||
unsigned int indexCount;
|
GLsizei indexCount;
|
||||||
void renderSphere()
|
void renderSphere()
|
||||||
{
|
{
|
||||||
if (sphereVAO == 0)
|
if (sphereVAO == 0)
|
||||||
@@ -270,7 +273,7 @@ void renderSphere()
|
|||||||
|
|
||||||
const unsigned int X_SEGMENTS = 64;
|
const unsigned int X_SEGMENTS = 64;
|
||||||
const unsigned int Y_SEGMENTS = 64;
|
const unsigned int Y_SEGMENTS = 64;
|
||||||
const float PI = 3.14159265359;
|
const float PI = 3.14159265359f;
|
||||||
for (unsigned int x = 0; x <= X_SEGMENTS; ++x)
|
for (unsigned int x = 0; x <= X_SEGMENTS; ++x)
|
||||||
{
|
{
|
||||||
for (unsigned int y = 0; y <= Y_SEGMENTS; ++y)
|
for (unsigned int y = 0; y <= Y_SEGMENTS; ++y)
|
||||||
@@ -308,7 +311,7 @@ void renderSphere()
|
|||||||
}
|
}
|
||||||
oddRow = !oddRow;
|
oddRow = !oddRow;
|
||||||
}
|
}
|
||||||
indexCount = indices.size();
|
indexCount = static_cast<GLsizei>(indices.size());
|
||||||
|
|
||||||
std::vector<float> data;
|
std::vector<float> data;
|
||||||
for (unsigned int i = 0; i < positions.size(); ++i)
|
for (unsigned int i = 0; i < positions.size(); ++i)
|
||||||
|
|||||||
@@ -214,7 +214,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -329,8 +329,11 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -351,13 +354,13 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// renders (and builds at first invocation) a sphere
|
// renders (and builds at first invocation) a sphere
|
||||||
// -------------------------------------------------
|
// -------------------------------------------------
|
||||||
unsigned int sphereVAO = 0;
|
unsigned int sphereVAO = 0;
|
||||||
unsigned int indexCount;
|
GLsizei indexCount;
|
||||||
void renderSphere()
|
void renderSphere()
|
||||||
{
|
{
|
||||||
if (sphereVAO == 0)
|
if (sphereVAO == 0)
|
||||||
@@ -375,7 +378,7 @@ void renderSphere()
|
|||||||
|
|
||||||
const unsigned int X_SEGMENTS = 64;
|
const unsigned int X_SEGMENTS = 64;
|
||||||
const unsigned int Y_SEGMENTS = 64;
|
const unsigned int Y_SEGMENTS = 64;
|
||||||
const float PI = 3.14159265359;
|
const float PI = 3.14159265359f;
|
||||||
for (unsigned int x = 0; x <= X_SEGMENTS; ++x)
|
for (unsigned int x = 0; x <= X_SEGMENTS; ++x)
|
||||||
{
|
{
|
||||||
for (unsigned int y = 0; y <= Y_SEGMENTS; ++y)
|
for (unsigned int y = 0; y <= Y_SEGMENTS; ++y)
|
||||||
@@ -413,7 +416,7 @@ void renderSphere()
|
|||||||
}
|
}
|
||||||
oddRow = !oddRow;
|
oddRow = !oddRow;
|
||||||
}
|
}
|
||||||
indexCount = indices.size();
|
indexCount = static_cast<GLsizei>(indices.size());
|
||||||
|
|
||||||
std::vector<float> data;
|
std::vector<float> data;
|
||||||
for (unsigned int i = 0; i < positions.size(); ++i)
|
for (unsigned int i = 0; i < positions.size(); ++i)
|
||||||
|
|||||||
@@ -255,7 +255,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -369,8 +369,11 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -391,13 +394,13 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// renders (and builds at first invocation) a sphere
|
// renders (and builds at first invocation) a sphere
|
||||||
// -------------------------------------------------
|
// -------------------------------------------------
|
||||||
unsigned int sphereVAO = 0;
|
unsigned int sphereVAO = 0;
|
||||||
unsigned int indexCount;
|
GLsizei indexCount;
|
||||||
void renderSphere()
|
void renderSphere()
|
||||||
{
|
{
|
||||||
if (sphereVAO == 0)
|
if (sphereVAO == 0)
|
||||||
@@ -415,7 +418,7 @@ void renderSphere()
|
|||||||
|
|
||||||
const unsigned int X_SEGMENTS = 64;
|
const unsigned int X_SEGMENTS = 64;
|
||||||
const unsigned int Y_SEGMENTS = 64;
|
const unsigned int Y_SEGMENTS = 64;
|
||||||
const float PI = 3.14159265359;
|
const float PI = 3.14159265359f;
|
||||||
for (unsigned int x = 0; x <= X_SEGMENTS; ++x)
|
for (unsigned int x = 0; x <= X_SEGMENTS; ++x)
|
||||||
{
|
{
|
||||||
for (unsigned int y = 0; y <= Y_SEGMENTS; ++y)
|
for (unsigned int y = 0; y <= Y_SEGMENTS; ++y)
|
||||||
@@ -453,7 +456,7 @@ void renderSphere()
|
|||||||
}
|
}
|
||||||
oddRow = !oddRow;
|
oddRow = !oddRow;
|
||||||
}
|
}
|
||||||
indexCount = indices.size();
|
indexCount = static_cast<GLsizei>(indices.size());
|
||||||
|
|
||||||
std::vector<float> data;
|
std::vector<float> data;
|
||||||
for (unsigned int i = 0; i < positions.size(); ++i)
|
for (unsigned int i = 0; i < positions.size(); ++i)
|
||||||
|
|||||||
@@ -277,8 +277,8 @@ int main()
|
|||||||
for (unsigned int mip = 0; mip < maxMipLevels; ++mip)
|
for (unsigned int mip = 0; mip < maxMipLevels; ++mip)
|
||||||
{
|
{
|
||||||
// reisze framebuffer according to mip-level size.
|
// reisze framebuffer according to mip-level size.
|
||||||
unsigned int mipWidth = 128 * std::pow(0.5, mip);
|
unsigned int mipWidth = static_cast<unsigned int>(128 * std::pow(0.5, mip));
|
||||||
unsigned int mipHeight = 128 * std::pow(0.5, mip);
|
unsigned int mipHeight = static_cast<unsigned int>(128 * std::pow(0.5, mip));
|
||||||
glBindRenderbuffer(GL_RENDERBUFFER, captureRBO);
|
glBindRenderbuffer(GL_RENDERBUFFER, captureRBO);
|
||||||
glRenderbufferStorage(GL_RENDERBUFFER, GL_DEPTH_COMPONENT24, mipWidth, mipHeight);
|
glRenderbufferStorage(GL_RENDERBUFFER, GL_DEPTH_COMPONENT24, mipWidth, mipHeight);
|
||||||
glViewport(0, 0, mipWidth, mipHeight);
|
glViewport(0, 0, mipWidth, mipHeight);
|
||||||
@@ -343,7 +343,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -467,8 +467,11 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -489,13 +492,13 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// renders (and builds at first invocation) a sphere
|
// renders (and builds at first invocation) a sphere
|
||||||
// -------------------------------------------------
|
// -------------------------------------------------
|
||||||
unsigned int sphereVAO = 0;
|
unsigned int sphereVAO = 0;
|
||||||
unsigned int indexCount;
|
GLsizei indexCount;
|
||||||
void renderSphere()
|
void renderSphere()
|
||||||
{
|
{
|
||||||
if (sphereVAO == 0)
|
if (sphereVAO == 0)
|
||||||
@@ -513,7 +516,7 @@ void renderSphere()
|
|||||||
|
|
||||||
const unsigned int X_SEGMENTS = 64;
|
const unsigned int X_SEGMENTS = 64;
|
||||||
const unsigned int Y_SEGMENTS = 64;
|
const unsigned int Y_SEGMENTS = 64;
|
||||||
const float PI = 3.14159265359;
|
const float PI = 3.14159265359f;
|
||||||
for (unsigned int x = 0; x <= X_SEGMENTS; ++x)
|
for (unsigned int x = 0; x <= X_SEGMENTS; ++x)
|
||||||
{
|
{
|
||||||
for (unsigned int y = 0; y <= Y_SEGMENTS; ++y)
|
for (unsigned int y = 0; y <= Y_SEGMENTS; ++y)
|
||||||
@@ -551,7 +554,7 @@ void renderSphere()
|
|||||||
}
|
}
|
||||||
oddRow = !oddRow;
|
oddRow = !oddRow;
|
||||||
}
|
}
|
||||||
indexCount = indices.size();
|
indexCount = static_cast<GLsizei>(indices.size());
|
||||||
|
|
||||||
std::vector<float> data;
|
std::vector<float> data;
|
||||||
for (unsigned int i = 0; i < positions.size(); ++i)
|
for (unsigned int i = 0; i < positions.size(); ++i)
|
||||||
|
|||||||
@@ -314,8 +314,8 @@ int main()
|
|||||||
for (unsigned int mip = 0; mip < maxMipLevels; ++mip)
|
for (unsigned int mip = 0; mip < maxMipLevels; ++mip)
|
||||||
{
|
{
|
||||||
// reisze framebuffer according to mip-level size.
|
// reisze framebuffer according to mip-level size.
|
||||||
unsigned int mipWidth = 128 * std::pow(0.5, mip);
|
unsigned int mipWidth = static_cast<unsigned int>(128 * std::pow(0.5, mip));
|
||||||
unsigned int mipHeight = 128 * std::pow(0.5, mip);
|
unsigned int mipHeight = static_cast<unsigned int>(128 * std::pow(0.5, mip));
|
||||||
glBindRenderbuffer(GL_RENDERBUFFER, captureRBO);
|
glBindRenderbuffer(GL_RENDERBUFFER, captureRBO);
|
||||||
glRenderbufferStorage(GL_RENDERBUFFER, GL_DEPTH_COMPONENT24, mipWidth, mipHeight);
|
glRenderbufferStorage(GL_RENDERBUFFER, GL_DEPTH_COMPONENT24, mipWidth, mipHeight);
|
||||||
glViewport(0, 0, mipWidth, mipHeight);
|
glViewport(0, 0, mipWidth, mipHeight);
|
||||||
@@ -380,7 +380,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
auto currentFrame = static_cast<GLfloat>(glfwGetTime());
|
||||||
deltaTime = currentFrame - lastFrame;
|
deltaTime = currentFrame - lastFrame;
|
||||||
lastFrame = currentFrame;
|
lastFrame = currentFrame;
|
||||||
|
|
||||||
@@ -567,8 +567,11 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
|
|||||||
|
|
||||||
// glfw: whenever the mouse moves, this callback is called
|
// glfw: whenever the mouse moves, this callback is called
|
||||||
// -------------------------------------------------------
|
// -------------------------------------------------------
|
||||||
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
void mouse_callback(GLFWwindow* window, double xposIn, double yposIn)
|
||||||
{
|
{
|
||||||
|
auto xpos = static_cast<GLfloat>(xposIn);
|
||||||
|
auto ypos = static_cast<GLfloat>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -589,13 +592,13 @@ void mouse_callback(GLFWwindow* window, double xpos, double ypos)
|
|||||||
// ----------------------------------------------------------------------
|
// ----------------------------------------------------------------------
|
||||||
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
void scroll_callback(GLFWwindow* window, double xoffset, double yoffset)
|
||||||
{
|
{
|
||||||
camera.ProcessMouseScroll(yoffset);
|
camera.ProcessMouseScroll(static_cast<GLfloat>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// renders (and builds at first invocation) a sphere
|
// renders (and builds at first invocation) a sphere
|
||||||
// -------------------------------------------------
|
// -------------------------------------------------
|
||||||
unsigned int sphereVAO = 0;
|
unsigned int sphereVAO = 0;
|
||||||
unsigned int indexCount;
|
GLsizei indexCount;
|
||||||
void renderSphere()
|
void renderSphere()
|
||||||
{
|
{
|
||||||
if (sphereVAO == 0)
|
if (sphereVAO == 0)
|
||||||
@@ -613,7 +616,7 @@ void renderSphere()
|
|||||||
|
|
||||||
const unsigned int X_SEGMENTS = 64;
|
const unsigned int X_SEGMENTS = 64;
|
||||||
const unsigned int Y_SEGMENTS = 64;
|
const unsigned int Y_SEGMENTS = 64;
|
||||||
const float PI = 3.14159265359;
|
const float PI = 3.14159265359f;
|
||||||
for (unsigned int x = 0; x <= X_SEGMENTS; ++x)
|
for (unsigned int x = 0; x <= X_SEGMENTS; ++x)
|
||||||
{
|
{
|
||||||
for (unsigned int y = 0; y <= Y_SEGMENTS; ++y)
|
for (unsigned int y = 0; y <= Y_SEGMENTS; ++y)
|
||||||
@@ -651,7 +654,7 @@ void renderSphere()
|
|||||||
}
|
}
|
||||||
oddRow = !oddRow;
|
oddRow = !oddRow;
|
||||||
}
|
}
|
||||||
indexCount = indices.size();
|
indexCount = static_cast<GLsizei>(indices.size());
|
||||||
|
|
||||||
std::vector<float> data;
|
std::vector<float> data;
|
||||||
for (unsigned int i = 0; i < positions.size(); ++i)
|
for (unsigned int i = 0; i < positions.size(); ++i)
|
||||||
|
|||||||
Reference in New Issue
Block a user