diff --git a/OpenGL/cube/CMakeLists.txt b/OpenGL/cube/CMakeLists.txt index 813f984..8d6195b 100644 --- a/OpenGL/cube/CMakeLists.txt +++ b/OpenGL/cube/CMakeLists.txt @@ -3,6 +3,7 @@ project(gl-cube) set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} CMakeModules/) cmake_policy(SET CMP0037 OLD) +set(CMAKE_BUILD_TYPE Debug) set(executable cube.a) set(SrcDIR ./src) @@ -20,6 +21,7 @@ find_package(GLEW REQUIRED) include_directories(${executable} ${SDL2_INCLUDE_DIR} ${SDL2_IMAGE_INCLUDE_DIR} + ${PNG_INCLUDE_DIR} ${GLEW_INCLUDE_DIRS} ${IncludeDIR} ) @@ -36,6 +38,7 @@ set_target_properties(${executable} PROPERTIES ) target_link_libraries(${executable} + ${PNG_LIBRARY} SDL2 SDL2_image PNG::PNG diff --git a/OpenGL/cube/cube.a b/OpenGL/cube/cube.a index 2057b76..9fa95db 100755 Binary files a/OpenGL/cube/cube.a and b/OpenGL/cube/cube.a differ diff --git a/OpenGL/cube/resources/textures/cobble.jpg b/OpenGL/cube/resources/textures/cobble.jpg new file mode 100644 index 0000000..af329ac Binary files /dev/null and b/OpenGL/cube/resources/textures/cobble.jpg differ diff --git a/OpenGL/cube/resources/textures/dirtside.jpg b/OpenGL/cube/resources/textures/dirtside.jpg deleted file mode 100644 index b13015a..0000000 Binary files a/OpenGL/cube/resources/textures/dirtside.jpg and /dev/null differ diff --git a/OpenGL/cube/resources/textures/dirtside.png b/OpenGL/cube/resources/textures/dirtside.png new file mode 100644 index 0000000..574dfd2 Binary files /dev/null and b/OpenGL/cube/resources/textures/dirtside.png differ diff --git a/OpenGL/cube/src/main.cpp b/OpenGL/cube/src/main.cpp index aa02b63..b2d3208 100644 --- a/OpenGL/cube/src/main.cpp +++ b/OpenGL/cube/src/main.cpp @@ -32,7 +32,9 @@ public: int main(int argc, char** argv) { Game* game = new Game(); + SDL_Init(SDL_INIT_EVERYTHING); + IMG_Init(IMG_INIT_JPG | IMG_INIT_PNG); SDL_GL_SetSwapInterval(0); SDL_GL_SetAttribute(SDL_GL_RED_SIZE, 8); @@ -110,7 +112,9 @@ int main(int argc, char** argv) { simpleShader.load("./resources/shaders/simple").attatch().link().use(); // Load texture from file - SDL_Surface* sur = IMG_Load("./resources/textures/dirtside.jpg"); + SDL_Surface* sur = IMG_Load("./resources/textures/dirtside.png"); + if (sur == NULL) + std::cerr << "Failed to load image: " << IMG_GetError() << std::endl; // Set up a GL texture GLuint tex; glBindTexture(GL_TEXTURE_2D, tex); @@ -118,7 +122,7 @@ int main(int argc, char** argv) { glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); // Passes SDL texture into the texture buffer for GL to use in shaders - glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, sur->w, sur->h, 0, GL_RGB, GL_UNSIGNED_BYTE, sur->pixels); + glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, sur->w, sur->h, 0, GL_RGBA, GL_UNSIGNED_BYTE, sur->pixels); GLint posAttrib = glGetAttribLocation(simpleShader.getProgram(), "position"); glEnableVertexAttribArray(posAttrib);