mirror of
https://github.com/JoeyDeVries/LearnOpenGL.git
synced 2026-01-30 20:13:22 +08:00
Merge pull request #262 from pattakosn/master
fix compiler/linker warning messages
This commit is contained in:
@@ -3,6 +3,10 @@ cmake_policy(VERSION 3.0)
|
|||||||
|
|
||||||
project (LearnOpenGL)
|
project (LearnOpenGL)
|
||||||
|
|
||||||
|
set(CMAKE_CXX_STANDARD 11)
|
||||||
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||||
|
set(CMAKE_CXX_EXTENSIONS ON)
|
||||||
|
|
||||||
IF(NOT CMAKE_BUILD_TYPE)
|
IF(NOT CMAKE_BUILD_TYPE)
|
||||||
SET(CMAKE_BUILD_TYPE Debug CACHE STRING "Choose the type of build (Debug or Release)" FORCE)
|
SET(CMAKE_BUILD_TYPE Debug CACHE STRING "Choose the type of build (Debug or Release)" FORCE)
|
||||||
ENDIF(NOT CMAKE_BUILD_TYPE)
|
ENDIF(NOT CMAKE_BUILD_TYPE)
|
||||||
@@ -15,8 +19,6 @@ endif(WIN32)
|
|||||||
|
|
||||||
link_directories(${CMAKE_SOURCE_DIR}/lib)
|
link_directories(${CMAKE_SOURCE_DIR}/lib)
|
||||||
|
|
||||||
list(APPEND CMAKE_CXX_FLAGS "-std=c++11")
|
|
||||||
|
|
||||||
# find the required packages
|
# find the required packages
|
||||||
find_package(GLM REQUIRED)
|
find_package(GLM REQUIRED)
|
||||||
message(STATUS "GLM included at ${GLM_INCLUDE_DIR}")
|
message(STATUS "GLM included at ${GLM_INCLUDE_DIR}")
|
||||||
@@ -31,6 +33,7 @@ message(STATUS "Found ASSIMP in ${ASSIMP_INCLUDE_DIR}")
|
|||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set(LIBS glfw3 opengl32 assimp freetype irrKlang)
|
set(LIBS glfw3 opengl32 assimp freetype irrKlang)
|
||||||
|
add_definitions(-D_CRT_SECURE_NO_WARNINGS)
|
||||||
elseif(UNIX AND NOT APPLE)
|
elseif(UNIX AND NOT APPLE)
|
||||||
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -Wall")
|
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -Wall")
|
||||||
find_package(OpenGL REQUIRED)
|
find_package(OpenGL REQUIRED)
|
||||||
@@ -195,6 +198,9 @@ foreach(CHAPTER ${CHAPTERS})
|
|||||||
set(NAME "${CHAPTER}__${DEMO}")
|
set(NAME "${CHAPTER}__${DEMO}")
|
||||||
add_executable(${NAME} ${SOURCE})
|
add_executable(${NAME} ${SOURCE})
|
||||||
target_link_libraries(${NAME} ${LIBS})
|
target_link_libraries(${NAME} ${LIBS})
|
||||||
|
if(MSVC)
|
||||||
|
target_link_options(${NAME} PUBLIC /ignore:4099)
|
||||||
|
endif(MSVC)
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
set_target_properties(${NAME} PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${CMAKE_SOURCE_DIR}/bin/${CHAPTER}")
|
set_target_properties(${NAME} PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${CMAKE_SOURCE_DIR}/bin/${CHAPTER}")
|
||||||
set_target_properties(${NAME} PROPERTIES VS_DEBUGGER_WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}/bin/${CHAPTER}/Debug")
|
set_target_properties(${NAME} PROPERTIES VS_DEBUGGER_WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}/bin/${CHAPTER}/Debug")
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ Keep in mind the supplied libraries were generated with a specific compiler vers
|
|||||||
|
|
||||||
## Linux building
|
## Linux building
|
||||||
First make sure you have CMake, Git, and GCC by typing as root (sudo) `apt-get install g++ cmake git` and then get the required packages:
|
First make sure you have CMake, Git, and GCC by typing as root (sudo) `apt-get install g++ cmake git` and then get the required packages:
|
||||||
Using root (sudo) and type `apt-get install libsoil-dev libglm-dev libassimp-dev libglew-dev libglfw3-dev libxinerama-dev libxcursor-dev libxi-dev` .
|
Using root (sudo) and type `apt-get install libsoil-dev libglm-dev libassimp-dev libglew-dev libglfw3-dev libxinerama-dev libxcursor-dev libxi-dev libfreetype-dev libgl1-mesa-dev xorg-dev` .
|
||||||
Next, run CMake (preferably CMake-gui). The source directory is LearnOpenGL and specify the build directory as LearnOpenGL/build. Creating the build directory within LearnOpenGL is important for linking to the resource files (it also will be ignored by Git). Hit configure and specify your compiler files (Unix Makefiles are recommended), resolve any missing directories or libraries, and then hit generate. Navigate to the build directory (`cd LearnOpenGL/build`) and type `make` in the terminal. This should generate the executables in the respective chapter folders.
|
Next, run CMake (preferably CMake-gui). The source directory is LearnOpenGL and specify the build directory as LearnOpenGL/build. Creating the build directory within LearnOpenGL is important for linking to the resource files (it also will be ignored by Git). Hit configure and specify your compiler files (Unix Makefiles are recommended), resolve any missing directories or libraries, and then hit generate. Navigate to the build directory (`cd LearnOpenGL/build`) and type `make` in the terminal. This should generate the executables in the respective chapter folders.
|
||||||
|
|
||||||
Note that CodeBlocks or other IDEs may have issues running the programs due to problems finding the shader and resource files, however it should still be able to generate the exectuables. To work around this problem it is possible to set an environment variable to tell the tutorials where the resource files can be found. The environment variable is named LOGL_ROOT_PATH and may be set to the path to the root of the LearnOpenGL directory tree. For example:
|
Note that CodeBlocks or other IDEs may have issues running the programs due to problems finding the shader and resource files, however it should still be able to generate the exectuables. To work around this problem it is possible to set an environment variable to tell the tutorials where the resource files can be found. The environment variable is named LOGL_ROOT_PATH and may be set to the path to the root of the LearnOpenGL directory tree. For example:
|
||||||
|
|||||||
@@ -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<unsigned int>(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.
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ public:
|
|||||||
}
|
}
|
||||||
catch (std::ifstream::failure& e)
|
catch (std::ifstream::failure& e)
|
||||||
{
|
{
|
||||||
std::cout << "ERROR::SHADER::FILE_NOT_SUCCESFULLY_READ" << std::endl;
|
std::cout << "ERROR::SHADER::FILE_NOT_SUCCESFULLY_READ: " << e.what() << std::endl;
|
||||||
}
|
}
|
||||||
const char* vShaderCode = vertexCode.c_str();
|
const char* vShaderCode = vertexCode.c_str();
|
||||||
const char * fShaderCode = fragmentCode.c_str();
|
const char * fShaderCode = fragmentCode.c_str();
|
||||||
|
|||||||
@@ -43,7 +43,7 @@ public:
|
|||||||
}
|
}
|
||||||
catch (std::ifstream::failure& e)
|
catch (std::ifstream::failure& e)
|
||||||
{
|
{
|
||||||
std::cout << "ERROR::SHADER::FILE_NOT_SUCCESFULLY_READ" << std::endl;
|
std::cout << "ERROR::SHADER::FILE_NOT_SUCCESFULLY_READ: " << e.what() << std::endl;
|
||||||
}
|
}
|
||||||
const char* vShaderCode = vertexCode.c_str();
|
const char* vShaderCode = vertexCode.c_str();
|
||||||
const char * fShaderCode = fragmentCode.c_str();
|
const char * fShaderCode = fragmentCode.c_str();
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ public:
|
|||||||
}
|
}
|
||||||
catch (std::ifstream::failure& e)
|
catch (std::ifstream::failure& e)
|
||||||
{
|
{
|
||||||
std::cout << "ERROR::SHADER::FILE_NOT_SUCCESFULLY_READ" << std::endl;
|
std::cout << "ERROR::SHADER::FILE_NOT_SUCCESFULLY_READ: " << e.what() << std::endl;
|
||||||
}
|
}
|
||||||
const char* vShaderCode = vertexCode.c_str();
|
const char* vShaderCode = vertexCode.c_str();
|
||||||
const char * fShaderCode = fragmentCode.c_str();
|
const char * fShaderCode = fragmentCode.c_str();
|
||||||
|
|||||||
@@ -146,8 +146,8 @@ int main()
|
|||||||
glUseProgram(shaderProgram);
|
glUseProgram(shaderProgram);
|
||||||
|
|
||||||
// update shader uniform
|
// update shader uniform
|
||||||
float timeValue = glfwGetTime();
|
double timeValue = glfwGetTime();
|
||||||
float greenValue = sin(timeValue) / 2.0f + 0.5f;
|
float greenValue = static_cast<float>(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());
|
float scaleAmount = static_cast<float>(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;
|
float camX = static_cast<float>(sin(glfwGetTime()) * radius);
|
||||||
float camZ = cos(glfwGetTime()) * radius;
|
float camZ = static_cast<float>(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();
|
float currentFrame = static_cast<float>(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;
|
float cameraSpeed = static_cast<float>(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();
|
float currentFrame = static_cast<float>(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;
|
float cameraSpeed = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(yoffset));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -157,7 +157,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(yoffset));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -160,7 +160,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(yoffset));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -160,7 +160,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(yoffset));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -160,7 +160,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
float currentFrame = static_cast<float>(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<float>(sin(glfwGetTime() * 2.0));
|
||||||
lightColor.y = sin(glfwGetTime() * 0.7f);
|
lightColor.y = static_cast<float>(sin(glfwGetTime() * 0.7));
|
||||||
lightColor.z = sin(glfwGetTime() * 1.3f);
|
lightColor.z = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(yoffset));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -160,7 +160,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(yoffset));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -170,7 +170,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(yoffset));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -177,7 +177,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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<float>((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<float>((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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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;
|
float scale = static_cast<float>((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<float>((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();
|
float currentFrame = static_cast<float>(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<unsigned int>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(yoffset));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -141,7 +141,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(yoffset));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -209,7 +209,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(yoffset));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -181,7 +181,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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();
|
float currentFrame = static_cast<float>(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<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(yoffset));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -90,7 +90,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(yoffset));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -129,7 +129,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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<float>(((rand() % 100) / 100.0) * 6.0 - 3.0);
|
||||||
float yPos = ((rand() % 100) / 100.0) * 6.0 - 4.0;
|
float yPos = static_cast<float>(((rand() % 100) / 100.0) * 6.0 - 4.0);
|
||||||
float zPos = ((rand() % 100) / 100.0) * 6.0 - 3.0;
|
float zPos = static_cast<float>(((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<float>(((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<float>(((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<float>(((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<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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<float>(((rand() % 100) / 100.0) * 6.0 - 3.0);
|
||||||
float yPos = ((rand() % 100) / 100.0) * 6.0 - 4.0;
|
float yPos = static_cast<float>(((rand() % 100) / 100.0) * 6.0 - 4.0);
|
||||||
float zPos = ((rand() % 100) / 100.0) * 6.0 - 3.0;
|
float zPos = static_cast<float>(((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<float>(((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<float>(((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<float>(((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<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(yoffset));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -115,7 +115,7 @@ int main()
|
|||||||
{
|
{
|
||||||
// per-frame time logic
|
// per-frame time logic
|
||||||
// --------------------
|
// --------------------
|
||||||
float currentFrame = glfwGetTime();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -235,7 +238,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<float>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// renders (and builds at first invocation) a sphere
|
// renders (and builds at first invocation) a sphere
|
||||||
@@ -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<unsigned int>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -246,7 +249,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<float>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// renders (and builds at first invocation) a sphere
|
// renders (and builds at first invocation) a sphere
|
||||||
@@ -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<unsigned int>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -351,7 +354,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));
|
||||||
}
|
}
|
||||||
|
|
||||||
// renders (and builds at first invocation) a sphere
|
// renders (and builds at first invocation) a sphere
|
||||||
@@ -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<unsigned int>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -391,7 +394,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<float>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// renders (and builds at first invocation) a sphere
|
// renders (and builds at first invocation) a sphere
|
||||||
@@ -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<unsigned int>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(yposIn);
|
||||||
|
|
||||||
if (firstMouse)
|
if (firstMouse)
|
||||||
{
|
{
|
||||||
lastX = xpos;
|
lastX = xpos;
|
||||||
@@ -489,7 +492,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<float>(yoffset));
|
||||||
}
|
}
|
||||||
|
|
||||||
// renders (and builds at first invocation) a sphere
|
// renders (and builds at first invocation) a sphere
|
||||||
@@ -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<unsigned int>(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();
|
float currentFrame = static_cast<float>(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)
|
||||||
{
|
{
|
||||||
|
float xpos = static_cast<float>(xposIn);
|
||||||
|
float ypos = static_cast<float>(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<float>(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