diff --git a/Makefile b/Makefile index 3c5d854..026be22 100644 --- a/Makefile +++ b/Makefile @@ -14,7 +14,7 @@ EXEC_TEST=$(B_DIR)/test # Build settings CC=g++ -g # SDL options -CC_SDL=-lSDL2 `sdl2-config --cflags --libs` -lGLEW -lGL -lSOIL +CC_SDL=-lSDL2 `sdl2-config --cflags --libs` -lGLEW -lGL #libraries LIBS=-ljsoncpp diff --git a/engine/texture.cpp b/engine/texture.cpp deleted file mode 100644 index b5a60ba..0000000 --- a/engine/texture.cpp +++ /dev/null @@ -1,30 +0,0 @@ -#include "texture.hpp" -#include - -void texture::genTexureGpu(GLfloat pixels[]) { - //this->pixels = pixels; - glGenTextures(1, &ref); - glBindTexture(GL_TEXTURE_2D, ref); - glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 4, 3, 0, GL_RGB, GL_FLOAT, pixels); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); -} - -void texture::loadFromPath(std::string path) { - glGenTextures(1, &ref); - glBindTexture(GL_TEXTURE_2D, ref); - - int width, height; - unsigned char *image = - SOIL_load_image(path.c_str(), &width, &height, 0, SOIL_LOAD_RGB); - glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, width, height, 0, GL_RGB, - GL_UNSIGNED_BYTE, image); - SOIL_free_image_data(image); - //this->pixels = image; - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); -} \ No newline at end of file diff --git a/engine/texture.hpp b/engine/texture.hpp deleted file mode 100644 index 64384b5..0000000 --- a/engine/texture.hpp +++ /dev/null @@ -1,20 +0,0 @@ -#ifndef __TEXTURE_H__ -#define __TEXTURE_H__ - -#include -#include -#include -#include -#include -#include - -class texture{ - public: - GLuint ref; - unsigned char *pixels; - - void genTexureGpu(GLfloat pixels[]); - void loadFromPath(std::string path); -}; - -#endif \ No newline at end of file diff --git a/sample.png b/sample.png deleted file mode 100644 index 3ec1d66..0000000 Binary files a/sample.png and /dev/null differ diff --git a/shaders.json b/shaders.json index 6144972..6c0e223 100644 --- a/shaders.json +++ b/shaders.json @@ -1,23 +1,18 @@ { "vertex":[ - {"path":"shaders/vertex/simple.glsl"}, - {"path":"shaders/vertex/texture.glsl"} + {"path":"shaders/vertex/simple.glsl"} ], "fragment":[ { "path":"shaders/fragment/simple.glsl", "framebuff_output":["outColor"] - }, - { - "path":"shaders/fragment/texture.glsl", - "framebuff_output":["outColor"] } ], "combos":[ { - "vertex":1, - "fragment":1 + "vertex":0, + "fragment":0 } ] } \ No newline at end of file diff --git a/shaders/fragment/texture.glsl b/shaders/fragment/texture.glsl deleted file mode 100644 index 2483a3c..0000000 --- a/shaders/fragment/texture.glsl +++ /dev/null @@ -1,13 +0,0 @@ -#version 150 core - -in vec3 Color; -in vec2 Texcoord; - -out vec4 outColor; - -uniform sampler2D tex; - -void main() -{ - outColor = texture(tex, Texcoord) * vec4(Color, 1.0); -} \ No newline at end of file diff --git a/shaders/vertex/texture.glsl b/shaders/vertex/texture.glsl deleted file mode 100644 index dcec03e..0000000 --- a/shaders/vertex/texture.glsl +++ /dev/null @@ -1,15 +0,0 @@ -#version 150 core - -in vec2 position; -in vec3 color; -in vec2 texcoord; - -out vec3 Color; -out vec2 Texcoord; - -void main() -{ - Color = color; - Texcoord=texcoord; - gl_Position = vec4(position, 0.0, 1.0); -} \ No newline at end of file diff --git a/test.cpp b/test.cpp index 9f3af34..6a6431b 100644 --- a/test.cpp +++ b/test.cpp @@ -1,7 +1,6 @@ #include "engine/object.hpp" #include "engine/rendering.hpp" #include "engine/shader.hpp" -#include "engine/texture.hpp" #include #include int main(int argc, char *argv[]) { @@ -15,39 +14,36 @@ int main(int argc, char *argv[]) { renderer.Shaderinit(); GLfloat vertices[] = { - //=========position======|===========color==============|=========texcoord - -0.5f, 0.5f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, // Top-left - 0.5f, 0.5f, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, // Top-right - 0.5f, -0.5f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f, // Bottom-right - -0.5f, -0.5f, 1.0f, 1.0f, 1.0f, 0.0f, 1.0f, // Bottom-left + -0.5f, 0.5f, 1.0f, 0.0f, 0.0f, // Top-left + 0.5f, 0.5f, 0.0f, 1.0f, 0.0f, // Top-right + 0.5f, -0.5f, 0.0f, 0.0f, 1.0f, // Bottom-right + -0.5f, -0.5f, 1.0f, 1.0f, 1.0f // Bottom-left }; - GLuint elements[] = {0, 1, 2, 2, 3, 0}; + GLuint elements[] = {0, 2, 3, 1, 2, 3}; gameobject test(&renderer.shaders.at(0)); renderer.objects.push_back(test); test.genVbo(vertices, 20); - test.genEbo(elements, 6); + test.genEbo(elements, 2); glBindVertexArray(test.vao); test.rend_shader->use(); - texture tex; + test.setVertexAtribPointer("position",2, false, 5, 0); + test.setVertexAtribPointer("color",3, false, 5, (void *)(2 * sizeof(GLfloat))); - test.setVertexAtribPointer("position", 2, false, 7, 0); - test.setVertexAtribPointer("color", 3, false, 7, - (void *)(2 * sizeof(GLfloat))); - test.setVertexAtribPointer("texcoord", 2, false, 7, - (void *)(5 * sizeof(GLfloat))); - - tex.loadFromPath("sample.png"); + gameobject test2(&renderer.shaders.at(0)); + renderer.objects.push_back(test2); + test2.genVbo(vertices, 20); + test2.genEbo(elements, 2); + glBindVertexArray(test2.vao); + test2.rend_shader->use(); + test2.setVertexAtribPointer("position",2, false, 5, 0); + test2.setVertexAtribPointer("color",2, false, 5, (void *)(2 * sizeof(GLfloat))); SDL_Event windowEvent; - GLenum err = glGetError(); - if (err != GL_NO_ERROR) { - // std::cout << err << "\n" << posAttrib; - return -1; - } - // std::cout<