From 8baa9bf99e7e264fb08be1b2ab570149ff0b7567 Mon Sep 17 00:00:00 2001 From: txf Date: Thu, 25 Aug 2016 15:16:46 +0800 Subject: [PATCH] Fixed bug: cannot load images in vs2015. --- .../6.cubemaps/cubemaps_skybox_optimized.cpp | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/4.advanced_opengl/6.cubemaps/cubemaps_skybox_optimized.cpp b/src/4.advanced_opengl/6.cubemaps/cubemaps_skybox_optimized.cpp index 9b1fd6f..99db806 100644 --- a/src/4.advanced_opengl/6.cubemaps/cubemaps_skybox_optimized.cpp +++ b/src/4.advanced_opengl/6.cubemaps/cubemaps_skybox_optimized.cpp @@ -32,7 +32,7 @@ void scroll_callback(GLFWwindow* window, double xoffset, double yoffset); void mouse_callback(GLFWwindow* window, double xpos, double ypos); void Do_Movement(); GLuint loadTexture(GLchar const * path); -GLuint loadCubemap(std::vector faces); +GLuint loadCubemap(std::vector faces); // Camera Camera camera(glm::vec3(0.0f, 0.0f, 3.0f)); @@ -198,13 +198,13 @@ int main() #pragma endregion // Cubemap (Skybox) - std::vector faces; - faces.push_back(FileSystem::getPath("resources/textures/skybox/right.jpg").c_str()); - faces.push_back(FileSystem::getPath("resources/textures/skybox/left.jpg").c_str()); - faces.push_back(FileSystem::getPath("resources/textures/skybox/top.jpg").c_str()); - faces.push_back(FileSystem::getPath("resources/textures/skybox/bottom.jpg").c_str()); - faces.push_back(FileSystem::getPath("resources/textures/skybox/back.jpg").c_str()); - faces.push_back(FileSystem::getPath("resources/textures/skybox/front.jpg").c_str()); + std::vector faces; + faces.push_back(FileSystem::getPath("resources/textures/skybox/right.jpg")); + faces.push_back(FileSystem::getPath("resources/textures/skybox/left.jpg")); + faces.push_back(FileSystem::getPath("resources/textures/skybox/top.jpg")); + faces.push_back(FileSystem::getPath("resources/textures/skybox/bottom.jpg")); + faces.push_back(FileSystem::getPath("resources/textures/skybox/back.jpg")); + faces.push_back(FileSystem::getPath("resources/textures/skybox/front.jpg")); GLuint skyboxTexture = loadCubemap(faces); // Draw as wireframe @@ -272,7 +272,7 @@ int main() // -Y (bottom) // +Z (front)? (CHECK THIS) // -Z (back)? -GLuint loadCubemap(std::vector faces) +GLuint loadCubemap(std::vector faces) { GLuint textureID; glGenTextures(1, &textureID); @@ -284,7 +284,7 @@ GLuint loadCubemap(std::vector faces) glBindTexture(GL_TEXTURE_CUBE_MAP, textureID); for (GLuint i = 0; i < faces.size(); i++) { - image = SOIL_load_image(faces[i], &width, &height, 0, SOIL_LOAD_RGB); + image = SOIL_load_image(faces[i].c_str(), &width, &height, 0, SOIL_LOAD_RGB); glTexImage2D(GL_TEXTURE_CUBE_MAP_POSITIVE_X + i, 0, GL_RGB, width, height, 0, GL_RGB, GL_UNSIGNED_BYTE, image); } glTexParameteri(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_MAG_FILTER, GL_LINEAR);