From ac64b4b0dc70faed6e54ce6842486e2c12b51c7a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=ADdac=20P=C3=A9rez=20M=C3=A1rquez?= <125640145+didacpema@users.noreply.github.com> Date: Wed, 30 Oct 2024 13:22:29 +0100 Subject: [PATCH 01/48] FBX load, texture load & camera --- .../sdl2_simple_example/MyWindow.cpp | 73 ++++- .../sdl2_simple_example/MyWindow.h | 6 + .../sdl2_simple_example/imgui.ini | 4 + .../sdl2_simple_example/main.cpp | 250 ++++++++++++++++-- vcpkg.json | 10 +- 5 files changed, 304 insertions(+), 39 deletions(-) create mode 100644 sdl2_simple_example/sdl2_simple_example/imgui.ini diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index 917af88..0334240 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -2,14 +2,27 @@ #include #include #include +#include #include "MyWindow.h" +#include "imgui.h" +#include "imgui_impl_sdl2.h" +#include "imgui_impl_opengl3.h" +#include +#include + using namespace std; MyWindow::MyWindow(const char* title, unsigned short width, unsigned short height){ open(title, width, height); + ImGui::CreateContext(); + ImGui_ImplSDL2_InitForOpenGL(_window, _ctx); + ImGui_ImplOpenGL3_Init("#version 130"); } MyWindow::~MyWindow() { + ImGui_ImplSDL2_Shutdown(); + ImGui_ImplOpenGL3_Shutdown(); + ImGui::DestroyContext(); close(); } @@ -39,17 +52,65 @@ void MyWindow::close() { _window = nullptr; } +void MyWindow::draw() { + ImGui_ImplOpenGL3_NewFrame(); + ImGui_ImplSDL2_NewFrame(); + ImGui::NewFrame(); + + if (ImGui::BeginMainMenuBar()) { + if (ImGui::BeginMenu("Menu")) { + if (ImGui::MenuItem("Adeu")) { + SDL_Event quit_event; + quit_event.type = SDL_QUIT; + SDL_PushEvent(&quit_event); + } + ImGui::EndMenu(); + } + ImGui::EndMainMenuBar(); + } + + ImGui::Render(); + ImGui_ImplOpenGL3_RenderDrawData(ImGui::GetDrawData()); + +} + void MyWindow::swapBuffers() const { SDL_GL_SwapWindow(static_cast(_window)); } bool MyWindow::processEvents(IEventProcessor* event_processor) { - SDL_Event e; - while (SDL_PollEvent(&e)) { - if (event_processor) event_processor->processEvent(e); - switch (e.type) { - case SDL_QUIT: close(); return false; - } + SDL_Event e; + static int lastMouseX, lastMouseY; + + while (SDL_PollEvent(&e)) { + if (event_processor) event_processor->processEvent(e); + switch (e.type) { + case SDL_QUIT: + close(); + return false; + case SDL_MOUSEMOTION: + if (e.motion.state & SDL_BUTTON_RMASK) { + // Mantener ALT para hacer pan + if (SDL_GetModState() & KMOD_ALT) { + panX -= e.motion.xrel * 0.01f; + panY += e.motion.yrel * 0.01f; + } + else { + // Rotación si solo se mantiene clic derecho + cameraAngleY += e.motion.xrel * 0.005f; + cameraAngleX += e.motion.yrel * 0.005f; + } + } + break; + case SDL_MOUSEWHEEL: + // Zoom con la rueda del ratón + if (e.wheel.y > 0) cameraDistance -= 0.5f; // Acercar + if (e.wheel.y < 0) cameraDistance += 0.5f; // Alejar + cameraDistance = max(1.0f, cameraDistance); // Limitar el zoom mínimo + break; + default: + ImGui_ImplSDL2_ProcessEvent(&e); + } } return true; } diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.h b/sdl2_simple_example/sdl2_simple_example/MyWindow.h index 6d0c010..b9662f4 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.h +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.h @@ -22,6 +22,11 @@ class MyWindow { int height() const { return _height; } double aspect() const { return static_cast(_width) / _height; } + float cameraDistance = 5.0f; // Distancia inicial de la cámara (zoom) + float cameraAngleX = 0.0f; // Ángulo de rotación en el eje X + float cameraAngleY = 0.0f; // Ángulo de rotación en el eje Y + float panX = 0.0f, panY = 0.0f; // Desplazamiento de la cámara (pan) + auto* windowPtr() const { return _window; } auto* contextPtr() const { return _ctx; } @@ -36,6 +41,7 @@ class MyWindow { bool isOpen() const { return _window; } bool processEvents(IEventProcessor* event_processor = nullptr); + void draw(); void swapBuffers() const; }; \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini new file mode 100644 index 0000000..9930887 --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -0,0 +1,4 @@ +[Window][Debug##Default] +Pos=60,60 +Size=400,400 + diff --git a/sdl2_simple_example/sdl2_simple_example/main.cpp b/sdl2_simple_example/sdl2_simple_example/main.cpp index ff32d4b..3fa155b 100644 --- a/sdl2_simple_example/sdl2_simple_example/main.cpp +++ b/sdl2_simple_example/sdl2_simple_example/main.cpp @@ -4,6 +4,24 @@ #include #include #include "MyWindow.h" +#include "stdio.h" +#include "assimp/cimport.h" +#include +#include +#include +#include +#include +#include +#include // DevIL para la carga de imágenes +#include // Funciones adicionales de DevIL +#include // Para integración con OpenGL + +#define CHECKERS_WIDTH 64 +#define CHECKERS_HEIGHT 64 + +GLubyte checkerImage[CHECKERS_HEIGHT][CHECKERS_WIDTH][4]; +GLuint textureID; + using namespace std; using hrclock = chrono::high_resolution_clock; @@ -15,40 +33,224 @@ static const ivec2 WINDOW_SIZE(512, 512); static const unsigned int FPS = 60; static const auto FRAME_DT = 1.0s / FPS; +vector vertices; +vector uvs; +vector indices; + +float modelScale = 1.0f; // Factor de escala global para el modelo +vec3 modelCenter(0.0f); // Centro del modelo para su ajuste en escena + +MyWindow myWindow("SDL2 Simple Example", WINDOW_SIZE.x, WINDOW_SIZE.y); + +// Función para configurar la proyección +void setupProjection(float fov, float aspectRatio, float nearPlane, float farPlane) { + glMatrixMode(GL_PROJECTION); + glLoadIdentity(); + gluPerspective(fov, aspectRatio, nearPlane, farPlane); +} + +// Función para configurar la vista de la cámara +void setupView() { + glMatrixMode(GL_MODELVIEW); + glLoadIdentity(); + + float eyeX = myWindow.cameraDistance * sin(myWindow.cameraAngleY) * cos(myWindow.cameraAngleX) + myWindow.panX; + float eyeY = myWindow.cameraDistance * sin(myWindow.cameraAngleX) + myWindow.panY; + float eyeZ = myWindow.cameraDistance * cos(myWindow.cameraAngleY) * cos(myWindow.cameraAngleX); + + gluLookAt(eyeX, eyeY, eyeZ, myWindow.panX, myWindow.panY, 0.0, 0.0, 1.0, 0.0); +} + +// Inicialización de OpenGL static void init_openGL() { - glewInit(); - if (!GLEW_VERSION_3_0) throw exception("OpenGL 3.0 API is not available."); - glEnable(GL_DEPTH_TEST); - glClearColor(0.5, 0.5, 0.5, 1.0); + glewInit(); + if (!GLEW_VERSION_3_0) throw std::exception("OpenGL 3.0 API is not available."); + glEnable(GL_DEPTH_TEST); + glClearColor(0.5, 0.5, 0.5, 1.0); + + float fov = 45.0f; + float aspectRatio = static_cast(WINDOW_SIZE.x) / static_cast(WINDOW_SIZE.y); + float nearPlane = 0.1f; + float farPlane = 100.0f; + setupProjection(fov, aspectRatio, nearPlane, farPlane); } -static void draw_triangle(const u8vec4& color, const vec3& center, double size) { - glColor4ub(color.r, color.g, color.b, color.a); - glBegin(GL_TRIANGLES); - glVertex3d(center.x, center.y + size, center.z); - glVertex3d(center.x - size, center.y - size, center.z); - glVertex3d(center.x + size, center.y - size, center.z); - glEnd(); +// Generar textura checkerboard +void generateCheckerImage() { + for (int i = 0; i < CHECKERS_HEIGHT; i++) { + for (int j = 0; j < CHECKERS_WIDTH; j++) { + int c = (((i & 0x8) == 0) ^ ((j & 0x8) == 0)) * 255; + checkerImage[i][j][0] = (GLubyte)c; + checkerImage[i][j][1] = (GLubyte)c; + checkerImage[i][j][2] = (GLubyte)c; + checkerImage[i][j][3] = (GLubyte)255; + } + } +} + +GLuint loadTexture(const char* texturePath) { + ILuint imageID; + GLuint textureID; + + ilGenImages(1, &imageID); + ilBindImage(imageID); + + if (!ilLoadImage((const wchar_t*)texturePath)) { + ilDeleteImages(1, &imageID); + fprintf(stderr, "No se pudo cargar la textura desde: %s\n", texturePath); + return 0; // Retorna 0 si falla la carga + } + + ilConvertImage(IL_RGBA, IL_UNSIGNED_BYTE); // Convertir la imagen a formato RGBA + + glGenTextures(1, &textureID); + glBindTexture(GL_TEXTURE_2D, textureID); + 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_MAG_FILTER, GL_LINEAR); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); + glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, ilGetInteger(IL_IMAGE_WIDTH), + ilGetInteger(IL_IMAGE_HEIGHT), 0, GL_RGBA, GL_UNSIGNED_BYTE, ilGetData()); + + ilDeleteImages(1, &imageID); // Liberar la imagen en DevIL + return textureID; } +// Configurar la textura en OpenGL +void drawTextures(const char* texturePath) { + textureID = loadTexture(texturePath); // Cargar textura desde la ruta dada + + if (textureID == 0) { + fprintf(stderr, "Fallo en la carga de la textura. Se usará una textura checkerboard predeterminada.\n"); + generateCheckerImage(); // Genera checkerboard si la carga falla + + glPixelStorei(GL_UNPACK_ALIGNMENT, 1); + glGenTextures(1, &textureID); + glBindTexture(GL_TEXTURE_2D, textureID); + 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_MAG_FILTER, GL_NEAREST); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); + glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, CHECKERS_WIDTH, CHECKERS_HEIGHT, 0, + GL_RGBA, GL_UNSIGNED_BYTE, checkerImage); + } +} + +// Ajusta el centro del modelo en el origen +void centerModel(const aiScene* scene) { + aiVector3D min, max; + min = max = scene->mMeshes[0]->mVertices[0]; + + // Encuentra los límites del modelo + for (unsigned int i = 0; i < scene->mNumMeshes; i++) { + for (unsigned int v = 0; v < scene->mMeshes[i]->mNumVertices; v++) { + aiVector3D vertex = scene->mMeshes[i]->mVertices[v]; + min.x = min(min.x, vertex.x); + min.y = min(min.y, vertex.y); + min.z = min(min.z, vertex.z); + max.x = max(max.x, vertex.x); + max.y = max(max.y, vertex.y); + max.z = max(max.z, vertex.z); + } + } + modelCenter = vec3((min.x + max.x) / 2, (min.y + max.y) / 2, (min.z + max.z) / 2); + modelScale = 2.0f / length(vec3(max.x - min.x, max.y - min.y, max.z - min.z)); +} + +// Modifica drawFBX para centrar y escalar el modelo +int drawFBX() { + const char* file = "C:/Users/didacpm/Downloads/trump.fbx"; + const aiScene* scene = aiImportFile(file, aiProcess_Triangulate | aiProcess_JoinIdenticalVertices | aiProcess_GenUVCoords); + + if (!scene) { + fprintf(stderr, "Error al cargar el archivo: %s\n", aiGetErrorString()); + return -1; + } + + centerModel(scene); // Centrar el modelo + + vertices.clear(); + uvs.clear(); + indices.clear(); + + // Procesar mallas del modelo + for (unsigned int i = 0; i < scene->mNumMeshes; i++) { + aiMesh* mesh = scene->mMeshes[i]; + + // Procesar vértices y coordenadas UV + for (unsigned int v = 0; v < mesh->mNumVertices; v++) { + aiVector3D vertex = mesh->mVertices[v]; + vertices.push_back((vertex.x - modelCenter.x) * modelScale); + vertices.push_back((vertex.y - modelCenter.y) * modelScale); + vertices.push_back((vertex.z - modelCenter.z) * modelScale); + + if (mesh->HasTextureCoords(0)) { + aiVector3D uv = mesh->mTextureCoords[0][v]; + uvs.push_back(uv.x); + uvs.push_back(1.0f-uv.y); + } + else { + uvs.push_back(0.0f); + uvs.push_back(0.0f); + } + } + + // Procesar índices de caras + for (unsigned int f = 0; f < mesh->mNumFaces; f++) { + aiFace face = mesh->mFaces[f]; + if (face.mNumIndices == 3) { + indices.push_back(face.mIndices[0]); + indices.push_back(face.mIndices[1]); + indices.push_back(face.mIndices[2]); + } + } + } + + aiReleaseImport(scene); + return 0; +} + +// Modificar display_func para usar la escala y posicionamiento static void display_func() { - glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); - draw_triangle(u8vec4(255, 0, 0, 255), vec3(0.0, 0.0, 0.0), 0.5); + glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); + setupView(); + + glEnable(GL_TEXTURE_2D); + glBindTexture(GL_TEXTURE_2D, textureID); // Asegurarse de que textureID esté enlazado + + glEnableClientState(GL_VERTEX_ARRAY); + glEnableClientState(GL_TEXTURE_COORD_ARRAY); + glVertexPointer(3, GL_FLOAT, 0, vertices.data()); + glTexCoordPointer(2, GL_FLOAT, 0, uvs.data()); + glDrawElements(GL_TRIANGLES, indices.size(), GL_UNSIGNED_INT, indices.data()); + + glDisableClientState(GL_VERTEX_ARRAY); + glDisableClientState(GL_TEXTURE_COORD_ARRAY); + glDisable(GL_TEXTURE_2D); } int main(int argc, char** argv) { - MyWindow window("SDL2 Simple Example", WINDOW_SIZE.x, WINDOW_SIZE.y); + ilInit(); + iluInit(); + ilutRenderer(ILUT_OPENGL); // Configura DevIL para OpenGL + init_openGL(); + + drawTextures("C:/Users/didacpm/Downloads/trumpTex.png"); // Cargar y configurar textura desde ruta - init_openGL(); + if (drawFBX() == -1) { + fprintf(stderr, "No se pudo cargar el modelo FBX\n"); + return -1; + } - while(window.processEvents() && window.isOpen()) { - const auto t0 = hrclock::now(); - display_func(); - window.swapBuffers(); - const auto t1 = hrclock::now(); - const auto dt = t1 - t0; - if(dt Date: Sat, 2 Nov 2024 22:57:22 +0100 Subject: [PATCH 02/48] drag FBX & PNG, detection bug --- .../sdl2_simple_example/main.cpp | 159 ++++++++++++------ 1 file changed, 104 insertions(+), 55 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/main.cpp b/sdl2_simple_example/sdl2_simple_example/main.cpp index 3fa155b..d866332 100644 --- a/sdl2_simple_example/sdl2_simple_example/main.cpp +++ b/sdl2_simple_example/sdl2_simple_example/main.cpp @@ -12,9 +12,16 @@ #include #include #include -#include // DevIL para la carga de imágenes -#include // Funciones adicionales de DevIL -#include // Para integración con OpenGL +#include // DevIL for image loading +#include // Additional DevIL functions +#include // For OpenGL integration with DevIL +#include // For string handling + +#define SDL_MAIN_HANDLED +#include +#include + +#include "queue" #define CHECKERS_WIDTH 64 #define CHECKERS_HEIGHT 64 @@ -37,19 +44,17 @@ vector vertices; vector uvs; vector indices; -float modelScale = 1.0f; // Factor de escala global para el modelo -vec3 modelCenter(0.0f); // Centro del modelo para su ajuste en escena +float modelScale = 1.0f; // Global scaling factor for the model +vec3 modelCenter(0.0f); // Model center for positioning MyWindow myWindow("SDL2 Simple Example", WINDOW_SIZE.x, WINDOW_SIZE.y); -// Función para configurar la proyección void setupProjection(float fov, float aspectRatio, float nearPlane, float farPlane) { glMatrixMode(GL_PROJECTION); glLoadIdentity(); gluPerspective(fov, aspectRatio, nearPlane, farPlane); } -// Función para configurar la vista de la cámara void setupView() { glMatrixMode(GL_MODELVIEW); glLoadIdentity(); @@ -61,7 +66,6 @@ void setupView() { gluLookAt(eyeX, eyeY, eyeZ, myWindow.panX, myWindow.panY, 0.0, 0.0, 1.0, 0.0); } -// Inicialización de OpenGL static void init_openGL() { glewInit(); if (!GLEW_VERSION_3_0) throw std::exception("OpenGL 3.0 API is not available."); @@ -75,7 +79,6 @@ static void init_openGL() { setupProjection(fov, aspectRatio, nearPlane, farPlane); } -// Generar textura checkerboard void generateCheckerImage() { for (int i = 0; i < CHECKERS_HEIGHT; i++) { for (int j = 0; j < CHECKERS_WIDTH; j++) { @@ -97,11 +100,11 @@ GLuint loadTexture(const char* texturePath) { if (!ilLoadImage((const wchar_t*)texturePath)) { ilDeleteImages(1, &imageID); - fprintf(stderr, "No se pudo cargar la textura desde: %s\n", texturePath); - return 0; // Retorna 0 si falla la carga + fprintf(stderr, "Failed to load texture from: %s\n", texturePath); + return 0; } - ilConvertImage(IL_RGBA, IL_UNSIGNED_BYTE); // Convertir la imagen a formato RGBA + ilConvertImage(IL_RGBA, IL_UNSIGNED_BYTE); glGenTextures(1, &textureID); glBindTexture(GL_TEXTURE_2D, textureID); @@ -112,17 +115,16 @@ GLuint loadTexture(const char* texturePath) { glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, ilGetInteger(IL_IMAGE_WIDTH), ilGetInteger(IL_IMAGE_HEIGHT), 0, GL_RGBA, GL_UNSIGNED_BYTE, ilGetData()); - ilDeleteImages(1, &imageID); // Liberar la imagen en DevIL + ilDeleteImages(1, &imageID); return textureID; } -// Configurar la textura en OpenGL void drawTextures(const char* texturePath) { - textureID = loadTexture(texturePath); // Cargar textura desde la ruta dada + textureID = loadTexture(texturePath); if (textureID == 0) { - fprintf(stderr, "Fallo en la carga de la textura. Se usará una textura checkerboard predeterminada.\n"); - generateCheckerImage(); // Genera checkerboard si la carga falla + fprintf(stderr, "Texture loading failed. Using default checkerboard texture.\n"); + generateCheckerImage(); glPixelStorei(GL_UNPACK_ALIGNMENT, 1); glGenTextures(1, &textureID); @@ -136,12 +138,10 @@ void drawTextures(const char* texturePath) { } } -// Ajusta el centro del modelo en el origen void centerModel(const aiScene* scene) { aiVector3D min, max; min = max = scene->mMeshes[0]->mVertices[0]; - // Encuentra los límites del modelo for (unsigned int i = 0; i < scene->mNumMeshes; i++) { for (unsigned int v = 0; v < scene->mMeshes[i]->mNumVertices; v++) { aiVector3D vertex = scene->mMeshes[i]->mVertices[v]; @@ -154,40 +154,39 @@ void centerModel(const aiScene* scene) { } } modelCenter = vec3((min.x + max.x) / 2, (min.y + max.y) / 2, (min.z + max.z) / 2); - modelScale = 2.0f / length(vec3(max.x - min.x, max.y - min.y, max.z - min.z)); + modelScale = 2.0f / glm::length(vec3(max.x - min.x, max.y - min.y, max.z - min.z)); } -// Modifica drawFBX para centrar y escalar el modelo -int drawFBX() { - const char* file = "C:/Users/didacpm/Downloads/trump.fbx"; - const aiScene* scene = aiImportFile(file, aiProcess_Triangulate | aiProcess_JoinIdenticalVertices | aiProcess_GenUVCoords); +bool loadFBX(const char* filePath) { + const struct aiScene* scene = aiImportFile(filePath, aiProcess_Triangulate | aiProcess_GenUVCoords | aiProcess_CalcTangentSpace); if (!scene) { - fprintf(stderr, "Error al cargar el archivo: %s\n", aiGetErrorString()); - return -1; + fprintf(stderr, "Error loading file: %s\n", aiGetErrorString()); + return false; } - centerModel(scene); // Centrar el modelo + printf("FBX Loaded with %d meshes\n", scene->mNumMeshes); + centerModel(scene); vertices.clear(); uvs.clear(); indices.clear(); - // Procesar mallas del modelo for (unsigned int i = 0; i < scene->mNumMeshes; i++) { aiMesh* mesh = scene->mMeshes[i]; + printf("Mesh %d has %d vertices\n", i, mesh->mNumVertices); - // Procesar vértices y coordenadas UV + // Collect vertices and uvs for (unsigned int v = 0; v < mesh->mNumVertices; v++) { aiVector3D vertex = mesh->mVertices[v]; - vertices.push_back((vertex.x - modelCenter.x) * modelScale); - vertices.push_back((vertex.y - modelCenter.y) * modelScale); - vertices.push_back((vertex.z - modelCenter.z) * modelScale); + vertices.push_back(vertex.x); + vertices.push_back(vertex.y); + vertices.push_back(vertex.z); if (mesh->HasTextureCoords(0)) { - aiVector3D uv = mesh->mTextureCoords[0][v]; - uvs.push_back(uv.x); - uvs.push_back(1.0f-uv.y); + aiVector3D texCoord = mesh->mTextureCoords[0][v]; + uvs.push_back(texCoord.x); + uvs.push_back(1.0f - texCoord.y); } else { uvs.push_back(0.0f); @@ -195,28 +194,27 @@ int drawFBX() { } } - // Procesar índices de caras + // Collect indices for (unsigned int f = 0; f < mesh->mNumFaces; f++) { aiFace face = mesh->mFaces[f]; - if (face.mNumIndices == 3) { - indices.push_back(face.mIndices[0]); - indices.push_back(face.mIndices[1]); - indices.push_back(face.mIndices[2]); + for (unsigned int j = 0; j < face.mNumIndices; j++) { + indices.push_back(face.mIndices[j]); } } } aiReleaseImport(scene); - return 0; + printf("Model loading complete. Vertex count: %lu, UV count: %lu, Index count: %lu\n", vertices.size(), uvs.size(), indices.size()); + return true; } -// Modificar display_func para usar la escala y posicionamiento -static void display_func() { - glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); - setupView(); - +void drawFBX() { glEnable(GL_TEXTURE_2D); - glBindTexture(GL_TEXTURE_2D, textureID); // Asegurarse de que textureID esté enlazado + glBindTexture(GL_TEXTURE_2D, textureID); + + glPushMatrix(); + glTranslatef(-modelCenter.x, -modelCenter.y, -modelCenter.z); + glScalef(modelScale, modelScale, modelScale); glEnableClientState(GL_VERTEX_ARRAY); glEnableClientState(GL_TEXTURE_COORD_ARRAY); @@ -226,27 +224,78 @@ static void display_func() { glDisableClientState(GL_VERTEX_ARRAY); glDisableClientState(GL_TEXTURE_COORD_ARRAY); + + glPopMatrix(); glDisable(GL_TEXTURE_2D); } +void display_func() { + glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); + setupView(); + drawFBX(); + glFlush(); +} + +// Function to handle dropped files and determine their type +void handleFileDrop(const char* filePath) { + std::string path(filePath); + + // Check for file extension to determine if it's an FBX model or texture + if (path.substr(path.find_last_of(".") + 1) == "fbx") { + if (!loadFBX(filePath)) { + fprintf(stderr, "Failed to load FBX model.\n"); + } + } + else if (path.substr(path.find_last_of(".") + 1) == "png" || path.substr(path.find_last_of(".") + 1) == "jpg") { + GLuint newTexture = loadTexture(filePath); + if (newTexture != 0) { + glDeleteTextures(1, &textureID); // Delete the previous texture if any + textureID = newTexture; // Set the new texture + } + else { + fprintf(stderr, "Failed to load texture.\n"); + } + } +} + int main(int argc, char** argv) { ilInit(); iluInit(); - ilutRenderer(ILUT_OPENGL); // Configura DevIL para OpenGL + ilutRenderer(ILUT_OPENGL); init_openGL(); - drawTextures("C:/Users/didacpm/Downloads/trumpTex.png"); // Cargar y configurar textura desde ruta - - if (drawFBX() == -1) { - fprintf(stderr, "No se pudo cargar el modelo FBX\n"); - return -1; + if (argc > 1) { + // Load initial model and texture if specified + handleFileDrop(argv[1]); } + //loadFBX("C:/Users/User/Desktop/BakerHouse.fbx"); + //drawTextures("C:/Users/User/Desktop/Baker_house.png"); + + SDL_Event event; while (myWindow.processEvents() && myWindow.isOpen()) { const auto t0 = hrclock::now(); - display_func(); + + queue droppedFiles; + + while (SDL_PollEvent(&event)) { + if (event.type == SDL_DROPFILE) { + char* droppedFile = event.drop.file; + droppedFiles.push(std::string(droppedFile)); // Push to queue + SDL_free(droppedFile); + } + } + + // Process all dropped files + while (!droppedFiles.empty()) { + handleFileDrop(droppedFiles.front().c_str()); + droppedFiles.pop(); + } + + display_func(); // Render your scene myWindow.draw(); - myWindow.swapBuffers(); + myWindow.swapBuffers(); // Swap buffers to display + const auto t1 = hrclock::now(); const auto dt = t1 - t0; if (dt < FRAME_DT) this_thread::sleep_for(FRAME_DT - dt); From 0899274b0b94481ec9b9971b3cdb7b53969d2edc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=ADdac=20P=C3=A9rez=20M=C3=A1rquez?= <125640145+didacpema@users.noreply.github.com> Date: Sun, 3 Nov 2024 03:03:48 +0100 Subject: [PATCH 03/48] handleDropFiles done --- .../sdl2_simple_example/MyWindow.cpp | 22 ++++++--- .../sdl2_simple_example/MyWindow.h | 5 ++- .../sdl2_simple_example/main.cpp | 45 ++++++------------- 3 files changed, 33 insertions(+), 39 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index 0334240..b3ea685 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -17,6 +17,8 @@ MyWindow::MyWindow(const char* title, unsigned short width, unsigned short heigh ImGui::CreateContext(); ImGui_ImplSDL2_InitForOpenGL(_window, _ctx); ImGui_ImplOpenGL3_Init("#version 130"); + SDL_Init(SDL_INIT_VIDEO); + SDL_EventState(SDL_DROPFILE, SDL_ENABLE); } MyWindow::~MyWindow() { @@ -78,35 +80,43 @@ void MyWindow::swapBuffers() const { SDL_GL_SwapWindow(static_cast(_window)); } + bool MyWindow::processEvents(IEventProcessor* event_processor) { SDL_Event e; static int lastMouseX, lastMouseY; while (SDL_PollEvent(&e)) { if (event_processor) event_processor->processEvent(e); + + // Procesa el evento de archivo arrastrado y soltado + if (e.type == SDL_DROPFILE) { + char* droppedFile = e.drop.file; + // Procesa el archivo aquí llamando a una función de carga o algo similar + handleFileDrop(droppedFile); // Tu función para manejar archivos + SDL_free(droppedFile); // Libera la memoria + continue; // Pasa al siguiente evento para evitar que ImGui también lo maneje + } + switch (e.type) { case SDL_QUIT: close(); return false; case SDL_MOUSEMOTION: if (e.motion.state & SDL_BUTTON_RMASK) { - // Mantener ALT para hacer pan if (SDL_GetModState() & KMOD_ALT) { panX -= e.motion.xrel * 0.01f; panY += e.motion.yrel * 0.01f; } else { - // Rotación si solo se mantiene clic derecho cameraAngleY += e.motion.xrel * 0.005f; cameraAngleX += e.motion.yrel * 0.005f; } } break; case SDL_MOUSEWHEEL: - // Zoom con la rueda del ratón - if (e.wheel.y > 0) cameraDistance -= 0.5f; // Acercar - if (e.wheel.y < 0) cameraDistance += 0.5f; // Alejar - cameraDistance = max(1.0f, cameraDistance); // Limitar el zoom mínimo + if (e.wheel.y > 0) cameraDistance -= 0.5f; + if (e.wheel.y < 0) cameraDistance += 0.5f; + cameraDistance = max(1.0f, cameraDistance); break; default: ImGui_ImplSDL2_ProcessEvent(&e); diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.h b/sdl2_simple_example/sdl2_simple_example/MyWindow.h index b9662f4..24624e2 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.h +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.h @@ -44,4 +44,7 @@ class MyWindow { void draw(); void swapBuffers() const; -}; \ No newline at end of file +}; + + +extern void handleFileDrop(const char* filePath); \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/main.cpp b/sdl2_simple_example/sdl2_simple_example/main.cpp index d866332..240a89a 100644 --- a/sdl2_simple_example/sdl2_simple_example/main.cpp +++ b/sdl2_simple_example/sdl2_simple_example/main.cpp @@ -154,7 +154,7 @@ void centerModel(const aiScene* scene) { } } modelCenter = vec3((min.x + max.x) / 2, (min.y + max.y) / 2, (min.z + max.z) / 2); - modelScale = 2.0f / glm::length(vec3(max.x - min.x, max.y - min.y, max.z - min.z)); + //modelScale = 2.0f / glm::length(vec3(max.x - min.x, max.y - min.y, max.z - min.z)); } bool loadFBX(const char* filePath) { @@ -239,67 +239,48 @@ void display_func() { // Function to handle dropped files and determine their type void handleFileDrop(const char* filePath) { std::string path(filePath); + std::string extension = path.substr(path.find_last_of('.') + 1); - // Check for file extension to determine if it's an FBX model or texture - if (path.substr(path.find_last_of(".") + 1) == "fbx") { + if (extension == "fbx") { if (!loadFBX(filePath)) { fprintf(stderr, "Failed to load FBX model.\n"); } } - else if (path.substr(path.find_last_of(".") + 1) == "png" || path.substr(path.find_last_of(".") + 1) == "jpg") { + else if (extension == "png" || extension == "jpg" || extension == "jpeg") { GLuint newTexture = loadTexture(filePath); if (newTexture != 0) { - glDeleteTextures(1, &textureID); // Delete the previous texture if any - textureID = newTexture; // Set the new texture + glDeleteTextures(1, &textureID); + textureID = newTexture; } else { fprintf(stderr, "Failed to load texture.\n"); } } + else { + fprintf(stderr, "Unsupported file type: %s\n", filePath); + } } int main(int argc, char** argv) { + SDL_Init(SDL_INIT_VIDEO); + SDL_EventState(SDL_DROPFILE, SDL_ENABLE); ilInit(); iluInit(); ilutRenderer(ILUT_OPENGL); init_openGL(); - if (argc > 1) { - // Load initial model and texture if specified - handleFileDrop(argv[1]); - } - //loadFBX("C:/Users/User/Desktop/BakerHouse.fbx"); //drawTextures("C:/Users/User/Desktop/Baker_house.png"); - SDL_Event event; while (myWindow.processEvents() && myWindow.isOpen()) { const auto t0 = hrclock::now(); - - queue droppedFiles; - - while (SDL_PollEvent(&event)) { - if (event.type == SDL_DROPFILE) { - char* droppedFile = event.drop.file; - droppedFiles.push(std::string(droppedFile)); // Push to queue - SDL_free(droppedFile); - } - } - - // Process all dropped files - while (!droppedFiles.empty()) { - handleFileDrop(droppedFiles.front().c_str()); - droppedFiles.pop(); - } - - display_func(); // Render your scene + display_func(); myWindow.draw(); myWindow.swapBuffers(); // Swap buffers to display - + //gui.render(); const auto t1 = hrclock::now(); const auto dt = t1 - t0; if (dt < FRAME_DT) this_thread::sleep_for(FRAME_DT - dt); } - return 0; } \ No newline at end of file From 301020c2d981cd09b6f108f85ac0b022f76c67b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=ADdac=20P=C3=A9rez=20M=C3=A1rquez?= <125640145+didacpema@users.noreply.github.com> Date: Sun, 3 Nov 2024 04:05:25 +0100 Subject: [PATCH 04/48] Importer --- .../sdl2_simple_example/CustomFormatUtils.h | 42 +++ .../sdl2_simple_example/FilesystemUtils.h | 12 + .../sdl2_simple_example/GameObject.h | 16 + .../sdl2_simple_example/Importer.cpp | 113 +++++++ .../sdl2_simple_example/Importer.h | 27 ++ .../Library/Models/model_data.bin | Bin 0 -> 73824 bytes .../sdl2_simple_example/MyWindow.cpp | 1 - .../sdl2_simple_example/main.cpp | 281 ++++++------------ .../sdl2_simple_example.vcxproj | 6 + 9 files changed, 301 insertions(+), 197 deletions(-) create mode 100644 sdl2_simple_example/sdl2_simple_example/CustomFormatUtils.h create mode 100644 sdl2_simple_example/sdl2_simple_example/FilesystemUtils.h create mode 100644 sdl2_simple_example/sdl2_simple_example/GameObject.h create mode 100644 sdl2_simple_example/sdl2_simple_example/Importer.cpp create mode 100644 sdl2_simple_example/sdl2_simple_example/Importer.h create mode 100644 sdl2_simple_example/sdl2_simple_example/Library/Models/model_data.bin diff --git a/sdl2_simple_example/sdl2_simple_example/CustomFormatUtils.h b/sdl2_simple_example/sdl2_simple_example/CustomFormatUtils.h new file mode 100644 index 0000000..1c4c78a --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/CustomFormatUtils.h @@ -0,0 +1,42 @@ +#pragma once +#include +#include +#include + +void saveCustomFormat(const std::string& path, const std::vector& vertices, const std::vector& uvs, const std::vector& indices) { + std::ofstream file(path, std::ios::binary); + + size_t vertexCount = vertices.size(); + size_t uvCount = uvs.size(); + size_t indexCount = indices.size(); + + file.write(reinterpret_cast(&vertexCount), sizeof(size_t)); + file.write(reinterpret_cast(vertices.data()), vertices.size() * sizeof(float)); + + file.write(reinterpret_cast(&uvCount), sizeof(size_t)); + file.write(reinterpret_cast(uvs.data()), uvs.size() * sizeof(float)); + + file.write(reinterpret_cast(&indexCount), sizeof(size_t)); + file.write(reinterpret_cast(indices.data()), indices.size() * sizeof(unsigned int)); + + file.close(); +} + +void loadCustomFormat(const std::string& path, std::vector& vertices, std::vector& uvs, std::vector& indices) { + std::ifstream file(path, std::ios::binary); + + size_t vertexCount, uvCount, indexCount; + file.read(reinterpret_cast(&vertexCount), sizeof(size_t)); + vertices.resize(vertexCount); + file.read(reinterpret_cast(vertices.data()), vertexCount * sizeof(float)); + + file.read(reinterpret_cast(&uvCount), sizeof(size_t)); + uvs.resize(uvCount); + file.read(reinterpret_cast(uvs.data()), uvCount * sizeof(float)); + + file.read(reinterpret_cast(&indexCount), sizeof(size_t)); + indices.resize(indexCount); + file.read(reinterpret_cast(indices.data()), indexCount * sizeof(unsigned int)); + + file.close(); +} \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/FilesystemUtils.h b/sdl2_simple_example/sdl2_simple_example/FilesystemUtils.h new file mode 100644 index 0000000..299e18c --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/FilesystemUtils.h @@ -0,0 +1,12 @@ +#pragma once +#include +#include + +namespace fs = std::filesystem; + +void createRequiredDirectories() { + const std::vector dirs = { "Assets", "Library/Meshes", "Library/Materials", "Library/Models" }; + for (const auto& dir : dirs) { + if (!fs::exists(dir)) fs::create_directories(dir); + } +} \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/GameObject.h b/sdl2_simple_example/sdl2_simple_example/GameObject.h new file mode 100644 index 0000000..a7dac4e --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/GameObject.h @@ -0,0 +1,16 @@ +#pragma once +#include +#include + +class GameObject { +public: + std::string name; + std::vector children; + + GameObject(const std::string& name) : name(name) {} + ~GameObject() { + for (auto* child : children) delete child; + } + + void addChild(GameObject* child) { children.push_back(child); } +}; \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Importer.cpp b/sdl2_simple_example/sdl2_simple_example/Importer.cpp new file mode 100644 index 0000000..cae08d5 --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/Importer.cpp @@ -0,0 +1,113 @@ +#include "Importer.h" +#include +#include +#include +#include +#include +#include +#include +#include + +using vec3 = glm::dvec3; + +float modelScale = 1.0f; // Global scaling factor for the model +vec3 modelCenter(0.0f); // Model center for positioning + +Importer::Importer() { + ilInit(); + iluInit(); + ilutRenderer(ILUT_OPENGL); +} + +Importer::~Importer() { + if (textureID) { + glDeleteTextures(1, &textureID); + } +} + +void centerModel(const aiScene* scene) { + aiVector3D min, max; + min = max = scene->mMeshes[0]->mVertices[0]; + + for (unsigned int i = 0; i < scene->mNumMeshes; i++) { + for (unsigned int v = 0; v < scene->mMeshes[i]->mNumVertices; v++) { + aiVector3D vertex = scene->mMeshes[i]->mVertices[v]; + min.x = min(min.x, vertex.x); + min.y = min(min.y, vertex.y); + min.z = min(min.z, vertex.z); + max.x = max(max.x, vertex.x); + max.y = max(max.y, vertex.y); + max.z = max(max.z, vertex.z); + } + } + modelCenter = vec3((min.x + max.x) / 2, (min.y + max.y) / 2, (min.z + max.z) / 2); + modelScale = 2.0f / glm::length(vec3(max.x - min.x, max.y - min.y, max.z - min.z)); + //modelScale = 2.0f / glm::length(vec3(max.x - min.x, max.y - min.y, max.z - min.z)); +} + +bool Importer::loadFBX(const std::string& filePath) { + Assimp::Importer importer; + const aiScene* scene = importer.ReadFile(filePath, aiProcess_Triangulate | aiProcess_GenUVCoords | aiProcess_CalcTangentSpace); + + if (!scene) { + std::cerr << "Error loading FBX: " << importer.GetErrorString() << std::endl; + return false; + } + + centerModel(scene); + + vertices.clear(); + uvs.clear(); + indices.clear(); + + for (unsigned int i = 0; i < scene->mNumMeshes; i++) { + aiMesh* mesh = scene->mMeshes[i]; + for (unsigned int v = 0; v < mesh->mNumVertices; v++) { + aiVector3D vertex = mesh->mVertices[v]; + vertices.push_back(vertex.x); + vertices.push_back(vertex.y); + vertices.push_back(vertex.z); + + if (mesh->HasTextureCoords(0)) { + aiVector3D texCoord = mesh->mTextureCoords[0][v]; + uvs.push_back(texCoord.x); + uvs.push_back(1.0f - texCoord.y); + } + else { + uvs.push_back(0.0f); + uvs.push_back(0.0f); + } + } + for (unsigned int f = 0; f < mesh->mNumFaces; f++) { + aiFace face = mesh->mFaces[f]; + for (unsigned int j = 0; j < face.mNumIndices; j++) { + indices.push_back(face.mIndices[j]); + } + } + } + return true; +} + +GLuint Importer::loadTexture(const std::string& texturePath) { + ILuint imageID; + ilGenImages(1, &imageID); + ilBindImage(imageID); + + if (!ilLoadImage((const wchar_t*)texturePath.c_str())) { + ilDeleteImages(1, &imageID); + std::cerr << "Failed to load texture from: " << texturePath << std::endl; + return 0; + } + + ilConvertImage(IL_RGBA, IL_UNSIGNED_BYTE); + glGenTextures(1, &textureID); + glBindTexture(GL_TEXTURE_2D, textureID); + glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, ilGetInteger(IL_IMAGE_WIDTH), ilGetInteger(IL_IMAGE_HEIGHT), 0, GL_RGBA, GL_UNSIGNED_BYTE, ilGetData()); + 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_MAG_FILTER, GL_LINEAR); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); + + ilDeleteImages(1, &imageID); + return textureID; +} \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Importer.h b/sdl2_simple_example/sdl2_simple_example/Importer.h new file mode 100644 index 0000000..aff3495 --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/Importer.h @@ -0,0 +1,27 @@ +#pragma once + +#include +#include +#include +#include "glm/glm.hpp" + +class Importer { +public: + Importer(); + ~Importer(); + + bool loadFBX(const std::string& filePath); + GLuint loadTexture(const std::string& texturePath); + + const std::vector& getVertices() const { return vertices; } + const std::vector& getUVs() const { return uvs; } + const std::vector& getIndices() const { return indices; } + GLuint getTextureID() { return textureID; } + + +private: + std::vector vertices; + std::vector uvs; + std::vector indices; + GLuint textureID = 0; +}; \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Library/Models/model_data.bin b/sdl2_simple_example/sdl2_simple_example/Library/Models/model_data.bin new file mode 100644 index 0000000000000000000000000000000000000000..ae893323ba5ee6ef53edd07bb9088d2da33b6a8e GIT binary patch literal 73824 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 } - bool MyWindow::processEvents(IEventProcessor* event_processor) { SDL_Event e; static int lastMouseX, lastMouseY; diff --git a/sdl2_simple_example/sdl2_simple_example/main.cpp b/sdl2_simple_example/sdl2_simple_example/main.cpp index 240a89a..cd91355 100644 --- a/sdl2_simple_example/sdl2_simple_example/main.cpp +++ b/sdl2_simple_example/sdl2_simple_example/main.cpp @@ -4,51 +4,36 @@ #include #include #include "MyWindow.h" -#include "stdio.h" -#include "assimp/cimport.h" -#include -#include -#include +#include "Importer.h" +#include "customFormatUtils.h" +#include "FilesystemUtils.h" +#include +#include +#include +#include #include -#include -#include -#include // DevIL for image loading -#include // Additional DevIL functions -#include // For OpenGL integration with DevIL -#include // For string handling #define SDL_MAIN_HANDLED #include #include -#include "queue" - -#define CHECKERS_WIDTH 64 -#define CHECKERS_HEIGHT 64 - -GLubyte checkerImage[CHECKERS_HEIGHT][CHECKERS_WIDTH][4]; -GLuint textureID; - using namespace std; - using hrclock = chrono::high_resolution_clock; -using u8vec4 = glm::u8vec4; -using ivec2 = glm::ivec2; -using vec3 = glm::dvec3; -static const ivec2 WINDOW_SIZE(512, 512); +static const glm::ivec2 WINDOW_SIZE(512, 512); static const unsigned int FPS = 60; static const auto FRAME_DT = 1.0s / FPS; +GLuint checkerTexture; + +Importer importer; +MyWindow myWindow("SDL2 Simple Example", WINDOW_SIZE.x, WINDOW_SIZE.y); + +// Buffers para los datos de los modelos vector vertices; vector uvs; vector indices; -float modelScale = 1.0f; // Global scaling factor for the model -vec3 modelCenter(0.0f); // Model center for positioning - -MyWindow myWindow("SDL2 Simple Example", WINDOW_SIZE.x, WINDOW_SIZE.y); - void setupProjection(float fov, float aspectRatio, float nearPlane, float farPlane) { glMatrixMode(GL_PROJECTION); glLoadIdentity(); @@ -79,188 +64,92 @@ static void init_openGL() { setupProjection(fov, aspectRatio, nearPlane, farPlane); } -void generateCheckerImage() { - for (int i = 0; i < CHECKERS_HEIGHT; i++) { - for (int j = 0; j < CHECKERS_WIDTH; j++) { +// Genera y carga una textura checkerboard por defecto +void generateDefaultCheckerboard() { + glGenTextures(1, &checkerTexture); + glBindTexture(GL_TEXTURE_2D, checkerTexture); + + unsigned char checkerData[64 * 64 * 4]; + for (int i = 0; i < 64; ++i) { + for (int j = 0; j < 64; ++j) { int c = (((i & 0x8) == 0) ^ ((j & 0x8) == 0)) * 255; - checkerImage[i][j][0] = (GLubyte)c; - checkerImage[i][j][1] = (GLubyte)c; - checkerImage[i][j][2] = (GLubyte)c; - checkerImage[i][j][3] = (GLubyte)255; + checkerData[(i * 64 + j) * 4 + 0] = c; + checkerData[(i * 64 + j) * 4 + 1] = c; + checkerData[(i * 64 + j) * 4 + 2] = c; + checkerData[(i * 64 + j) * 4 + 3] = 255; } } -} - -GLuint loadTexture(const char* texturePath) { - ILuint imageID; - GLuint textureID; - - ilGenImages(1, &imageID); - ilBindImage(imageID); - - if (!ilLoadImage((const wchar_t*)texturePath)) { - ilDeleteImages(1, &imageID); - fprintf(stderr, "Failed to load texture from: %s\n", texturePath); - return 0; - } - ilConvertImage(IL_RGBA, IL_UNSIGNED_BYTE); - - glGenTextures(1, &textureID); - glBindTexture(GL_TEXTURE_2D, textureID); - 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_MAG_FILTER, GL_LINEAR); + glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 64, 64, 0, GL_RGBA, GL_UNSIGNED_BYTE, checkerData); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); - glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, ilGetInteger(IL_IMAGE_WIDTH), - ilGetInteger(IL_IMAGE_HEIGHT), 0, GL_RGBA, GL_UNSIGNED_BYTE, ilGetData()); - - ilDeleteImages(1, &imageID); - return textureID; + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); } -void drawTextures(const char* texturePath) { - textureID = loadTexture(texturePath); - - if (textureID == 0) { - fprintf(stderr, "Texture loading failed. Using default checkerboard texture.\n"); - generateCheckerImage(); +// Carga modelos y texturas según el archivo dropeado +void handleFileDrop(const char* filePath) { + std::string path(filePath); + std::string extension = path.substr(path.find_last_of('.') + 1); - glPixelStorei(GL_UNPACK_ALIGNMENT, 1); - glGenTextures(1, &textureID); - glBindTexture(GL_TEXTURE_2D, textureID); - 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_MAG_FILTER, GL_NEAREST); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); - glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, CHECKERS_WIDTH, CHECKERS_HEIGHT, 0, - GL_RGBA, GL_UNSIGNED_BYTE, checkerImage); + if (extension == "fbx") { + if (importer.loadFBX(filePath)) { + vertices = importer.getVertices(); + uvs = importer.getUVs(); + indices = importer.getIndices(); + saveCustomFormat("Library/Models/model_data.bin", vertices, uvs, indices); // Guardar los datos del modelo + } + else { + fprintf(stderr, "Failed to load FBX model.\n"); + } } -} - -void centerModel(const aiScene* scene) { - aiVector3D min, max; - min = max = scene->mMeshes[0]->mVertices[0]; - - for (unsigned int i = 0; i < scene->mNumMeshes; i++) { - for (unsigned int v = 0; v < scene->mMeshes[i]->mNumVertices; v++) { - aiVector3D vertex = scene->mMeshes[i]->mVertices[v]; - min.x = min(min.x, vertex.x); - min.y = min(min.y, vertex.y); - min.z = min(min.z, vertex.z); - max.x = max(max.x, vertex.x); - max.y = max(max.y, vertex.y); - max.z = max(max.z, vertex.z); + else if (extension == "png" || extension == "jpg" || extension == "jpeg") { + GLuint texture = importer.loadTexture(filePath); + if (texture == 0) { + fprintf(stderr, "Failed to load texture. Using default checkerboard texture.\n"); + generateDefaultCheckerboard(); } } - modelCenter = vec3((min.x + max.x) / 2, (min.y + max.y) / 2, (min.z + max.z) / 2); - //modelScale = 2.0f / glm::length(vec3(max.x - min.x, max.y - min.y, max.z - min.z)); -} - -bool loadFBX(const char* filePath) { - const struct aiScene* scene = aiImportFile(filePath, aiProcess_Triangulate | aiProcess_GenUVCoords | aiProcess_CalcTangentSpace); - - if (!scene) { - fprintf(stderr, "Error loading file: %s\n", aiGetErrorString()); - return false; + else if (extension == "bin") { + loadCustomFormat(filePath, vertices, uvs, indices); } - - printf("FBX Loaded with %d meshes\n", scene->mNumMeshes); - centerModel(scene); - - vertices.clear(); - uvs.clear(); - indices.clear(); - - for (unsigned int i = 0; i < scene->mNumMeshes; i++) { - aiMesh* mesh = scene->mMeshes[i]; - printf("Mesh %d has %d vertices\n", i, mesh->mNumVertices); - - // Collect vertices and uvs - for (unsigned int v = 0; v < mesh->mNumVertices; v++) { - aiVector3D vertex = mesh->mVertices[v]; - vertices.push_back(vertex.x); - vertices.push_back(vertex.y); - vertices.push_back(vertex.z); - - if (mesh->HasTextureCoords(0)) { - aiVector3D texCoord = mesh->mTextureCoords[0][v]; - uvs.push_back(texCoord.x); - uvs.push_back(1.0f - texCoord.y); - } - else { - uvs.push_back(0.0f); - uvs.push_back(0.0f); - } - } - - // Collect indices - for (unsigned int f = 0; f < mesh->mNumFaces; f++) { - aiFace face = mesh->mFaces[f]; - for (unsigned int j = 0; j < face.mNumIndices; j++) { - indices.push_back(face.mIndices[j]); - } - } + else { + fprintf(stderr, "Unsupported file type: %s\n", filePath); } - - aiReleaseImport(scene); - printf("Model loading complete. Vertex count: %lu, UV count: %lu, Index count: %lu\n", vertices.size(), uvs.size(), indices.size()); - return true; } -void drawFBX() { - glEnable(GL_TEXTURE_2D); - glBindTexture(GL_TEXTURE_2D, textureID); +// Dibuja la escena usando los datos de los modelos cargados +void drawScene() { + glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); + glMatrixMode(GL_MODELVIEW); + glLoadIdentity(); - glPushMatrix(); - glTranslatef(-modelCenter.x, -modelCenter.y, -modelCenter.z); - glScalef(modelScale, modelScale, modelScale); + setupView(); + + if (importer.getTextureID() != 0) { // Bind texture if loaded + glEnable(GL_TEXTURE_2D); + glBindTexture(GL_TEXTURE_2D, importer.getTextureID()); + } + else { + generateDefaultCheckerboard(); + glEnable(GL_TEXTURE_2D); + glBindTexture(GL_TEXTURE_2D, checkerTexture); // Use checkerboard as default + } glEnableClientState(GL_VERTEX_ARRAY); - glEnableClientState(GL_TEXTURE_COORD_ARRAY); glVertexPointer(3, GL_FLOAT, 0, vertices.data()); - glTexCoordPointer(2, GL_FLOAT, 0, uvs.data()); + + if (!uvs.empty()) { + glEnableClientState(GL_TEXTURE_COORD_ARRAY); + glTexCoordPointer(2, GL_FLOAT, 0, uvs.data()); + } + glDrawElements(GL_TRIANGLES, indices.size(), GL_UNSIGNED_INT, indices.data()); glDisableClientState(GL_VERTEX_ARRAY); glDisableClientState(GL_TEXTURE_COORD_ARRAY); - - glPopMatrix(); - glDisable(GL_TEXTURE_2D); -} - -void display_func() { - glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); - setupView(); - drawFBX(); - glFlush(); -} - -// Function to handle dropped files and determine their type -void handleFileDrop(const char* filePath) { - std::string path(filePath); - std::string extension = path.substr(path.find_last_of('.') + 1); - - if (extension == "fbx") { - if (!loadFBX(filePath)) { - fprintf(stderr, "Failed to load FBX model.\n"); - } - } - else if (extension == "png" || extension == "jpg" || extension == "jpeg") { - GLuint newTexture = loadTexture(filePath); - if (newTexture != 0) { - glDeleteTextures(1, &textureID); - textureID = newTexture; - } - else { - fprintf(stderr, "Failed to load texture.\n"); - } - } - else { - fprintf(stderr, "Unsupported file type: %s\n", filePath); - } + glDisable(GL_TEXTURE_2D); // Disable texture after drawing } +// Configura el main loop int main(int argc, char** argv) { SDL_Init(SDL_INIT_VIDEO); SDL_EventState(SDL_DROPFILE, SDL_ENABLE); @@ -269,18 +158,18 @@ int main(int argc, char** argv) { ilutRenderer(ILUT_OPENGL); init_openGL(); - //loadFBX("C:/Users/User/Desktop/BakerHouse.fbx"); - //drawTextures("C:/Users/User/Desktop/Baker_house.png"); + while (myWindow.isOpen()) { + auto start = hrclock::now(); - while (myWindow.processEvents() && myWindow.isOpen()) { - const auto t0 = hrclock::now(); - display_func(); + if (!myWindow.processEvents()) break; myWindow.draw(); - myWindow.swapBuffers(); // Swap buffers to display - //gui.render(); - const auto t1 = hrclock::now(); - const auto dt = t1 - t0; - if (dt < FRAME_DT) this_thread::sleep_for(FRAME_DT - dt); + drawScene(); + myWindow.swapBuffers(); + + auto elapsed = hrclock::now() - start; + std::this_thread::sleep_for(FRAME_DT - elapsed); } + + SDL_Quit(); return 0; } \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj b/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj index 4174e21..d634136 100644 --- a/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj +++ b/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj @@ -104,6 +104,7 @@ true _DEBUG;_CONSOLE;%(PreprocessorDefinitions) true + stdcpp17 Console @@ -127,10 +128,15 @@ + + + + + From 86fab575f770a111780746fcbfe94560603462dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=ADdac=20P=C3=A9rez=20M=C3=A1rquez?= <125640145+didacpema@users.noreply.github.com> Date: Sun, 3 Nov 2024 21:48:30 +0100 Subject: [PATCH 05/48] GameObject & Modular system --- .../sdl2_simple_example/GameObject.cpp | 36 +++++ .../sdl2_simple_example/GameObject.h | 23 +-- .../sdl2_simple_example/Importer.cpp | 4 + .../sdl2_simple_example/Mesh.cpp | 61 ++++++++ .../sdl2_simple_example/Mesh.h | 16 +++ .../sdl2_simple_example/Renderer.cpp | 26 ++++ .../sdl2_simple_example/Renderer.h | 10 ++ .../sdl2_simple_example/Scene.cpp | 41 ++++++ .../sdl2_simple_example/Scene.h | 15 ++ .../sdl2_simple_example/Texture.cpp | 9 ++ .../sdl2_simple_example/Texture.h | 10 ++ .../sdl2_simple_example/Transform.h | 11 ++ .../sdl2_simple_example/main.cpp | 132 ++---------------- .../sdl2_simple_example.vcxproj | 10 ++ .../sdl2_simple_example.vcxproj.filters | 45 ++++++ 15 files changed, 323 insertions(+), 126 deletions(-) create mode 100644 sdl2_simple_example/sdl2_simple_example/GameObject.cpp create mode 100644 sdl2_simple_example/sdl2_simple_example/Mesh.cpp create mode 100644 sdl2_simple_example/sdl2_simple_example/Mesh.h create mode 100644 sdl2_simple_example/sdl2_simple_example/Renderer.cpp create mode 100644 sdl2_simple_example/sdl2_simple_example/Renderer.h create mode 100644 sdl2_simple_example/sdl2_simple_example/Scene.cpp create mode 100644 sdl2_simple_example/sdl2_simple_example/Scene.h create mode 100644 sdl2_simple_example/sdl2_simple_example/Texture.cpp create mode 100644 sdl2_simple_example/sdl2_simple_example/Texture.h create mode 100644 sdl2_simple_example/sdl2_simple_example/Transform.h diff --git a/sdl2_simple_example/sdl2_simple_example/GameObject.cpp b/sdl2_simple_example/sdl2_simple_example/GameObject.cpp new file mode 100644 index 0000000..43aa980 --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/GameObject.cpp @@ -0,0 +1,36 @@ +#include "GameObject.h" +#include +#include + +GameObject::GameObject(Mesh* mesh, Texture* texture) + : mesh(mesh), texture(texture) {} + +GameObject::~GameObject() { + delete mesh; + if (texture) delete texture; +} + +void GameObject::setTexture(Texture* newTexture) { + texture = newTexture; +} + +void GameObject::setTransform(const Transform& newTransform) { + transform = newTransform; +} + +void GameObject::draw() const { + glPushMatrix(); // Guardar la matriz actual + + // Aplicar transformaciones en modo fijo + glTranslatef(transform.position.x, transform.position.y, transform.position.z); + glRotatef(transform.rotation.x, 1.0f, 0.0f, 0.0f); + glRotatef(transform.rotation.y, 0.0f, 1.0f, 0.0f); + glRotatef(transform.rotation.z, 0.0f, 0.0f, 1.0f); + glScalef(transform.scale.x, transform.scale.y, transform.scale.z); + + if (texture) texture->bind(); // Vincular la textura si está disponible + if (mesh) mesh->render(); // Renderizar la malla + if (texture) texture->unbind(); + + glPopMatrix(); // Restaurar la matriz anterior +} \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/GameObject.h b/sdl2_simple_example/sdl2_simple_example/GameObject.h index a7dac4e..123cc9b 100644 --- a/sdl2_simple_example/sdl2_simple_example/GameObject.h +++ b/sdl2_simple_example/sdl2_simple_example/GameObject.h @@ -1,16 +1,21 @@ #pragma once -#include -#include +#include "Mesh.h" +#include "Texture.h" +#include "Transform.h" class GameObject { public: - std::string name; - std::vector children; + GameObject(Mesh* mesh, Texture* texture); + ~GameObject(); - GameObject(const std::string& name) : name(name) {} - ~GameObject() { - for (auto* child : children) delete child; - } + void draw() const; + void setTexture(Texture* texture); - void addChild(GameObject* child) { children.push_back(child); } + // Method to set the transform from outside + void setTransform(const Transform& newTransform); + +private: + Mesh* mesh; + Texture* texture; + Transform transform; }; \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Importer.cpp b/sdl2_simple_example/sdl2_simple_example/Importer.cpp index cae08d5..c3b1375 100644 --- a/sdl2_simple_example/sdl2_simple_example/Importer.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Importer.cpp @@ -85,6 +85,8 @@ bool Importer::loadFBX(const std::string& filePath) { } } } + std::cerr << "FBX loaded"<< std::endl; + return true; } @@ -109,5 +111,7 @@ GLuint Importer::loadTexture(const std::string& texturePath) { glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); ilDeleteImages(1, &imageID); + + std::cerr << "Texture loaded" << std::endl; return textureID; } \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Mesh.cpp b/sdl2_simple_example/sdl2_simple_example/Mesh.cpp new file mode 100644 index 0000000..d1662ec --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/Mesh.cpp @@ -0,0 +1,61 @@ +#include "Mesh.h" + +Mesh::Mesh(const std::vector& vertices, const std::vector& uvs, const std::vector& indices) + : vertices(vertices), uvs(uvs), indices(indices) { + setupMesh(); +} + +Mesh::~Mesh() { + glDeleteVertexArrays(1, &vao); + glDeleteBuffers(1, &vboVertices); + glDeleteBuffers(1, &vboUVs); + glDeleteBuffers(1, &ebo); +} + +void Mesh::setupMesh() { + glGenVertexArrays(1, &vao); + glGenBuffers(1, &vboVertices); + glGenBuffers(1, &vboUVs); + glGenBuffers(1, &ebo); + + glBindVertexArray(vao); + + glBindBuffer(GL_ARRAY_BUFFER, vboVertices); + glBufferData(GL_ARRAY_BUFFER, vertices.size() * sizeof(float), vertices.data(), GL_STATIC_DRAW); + glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 3 * sizeof(float), (void*)0); + glEnableVertexAttribArray(0); + + glBindBuffer(GL_ARRAY_BUFFER, vboUVs); + glBufferData(GL_ARRAY_BUFFER, uvs.size() * sizeof(float), uvs.data(), GL_STATIC_DRAW); + glVertexAttribPointer(1, 2, GL_FLOAT, GL_FALSE, 2 * sizeof(float), (void*)0); + glEnableVertexAttribArray(1); + + glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, ebo); + glBufferData(GL_ELEMENT_ARRAY_BUFFER, indices.size() * sizeof(unsigned int), indices.data(), GL_STATIC_DRAW); + + glBindVertexArray(0); +} + +void Mesh::render() const { + glBindVertexArray(vao); + + glEnableClientState(GL_VERTEX_ARRAY); + glBindBuffer(GL_ARRAY_BUFFER, vboVertices); + glVertexPointer(3, GL_FLOAT, 0, nullptr); + + if (!uvs.empty()) { + glEnableClientState(GL_TEXTURE_COORD_ARRAY); + glBindBuffer(GL_ARRAY_BUFFER, vboUVs); + glTexCoordPointer(2, GL_FLOAT, 0, nullptr); + } + + glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, ebo); + glDrawElements(GL_TRIANGLES, indices.size(), GL_UNSIGNED_INT, nullptr); + + glDisableClientState(GL_VERTEX_ARRAY); + if (!uvs.empty()) { + glDisableClientState(GL_TEXTURE_COORD_ARRAY); + } + + glBindVertexArray(0); +} \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Mesh.h b/sdl2_simple_example/sdl2_simple_example/Mesh.h new file mode 100644 index 0000000..537381a --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/Mesh.h @@ -0,0 +1,16 @@ +#pragma once +#include +#include + +class Mesh { +public: + std::vector vertices; + std::vector uvs; + std::vector indices; + GLuint vao, vboVertices, vboUVs, ebo; + + Mesh(const std::vector& vertices, const std::vector& uvs, const std::vector& indices); + ~Mesh(); + void setupMesh(); + void render() const; +}; \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Renderer.cpp b/sdl2_simple_example/sdl2_simple_example/Renderer.cpp new file mode 100644 index 0000000..d51b0c5 --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/Renderer.cpp @@ -0,0 +1,26 @@ +#include "Renderer.h" +#include +#include +#include + +void Renderer::initOpenGL() { + glewInit(); + if (!GLEW_VERSION_3_0) throw std::exception("OpenGL 3.0 API is not available."); + glEnable(GL_DEPTH_TEST); + glClearColor(0.5, 0.5, 0.5, 1.0); +} + +void Renderer::setupProjection(float fov, float aspectRatio, float nearPlane, float farPlane) { + glMatrixMode(GL_PROJECTION); + glLoadIdentity(); + gluPerspective(fov, aspectRatio, nearPlane, farPlane); +} + +void Renderer::setupView(float cameraDistance, float cameraAngleX, float cameraAngleY, float panX, float panY) { + glMatrixMode(GL_MODELVIEW); + glLoadIdentity(); + float eyeX = cameraDistance * sin(cameraAngleY) * cos(cameraAngleX) + panX; + float eyeY = cameraDistance * sin(cameraAngleX) + panY; + float eyeZ = cameraDistance * cos(cameraAngleY) * cos(cameraAngleX); + gluLookAt(eyeX, eyeY, eyeZ, panX, panY, 0.0, 0.0, 1.0, 0.0); +} \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Renderer.h b/sdl2_simple_example/sdl2_simple_example/Renderer.h new file mode 100644 index 0000000..38ff098 --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/Renderer.h @@ -0,0 +1,10 @@ +#pragma once +#include +#include + +class Renderer { +public: + static void initOpenGL(); + static void setupProjection(float fov, float aspectRatio, float nearPlane, float farPlane); + static void setupView(float cameraDistance, float cameraAngleX, float cameraAngleY, float panX, float panY); +}; \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Scene.cpp b/sdl2_simple_example/sdl2_simple_example/Scene.cpp new file mode 100644 index 0000000..527a297 --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/Scene.cpp @@ -0,0 +1,41 @@ +#include "Scene.h" +#include + +Scene::Scene() {} + +Scene::~Scene() { + for (GameObject* obj : gameObjects) { + delete obj; + } + gameObjects.clear(); +} + +void Scene::loadModelData(const std::vector& vertices, const std::vector& uvs, const std::vector& indices, const Transform& transform) { + Mesh* mesh = new Mesh(vertices, uvs, indices); + GameObject* gameObject = new GameObject(mesh, nullptr); + + gameObject->setTransform(transform); + + gameObjects.push_back(gameObject); +} + +void Scene::setTexture(GLuint textureID) { + if (!gameObjects.empty()) { + Texture* texture = new Texture(textureID); + gameObjects.back()->setTexture(texture); + } +} + +void Scene::drawScene() { + glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); + + for (const auto& obj : gameObjects) { + // Apply transformations for each object independently + glPushMatrix(); // Save the current matrix + + // Apply the object's own transformations + obj->draw(); + + glPopMatrix(); // Restore the previous matrix + } +} \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Scene.h b/sdl2_simple_example/sdl2_simple_example/Scene.h new file mode 100644 index 0000000..122f8d5 --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/Scene.h @@ -0,0 +1,15 @@ +#pragma once +#include +#include "GameObject.h" + +class Scene { +public: + Scene(); + ~Scene(); + void loadModelData(const std::vector& vertices, const std::vector& uvs, const std::vector& indices, const Transform& transform = Transform()); + void setTexture(GLuint textureID); + void drawScene(); + +private: + std::vector gameObjects; +}; \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Texture.cpp b/sdl2_simple_example/sdl2_simple_example/Texture.cpp new file mode 100644 index 0000000..52575da --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/Texture.cpp @@ -0,0 +1,9 @@ +#include "Texture.h" + +void Texture::bind() const { + glBindTexture(GL_TEXTURE_2D, id); +} + +void Texture::unbind() const { + glBindTexture(GL_TEXTURE_2D, 0); +} \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Texture.h b/sdl2_simple_example/sdl2_simple_example/Texture.h new file mode 100644 index 0000000..412fe42 --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/Texture.h @@ -0,0 +1,10 @@ +#pragma once +#include + +class Texture { +public: + GLuint id; + Texture(GLuint textureId = 0) : id(textureId) {} + void bind() const; + void unbind() const; +}; \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Transform.h b/sdl2_simple_example/sdl2_simple_example/Transform.h new file mode 100644 index 0000000..71630d1 --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/Transform.h @@ -0,0 +1,11 @@ +#pragma once +#include + +class Transform { +public: + glm::vec3 position; + glm::vec3 rotation; + glm::vec3 scale; + + Transform() : position(0.0f), rotation(0.0f), scale(1.0f) {} +}; \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/main.cpp b/sdl2_simple_example/sdl2_simple_example/main.cpp index cd91355..272678b 100644 --- a/sdl2_simple_example/sdl2_simple_example/main.cpp +++ b/sdl2_simple_example/sdl2_simple_example/main.cpp @@ -17,153 +17,51 @@ #include #include +#include "Scene.h" +#include "Renderer.h" + using namespace std; using hrclock = chrono::high_resolution_clock; -static const glm::ivec2 WINDOW_SIZE(512, 512); static const unsigned int FPS = 60; static const auto FRAME_DT = 1.0s / FPS; -GLuint checkerTexture; - +MyWindow myWindow("SDL2 Simple Example", 512, 512); Importer importer; -MyWindow myWindow("SDL2 Simple Example", WINDOW_SIZE.x, WINDOW_SIZE.y); - -// Buffers para los datos de los modelos -vector vertices; -vector uvs; -vector indices; - -void setupProjection(float fov, float aspectRatio, float nearPlane, float farPlane) { - glMatrixMode(GL_PROJECTION); - glLoadIdentity(); - gluPerspective(fov, aspectRatio, nearPlane, farPlane); -} - -void setupView() { - glMatrixMode(GL_MODELVIEW); - glLoadIdentity(); - - float eyeX = myWindow.cameraDistance * sin(myWindow.cameraAngleY) * cos(myWindow.cameraAngleX) + myWindow.panX; - float eyeY = myWindow.cameraDistance * sin(myWindow.cameraAngleX) + myWindow.panY; - float eyeZ = myWindow.cameraDistance * cos(myWindow.cameraAngleY) * cos(myWindow.cameraAngleX); - - gluLookAt(eyeX, eyeY, eyeZ, myWindow.panX, myWindow.panY, 0.0, 0.0, 1.0, 0.0); -} - -static void init_openGL() { - glewInit(); - if (!GLEW_VERSION_3_0) throw std::exception("OpenGL 3.0 API is not available."); - glEnable(GL_DEPTH_TEST); - glClearColor(0.5, 0.5, 0.5, 1.0); - - float fov = 45.0f; - float aspectRatio = static_cast(WINDOW_SIZE.x) / static_cast(WINDOW_SIZE.y); - float nearPlane = 0.1f; - float farPlane = 100.0f; - setupProjection(fov, aspectRatio, nearPlane, farPlane); -} - -// Genera y carga una textura checkerboard por defecto -void generateDefaultCheckerboard() { - glGenTextures(1, &checkerTexture); - glBindTexture(GL_TEXTURE_2D, checkerTexture); - - unsigned char checkerData[64 * 64 * 4]; - for (int i = 0; i < 64; ++i) { - for (int j = 0; j < 64; ++j) { - int c = (((i & 0x8) == 0) ^ ((j & 0x8) == 0)) * 255; - checkerData[(i * 64 + j) * 4 + 0] = c; - checkerData[(i * 64 + j) * 4 + 1] = c; - checkerData[(i * 64 + j) * 4 + 2] = c; - checkerData[(i * 64 + j) * 4 + 3] = 255; - } - } - - glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 64, 64, 0, GL_RGBA, GL_UNSIGNED_BYTE, checkerData); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); -} +Scene scene; -// Carga modelos y texturas según el archivo dropeado void handleFileDrop(const char* filePath) { std::string path(filePath); std::string extension = path.substr(path.find_last_of('.') + 1); if (extension == "fbx") { if (importer.loadFBX(filePath)) { - vertices = importer.getVertices(); - uvs = importer.getUVs(); - indices = importer.getIndices(); - saveCustomFormat("Library/Models/model_data.bin", vertices, uvs, indices); // Guardar los datos del modelo - } - else { - fprintf(stderr, "Failed to load FBX model.\n"); + scene.loadModelData(importer.getVertices(), importer.getUVs(), importer.getIndices()); } } - else if (extension == "png" || extension == "jpg" || extension == "jpeg") { + else if (extension == "png" || extension == "jpg") { GLuint texture = importer.loadTexture(filePath); - if (texture == 0) { - fprintf(stderr, "Failed to load texture. Using default checkerboard texture.\n"); - generateDefaultCheckerboard(); - } - } - else if (extension == "bin") { - loadCustomFormat(filePath, vertices, uvs, indices); - } - else { - fprintf(stderr, "Unsupported file type: %s\n", filePath); - } -} - -// Dibuja la escena usando los datos de los modelos cargados -void drawScene() { - glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); - glMatrixMode(GL_MODELVIEW); - glLoadIdentity(); - - setupView(); - - if (importer.getTextureID() != 0) { // Bind texture if loaded - glEnable(GL_TEXTURE_2D); - glBindTexture(GL_TEXTURE_2D, importer.getTextureID()); + scene.setTexture(texture); } - else { - generateDefaultCheckerboard(); - glEnable(GL_TEXTURE_2D); - glBindTexture(GL_TEXTURE_2D, checkerTexture); // Use checkerboard as default - } - - glEnableClientState(GL_VERTEX_ARRAY); - glVertexPointer(3, GL_FLOAT, 0, vertices.data()); - - if (!uvs.empty()) { - glEnableClientState(GL_TEXTURE_COORD_ARRAY); - glTexCoordPointer(2, GL_FLOAT, 0, uvs.data()); - } - - glDrawElements(GL_TRIANGLES, indices.size(), GL_UNSIGNED_INT, indices.data()); - - glDisableClientState(GL_VERTEX_ARRAY); - glDisableClientState(GL_TEXTURE_COORD_ARRAY); - glDisable(GL_TEXTURE_2D); // Disable texture after drawing } -// Configura el main loop int main(int argc, char** argv) { SDL_Init(SDL_INIT_VIDEO); SDL_EventState(SDL_DROPFILE, SDL_ENABLE); ilInit(); iluInit(); ilutRenderer(ILUT_OPENGL); - init_openGL(); - while (myWindow.isOpen()) { - auto start = hrclock::now(); + Renderer::initOpenGL(); + Renderer::setupProjection(45.0f, 1.0f, 0.1f, 100.0f); + while (myWindow.processEvents() && myWindow.isOpen()) { + auto start = hrclock::now(); if (!myWindow.processEvents()) break; + + Renderer::setupView(myWindow.cameraDistance, myWindow.cameraAngleX, myWindow.cameraAngleY, myWindow.panX, myWindow.panY); + scene.drawScene(); myWindow.draw(); - drawScene(); myWindow.swapBuffers(); auto elapsed = hrclock::now() - start; diff --git a/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj b/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj index d634136..e373fa8 100644 --- a/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj +++ b/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj @@ -128,16 +128,26 @@ + + + + + + + + + + diff --git a/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj.filters b/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj.filters index 04a7e88..d18f2b6 100644 --- a/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj.filters +++ b/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj.filters @@ -21,10 +21,55 @@ Source Files + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + Header Files + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + \ No newline at end of file From cbc70aac471b248e091c2481a4aa138f7f449e92 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=ADdac=20P=C3=A9rez=20M=C3=A1rquez?= <125640145+didacpema@users.noreply.github.com> Date: Mon, 4 Nov 2024 12:38:24 +0100 Subject: [PATCH 06/48] CheckerTexture --- .../sdl2_simple_example/GameObject.cpp | 4 ++ .../sdl2_simple_example/GameObject.h | 5 +- .../sdl2_simple_example/Importer.cpp | 46 ++++++++++++++++++- .../sdl2_simple_example/Importer.h | 2 + .../sdl2_simple_example/Scene.cpp | 18 +++++--- .../sdl2_simple_example/main.cpp | 13 +++++- 6 files changed, 77 insertions(+), 11 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/GameObject.cpp b/sdl2_simple_example/sdl2_simple_example/GameObject.cpp index 43aa980..f0b5894 100644 --- a/sdl2_simple_example/sdl2_simple_example/GameObject.cpp +++ b/sdl2_simple_example/sdl2_simple_example/GameObject.cpp @@ -14,6 +14,10 @@ void GameObject::setTexture(Texture* newTexture) { texture = newTexture; } +Texture* GameObject::getTexture() const { + return texture; +} + void GameObject::setTransform(const Transform& newTransform) { transform = newTransform; } diff --git a/sdl2_simple_example/sdl2_simple_example/GameObject.h b/sdl2_simple_example/sdl2_simple_example/GameObject.h index 123cc9b..150dd26 100644 --- a/sdl2_simple_example/sdl2_simple_example/GameObject.h +++ b/sdl2_simple_example/sdl2_simple_example/GameObject.h @@ -11,7 +11,10 @@ class GameObject { void draw() const; void setTexture(Texture* texture); - // Method to set the transform from outside + // Método para obtener la textura actual + Texture* getTexture() const; + + // Método para establecer la transformación desde fuera de la clase void setTransform(const Transform& newTransform); private: diff --git a/sdl2_simple_example/sdl2_simple_example/Importer.cpp b/sdl2_simple_example/sdl2_simple_example/Importer.cpp index c3b1375..f634f19 100644 --- a/sdl2_simple_example/sdl2_simple_example/Importer.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Importer.cpp @@ -45,6 +45,36 @@ void centerModel(const aiScene* scene) { //modelScale = 2.0f / glm::length(vec3(max.x - min.x, max.y - min.y, max.z - min.z)); } +// Dentro de la clase Importer, agrega un método para crear una textura checker +GLuint Importer::createCheckerTexture() { + const int width = 64; + const int height = 64; + std::vector checkerImage(width * height * 4); + + // Generar el patrón checker + for (int y = 0; y < height; ++y) { + for (int x = 0; x < width; ++x) { + int c = ((x / 8) % 2) == ((y / 8) % 2) ? 255 : 0; + checkerImage[(y * width + x) * 4 + 0] = (GLubyte)c; + checkerImage[(y * width + x) * 4 + 1] = (GLubyte)c; + checkerImage[(y * width + x) * 4 + 2] = (GLubyte)c; + checkerImage[(y * width + x) * 4 + 3] = 255; // Alpha + } + } + + GLuint checkerTexture; + glGenTextures(1, &checkerTexture); + glBindTexture(GL_TEXTURE_2D, checkerTexture); + glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, checkerImage.data()); + 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_MAG_FILTER, GL_LINEAR); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); + + return checkerTexture; +} + +// Modifica el método `loadFBX` para asignar la textura checker si el modelo no tiene una propia bool Importer::loadFBX(const std::string& filePath) { Assimp::Importer importer; const aiScene* scene = importer.ReadFile(filePath, aiProcess_Triangulate | aiProcess_GenUVCoords | aiProcess_CalcTangentSpace); @@ -60,6 +90,7 @@ bool Importer::loadFBX(const std::string& filePath) { uvs.clear(); indices.clear(); + // Procesar vértices y UVs como antes for (unsigned int i = 0; i < scene->mNumMeshes; i++) { aiMesh* mesh = scene->mMeshes[i]; for (unsigned int v = 0; v < mesh->mNumVertices; v++) { @@ -85,9 +116,15 @@ bool Importer::loadFBX(const std::string& filePath) { } } } - std::cerr << "FBX loaded"<< std::endl; + // Si el modelo no tiene textura, asigna la textura checker + if (scene->mNumMaterials == 0) { + textureID = createCheckerTexture(); + } + + std::cerr << "FBX loaded" << std::endl; return true; + } GLuint Importer::loadTexture(const std::string& texturePath) { @@ -114,4 +151,9 @@ GLuint Importer::loadTexture(const std::string& texturePath) { std::cerr << "Texture loaded" << std::endl; return textureID; -} \ No newline at end of file +} + +// Método para obtener la textura cargada o checker +GLuint Importer::getTextureID() const { + return textureID; +} \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Importer.h b/sdl2_simple_example/sdl2_simple_example/Importer.h index aff3495..fd93b62 100644 --- a/sdl2_simple_example/sdl2_simple_example/Importer.h +++ b/sdl2_simple_example/sdl2_simple_example/Importer.h @@ -18,6 +18,8 @@ class Importer { const std::vector& getIndices() const { return indices; } GLuint getTextureID() { return textureID; } + GLuint createCheckerTexture(); + GLuint getTextureID() const; private: std::vector vertices; diff --git a/sdl2_simple_example/sdl2_simple_example/Scene.cpp b/sdl2_simple_example/sdl2_simple_example/Scene.cpp index 527a297..4f8aaa8 100644 --- a/sdl2_simple_example/sdl2_simple_example/Scene.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Scene.cpp @@ -21,8 +21,14 @@ void Scene::loadModelData(const std::vector& vertices, const std::vector< void Scene::setTexture(GLuint textureID) { if (!gameObjects.empty()) { - Texture* texture = new Texture(textureID); - gameObjects.back()->setTexture(texture); + Texture* newTexture = new Texture(textureID); + + // Reemplazar la textura si ya existe una en el último objeto + GameObject* lastObject = gameObjects.back(); + if (lastObject->getTexture() != nullptr) { + delete lastObject->getTexture(); + } + lastObject->setTexture(newTexture); } } @@ -30,12 +36,10 @@ void Scene::drawScene() { glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); for (const auto& obj : gameObjects) { - // Apply transformations for each object independently - glPushMatrix(); // Save the current matrix + glPushMatrix(); // Guardar la matriz actual - // Apply the object's own transformations - obj->draw(); + obj->draw(); // Dibujar el objeto - glPopMatrix(); // Restore the previous matrix + glPopMatrix(); // Restaurar la matriz previa } } \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/main.cpp b/sdl2_simple_example/sdl2_simple_example/main.cpp index 272678b..523b18d 100644 --- a/sdl2_simple_example/sdl2_simple_example/main.cpp +++ b/sdl2_simple_example/sdl2_simple_example/main.cpp @@ -37,11 +37,22 @@ void handleFileDrop(const char* filePath) { if (extension == "fbx") { if (importer.loadFBX(filePath)) { scene.loadModelData(importer.getVertices(), importer.getUVs(), importer.getIndices()); + + // Asigna la textura checker si no hay ninguna + if (importer.getTextureID() == 0) { + GLuint checkerTexture = importer.createCheckerTexture(); + scene.setTexture(checkerTexture); + } + else { + scene.setTexture(importer.getTextureID()); + } } } else if (extension == "png" || extension == "jpg") { GLuint texture = importer.loadTexture(filePath); - scene.setTexture(texture); + if (texture != 0) { + scene.setTexture(texture); + } } } From 3660ed07ebbeac4a0ffcd4a81b0e6764eaf57147 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=ADdac=20P=C3=A9rez=20M=C3=A1rquez?= <125640145+didacpema@users.noreply.github.com> Date: Mon, 4 Nov 2024 13:00:13 +0100 Subject: [PATCH 07/48] GUI windows --- .../sdl2_simple_example/MyWindow.cpp | 107 +++++++++++++++--- .../sdl2_simple_example/imgui.ini | 16 +++ .../sdl2_simple_example/main.cpp | 6 +- 3 files changed, 112 insertions(+), 17 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index be88096..01b4185 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -12,12 +12,14 @@ using namespace std; -MyWindow::MyWindow(const char* title, unsigned short width, unsigned short height){ - open(title, width, height); +MyWindow::MyWindow(const char* title, unsigned short width, unsigned short height) { + SDL_Init(SDL_INIT_VIDEO); // Mueve esta línea al principio del constructor + open(title, width, height); + ImGui::CreateContext(); ImGui_ImplSDL2_InitForOpenGL(_window, _ctx); ImGui_ImplOpenGL3_Init("#version 130"); - SDL_Init(SDL_INIT_VIDEO); + SDL_EventState(SDL_DROPFILE, SDL_ENABLE); } @@ -59,21 +61,97 @@ void MyWindow::draw() { ImGui_ImplSDL2_NewFrame(); ImGui::NewFrame(); + // Barra de menú principal if (ImGui::BeginMainMenuBar()) { - if (ImGui::BeginMenu("Menu")) { - if (ImGui::MenuItem("Adeu")) { + if (ImGui::BeginMenu("Menú")) { + if (ImGui::MenuItem("Sortir")) { SDL_Event quit_event; quit_event.type = SDL_QUIT; SDL_PushEvent(&quit_event); } + if (ImGui::MenuItem("GitHub")) { + // Aquí podríamos abrir el enlace de GitHub + } + if (ImGui::MenuItem("Sobre el motor")) { + ImGui::OpenPopup("AboutPopup"); + } + ImGui::EndMenu(); + } + + if (ImGui::BeginMenu("Editor")) { + ImGui::MenuItem("Mostrar Consola", NULL, true); + ImGui::MenuItem("Mostrar Configuració", NULL, true); + ImGui::MenuItem("Mostrar Jerarquia", NULL, true); + ImGui::MenuItem("Mostrar Inspector", NULL, true); + ImGui::EndMenu(); + } + + if (ImGui::BeginMenu("Formes bàsiques")) { + if (ImGui::MenuItem("Cargar Forma Bàsica")) { + // Aquí se manejará la carga de formas + } ImGui::EndMenu(); } + ImGui::EndMainMenuBar(); } + // Consola (vacía, sin contenido de LOG aún) + ImGui::Begin("Consola"); + ImGui::Text("Consola: Aquí se mostrará el LOG de carga de geometrías y bibliotecas"); + ImGui::End(); + + // Configuración (vacía) + ImGui::Begin("Configuració"); + ImGui::Text("Configuració general del sistema"); + + // Placeholder para gráfico de FPS + ImGui::Text("Gràfic FPS (Placeholder)"); + static float values[90] = {}; + static int values_offset = 0; + values[values_offset] = 60.0f; // Ejemplo fijo de FPS + values_offset = (values_offset + 1) % 90; + ImGui::PlotLines("FPS", values, IM_ARRAYSIZE(values), values_offset, "FPS", 0.0f, 100.0f, ImVec2(0, 80)); + + // Opciones de configuración de módulos (placeholder) + ImGui::Text("Configuració de cada mòdul:"); + ImGui::Text(" - Renderitzador\n - Finestra\n - Entrada\n - Textures"); + + // Placeholder para consumo de memoria y detección de hardware + ImGui::Text("Consum de Memòria: "); + ImGui::Text("Detecció de maquinari i versions de programari:"); + ImGui::Text("SDL, OpenGL, DevIL"); + ImGui::End(); + + // Jerarquía (vacía) + ImGui::Begin("Jerarquia"); + ImGui::Text("Llista de GameObjects:"); + ImGui::Text("Aquí se mostrará la jerarquía de GameObjects"); + ImGui::End(); + + // Inspector (vacío) + ImGui::Begin("Inspector"); + ImGui::Text("Informació del GameObject seleccionat"); + ImGui::Text("Component: Transform"); + ImGui::Text("Posició: (0,0,0)"); + ImGui::Text("Rotació: (0,0,0)"); + ImGui::Text("Escala: (1,1,1)"); + ImGui::Text("Component: Mesh"); + ImGui::Text("Informació de la malla carregada"); + ImGui::Text("Component: Texture"); + ImGui::Text("Mida de la textura i camí"); + ImGui::End(); + + // Popup "About" + if (ImGui::BeginPopup("AboutPopup")) { + ImGui::Text("Informació sobre el motor:"); + ImGui::Text("Versió: 1.0"); + ImGui::Text("Desenvolupat amb SDL, OpenGL, ImGui, Assimp, DevIL"); + ImGui::EndPopup(); + } + ImGui::Render(); ImGui_ImplOpenGL3_RenderDrawData(ImGui::GetDrawData()); - } void MyWindow::swapBuffers() const { @@ -85,15 +163,19 @@ bool MyWindow::processEvents(IEventProcessor* event_processor) { static int lastMouseX, lastMouseY; while (SDL_PollEvent(&e)) { - if (event_processor) event_processor->processEvent(e); + // Enviar el evento a ImGui primero + ImGui_ImplSDL2_ProcessEvent(&e); // Procesa el evento de archivo arrastrado y soltado if (e.type == SDL_DROPFILE) { char* droppedFile = e.drop.file; - // Procesa el archivo aquí llamando a una función de carga o algo similar handleFileDrop(droppedFile); // Tu función para manejar archivos - SDL_free(droppedFile); // Libera la memoria - continue; // Pasa al siguiente evento para evitar que ImGui también lo maneje + SDL_free(droppedFile); + continue; + } + + if (event_processor) { + event_processor->processEvent(e); // Procesar eventos personalizados } switch (e.type) { @@ -113,12 +195,9 @@ bool MyWindow::processEvents(IEventProcessor* event_processor) { } break; case SDL_MOUSEWHEEL: - if (e.wheel.y > 0) cameraDistance -= 0.5f; - if (e.wheel.y < 0) cameraDistance += 0.5f; + cameraDistance += e.wheel.y > 0 ? -0.5f : 0.5f; cameraDistance = max(1.0f, cameraDistance); break; - default: - ImGui_ImplSDL2_ProcessEvent(&e); } } return true; diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index 9930887..b1c8d8f 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -2,3 +2,19 @@ Pos=60,60 Size=400,400 +[Window][Consola] +Pos=60,60 +Size=458,48 + +[Window][Configuració] +Pos=37,333 +Size=325,273 + +[Window][Jerarquia] +Pos=702,119 +Size=283,64 + +[Window][Inspector] +Pos=691,277 +Size=254,184 + diff --git a/sdl2_simple_example/sdl2_simple_example/main.cpp b/sdl2_simple_example/sdl2_simple_example/main.cpp index 523b18d..183e66b 100644 --- a/sdl2_simple_example/sdl2_simple_example/main.cpp +++ b/sdl2_simple_example/sdl2_simple_example/main.cpp @@ -26,7 +26,7 @@ using hrclock = chrono::high_resolution_clock; static const unsigned int FPS = 60; static const auto FRAME_DT = 1.0s / FPS; -MyWindow myWindow("SDL2 Simple Example", 512, 512); +MyWindow myWindow("SDL2 Simple Example", 1024, 720); Importer importer; Scene scene; @@ -68,11 +68,11 @@ int main(int argc, char** argv) { while (myWindow.processEvents() && myWindow.isOpen()) { auto start = hrclock::now(); - if (!myWindow.processEvents()) break; Renderer::setupView(myWindow.cameraDistance, myWindow.cameraAngleX, myWindow.cameraAngleY, myWindow.panX, myWindow.panY); scene.drawScene(); - myWindow.draw(); + + myWindow.draw(); // Llama a la función de dibujo de ImGui myWindow.swapBuffers(); auto elapsed = hrclock::now() - start; From e63bd2bbc2408c0f98e08c7e9ad8180d0a7274e9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=ADdac=20P=C3=A9rez=20M=C3=A1rquez?= <125640145+didacpema@users.noreply.github.com> Date: Mon, 4 Nov 2024 16:12:04 +0100 Subject: [PATCH 08/48] Console GUI --- .../sdl2_simple_example/Importer.cpp | 29 ++++++-- .../sdl2_simple_example/Importer.h | 5 ++ .../sdl2_simple_example/MyWindow.cpp | 41 +++++++---- .../sdl2_simple_example/MyWindow.h | 69 ++++++++++--------- .../sdl2_simple_example/Scene.cpp | 5 +- .../sdl2_simple_example/Scene.h | 1 + .../sdl2_simple_example/imgui.ini | 16 ++++- .../sdl2_simple_example/main.cpp | 26 +++++-- 8 files changed, 130 insertions(+), 62 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/Importer.cpp b/sdl2_simple_example/sdl2_simple_example/Importer.cpp index f634f19..9123faa 100644 --- a/sdl2_simple_example/sdl2_simple_example/Importer.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Importer.cpp @@ -7,6 +7,7 @@ #include #include #include +#include "MyWindow.h" using vec3 = glm::dvec3; @@ -25,6 +26,10 @@ Importer::~Importer() { } } +void Importer::setWindow(MyWindow* window) { + _window = window; +} + void centerModel(const aiScene* scene) { aiVector3D min, max; min = max = scene->mMeshes[0]->mVertices[0]; @@ -74,25 +79,36 @@ GLuint Importer::createCheckerTexture() { return checkerTexture; } -// Modifica el método `loadFBX` para asignar la textura checker si el modelo no tiene una propia bool Importer::loadFBX(const std::string& filePath) { + _window->logMessage("Attempting to load FBX file: " + filePath); // New log message + Assimp::Importer importer; const aiScene* scene = importer.ReadFile(filePath, aiProcess_Triangulate | aiProcess_GenUVCoords | aiProcess_CalcTangentSpace); if (!scene) { - std::cerr << "Error loading FBX: " << importer.GetErrorString() << std::endl; + _window->logMessage("Error loading FBX: " + std::string(importer.GetErrorString())); return false; } + _window->logMessage("Successfully loaded FBX file: " + filePath); + + // Centering the model and logging its details centerModel(scene); + _window->logMessage("Model centered with scale factor: " + std::to_string(modelScale) + ", center: (" + + std::to_string(modelCenter.x) + ", " + + std::to_string(modelCenter.y) + ", " + + std::to_string(modelCenter.z) + ")"); vertices.clear(); uvs.clear(); indices.clear(); - // Procesar vértices y UVs como antes for (unsigned int i = 0; i < scene->mNumMeshes; i++) { aiMesh* mesh = scene->mMeshes[i]; + _window->logMessage("Processing mesh: " + std::to_string(i) + " with " + + std::to_string(mesh->mNumVertices) + " vertices and " + + std::to_string(mesh->mNumFaces) + " faces."); + for (unsigned int v = 0; v < mesh->mNumVertices; v++) { aiVector3D vertex = mesh->mVertices[v]; vertices.push_back(vertex.x); @@ -117,14 +133,15 @@ bool Importer::loadFBX(const std::string& filePath) { } } - // Si el modelo no tiene textura, asigna la textura checker if (scene->mNumMaterials == 0) { textureID = createCheckerTexture(); + _window->logMessage("No texture found in model. Checker texture applied."); + } + else { + _window->logMessage("Texture detected and applied."); } - std::cerr << "FBX loaded" << std::endl; return true; - } GLuint Importer::loadTexture(const std::string& texturePath) { diff --git a/sdl2_simple_example/sdl2_simple_example/Importer.h b/sdl2_simple_example/sdl2_simple_example/Importer.h index fd93b62..ddafe45 100644 --- a/sdl2_simple_example/sdl2_simple_example/Importer.h +++ b/sdl2_simple_example/sdl2_simple_example/Importer.h @@ -4,6 +4,7 @@ #include #include #include "glm/glm.hpp" +#include "MyWindow.h" class Importer { public: @@ -21,9 +22,13 @@ class Importer { GLuint createCheckerTexture(); GLuint getTextureID() const; + void setWindow(MyWindow* window); + private: std::vector vertices; std::vector uvs; std::vector indices; GLuint textureID = 0; + + MyWindow* _window = nullptr; }; \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index 01b4185..f535bb8 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -30,6 +30,10 @@ MyWindow::~MyWindow() { close(); } +void MyWindow::logMessage(const std::string& message) { + logMessages.push_back(message); +} + void MyWindow::open(const char* title, unsigned short width, unsigned short height) { if (isOpen()) return; SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1); @@ -37,13 +41,18 @@ void MyWindow::open(const char* title, unsigned short width, unsigned short heig SDL_GL_SetAttribute(SDL_GL_STENCIL_SIZE, 8); SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, 3); SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION, 0); - _window = SDL_CreateWindow( title, SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, width, height, SDL_WINDOW_OPENGL); - if (!_window) throw exception(SDL_GetError()); + _window = SDL_CreateWindow(title, SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, width, height, SDL_WINDOW_OPENGL); + if (!_window) { + logMessage("Error al crear ventana SDL."); // Mensaje en caso de error + throw exception(SDL_GetError()); + } _ctx = SDL_GL_CreateContext(_window); - if (!_ctx) throw exception(SDL_GetError()); - if (SDL_GL_MakeCurrent(_window, _ctx) != 0) throw exception(SDL_GetError()); - if (SDL_GL_SetSwapInterval(1) != 0) throw exception(SDL_GetError()); + if (!_ctx) { + logMessage("Error al crear contexto OpenGL."); // Mensaje en caso de error + throw exception(SDL_GetError()); + } + logMessage("Ventana y contexto creados con exito."); } void MyWindow::close() { @@ -54,6 +63,8 @@ void MyWindow::close() { SDL_DestroyWindow(static_cast(_window)); _window = nullptr; + + logMessage("Ventana cerrada."); } void MyWindow::draw() { @@ -63,8 +74,8 @@ void MyWindow::draw() { // Barra de menú principal if (ImGui::BeginMainMenuBar()) { - if (ImGui::BeginMenu("Menú")) { - if (ImGui::MenuItem("Sortir")) { + if (ImGui::BeginMenu("Menu")) { + if (ImGui::MenuItem("Salir")) { SDL_Event quit_event; quit_event.type = SDL_QUIT; SDL_PushEvent(&quit_event); @@ -79,10 +90,10 @@ void MyWindow::draw() { } if (ImGui::BeginMenu("Editor")) { - ImGui::MenuItem("Mostrar Consola", NULL, true); - ImGui::MenuItem("Mostrar Configuració", NULL, true); - ImGui::MenuItem("Mostrar Jerarquia", NULL, true); - ImGui::MenuItem("Mostrar Inspector", NULL, true); + ImGui::MenuItem("Consola", NULL, true); + ImGui::MenuItem("Config", NULL, true); + ImGui::MenuItem("Jerarquia", NULL, true); + ImGui::MenuItem("Inspector", NULL, true); ImGui::EndMenu(); } @@ -98,11 +109,13 @@ void MyWindow::draw() { // Consola (vacía, sin contenido de LOG aún) ImGui::Begin("Consola"); - ImGui::Text("Consola: Aquí se mostrará el LOG de carga de geometrías y bibliotecas"); + for (const auto& msg : logMessages) { + ImGui::Text("%s", msg.c_str()); + } ImGui::End(); // Configuración (vacía) - ImGui::Begin("Configuració"); + ImGui::Begin("Config"); ImGui::Text("Configuració general del sistema"); // Placeholder para gráfico de FPS @@ -169,6 +182,7 @@ bool MyWindow::processEvents(IEventProcessor* event_processor) { // Procesa el evento de archivo arrastrado y soltado if (e.type == SDL_DROPFILE) { char* droppedFile = e.drop.file; + logMessage("Archivo arrastrado: " + string(droppedFile)); handleFileDrop(droppedFile); // Tu función para manejar archivos SDL_free(droppedFile); continue; @@ -180,6 +194,7 @@ bool MyWindow::processEvents(IEventProcessor* event_processor) { switch (e.type) { case SDL_QUIT: + logMessage("Evento de salida recibido."); close(); return false; case SDL_MOUSEMOTION: diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.h b/sdl2_simple_example/sdl2_simple_example/MyWindow.h index 24624e2..cd57f87 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.h +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.h @@ -2,49 +2,50 @@ #include #include - +#include +#include class IEventProcessor { public: - virtual void processEvent(const SDL_Event& event) = 0; + virtual void processEvent(const SDL_Event& event) = 0; }; class MyWindow { + SDL_Window* _window = nullptr; + void* _ctx = nullptr; - SDL_Window* _window = nullptr; - void* _ctx = nullptr; - - unsigned short _width = 800; - unsigned short _height = 600; + unsigned short _width = 800; + unsigned short _height = 600; public: - int width() const { return _width; } - int height() const { return _height; } - double aspect() const { return static_cast(_width) / _height; } - - float cameraDistance = 5.0f; // Distancia inicial de la cámara (zoom) - float cameraAngleX = 0.0f; // Ángulo de rotación en el eje X - float cameraAngleY = 0.0f; // Ángulo de rotación en el eje Y - float panX = 0.0f, panY = 0.0f; // Desplazamiento de la cámara (pan) - - auto* windowPtr() const { return _window; } - auto* contextPtr() const { return _ctx; } - - MyWindow(const char* title, unsigned short width, unsigned short height); - MyWindow(MyWindow&&) noexcept = delete; - MyWindow(const MyWindow&) = delete; - MyWindow& operator=(const MyWindow&) = delete; - ~MyWindow(); - - void open(const char* title, unsigned short width, unsigned short height); - void close(); - bool isOpen() const { return _window; } - - bool processEvents(IEventProcessor* event_processor = nullptr); - void draw(); - void swapBuffers() const; - + int width() const { return _width; } + int height() const { return _height; } + double aspect() const { return static_cast(_width) / _height; } + + float cameraDistance = 5.0f; // Distancia inicial de la cámara (zoom) + float cameraAngleX = 0.0f; // Ángulo de rotación en el eje X + float cameraAngleY = 0.0f; // Ángulo de rotación en el eje Y + float panX = 0.0f, panY = 0.0f; // Desplazamiento de la cámara (pan) + + SDL_Window* windowPtr() const { return _window; } + void* contextPtr() const { return _ctx; } + + MyWindow(const char* title, unsigned short width, unsigned short height); + MyWindow(MyWindow&&) noexcept = delete; + MyWindow(const MyWindow&) = delete; + MyWindow& operator=(const MyWindow&) = delete; + ~MyWindow(); + + void open(const char* title, unsigned short width, unsigned short height); + void close(); + bool isOpen() const { return _window; } + + bool processEvents(IEventProcessor* event_processor = nullptr); + void draw(); + void swapBuffers() const; + + void logMessage(const std::string& message); // Método para agregar mensajes al LOG + std::vector logMessages; // Vector de mensajes de LOG }; - extern void handleFileDrop(const char* filePath); \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Scene.cpp b/sdl2_simple_example/sdl2_simple_example/Scene.cpp index 4f8aaa8..46c233d 100644 --- a/sdl2_simple_example/sdl2_simple_example/Scene.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Scene.cpp @@ -23,7 +23,6 @@ void Scene::setTexture(GLuint textureID) { if (!gameObjects.empty()) { Texture* newTexture = new Texture(textureID); - // Reemplazar la textura si ya existe una en el último objeto GameObject* lastObject = gameObjects.back(); if (lastObject->getTexture() != nullptr) { delete lastObject->getTexture(); @@ -32,6 +31,10 @@ void Scene::setTexture(GLuint textureID) { } } +void Scene::setCheckerTexture(GLuint checkerTextureID) { + setTexture(checkerTextureID); +} + void Scene::drawScene() { glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); diff --git a/sdl2_simple_example/sdl2_simple_example/Scene.h b/sdl2_simple_example/sdl2_simple_example/Scene.h index 122f8d5..13bd3ca 100644 --- a/sdl2_simple_example/sdl2_simple_example/Scene.h +++ b/sdl2_simple_example/sdl2_simple_example/Scene.h @@ -8,6 +8,7 @@ class Scene { ~Scene(); void loadModelData(const std::vector& vertices, const std::vector& uvs, const std::vector& indices, const Transform& transform = Transform()); void setTexture(GLuint textureID); + void setCheckerTexture(GLuint checkerTextureID); void drawScene(); private: diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index b1c8d8f..1a3335c 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -4,7 +4,7 @@ Size=400,400 [Window][Consola] Pos=60,60 -Size=458,48 +Size=458,236 [Window][Configuració] Pos=37,333 @@ -15,6 +15,18 @@ Pos=702,119 Size=283,64 [Window][Inspector] -Pos=691,277 +Pos=641,410 Size=254,184 +[Window][Console] +Pos=28,107 +Size=488,472 + +[Window][Config] +Pos=714,92 +Size=325,273 + +[Window][Hierarchy] +Pos=176,287 +Size=283,65 + diff --git a/sdl2_simple_example/sdl2_simple_example/main.cpp b/sdl2_simple_example/sdl2_simple_example/main.cpp index 183e66b..8e353ce 100644 --- a/sdl2_simple_example/sdl2_simple_example/main.cpp +++ b/sdl2_simple_example/sdl2_simple_example/main.cpp @@ -26,7 +26,6 @@ using hrclock = chrono::high_resolution_clock; static const unsigned int FPS = 60; static const auto FRAME_DT = 1.0s / FPS; -MyWindow myWindow("SDL2 Simple Example", 1024, 720); Importer importer; Scene scene; @@ -38,10 +37,10 @@ void handleFileDrop(const char* filePath) { if (importer.loadFBX(filePath)) { scene.loadModelData(importer.getVertices(), importer.getUVs(), importer.getIndices()); - // Asigna la textura checker si no hay ninguna + // Asigna la textura checker usando el nuevo método if (importer.getTextureID() == 0) { GLuint checkerTexture = importer.createCheckerTexture(); - scene.setTexture(checkerTexture); + scene.setCheckerTexture(checkerTexture); } else { scene.setTexture(importer.getTextureID()); @@ -57,14 +56,28 @@ void handleFileDrop(const char* filePath) { } int main(int argc, char** argv) { - SDL_Init(SDL_INIT_VIDEO); - SDL_EventState(SDL_DROPFILE, SDL_ENABLE); + MyWindow myWindow("SDL2 Simple Example", 1024, 720); + importer.setWindow(&myWindow); + + myWindow.logMessage("Initializing SDL..."); + if (SDL_Init(SDL_INIT_VIDEO) != 0) { + myWindow.logMessage("Error initializing SDL: " + std::string(SDL_GetError())); + return -1; + } + myWindow.logMessage("SDL initialized successfully."); + + myWindow.logMessage("Initializing DevIL..."); ilInit(); iluInit(); ilutRenderer(ILUT_OPENGL); + myWindow.logMessage("DevIL initialized successfully."); + myWindow.logMessage("Initializing OpenGL context..."); Renderer::initOpenGL(); Renderer::setupProjection(45.0f, 1.0f, 0.1f, 100.0f); + myWindow.logMessage("OpenGL context initialized."); + + SDL_EventState(SDL_DROPFILE, SDL_ENABLE); while (myWindow.processEvents() && myWindow.isOpen()) { auto start = hrclock::now(); @@ -72,7 +85,7 @@ int main(int argc, char** argv) { Renderer::setupView(myWindow.cameraDistance, myWindow.cameraAngleX, myWindow.cameraAngleY, myWindow.panX, myWindow.panY); scene.drawScene(); - myWindow.draw(); // Llama a la función de dibujo de ImGui + myWindow.draw(); myWindow.swapBuffers(); auto elapsed = hrclock::now() - start; @@ -80,5 +93,6 @@ int main(int argc, char** argv) { } SDL_Quit(); + myWindow.logMessage("Application terminated."); return 0; } \ No newline at end of file From 3f8df43d9ae3b407e0ef319c4e40ba7ba291ba9b Mon Sep 17 00:00:00 2001 From: miguelturmo <125253347+miguelturmo@users.noreply.github.com> Date: Mon, 4 Nov 2024 17:59:42 +0100 Subject: [PATCH 09/48] movimiento de la camara arreglado --- .../imgui_sdl_simple_example.vcxproj | 1 + .../sdl2_simple_example/MyWindow.cpp | 31 ++++++++++++++++--- .../sdl2_simple_example/imgui.ini | 6 ++-- 3 files changed, 30 insertions(+), 8 deletions(-) diff --git a/imgui_sdl_simple_example/imgui_sdl_simple_example/imgui_sdl_simple_example.vcxproj b/imgui_sdl_simple_example/imgui_sdl_simple_example/imgui_sdl_simple_example.vcxproj index b4102e4..d710420 100644 --- a/imgui_sdl_simple_example/imgui_sdl_simple_example/imgui_sdl_simple_example.vcxproj +++ b/imgui_sdl_simple_example/imgui_sdl_simple_example/imgui_sdl_simple_example.vcxproj @@ -107,6 +107,7 @@ _DEBUG;_CONSOLE;%(PreprocessorDefinitions) true ..\..\sdl2_simple_example\sdl2_simple_example\ + stdcpp20 Console diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index f535bb8..557979c 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -200,15 +200,36 @@ bool MyWindow::processEvents(IEventProcessor* event_processor) { case SDL_MOUSEMOTION: if (e.motion.state & SDL_BUTTON_RMASK) { if (SDL_GetModState() & KMOD_ALT) { - panX -= e.motion.xrel * 0.01f; - panY += e.motion.yrel * 0.01f; - } - else { cameraAngleY += e.motion.xrel * 0.005f; - cameraAngleX += e.motion.yrel * 0.005f; + cameraAngleX -= e.motion.yrel * 0.005f; } + } break; + case SDL_KEYDOWN: + if(e.key.keysym.sym == SDLK_w) { + if (SDL_KEYDOWN) { + panY += 0.1f; + + } + } + if (e.key.keysym.sym == SDLK_s) { + if (SDL_KEYDOWN) { + panY -= 0.1f; + } + } + if (e.key.keysym.sym == SDLK_a) { + if (SDL_KEYDOWN) { + panX-= 0.1f; + } + } + if (e.key.keysym.sym == SDLK_d) { + if (SDL_KEYDOWN) { + panX += 0.1f; + } + } + + break; case SDL_MOUSEWHEEL: cameraDistance += e.wheel.y > 0 ? -0.5f : 0.5f; cameraDistance = max(1.0f, cameraDistance); diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index 1a3335c..635cc00 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -3,7 +3,7 @@ Pos=60,60 Size=400,400 [Window][Consola] -Pos=60,60 +Pos=565,504 Size=458,236 [Window][Configuració] @@ -15,7 +15,7 @@ Pos=702,119 Size=283,64 [Window][Inspector] -Pos=641,410 +Pos=606,77 Size=254,184 [Window][Console] @@ -23,7 +23,7 @@ Pos=28,107 Size=488,472 [Window][Config] -Pos=714,92 +Pos=611,222 Size=325,273 [Window][Hierarchy] From 5dd7e12df247d8781f754163f05776f6fea1c8e9 Mon Sep 17 00:00:00 2001 From: miguelturmo <125253347+miguelturmo@users.noreply.github.com> Date: Mon, 4 Nov 2024 20:52:13 +0100 Subject: [PATCH 10/48] nombres en jerarquia --- .../sdl2_simple_example/FilesystemUtils.h | 21 ++++++++++++++----- .../sdl2_simple_example/MyWindow.cpp | 6 +++++- .../sdl2_simple_example/Scene.cpp | 3 ++- .../sdl2_simple_example/Scene.h | 6 +++--- .../sdl2_simple_example/imgui.ini | 2 +- .../sdl2_simple_example/main.cpp | 5 +++-- 6 files changed, 30 insertions(+), 13 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/FilesystemUtils.h b/sdl2_simple_example/sdl2_simple_example/FilesystemUtils.h index 299e18c..7c8571f 100644 --- a/sdl2_simple_example/sdl2_simple_example/FilesystemUtils.h +++ b/sdl2_simple_example/sdl2_simple_example/FilesystemUtils.h @@ -1,12 +1,23 @@ #pragma once + #include #include +#include namespace fs = std::filesystem; -void createRequiredDirectories() { - const std::vector dirs = { "Assets", "Library/Meshes", "Library/Materials", "Library/Models" }; - for (const auto& dir : dirs) { - if (!fs::exists(dir)) fs::create_directories(dir); +class FileSystemUtils { +public: + static void createRequiredDirectories() { + const std::vector dirs = { "Assets", "Library/Meshes", "Library/Materials", "Library/Models" }; + for (const auto& dir : dirs) { + if (!fs::exists(dir)) { + fs::create_directories(dir); + } + } + } + + static std::string getFileName(const std::string& filePath) { + return fs::path(filePath).filename().string(); } -} \ No newline at end of file +}; diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index 557979c..8b6344a 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -1,3 +1,4 @@ +#include "Scene.h" #include #include #include @@ -11,7 +12,7 @@ #include using namespace std; - +extern Scene scene; MyWindow::MyWindow(const char* title, unsigned short width, unsigned short height) { SDL_Init(SDL_INIT_VIDEO); // Mueve esta línea al principio del constructor open(title, width, height); @@ -139,6 +140,9 @@ void MyWindow::draw() { // Jerarquía (vacía) ImGui::Begin("Jerarquia"); ImGui::Text("Llista de GameObjects:"); + for (size_t i = 0; i < scene.gameObjectNames.size(); ++i) { + ImGui::Text("%s", scene.gameObjectNames[i].c_str()); // Mostrar el nombre del objeto + } ImGui::Text("Aquí se mostrará la jerarquía de GameObjects"); ImGui::End(); diff --git a/sdl2_simple_example/sdl2_simple_example/Scene.cpp b/sdl2_simple_example/sdl2_simple_example/Scene.cpp index 46c233d..19a0f0e 100644 --- a/sdl2_simple_example/sdl2_simple_example/Scene.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Scene.cpp @@ -10,13 +10,14 @@ Scene::~Scene() { gameObjects.clear(); } -void Scene::loadModelData(const std::vector& vertices, const std::vector& uvs, const std::vector& indices, const Transform& transform) { +void Scene::loadModelData(const std::vector& vertices, const std::vector& uvs, const std::vector& indices, const std::string& name, const Transform& transform) { Mesh* mesh = new Mesh(vertices, uvs, indices); GameObject* gameObject = new GameObject(mesh, nullptr); gameObject->setTransform(transform); gameObjects.push_back(gameObject); + gameObjectNames.push_back(name); } void Scene::setTexture(GLuint textureID) { diff --git a/sdl2_simple_example/sdl2_simple_example/Scene.h b/sdl2_simple_example/sdl2_simple_example/Scene.h index 13bd3ca..bbfe19a 100644 --- a/sdl2_simple_example/sdl2_simple_example/Scene.h +++ b/sdl2_simple_example/sdl2_simple_example/Scene.h @@ -1,16 +1,16 @@ #pragma once #include +#include #include "GameObject.h" class Scene { public: Scene(); ~Scene(); - void loadModelData(const std::vector& vertices, const std::vector& uvs, const std::vector& indices, const Transform& transform = Transform()); + void loadModelData(const std::vector& vertices, const std::vector& uvs, const std::vector& indices, const std::string& name, const Transform& transform = Transform()); void setTexture(GLuint textureID); void setCheckerTexture(GLuint checkerTextureID); void drawScene(); - -private: std::vector gameObjects; + std::vector gameObjectNames; }; \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index 635cc00..3510352 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -11,7 +11,7 @@ Pos=37,333 Size=325,273 [Window][Jerarquia] -Pos=702,119 +Pos=644,103 Size=283,64 [Window][Inspector] diff --git a/sdl2_simple_example/sdl2_simple_example/main.cpp b/sdl2_simple_example/sdl2_simple_example/main.cpp index 8e353ce..82d9733 100644 --- a/sdl2_simple_example/sdl2_simple_example/main.cpp +++ b/sdl2_simple_example/sdl2_simple_example/main.cpp @@ -30,12 +30,13 @@ Importer importer; Scene scene; void handleFileDrop(const char* filePath) { + std::string fileName = FileSystemUtils::getFileName(filePath); std::string path(filePath); std::string extension = path.substr(path.find_last_of('.') + 1); - + if (extension == "fbx") { if (importer.loadFBX(filePath)) { - scene.loadModelData(importer.getVertices(), importer.getUVs(), importer.getIndices()); + scene.loadModelData(importer.getVertices(), importer.getUVs(), importer.getIndices(), fileName); // Asigna la textura checker usando el nuevo método if (importer.getTextureID() == 0) { From cdc0a032f8e1fea265c1068a6dd1985d151c97e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=ADdac=20P=C3=A9rez=20M=C3=A1rquez?= <125640145+didacpema@users.noreply.github.com> Date: Tue, 5 Nov 2024 09:29:17 +0100 Subject: [PATCH 11/48] Jerarquia & Inspector + ResolutionFix --- .../sdl2_simple_example/GameObject.cpp | 3 - .../sdl2_simple_example/GameObject.h | 6 +- .../sdl2_simple_example/Mesh.h | 6 ++ .../sdl2_simple_example/MyWindow.cpp | 72 ++++++++++++++++--- .../sdl2_simple_example/MyWindow.h | 1 + .../sdl2_simple_example/Renderer.cpp | 15 +++- .../sdl2_simple_example/Renderer.h | 9 ++- .../sdl2_simple_example/Scene.h | 4 ++ .../sdl2_simple_example/Texture.h | 5 ++ .../sdl2_simple_example/imgui.ini | 10 +-- .../sdl2_simple_example/main.cpp | 6 +- 11 files changed, 109 insertions(+), 28 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/GameObject.cpp b/sdl2_simple_example/sdl2_simple_example/GameObject.cpp index f0b5894..a51bb32 100644 --- a/sdl2_simple_example/sdl2_simple_example/GameObject.cpp +++ b/sdl2_simple_example/sdl2_simple_example/GameObject.cpp @@ -14,9 +14,6 @@ void GameObject::setTexture(Texture* newTexture) { texture = newTexture; } -Texture* GameObject::getTexture() const { - return texture; -} void GameObject::setTransform(const Transform& newTransform) { transform = newTransform; diff --git a/sdl2_simple_example/sdl2_simple_example/GameObject.h b/sdl2_simple_example/sdl2_simple_example/GameObject.h index 150dd26..0db97e9 100644 --- a/sdl2_simple_example/sdl2_simple_example/GameObject.h +++ b/sdl2_simple_example/sdl2_simple_example/GameObject.h @@ -11,13 +11,11 @@ class GameObject { void draw() const; void setTexture(Texture* texture); - // Método para obtener la textura actual - Texture* getTexture() const; + Texture* getTexture() const { return texture; } + Mesh* getMesh() const { return mesh; } - // Método para establecer la transformación desde fuera de la clase void setTransform(const Transform& newTransform); -private: Mesh* mesh; Texture* texture; Transform transform; diff --git a/sdl2_simple_example/sdl2_simple_example/Mesh.h b/sdl2_simple_example/sdl2_simple_example/Mesh.h index 537381a..03c8d65 100644 --- a/sdl2_simple_example/sdl2_simple_example/Mesh.h +++ b/sdl2_simple_example/sdl2_simple_example/Mesh.h @@ -11,6 +11,12 @@ class Mesh { Mesh(const std::vector& vertices, const std::vector& uvs, const std::vector& indices); ~Mesh(); + void setupMesh(); void render() const; + + // Getter methods for mesh information + const std::vector& getVertices() const { return vertices; } + const std::vector& getUVs() const { return uvs; } + const std::vector& getIndices() const { return indices; } }; \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index 8b6344a..5ab083a 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -141,22 +141,72 @@ void MyWindow::draw() { ImGui::Begin("Jerarquia"); ImGui::Text("Llista de GameObjects:"); for (size_t i = 0; i < scene.gameObjectNames.size(); ++i) { - ImGui::Text("%s", scene.gameObjectNames[i].c_str()); // Mostrar el nombre del objeto + bool isSelected = (scene.selectedGameObjectIndex == i); + if (ImGui::Selectable(scene.gameObjectNames[i].c_str(), isSelected)) { + scene.selectedGameObjectIndex = i; // Actualiza el índice del objeto seleccionado + } } - ImGui::Text("Aquí se mostrará la jerarquía de GameObjects"); ImGui::End(); // Inspector (vacío) ImGui::Begin("Inspector"); - ImGui::Text("Informació del GameObject seleccionat"); - ImGui::Text("Component: Transform"); - ImGui::Text("Posició: (0,0,0)"); - ImGui::Text("Rotació: (0,0,0)"); - ImGui::Text("Escala: (1,1,1)"); - ImGui::Text("Component: Mesh"); - ImGui::Text("Informació de la malla carregada"); - ImGui::Text("Component: Texture"); - ImGui::Text("Mida de la textura i camí"); + + if (scene.selectedGameObjectIndex >= 0 && scene.selectedGameObjectIndex < scene.gameObjects.size()) { + GameObject* selectedObject = scene.gameObjects[scene.selectedGameObjectIndex]; + + ImGui::Text("Informació del GameObject seleccionat"); + + // Display Transform (already added) + float position[3] = { selectedObject->transform.position.x, selectedObject->transform.position.y, selectedObject->transform.position.z }; + if (ImGui::InputFloat3("Posició", position)) { + selectedObject->transform.position = { position[0], position[1], position[2] }; + } + + // Display Texture ID + if (selectedObject->getTexture()) { + GLuint textureID = selectedObject->getTexture()->getTextureID(); + ImGui::Text("Texture ID: %u", textureID); + } + else { + ImGui::Text("Texture ID: None"); + } + + // Display Mesh Information + if (selectedObject->getMesh()) { + const std::vector& vertices = selectedObject->getMesh()->getVertices(); + const std::vector& uvs = selectedObject->getMesh()->getUVs(); + const std::vector& indices = selectedObject->getMesh()->getIndices(); + + ImGui::Text("Mesh Information:"); + ImGui::Text("Vertices: %zu", vertices.size()); + ImGui::Text("UVs: %zu", uvs.size()); + ImGui::Text("Indices: %zu", indices.size()); + + // Optionally, display a preview of some vertices, uvs, and indices + ImGui::Separator(); + ImGui::Text("Vertices Preview:"); + for (size_t i = 0; i < std::min(vertices.size(), 9); i += 3) { + ImGui::Text("(%f, %f, %f)", vertices[i], vertices[i + 1], vertices[i + 2]); + } + + ImGui::Text("UVs Preview:"); + for (size_t i = 0; i < std::min(uvs.size(), 6); i += 2) { + ImGui::Text("(%f, %f)", uvs[i], uvs[i + 1]); + } + + ImGui::Text("Indices Preview:"); + for (size_t i = 0; i < std::min(indices.size(), 9); i += 3) { + ImGui::Text("(%u, %u, %u)", indices[i], indices[i + 1], indices[i + 2]); + } + } + else { + ImGui::Text("Mesh: None"); + } + } + else { + ImGui::Text("Seleccione un GameObject de la jerarquia para ver sus propiedades."); + } + ImGui::End(); // Popup "About" diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.h b/sdl2_simple_example/sdl2_simple_example/MyWindow.h index cd57f87..5fddcfe 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.h +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.h @@ -46,6 +46,7 @@ class MyWindow { void logMessage(const std::string& message); // Método para agregar mensajes al LOG std::vector logMessages; // Vector de mensajes de LOG + }; extern void handleFileDrop(const char* filePath); \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Renderer.cpp b/sdl2_simple_example/sdl2_simple_example/Renderer.cpp index d51b0c5..2c6cec8 100644 --- a/sdl2_simple_example/sdl2_simple_example/Renderer.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Renderer.cpp @@ -3,24 +3,35 @@ #include #include -void Renderer::initOpenGL() { +// Define the static member variable +ivec2 Renderer::_WINDOW_SIZE; + +void Renderer::initOpenGL(ivec2 WINDOW_SIZE) { glewInit(); if (!GLEW_VERSION_3_0) throw std::exception("OpenGL 3.0 API is not available."); + glEnable(GL_DEPTH_TEST); glClearColor(0.5, 0.5, 0.5, 1.0); + + // Store the window size + Renderer::_WINDOW_SIZE = WINDOW_SIZE; } void Renderer::setupProjection(float fov, float aspectRatio, float nearPlane, float farPlane) { glMatrixMode(GL_PROJECTION); glLoadIdentity(); - gluPerspective(fov, aspectRatio, nearPlane, farPlane); + + // Use the stored window size for the aspect ratio + gluPerspective(fov, static_cast(Renderer::_WINDOW_SIZE.x) / Renderer::_WINDOW_SIZE.y, nearPlane, farPlane); } void Renderer::setupView(float cameraDistance, float cameraAngleX, float cameraAngleY, float panX, float panY) { glMatrixMode(GL_MODELVIEW); glLoadIdentity(); + float eyeX = cameraDistance * sin(cameraAngleY) * cos(cameraAngleX) + panX; float eyeY = cameraDistance * sin(cameraAngleX) + panY; float eyeZ = cameraDistance * cos(cameraAngleY) * cos(cameraAngleX); + gluLookAt(eyeX, eyeY, eyeZ, panX, panY, 0.0, 0.0, 1.0, 0.0); } \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Renderer.h b/sdl2_simple_example/sdl2_simple_example/Renderer.h index 38ff098..6d4b4d3 100644 --- a/sdl2_simple_example/sdl2_simple_example/Renderer.h +++ b/sdl2_simple_example/sdl2_simple_example/Renderer.h @@ -1,10 +1,17 @@ #pragma once #include #include +#include "MyWindow.h" +#include + +using ivec2 = glm::ivec2; class Renderer { public: - static void initOpenGL(); + static void initOpenGL(ivec2 WINDOW_SIZE); static void setupProjection(float fov, float aspectRatio, float nearPlane, float farPlane); static void setupView(float cameraDistance, float cameraAngleX, float cameraAngleY, float panX, float panY); + +private: + static ivec2 _WINDOW_SIZE; }; \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Scene.h b/sdl2_simple_example/sdl2_simple_example/Scene.h index bbfe19a..d3eb8a9 100644 --- a/sdl2_simple_example/sdl2_simple_example/Scene.h +++ b/sdl2_simple_example/sdl2_simple_example/Scene.h @@ -11,6 +11,10 @@ class Scene { void setTexture(GLuint textureID); void setCheckerTexture(GLuint checkerTextureID); void drawScene(); + std::vector gameObjects; std::vector gameObjectNames; + + // Índice del objeto seleccionado (-1 si no hay ninguno) + int selectedGameObjectIndex = -1; }; \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Texture.h b/sdl2_simple_example/sdl2_simple_example/Texture.h index 412fe42..39d1387 100644 --- a/sdl2_simple_example/sdl2_simple_example/Texture.h +++ b/sdl2_simple_example/sdl2_simple_example/Texture.h @@ -4,7 +4,12 @@ class Texture { public: GLuint id; + Texture(GLuint textureId = 0) : id(textureId) {} + void bind() const; void unbind() const; + + // Getter for texture ID + GLuint getTextureID() const {return id;} }; \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index 3510352..a06ea7a 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -3,7 +3,7 @@ Pos=60,60 Size=400,400 [Window][Consola] -Pos=565,504 +Pos=521,426 Size=458,236 [Window][Configuració] @@ -11,11 +11,11 @@ Pos=37,333 Size=325,273 [Window][Jerarquia] -Pos=644,103 -Size=283,64 +Pos=265,364 +Size=320,199 [Window][Inspector] -Pos=606,77 +Pos=500,370 Size=254,184 [Window][Console] @@ -23,7 +23,7 @@ Pos=28,107 Size=488,472 [Window][Config] -Pos=611,222 +Pos=93,341 Size=325,273 [Window][Hierarchy] diff --git a/sdl2_simple_example/sdl2_simple_example/main.cpp b/sdl2_simple_example/sdl2_simple_example/main.cpp index 82d9733..c60b3bd 100644 --- a/sdl2_simple_example/sdl2_simple_example/main.cpp +++ b/sdl2_simple_example/sdl2_simple_example/main.cpp @@ -22,7 +22,9 @@ using namespace std; using hrclock = chrono::high_resolution_clock; +using ivec2 = glm::ivec2; +static const ivec2 WINDOW_SIZE(800, 600); static const unsigned int FPS = 60; static const auto FRAME_DT = 1.0s / FPS; @@ -57,7 +59,7 @@ void handleFileDrop(const char* filePath) { } int main(int argc, char** argv) { - MyWindow myWindow("SDL2 Simple Example", 1024, 720); + MyWindow myWindow("SDL2 Simple Example", WINDOW_SIZE.x, WINDOW_SIZE.y); importer.setWindow(&myWindow); myWindow.logMessage("Initializing SDL..."); @@ -74,7 +76,7 @@ int main(int argc, char** argv) { myWindow.logMessage("DevIL initialized successfully."); myWindow.logMessage("Initializing OpenGL context..."); - Renderer::initOpenGL(); + Renderer::initOpenGL(WINDOW_SIZE); Renderer::setupProjection(45.0f, 1.0f, 0.1f, 100.0f); myWindow.logMessage("OpenGL context initialized."); From 56e23d3d3aa73393343060a5cc99bb1b58c62f07 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=ADdac=20P=C3=A9rez=20M=C3=A1rquez?= <125640145+didacpema@users.noreply.github.com> Date: Tue, 5 Nov 2024 09:49:07 +0100 Subject: [PATCH 12/48] Inspector scale & rotation --- .../sdl2_simple_example/MyWindow.cpp | 36 ++++++++++++------- .../sdl2_simple_example/imgui.ini | 4 +-- 2 files changed, 26 insertions(+), 14 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index 5ab083a..e9c626a 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -154,15 +154,27 @@ void MyWindow::draw() { if (scene.selectedGameObjectIndex >= 0 && scene.selectedGameObjectIndex < scene.gameObjects.size()) { GameObject* selectedObject = scene.gameObjects[scene.selectedGameObjectIndex]; - ImGui::Text("Informació del GameObject seleccionat"); + ImGui::Text("Información del GameObject seleccionado"); - // Display Transform (already added) + // Mostrar y modificar la posición float position[3] = { selectedObject->transform.position.x, selectedObject->transform.position.y, selectedObject->transform.position.z }; - if (ImGui::InputFloat3("Posició", position)) { + if (ImGui::InputFloat3("Posición", position)) { selectedObject->transform.position = { position[0], position[1], position[2] }; } - // Display Texture ID + // Mostrar y modificar la rotación + float rotation[3] = { selectedObject->transform.rotation.x, selectedObject->transform.rotation.y, selectedObject->transform.rotation.z }; + if (ImGui::InputFloat3("Rotación", rotation)) { + selectedObject->transform.rotation = { rotation[0], rotation[1], rotation[2] }; + } + + // Mostrar y modificar la escala + float scale[3] = { selectedObject->transform.scale.x, selectedObject->transform.scale.y, selectedObject->transform.scale.z }; + if (ImGui::InputFloat3("Escala", scale)) { + selectedObject->transform.scale = { scale[0], scale[1], scale[2] }; + } + + // Mostrar el Texture ID (si existe) if (selectedObject->getTexture()) { GLuint textureID = selectedObject->getTexture()->getTextureID(); ImGui::Text("Texture ID: %u", textureID); @@ -171,40 +183,40 @@ void MyWindow::draw() { ImGui::Text("Texture ID: None"); } - // Display Mesh Information + // Mostrar la información de la malla if (selectedObject->getMesh()) { const std::vector& vertices = selectedObject->getMesh()->getVertices(); const std::vector& uvs = selectedObject->getMesh()->getUVs(); const std::vector& indices = selectedObject->getMesh()->getIndices(); - ImGui::Text("Mesh Information:"); + ImGui::Text("Información de la Malla:"); ImGui::Text("Vertices: %zu", vertices.size()); ImGui::Text("UVs: %zu", uvs.size()); ImGui::Text("Indices: %zu", indices.size()); - // Optionally, display a preview of some vertices, uvs, and indices + // Mostrar una vista previa opcional ImGui::Separator(); - ImGui::Text("Vertices Preview:"); + ImGui::Text("Vista previa de vértices:"); for (size_t i = 0; i < std::min(vertices.size(), 9); i += 3) { ImGui::Text("(%f, %f, %f)", vertices[i], vertices[i + 1], vertices[i + 2]); } - ImGui::Text("UVs Preview:"); + ImGui::Text("Vista previa de UVs:"); for (size_t i = 0; i < std::min(uvs.size(), 6); i += 2) { ImGui::Text("(%f, %f)", uvs[i], uvs[i + 1]); } - ImGui::Text("Indices Preview:"); + ImGui::Text("Vista previa de índices:"); for (size_t i = 0; i < std::min(indices.size(), 9); i += 3) { ImGui::Text("(%u, %u, %u)", indices[i], indices[i + 1], indices[i + 2]); } } else { - ImGui::Text("Mesh: None"); + ImGui::Text("Malla: Ninguna"); } } else { - ImGui::Text("Seleccione un GameObject de la jerarquia para ver sus propiedades."); + ImGui::Text("Seleccione un GameObject de la jerarquía para ver sus propiedades."); } ImGui::End(); diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index a06ea7a..62cb4e8 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -11,11 +11,11 @@ Pos=37,333 Size=325,273 [Window][Jerarquia] -Pos=265,364 +Pos=82,341 Size=320,199 [Window][Inspector] -Pos=500,370 +Pos=523,344 Size=254,184 [Window][Console] From 656efdb8d36de314658e32205334bcd611ec4361 Mon Sep 17 00:00:00 2001 From: Adri1714 Date: Wed, 6 Nov 2024 10:46:05 +0100 Subject: [PATCH 13/48] Ventana fix no me gusta este titulo pero el Didac me obliga (send HELP :anguished: ) --- .../sdl2_simple_example/MyWindow.cpp | 217 ++++++++++-------- .../sdl2_simple_example/MyWindow.h | 4 + .../sdl2_simple_example/Renderer.cpp | 2 +- .../sdl2_simple_example/imgui.ini | 12 +- 4 files changed, 130 insertions(+), 105 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index e9c626a..4cdde44 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -91,10 +91,22 @@ void MyWindow::draw() { } if (ImGui::BeginMenu("Editor")) { - ImGui::MenuItem("Consola", NULL, true); - ImGui::MenuItem("Config", NULL, true); - ImGui::MenuItem("Jerarquia", NULL, true); - ImGui::MenuItem("Inspector", NULL, true); + if (ImGui::MenuItem("Consola", NULL, isConsolaOn, true)) + { + isConsolaOn = !isConsolaOn; + } + if (ImGui::MenuItem("Config", NULL, isConfigOn, true)) + { + isConfigOn = !isConfigOn; + } + if (ImGui::MenuItem("Jerarquia", NULL, isJerarquiaOn, true)) + { + isJerarquiaOn = !isJerarquiaOn; + } + if (ImGui::MenuItem("Inspector", NULL, isInspectorOn, true)) + { + isInspectorOn =!isInspectorOn; + } ImGui::EndMenu(); } @@ -108,118 +120,127 @@ void MyWindow::draw() { ImGui::EndMainMenuBar(); } - // Consola (vacía, sin contenido de LOG aún) - ImGui::Begin("Consola"); - for (const auto& msg : logMessages) { - ImGui::Text("%s", msg.c_str()); - } - ImGui::End(); - - // Configuración (vacía) - ImGui::Begin("Config"); - ImGui::Text("Configuració general del sistema"); - - // Placeholder para gráfico de FPS - ImGui::Text("Gràfic FPS (Placeholder)"); - static float values[90] = {}; - static int values_offset = 0; - values[values_offset] = 60.0f; // Ejemplo fijo de FPS - values_offset = (values_offset + 1) % 90; - ImGui::PlotLines("FPS", values, IM_ARRAYSIZE(values), values_offset, "FPS", 0.0f, 100.0f, ImVec2(0, 80)); - - // Opciones de configuración de módulos (placeholder) - ImGui::Text("Configuració de cada mòdul:"); - ImGui::Text(" - Renderitzador\n - Finestra\n - Entrada\n - Textures"); - - // Placeholder para consumo de memoria y detección de hardware - ImGui::Text("Consum de Memòria: "); - ImGui::Text("Detecció de maquinari i versions de programari:"); - ImGui::Text("SDL, OpenGL, DevIL"); - ImGui::End(); - - // Jerarquía (vacía) - ImGui::Begin("Jerarquia"); - ImGui::Text("Llista de GameObjects:"); - for (size_t i = 0; i < scene.gameObjectNames.size(); ++i) { - bool isSelected = (scene.selectedGameObjectIndex == i); - if (ImGui::Selectable(scene.gameObjectNames[i].c_str(), isSelected)) { - scene.selectedGameObjectIndex = i; // Actualiza el índice del objeto seleccionado + if (isConsolaOn) + { + ImGui::Begin("Consola"); + for (const auto& msg : logMessages) { + ImGui::Text("%s", msg.c_str()); } + ImGui::End(); + } + if (isConfigOn) + { + ImGui::Begin("Config"); + ImGui::Text("Configuració general del sistema"); + // Placeholder para gráfico de FPS + ImGui::Text("Gràfic FPS (Placeholder)"); + static float values[90] = {}; + static int values_offset = 0; + values[values_offset] = 60.0f; // Ejemplo fijo de FPS + values_offset = (values_offset + 1) % 90; + ImGui::PlotLines("FPS", values, IM_ARRAYSIZE(values), values_offset, "FPS", 0.0f, 100.0f, ImVec2(0, 80)); + + // Opciones de configuración de módulos (placeholder) + ImGui::Text("Configuració de cada mòdul:"); + ImGui::Text(" - Renderitzador\n - Finestra\n - Entrada\n - Textures"); + + // Placeholder para consumo de memoria y detección de hardware + ImGui::Text("Consum de Memòria: "); + ImGui::Text("Detecció de maquinari i versions de programari:"); + ImGui::Text("SDL, OpenGL, DevIL"); + ImGui::End(); } - ImGui::End(); - - // Inspector (vacío) - ImGui::Begin("Inspector"); - if (scene.selectedGameObjectIndex >= 0 && scene.selectedGameObjectIndex < scene.gameObjects.size()) { - GameObject* selectedObject = scene.gameObjects[scene.selectedGameObjectIndex]; + if (isJerarquiaOn) + { + // Jerarquía (vacía) + ImGui::Begin("Jerarquia"); + ImGui::Text("Llista de GameObjects:"); + for (size_t i = 0; i < scene.gameObjectNames.size(); ++i) { + bool isSelected = (scene.selectedGameObjectIndex == i); + if (ImGui::Selectable(scene.gameObjectNames[i].c_str(), isSelected)) { + scene.selectedGameObjectIndex = i; // Actualiza el índice del objeto seleccionado + } + } + ImGui::End(); + } + if (isInspectorOn) + { - ImGui::Text("Información del GameObject seleccionado"); + // Inspector (vacío) + ImGui::Begin("Inspector"); - // Mostrar y modificar la posición - float position[3] = { selectedObject->transform.position.x, selectedObject->transform.position.y, selectedObject->transform.position.z }; - if (ImGui::InputFloat3("Posición", position)) { - selectedObject->transform.position = { position[0], position[1], position[2] }; - } + if (scene.selectedGameObjectIndex >= 0 && scene.selectedGameObjectIndex < scene.gameObjects.size()) { + GameObject* selectedObject = scene.gameObjects[scene.selectedGameObjectIndex]; - // Mostrar y modificar la rotación - float rotation[3] = { selectedObject->transform.rotation.x, selectedObject->transform.rotation.y, selectedObject->transform.rotation.z }; - if (ImGui::InputFloat3("Rotación", rotation)) { - selectedObject->transform.rotation = { rotation[0], rotation[1], rotation[2] }; - } + ImGui::Text("Información del GameObject seleccionado"); - // Mostrar y modificar la escala - float scale[3] = { selectedObject->transform.scale.x, selectedObject->transform.scale.y, selectedObject->transform.scale.z }; - if (ImGui::InputFloat3("Escala", scale)) { - selectedObject->transform.scale = { scale[0], scale[1], scale[2] }; - } + // Mostrar y modificar la posición + float position[3] = { selectedObject->transform.position.x, selectedObject->transform.position.y, selectedObject->transform.position.z }; + if (ImGui::InputFloat3("Posición", position)) { + selectedObject->transform.position = { position[0], position[1], position[2] }; + } - // Mostrar el Texture ID (si existe) - if (selectedObject->getTexture()) { - GLuint textureID = selectedObject->getTexture()->getTextureID(); - ImGui::Text("Texture ID: %u", textureID); - } - else { - ImGui::Text("Texture ID: None"); - } + // Mostrar y modificar la rotación + float rotation[3] = { selectedObject->transform.rotation.x, selectedObject->transform.rotation.y, selectedObject->transform.rotation.z }; + if (ImGui::InputFloat3("Rotación", rotation)) { + selectedObject->transform.rotation = { rotation[0], rotation[1], rotation[2] }; + } - // Mostrar la información de la malla - if (selectedObject->getMesh()) { - const std::vector& vertices = selectedObject->getMesh()->getVertices(); - const std::vector& uvs = selectedObject->getMesh()->getUVs(); - const std::vector& indices = selectedObject->getMesh()->getIndices(); - - ImGui::Text("Información de la Malla:"); - ImGui::Text("Vertices: %zu", vertices.size()); - ImGui::Text("UVs: %zu", uvs.size()); - ImGui::Text("Indices: %zu", indices.size()); - - // Mostrar una vista previa opcional - ImGui::Separator(); - ImGui::Text("Vista previa de vértices:"); - for (size_t i = 0; i < std::min(vertices.size(), 9); i += 3) { - ImGui::Text("(%f, %f, %f)", vertices[i], vertices[i + 1], vertices[i + 2]); + // Mostrar y modificar la escala + float scale[3] = { selectedObject->transform.scale.x, selectedObject->transform.scale.y, selectedObject->transform.scale.z }; + if (ImGui::InputFloat3("Escala", scale)) { + selectedObject->transform.scale = { scale[0], scale[1], scale[2] }; } - ImGui::Text("Vista previa de UVs:"); - for (size_t i = 0; i < std::min(uvs.size(), 6); i += 2) { - ImGui::Text("(%f, %f)", uvs[i], uvs[i + 1]); + // Mostrar el Texture ID (si existe) + if (selectedObject->getTexture()) { + GLuint textureID = selectedObject->getTexture()->getTextureID(); + ImGui::Text("Texture ID: %u", textureID); } + else { + ImGui::Text("Texture ID: None"); + } + + // Mostrar la información de la malla + if (selectedObject->getMesh()) { + const std::vector& vertices = selectedObject->getMesh()->getVertices(); + const std::vector& uvs = selectedObject->getMesh()->getUVs(); + const std::vector& indices = selectedObject->getMesh()->getIndices(); + + ImGui::Text("Información de la Malla:"); + ImGui::Text("Vertices: %zu", vertices.size()); + ImGui::Text("UVs: %zu", uvs.size()); + ImGui::Text("Indices: %zu", indices.size()); + + // Mostrar una vista previa opcional + ImGui::Separator(); + ImGui::Text("Vista previa de vértices:"); + for (size_t i = 0; i < std::min(vertices.size(), 9); i += 3) { + ImGui::Text("(%f, %f, %f)", vertices[i], vertices[i + 1], vertices[i + 2]); + } - ImGui::Text("Vista previa de índices:"); - for (size_t i = 0; i < std::min(indices.size(), 9); i += 3) { - ImGui::Text("(%u, %u, %u)", indices[i], indices[i + 1], indices[i + 2]); + ImGui::Text("Vista previa de UVs:"); + for (size_t i = 0; i < std::min(uvs.size(), 6); i += 2) { + ImGui::Text("(%f, %f)", uvs[i], uvs[i + 1]); + } + + ImGui::Text("Vista previa de índices:"); + for (size_t i = 0; i < std::min(indices.size(), 9); i += 3) { + ImGui::Text("(%u, %u, %u)", indices[i], indices[i + 1], indices[i + 2]); + } + } + else { + ImGui::Text("Malla: Ninguna"); } } else { - ImGui::Text("Malla: Ninguna"); + ImGui::Text("Seleccione un GameObject de la jerarquía para ver sus propiedades."); } - } - else { - ImGui::Text("Seleccione un GameObject de la jerarquía para ver sus propiedades."); - } - ImGui::End(); + ImGui::End(); + } + // Popup "About" if (ImGui::BeginPopup("AboutPopup")) { diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.h b/sdl2_simple_example/sdl2_simple_example/MyWindow.h index 5fddcfe..24d8dd2 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.h +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.h @@ -26,6 +26,10 @@ class MyWindow { float cameraAngleX = 0.0f; // Ángulo de rotación en el eje X float cameraAngleY = 0.0f; // Ángulo de rotación en el eje Y float panX = 0.0f, panY = 0.0f; // Desplazamiento de la cámara (pan) + bool isConsolaOn = true; + bool isConfigOn = true; + bool isJerarquiaOn = true; + bool isInspectorOn = true; SDL_Window* windowPtr() const { return _window; } void* contextPtr() const { return _ctx; } diff --git a/sdl2_simple_example/sdl2_simple_example/Renderer.cpp b/sdl2_simple_example/sdl2_simple_example/Renderer.cpp index 2c6cec8..a6628a1 100644 --- a/sdl2_simple_example/sdl2_simple_example/Renderer.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Renderer.cpp @@ -11,7 +11,7 @@ void Renderer::initOpenGL(ivec2 WINDOW_SIZE) { if (!GLEW_VERSION_3_0) throw std::exception("OpenGL 3.0 API is not available."); glEnable(GL_DEPTH_TEST); - glClearColor(0.5, 0.5, 0.5, 1.0); + glClearColor(0, 0, 0, 1.0); // Store the window size Renderer::_WINDOW_SIZE = WINDOW_SIZE; diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index 62cb4e8..5a7b17d 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -3,7 +3,7 @@ Pos=60,60 Size=400,400 [Window][Consola] -Pos=521,426 +Pos=518,267 Size=458,236 [Window][Configuració] @@ -11,11 +11,11 @@ Pos=37,333 Size=325,273 [Window][Jerarquia] -Pos=82,341 -Size=320,199 +Pos=-2,18 +Size=320,217 [Window][Inspector] -Pos=523,344 +Pos=534,68 Size=254,184 [Window][Console] @@ -23,8 +23,8 @@ Pos=28,107 Size=488,472 [Window][Config] -Pos=93,341 -Size=325,273 +Pos=-1,237 +Size=319,385 [Window][Hierarchy] Pos=176,287 From b92d53e768af62dbbeb66112957b5b9a72586987 Mon Sep 17 00:00:00 2001 From: miguelturmo <125253347+miguelturmo@users.noreply.github.com> Date: Wed, 6 Nov 2024 10:52:13 +0100 Subject: [PATCH 14/48] camera shift speed --- .../sdl2_simple_example/MyWindow.cpp | 65 +++++++++++++------ .../sdl2_simple_example/MyWindow.h | 1 + 2 files changed, 46 insertions(+), 20 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index 4cdde44..6e1943d 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -294,27 +294,52 @@ bool MyWindow::processEvents(IEventProcessor* event_processor) { } break; case SDL_KEYDOWN: - if(e.key.keysym.sym == SDLK_w) { - if (SDL_KEYDOWN) { - panY += 0.1f; - + if (e.key.keysym.sym == SDLK_w) { + if (e.key.keysym.mod & KMOD_SHIFT) + { + panY += camSpeed * 2; } - } - if (e.key.keysym.sym == SDLK_s) { - if (SDL_KEYDOWN) { - panY -= 0.1f; - } - } - if (e.key.keysym.sym == SDLK_a) { - if (SDL_KEYDOWN) { - panX-= 0.1f; - } - } - if (e.key.keysym.sym == SDLK_d) { - if (SDL_KEYDOWN) { - panX += 0.1f; - } - } + else + { + panY += camSpeed; + } + + + } + if (e.key.keysym.sym == SDLK_s) { + if (e.key.keysym.mod & KMOD_SHIFT) + { + panY -= camSpeed * 2; + } + else + { + panY -= camSpeed; + } + + + } + if (e.key.keysym.sym == SDLK_a) { + if (e.key.keysym.mod & KMOD_SHIFT) + { + panX -= camSpeed * 2; + } + else + { + panX -= camSpeed; + } + } + if (e.key.keysym.sym == SDLK_d) { + if (e.key.keysym.mod & KMOD_SHIFT) + { + panX += camSpeed * 2; + } + else + { + panX += camSpeed; + } + + + } break; case SDL_MOUSEWHEEL: diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.h b/sdl2_simple_example/sdl2_simple_example/MyWindow.h index 24d8dd2..dcddcce 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.h +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.h @@ -30,6 +30,7 @@ class MyWindow { bool isConfigOn = true; bool isJerarquiaOn = true; bool isInspectorOn = true; + float camSpeed = 0.1; SDL_Window* windowPtr() const { return _window; } void* contextPtr() const { return _ctx; } From c32b28243f2e017a340df323836defef4ce4adca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=ADdac=20P=C3=A9rez=20M=C3=A1rquez?= <125640145+didacpema@users.noreply.github.com> Date: Wed, 6 Nov 2024 11:46:23 +0100 Subject: [PATCH 15/48] Grid --- .../sdl2_simple_example/Renderer.cpp | 31 +++++++++++++++++-- .../sdl2_simple_example/Renderer.h | 1 + .../sdl2_simple_example/Scene.cpp | 1 - .../sdl2_simple_example/main.cpp | 9 ++++-- 4 files changed, 37 insertions(+), 5 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/Renderer.cpp b/sdl2_simple_example/sdl2_simple_example/Renderer.cpp index a6628a1..9789be4 100644 --- a/sdl2_simple_example/sdl2_simple_example/Renderer.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Renderer.cpp @@ -11,21 +11,47 @@ void Renderer::initOpenGL(ivec2 WINDOW_SIZE) { if (!GLEW_VERSION_3_0) throw std::exception("OpenGL 3.0 API is not available."); glEnable(GL_DEPTH_TEST); - glClearColor(0, 0, 0, 1.0); + + glDepthFunc(GL_LEQUAL); // Set depth function to less or equal + glClearDepth(1.0f); // Clear depth buffer with maximum depth value + + glClearColor(0.0f, 0.0f, 0.0f, 1.0f); // Store the window size Renderer::_WINDOW_SIZE = WINDOW_SIZE; } +void Renderer::drawGrid(float spacing) { + glDisable(GL_TEXTURE_2D); + float gridRange = 1000.0f; + + glColor3f(0.75f, 0.4f, 0.8f); // Bright white for grid lines + glBegin(GL_LINES); + + for (float i = -gridRange; i <= gridRange; i += spacing) { + glVertex3f(i, 0, -gridRange); + glVertex3f(i, 0, gridRange); + } + + for (float i = -gridRange; i <= gridRange; i += spacing) { + glVertex3f(-gridRange, 0, i); + glVertex3f(gridRange, 0, i); + } + + glEnd(); +} + void Renderer::setupProjection(float fov, float aspectRatio, float nearPlane, float farPlane) { glMatrixMode(GL_PROJECTION); glLoadIdentity(); + float windowAspectRatio = static_cast(Renderer::_WINDOW_SIZE.x) / Renderer::_WINDOW_SIZE.y; // Use the stored window size for the aspect ratio gluPerspective(fov, static_cast(Renderer::_WINDOW_SIZE.x) / Renderer::_WINDOW_SIZE.y, nearPlane, farPlane); } void Renderer::setupView(float cameraDistance, float cameraAngleX, float cameraAngleY, float panX, float panY) { + glClearDepth(1.0); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); @@ -34,4 +60,5 @@ void Renderer::setupView(float cameraDistance, float cameraAngleX, float cameraA float eyeZ = cameraDistance * cos(cameraAngleY) * cos(cameraAngleX); gluLookAt(eyeX, eyeY, eyeZ, panX, panY, 0.0, 0.0, 1.0, 0.0); -} \ No newline at end of file +} + diff --git a/sdl2_simple_example/sdl2_simple_example/Renderer.h b/sdl2_simple_example/sdl2_simple_example/Renderer.h index 6d4b4d3..78c10e3 100644 --- a/sdl2_simple_example/sdl2_simple_example/Renderer.h +++ b/sdl2_simple_example/sdl2_simple_example/Renderer.h @@ -11,6 +11,7 @@ class Renderer { static void initOpenGL(ivec2 WINDOW_SIZE); static void setupProjection(float fov, float aspectRatio, float nearPlane, float farPlane); static void setupView(float cameraDistance, float cameraAngleX, float cameraAngleY, float panX, float panY); + static void drawGrid(float spacing); private: static ivec2 _WINDOW_SIZE; diff --git a/sdl2_simple_example/sdl2_simple_example/Scene.cpp b/sdl2_simple_example/sdl2_simple_example/Scene.cpp index 19a0f0e..e0dc8c4 100644 --- a/sdl2_simple_example/sdl2_simple_example/Scene.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Scene.cpp @@ -37,7 +37,6 @@ void Scene::setCheckerTexture(GLuint checkerTextureID) { } void Scene::drawScene() { - glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); for (const auto& obj : gameObjects) { glPushMatrix(); // Guardar la matriz actual diff --git a/sdl2_simple_example/sdl2_simple_example/main.cpp b/sdl2_simple_example/sdl2_simple_example/main.cpp index c60b3bd..68747c2 100644 --- a/sdl2_simple_example/sdl2_simple_example/main.cpp +++ b/sdl2_simple_example/sdl2_simple_example/main.cpp @@ -77,7 +77,7 @@ int main(int argc, char** argv) { myWindow.logMessage("Initializing OpenGL context..."); Renderer::initOpenGL(WINDOW_SIZE); - Renderer::setupProjection(45.0f, 1.0f, 0.1f, 100.0f); + Renderer::setupProjection(45.0f, 1.0f, 0.1f, 1000.0f); myWindow.logMessage("OpenGL context initialized."); SDL_EventState(SDL_DROPFILE, SDL_ENABLE); @@ -85,8 +85,13 @@ int main(int argc, char** argv) { while (myWindow.processEvents() && myWindow.isOpen()) { auto start = hrclock::now(); + glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); // Clear color and depth buffers + Renderer::setupView(myWindow.cameraDistance, myWindow.cameraAngleX, myWindow.cameraAngleY, myWindow.panX, myWindow.panY); - scene.drawScene(); + + Renderer::drawGrid(10.0f); // Draw grid first + + scene.drawScene(); // Draw objects in the scene myWindow.draw(); myWindow.swapBuffers(); From 1af2e80b39e61a9dc7efd426968192e4fc413d4a Mon Sep 17 00:00:00 2001 From: miguelturmo <125253347+miguelturmo@users.noreply.github.com> Date: Wed, 6 Nov 2024 11:48:23 +0100 Subject: [PATCH 16/48] fps mostrados --- .../sdl2_simple_example/MyWindow.cpp | 21 ++++++++++++++++--- .../sdl2_simple_example/MyWindow.h | 7 ++++++- 2 files changed, 24 insertions(+), 4 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index 6e1943d..5fc4147 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -13,7 +13,7 @@ using namespace std; extern Scene scene; -MyWindow::MyWindow(const char* title, unsigned short width, unsigned short height) { +MyWindow::MyWindow(const char* title, unsigned short width, unsigned short height) : fps(0.0f), frameCount(0), lastTime(SDL_GetTicks()) { SDL_Init(SDL_INIT_VIDEO); // Mueve esta línea al principio del constructor open(title, width, height); @@ -69,6 +69,16 @@ void MyWindow::close() { } void MyWindow::draw() { + + Uint32 currentTime = SDL_GetTicks(); + frameCount++; + + // Calcular FPS cada segundo + if (currentTime - lastTime >= 1000) { + fps = frameCount / ((currentTime - lastTime) / 1000.0f); + frameCount = 0; + lastTime = currentTime; + } ImGui_ImplOpenGL3_NewFrame(); ImGui_ImplSDL2_NewFrame(); ImGui::NewFrame(); @@ -136,9 +146,11 @@ void MyWindow::draw() { ImGui::Text("Gràfic FPS (Placeholder)"); static float values[90] = {}; static int values_offset = 0; - values[values_offset] = 60.0f; // Ejemplo fijo de FPS + values[values_offset] = fps; // Ejemplo fijo de FPS values_offset = (values_offset + 1) % 90; - ImGui::PlotLines("FPS", values, IM_ARRAYSIZE(values), values_offset, "FPS", 0.0f, 100.0f, ImVec2(0, 80)); + char fpsText[16]; + sprintf_s(fpsText, "%d fps", static_cast(fps)); + ImGui::PlotLines("FPS", values, IM_ARRAYSIZE(values), values_offset, fpsText, 0.0f, 100.0f, ImVec2(0, 80)); // Opciones de configuración de módulos (placeholder) ImGui::Text("Configuració de cada mòdul:"); @@ -252,6 +264,9 @@ void MyWindow::draw() { ImGui::Render(); ImGui_ImplOpenGL3_RenderDrawData(ImGui::GetDrawData()); + + + } void MyWindow::swapBuffers() const { diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.h b/sdl2_simple_example/sdl2_simple_example/MyWindow.h index dcddcce..d6a97a3 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.h +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.h @@ -2,6 +2,8 @@ #include #include + + #include #include @@ -31,7 +33,10 @@ class MyWindow { bool isJerarquiaOn = true; bool isInspectorOn = true; float camSpeed = 0.1; - + //FPS + float fps = 0.0f; + int frameCount = 0; + Uint32 lastTime = 0; SDL_Window* windowPtr() const { return _window; } void* contextPtr() const { return _ctx; } From 30cc209178e4459fe9c82296dd7edc3c199e148c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=ADdac=20P=C3=A9rez=20M=C3=A1rquez?= <125640145+didacpema@users.noreply.github.com> Date: Wed, 6 Nov 2024 12:08:29 +0100 Subject: [PATCH 17/48] Grid fix --- .../sdl2_simple_example/GameObject.cpp | 25 ++++++++++++++----- .../sdl2_simple_example/Importer.cpp | 10 ++++---- .../sdl2_simple_example/Renderer.cpp | 4 +-- 3 files changed, 26 insertions(+), 13 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/GameObject.cpp b/sdl2_simple_example/sdl2_simple_example/GameObject.cpp index a51bb32..754e0f4 100644 --- a/sdl2_simple_example/sdl2_simple_example/GameObject.cpp +++ b/sdl2_simple_example/sdl2_simple_example/GameObject.cpp @@ -20,18 +20,31 @@ void GameObject::setTransform(const Transform& newTransform) { } void GameObject::draw() const { - glPushMatrix(); // Guardar la matriz actual + glPushMatrix(); // Save the current matrix - // Aplicar transformaciones en modo fijo + // Apply transformations based on the GameObject's transform glTranslatef(transform.position.x, transform.position.y, transform.position.z); glRotatef(transform.rotation.x, 1.0f, 0.0f, 0.0f); glRotatef(transform.rotation.y, 0.0f, 1.0f, 0.0f); glRotatef(transform.rotation.z, 0.0f, 0.0f, 1.0f); glScalef(transform.scale.x, transform.scale.y, transform.scale.z); - if (texture) texture->bind(); // Vincular la textura si está disponible - if (mesh) mesh->render(); // Renderizar la malla - if (texture) texture->unbind(); + // Enable textures if there is a texture bound + if (texture) { + glEnable(GL_TEXTURE_2D); + texture->bind(); // Bind the object's texture + } + else { + glDisable(GL_TEXTURE_2D); // Disable if no texture + } - glPopMatrix(); // Restaurar la matriz anterior + if (mesh) mesh->render(); // Render the mesh + + // Unbind and disable texture after rendering to prevent interference with other objects + if (texture) { + texture->unbind(); + glDisable(GL_TEXTURE_2D); + } + + glPopMatrix(); // Restore the previous matrix } \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Importer.cpp b/sdl2_simple_example/sdl2_simple_example/Importer.cpp index 9123faa..1348c1e 100644 --- a/sdl2_simple_example/sdl2_simple_example/Importer.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Importer.cpp @@ -152,21 +152,21 @@ GLuint Importer::loadTexture(const std::string& texturePath) { if (!ilLoadImage((const wchar_t*)texturePath.c_str())) { ilDeleteImages(1, &imageID); std::cerr << "Failed to load texture from: " << texturePath << std::endl; - return 0; + return 0; // Return 0 if loading fails } - ilConvertImage(IL_RGBA, IL_UNSIGNED_BYTE); + ilConvertImage(IL_RGBA, IL_UNSIGNED_BYTE); // Ensure RGBA format for OpenGL glGenTextures(1, &textureID); glBindTexture(GL_TEXTURE_2D, textureID); + + // Specify texture parameters glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, ilGetInteger(IL_IMAGE_WIDTH), ilGetInteger(IL_IMAGE_HEIGHT), 0, GL_RGBA, GL_UNSIGNED_BYTE, ilGetData()); 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_MAG_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); - ilDeleteImages(1, &imageID); - - std::cerr << "Texture loaded" << std::endl; + ilDeleteImages(1, &imageID); // Clean up DevIL image return textureID; } diff --git a/sdl2_simple_example/sdl2_simple_example/Renderer.cpp b/sdl2_simple_example/sdl2_simple_example/Renderer.cpp index 9789be4..27cfea4 100644 --- a/sdl2_simple_example/sdl2_simple_example/Renderer.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Renderer.cpp @@ -22,10 +22,10 @@ void Renderer::initOpenGL(ivec2 WINDOW_SIZE) { } void Renderer::drawGrid(float spacing) { - glDisable(GL_TEXTURE_2D); + glDisable(GL_TEXTURE_2D); // Disable texture for the grid lines float gridRange = 1000.0f; - glColor3f(0.75f, 0.4f, 0.8f); // Bright white for grid lines + glColor3f(1.0f, 1.0f, 1.0f); // Set grid color glBegin(GL_LINES); for (float i = -gridRange; i <= gridRange; i += spacing) { From 531951ad8c0e54548b4fc3c49496ce68f1909a73 Mon Sep 17 00:00:00 2001 From: Adri1714 Date: Wed, 6 Nov 2024 12:10:17 +0100 Subject: [PATCH 18/48] Dockers(ventanas adaptativas) MyWindow.cpp linea 131 creo, hay un comentario "COMENTA ESTA LINEA PARA SER FELIZ", para que puedas renderizar los FBX --- .../sdl2_simple_example/MyWindow.cpp | 21 +++++- .../sdl2_simple_example/Renderer.cpp | 2 +- .../sdl2_simple_example/imgui.ini | 74 +++++++++++++++++-- vcpkg.json | 2 +- 4 files changed, 88 insertions(+), 11 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index 4cdde44..0ccd445 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -8,16 +8,25 @@ #include "imgui.h" #include "imgui_impl_sdl2.h" #include "imgui_impl_opengl3.h" +#include "experimental/deque" #include #include using namespace std; extern Scene scene; +ImGuiIO* g_io = nullptr; + MyWindow::MyWindow(const char* title, unsigned short width, unsigned short height) { SDL_Init(SDL_INIT_VIDEO); // Mueve esta línea al principio del constructor open(title, width, height); ImGui::CreateContext(); + + g_io = &ImGui::GetIO(); + g_io->ConfigFlags |= ImGuiConfigFlags_NavEnableKeyboard; // Enable keyboard + g_io->ConfigFlags |= ImGuiConfigFlags_DockingEnable; // Enable docking + g_io->ConfigFlags |= ImGuiConfigFlags_ViewportsEnable; // Enable multiple viewports + ImGui_ImplSDL2_InitForOpenGL(_window, _ctx); ImGui_ImplOpenGL3_Init("#version 130"); @@ -119,6 +128,8 @@ void MyWindow::draw() { ImGui::EndMainMenuBar(); } + //COMENTA ESTA LINEA PARA SER FELIZ + ImGui::DockSpaceOverViewport(ImGui::GetMainViewport()->ID); if (isConsolaOn) { @@ -249,9 +260,17 @@ void MyWindow::draw() { ImGui::Text("Desenvolupat amb SDL, OpenGL, ImGui, Assimp, DevIL"); ImGui::EndPopup(); } + ImGui::Render(); ImGui_ImplOpenGL3_RenderDrawData(ImGui::GetDrawData()); + + if (g_io->ConfigFlags & ImGuiConfigFlags_ViewportsEnable) { + ImGui::UpdatePlatformWindows(); + ImGui::RenderPlatformWindowsDefault(); + SDL_GL_MakeCurrent(_window, _ctx); + } + } void MyWindow::swapBuffers() const { @@ -300,7 +319,7 @@ bool MyWindow::processEvents(IEventProcessor* event_processor) { } } - if (e.key.keysym.sym == SDLK_s) { + if (e.key.keysym.sym == SDLK_s) { if (SDL_KEYDOWN) { panY -= 0.1f; } diff --git a/sdl2_simple_example/sdl2_simple_example/Renderer.cpp b/sdl2_simple_example/sdl2_simple_example/Renderer.cpp index a6628a1..153c2ef 100644 --- a/sdl2_simple_example/sdl2_simple_example/Renderer.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Renderer.cpp @@ -11,7 +11,7 @@ void Renderer::initOpenGL(ivec2 WINDOW_SIZE) { if (!GLEW_VERSION_3_0) throw std::exception("OpenGL 3.0 API is not available."); glEnable(GL_DEPTH_TEST); - glClearColor(0, 0, 0, 1.0); + glClearColor(0, 0, 0, 1.0f); // Store the window size Renderer::_WINDOW_SIZE = WINDOW_SIZE; diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index 5a7b17d..e60a006 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -1,32 +1,90 @@ [Window][Debug##Default] Pos=60,60 Size=400,400 +Collapsed=0 [Window][Consola] -Pos=518,267 -Size=458,236 +Pos=0,509 +Size=631,91 +Collapsed=0 +DockId=0x0000000C,0 [Window][Configuració] Pos=37,333 Size=325,273 +Collapsed=0 [Window][Jerarquia] -Pos=-2,18 -Size=320,217 +Pos=0,265 +Size=186,242 +Collapsed=0 +DockId=0x00000007,0 [Window][Inspector] -Pos=534,68 -Size=254,184 +Pos=633,19 +Size=167,581 +Collapsed=0 +DockId=0x0000000A,0 [Window][Console] Pos=28,107 Size=488,472 +Collapsed=0 [Window][Config] -Pos=-1,237 -Size=319,385 +Pos=0,19 +Size=186,244 +Collapsed=0 +DockId=0x00000006,0 [Window][Hierarchy] Pos=176,287 Size=283,65 +Collapsed=0 + +[Window][WindowOverViewport_11111111] +Pos=0,19 +Size=800,581 +Collapsed=0 + +[Window][Dockable Window 1] +Pos=602,19 +Size=198,581 +Collapsed=0 +DockId=0x00000004,0 + +[Window][Dockable Window 2] +Pos=0,19 +Size=397,581 +Collapsed=0 +DockId=0x00000001,0 + +[Window][Editor Docking Window] +Pos=60,60 +Size=32,39 +Collapsed=0 + +[Window][DockSpace] +Size=800,600 +Collapsed=0 + +[Window][Scene View] +Pos=60,60 +Size=32,35 +Collapsed=0 + +[Docking][Data] +DockSpace ID=0x11111111 Window=0xA87D555D Pos=440,244 Size=800,581 Split=X + DockNode ID=0x00000009 Parent=0x11111111 SizeRef=631,581 Split=Y + DockNode ID=0x0000000B Parent=0x00000009 SizeRef=800,488 Split=X + DockNode ID=0x00000005 Parent=0x0000000B SizeRef=186,581 Split=Y Selected=0x94B17C7D + DockNode ID=0x00000006 Parent=0x00000005 SizeRef=186,291 Selected=0x94B17C7D + DockNode ID=0x00000007 Parent=0x00000005 SizeRef=186,288 Selected=0x83E87391 + DockNode ID=0x00000008 Parent=0x0000000B SizeRef=443,581 Split=X + DockNode ID=0x00000003 Parent=0x00000008 SizeRef=600,581 Split=X + DockNode ID=0x00000001 Parent=0x00000003 SizeRef=397,581 Selected=0x29384C3A + DockNode ID=0x00000002 Parent=0x00000003 SizeRef=401,581 CentralNode=1 Selected=0x83E87391 + DockNode ID=0x00000004 Parent=0x00000008 SizeRef=198,581 Selected=0x6E9836EA + DockNode ID=0x0000000C Parent=0x00000009 SizeRef=800,91 Selected=0xBCA7282E + DockNode ID=0x0000000A Parent=0x11111111 SizeRef=167,581 Selected=0xE7039252 diff --git a/vcpkg.json b/vcpkg.json index f7d202b..61feba4 100644 --- a/vcpkg.json +++ b/vcpkg.json @@ -1,4 +1,4 @@ { "$schema": "https://raw.githubusercontent.com/microsoft/vcpkg-tool/main/docs/vcpkg.schema.json", - "dependencies": ["glm", "glew", "sdl2","assimp","devil", {"name": "imgui", "features": [ "sdl2-binding", "opengl3-binding"]}] + "dependencies": ["glm", "glew", "sdl2","assimp","devil", {"name": "imgui", "features": [ "sdl2-binding", "opengl3-binding", "docking-experimental"]}] } \ No newline at end of file From 893a1a8e9a10b0bbaf25e133308907fddd5d6024 Mon Sep 17 00:00:00 2001 From: miguelturmo <125253347+miguelturmo@users.noreply.github.com> Date: Wed, 6 Nov 2024 12:15:39 +0100 Subject: [PATCH 19/48] memory info --- .../sdl2_simple_example/MemoryUsage.h | 25 ++++++++++++++++ .../sdl2_simple_example/MyWindow.cpp | 29 +++++++++++++++++-- .../sdl2_simple_example.vcxproj | 1 + .../sdl2_simple_example.vcxproj.filters | 3 ++ 4 files changed, 56 insertions(+), 2 deletions(-) create mode 100644 sdl2_simple_example/sdl2_simple_example/MemoryUsage.h diff --git a/sdl2_simple_example/sdl2_simple_example/MemoryUsage.h b/sdl2_simple_example/sdl2_simple_example/MemoryUsage.h new file mode 100644 index 0000000..399719d --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/MemoryUsage.h @@ -0,0 +1,25 @@ +#pragma once +#include +#include + +struct MemoryInfo { + unsigned long long totalMemory; + unsigned long long freeMemory; + unsigned long long usedMemory; +}; + +class MemoryUsage { +public: + static MemoryInfo getMemoryInfo() { + MEMORYSTATUSEX memInfo; + memInfo.dwLength = sizeof(MEMORYSTATUSEX); + + if (GlobalMemoryStatusEx(&memInfo)) { + MemoryInfo info; + info.totalMemory = memInfo.ullTotalPhys / (1024 * 1024); // Convertir a MB + info.freeMemory = memInfo.ullAvailPhys / (1024 * 1024); // Convertir a MB + info.usedMemory = info.totalMemory - info.freeMemory; // Calcular memoria usada + return info; + } + } +}; \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index 5fc4147..484efcf 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -8,6 +8,7 @@ #include "imgui.h" #include "imgui_impl_sdl2.h" #include "imgui_impl_opengl3.h" +#include "MemoryUsage.h" #include #include @@ -142,7 +143,7 @@ void MyWindow::draw() { { ImGui::Begin("Config"); ImGui::Text("Configuració general del sistema"); - // Placeholder para gráfico de FPS + //gráfico de FPS ImGui::Text("Gràfic FPS (Placeholder)"); static float values[90] = {}; static int values_offset = 0; @@ -156,8 +157,32 @@ void MyWindow::draw() { ImGui::Text("Configuració de cada mòdul:"); ImGui::Text(" - Renderitzador\n - Finestra\n - Entrada\n - Textures"); - // Placeholder para consumo de memoria y detección de hardware + //consumo de memoria y detección de hardware ImGui::Text("Consum de Memòria: "); + try { + MemoryInfo memInfo = MemoryUsage::getMemoryInfo(); + ImGui::Separator(); + ImGui::Text("Consumo de Memoria:"); + ImGui::Text("Memoria Total: %llu MB", memInfo.totalMemory); + ImGui::Text("Memoria Libre: %llu MB", memInfo.freeMemory); + ImGui::Text("Memoria Usada: %llu MB", memInfo.usedMemory); + static float totalMemoryValues[90]; + static float freeMemoryValues[90]; + static float usedMemoryValues[90]; + static int memValuesOffset = 0; + + totalMemoryValues[memValuesOffset] = memInfo.totalMemory; + freeMemoryValues[memValuesOffset] = memInfo.freeMemory; + usedMemoryValues[memValuesOffset] = memInfo.usedMemory; + memValuesOffset = (values_offset + 1) % 90; + + ImGui::PlotLines("TotalMem", totalMemoryValues, IM_ARRAYSIZE(totalMemoryValues), memValuesOffset, "TotalMem", 0.0f, 100.0f, ImVec2(0, 80)); + ImGui::PlotLines("freeMem", freeMemoryValues, IM_ARRAYSIZE(freeMemoryValues), memValuesOffset, "FreeMem", 0.0f, 100.0f, ImVec2(0, 80)); + ImGui::PlotLines("UsedMem", usedMemoryValues, IM_ARRAYSIZE(usedMemoryValues), memValuesOffset, "UsedMem", 0.0f, 100.0f, ImVec2(0, 80)); + } + catch (const std::exception& e) { + ImGui::Text("Error obteniendo memoria: %s", e.what()); + } ImGui::Text("Detecció de maquinari i versions de programari:"); ImGui::Text("SDL, OpenGL, DevIL"); ImGui::End(); diff --git a/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj b/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj index e373fa8..bc03109 100644 --- a/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj +++ b/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj @@ -142,6 +142,7 @@ + diff --git a/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj.filters b/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj.filters index d18f2b6..799f651 100644 --- a/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj.filters +++ b/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj.filters @@ -71,5 +71,8 @@ Header Files + + Header Files + \ No newline at end of file From fcb32d8fb54444ef9875d99585fe01cc48bf80c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=ADdac=20P=C3=A9rez=20M=C3=A1rquez?= <125640145+didacpema@users.noreply.github.com> Date: Wed, 6 Nov 2024 12:54:03 +0100 Subject: [PATCH 20/48] CheckerTexture Fix --- .../sdl2_simple_example/Importer.cpp | 2 ++ .../sdl2_simple_example/MyWindow.cpp | 2 +- .../sdl2_simple_example/imgui.ini | 28 ++++++------------- .../sdl2_simple_example/main.cpp | 13 +++------ 4 files changed, 15 insertions(+), 30 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/Importer.cpp b/sdl2_simple_example/sdl2_simple_example/Importer.cpp index 1348c1e..a35322a 100644 --- a/sdl2_simple_example/sdl2_simple_example/Importer.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Importer.cpp @@ -133,6 +133,7 @@ bool Importer::loadFBX(const std::string& filePath) { } } + /* if (scene->mNumMaterials == 0) { textureID = createCheckerTexture(); _window->logMessage("No texture found in model. Checker texture applied."); @@ -140,6 +141,7 @@ bool Importer::loadFBX(const std::string& filePath) { else { _window->logMessage("Texture detected and applied."); } + */ return true; } diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index 0913658..b3de594 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -140,7 +140,7 @@ void MyWindow::draw() { ImGui::EndMainMenuBar(); } //COMENTA ESTA LINEA PARA SER FELIZ - ImGui::DockSpaceOverViewport(ImGui::GetMainViewport()->ID); + //ImGui::DockSpaceOverViewport(ImGui::GetMainViewport()->ID); if (isConsolaOn) { diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index e60a006..c3dafeb 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -7,7 +7,6 @@ Collapsed=0 Pos=0,509 Size=631,91 Collapsed=0 -DockId=0x0000000C,0 [Window][Configuració] Pos=37,333 @@ -15,16 +14,14 @@ Size=325,273 Collapsed=0 [Window][Jerarquia] -Pos=0,265 -Size=186,242 +Pos=0,394 +Size=186,113 Collapsed=0 -DockId=0x00000007,0 [Window][Inspector] Pos=633,19 Size=167,581 Collapsed=0 -DockId=0x0000000A,0 [Window][Console] Pos=28,107 @@ -33,9 +30,8 @@ Collapsed=0 [Window][Config] Pos=0,19 -Size=186,244 +Size=206,546 Collapsed=0 -DockId=0x00000006,0 [Window][Hierarchy] Pos=176,287 @@ -74,17 +70,9 @@ Size=32,35 Collapsed=0 [Docking][Data] -DockSpace ID=0x11111111 Window=0xA87D555D Pos=440,244 Size=800,581 Split=X - DockNode ID=0x00000009 Parent=0x11111111 SizeRef=631,581 Split=Y - DockNode ID=0x0000000B Parent=0x00000009 SizeRef=800,488 Split=X - DockNode ID=0x00000005 Parent=0x0000000B SizeRef=186,581 Split=Y Selected=0x94B17C7D - DockNode ID=0x00000006 Parent=0x00000005 SizeRef=186,291 Selected=0x94B17C7D - DockNode ID=0x00000007 Parent=0x00000005 SizeRef=186,288 Selected=0x83E87391 - DockNode ID=0x00000008 Parent=0x0000000B SizeRef=443,581 Split=X - DockNode ID=0x00000003 Parent=0x00000008 SizeRef=600,581 Split=X - DockNode ID=0x00000001 Parent=0x00000003 SizeRef=397,581 Selected=0x29384C3A - DockNode ID=0x00000002 Parent=0x00000003 SizeRef=401,581 CentralNode=1 Selected=0x83E87391 - DockNode ID=0x00000004 Parent=0x00000008 SizeRef=198,581 Selected=0x6E9836EA - DockNode ID=0x0000000C Parent=0x00000009 SizeRef=800,91 Selected=0xBCA7282E - DockNode ID=0x0000000A Parent=0x11111111 SizeRef=167,581 Selected=0xE7039252 +DockSpace ID=0x11111111 Pos=368,151 Size=800,581 Split=X + DockNode ID=0x00000003 Parent=0x11111111 SizeRef=600,581 Split=X + DockNode ID=0x00000001 Parent=0x00000003 SizeRef=397,581 Selected=0x29384C3A + DockNode ID=0x00000002 Parent=0x00000003 SizeRef=401,581 CentralNode=1 Selected=0x83E87391 + DockNode ID=0x00000004 Parent=0x11111111 SizeRef=198,581 Selected=0x6E9836EA diff --git a/sdl2_simple_example/sdl2_simple_example/main.cpp b/sdl2_simple_example/sdl2_simple_example/main.cpp index 68747c2..114765c 100644 --- a/sdl2_simple_example/sdl2_simple_example/main.cpp +++ b/sdl2_simple_example/sdl2_simple_example/main.cpp @@ -35,19 +35,14 @@ void handleFileDrop(const char* filePath) { std::string fileName = FileSystemUtils::getFileName(filePath); std::string path(filePath); std::string extension = path.substr(path.find_last_of('.') + 1); - + if (extension == "fbx") { if (importer.loadFBX(filePath)) { scene.loadModelData(importer.getVertices(), importer.getUVs(), importer.getIndices(), fileName); - // Asigna la textura checker usando el nuevo método - if (importer.getTextureID() == 0) { - GLuint checkerTexture = importer.createCheckerTexture(); - scene.setCheckerTexture(checkerTexture); - } - else { - scene.setTexture(importer.getTextureID()); - } + // Asigna la textura checker independientemente de si el modelo tiene una textura propia + GLuint checkerTexture = importer.createCheckerTexture(); + scene.setCheckerTexture(checkerTexture); } } else if (extension == "png" || extension == "jpg") { From 61d323c3537baf468cf4c4b0090b2be141a74801 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=ADdac=20P=C3=A9rez=20M=C3=A1rquez?= <125640145+didacpema@users.noreply.github.com> Date: Wed, 6 Nov 2024 13:48:07 +0100 Subject: [PATCH 21/48] F para orbitar objeto y JerarquiaFix --- .../sdl2_simple_example/MyWindow.cpp | 86 ++++++++++++------- .../sdl2_simple_example/Renderer.cpp | 11 ++- .../sdl2_simple_example/Renderer.h | 3 + .../sdl2_simple_example/imgui.ini | 5 ++ 4 files changed, 70 insertions(+), 35 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index b3de594..3812197 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -1,3 +1,4 @@ +#include "Renderer.h" #include "Scene.h" #include #include @@ -17,6 +18,10 @@ using namespace std; extern Scene scene; ImGuiIO* g_io = nullptr; +float x = Renderer::eyeX; +float y = Renderer::eyeY; +float z = Renderer::eyeZ; + MyWindow::MyWindow(const char* title, unsigned short width, unsigned short height) : fps(0.0f), frameCount(0), lastTime(SDL_GetTicks()) { SDL_Init(SDL_INIT_VIDEO); // Mueve esta l�nea al principio del constructor open(title, width, height); @@ -205,19 +210,41 @@ void MyWindow::draw() { ImGui::End(); } - if (isJerarquiaOn) - { - // Jerarqu�a (vac�a) - ImGui::Begin("Jerarquia"); - ImGui::Text("Llista de GameObjects:"); + if (isJerarquiaOn) { + // Jerarquía (vacía) + ImGui::Begin("Jerarquía"); + ImGui::Text("Lista de GameObjects:"); + + // Recorre todos los objetos en la jerarquía for (size_t i = 0; i < scene.gameObjectNames.size(); ++i) { + // Verifica si el objeto está seleccionado (si el índice coincide con el seleccionado) bool isSelected = (scene.selectedGameObjectIndex == i); - if (ImGui::Selectable(scene.gameObjectNames[i].c_str(), isSelected)) { - scene.selectedGameObjectIndex = i; // Actualiza el �ndice del objeto seleccionado + + // Dibuja el objeto y permite seleccionarlo + if (ImGui::Selectable((scene.gameObjectNames[i] + "###" + std::to_string(i)).c_str(), isSelected)) { + // Si el objeto seleccionado es diferente al actual, actualiza la selección + if (scene.selectedGameObjectIndex != i) { + // Cambia el índice del objeto seleccionado + scene.selectedGameObjectIndex = i; + + // No cambiamos la cámara aún, solo actualizamos el índice seleccionado + logMessage("Objeto seleccionado."); + } } } ImGui::End(); } + + // Si el usuario pulsa 'F', movemos la cámara al objeto seleccionado + if (ImGui::IsKeyPressed(ImGui::GetKeyIndex(ImGuiKey_F)) && scene.selectedGameObjectIndex != -1){ + GameObject* selectedObject = scene.gameObjects[scene.selectedGameObjectIndex]; + panX = selectedObject->transform.position.x; + panY = selectedObject->transform.position.y; + cameraDistance = glm::distance(glm::vec3(x, y, z), selectedObject->transform.position); // Ajuste de distancia + logMessage("Cámara ajustada al objeto seleccionado."); + } + + if (isInspectorOn) { @@ -332,7 +359,7 @@ bool MyWindow::processEvents(IEventProcessor* event_processor) { if (e.type == SDL_DROPFILE) { char* droppedFile = e.drop.file; logMessage("Archivo arrastrado: " + string(droppedFile)); - handleFileDrop(droppedFile); // Tu funci�n para manejar archivos + handleFileDrop(droppedFile); // Tu función para manejar archivos SDL_free(droppedFile); continue; } @@ -352,58 +379,53 @@ bool MyWindow::processEvents(IEventProcessor* event_processor) { cameraAngleY += e.motion.xrel * 0.005f; cameraAngleX -= e.motion.yrel * 0.005f; } - } break; - case SDL_KEYDOWN: + case SDL_KEYDOWN: + // Movimiento de cámara existente if (e.key.keysym.sym == SDLK_w) { if (e.key.keysym.mod & KMOD_SHIFT) - { panY += camSpeed * 2; - } else - { panY += camSpeed; - } - - } if (e.key.keysym.sym == SDLK_s) { if (e.key.keysym.mod & KMOD_SHIFT) - { panY -= camSpeed * 2; - } else - { panY -= camSpeed; - } - - } if (e.key.keysym.sym == SDLK_a) { if (e.key.keysym.mod & KMOD_SHIFT) - { panX -= camSpeed * 2; - } else - { panX -= camSpeed; - } } if (e.key.keysym.sym == SDLK_d) { if (e.key.keysym.mod & KMOD_SHIFT) - { panX += camSpeed * 2; - } else - { panX += camSpeed; - } + } + + // Nueva funcionalidad para enfocar el objeto seleccionado con tecla 'F' + if (e.key.keysym.sym == SDLK_f) { + // Verifica que haya un objeto seleccionado + if (scene.selectedGameObjectIndex >= 0 && scene.selectedGameObjectIndex < scene.gameObjects.size()) { + GameObject* selectedObject = scene.gameObjects[scene.selectedGameObjectIndex]; + // Cambia el pivote de la cámara a la posición del objeto seleccionado + panX = selectedObject->transform.position.x; + panY = selectedObject->transform.position.y; + cameraDistance = glm::distance(glm::vec3(x, y, z), selectedObject->transform.position); // Ajuste de distancia + logMessage("Cámara centrada en el objeto seleccionado."); + } + else { + logMessage("No hay objeto seleccionado."); + } } - - break; + break; case SDL_MOUSEWHEEL: cameraDistance += e.wheel.y > 0 ? -0.5f : 0.5f; cameraDistance = max(1.0f, cameraDistance); diff --git a/sdl2_simple_example/sdl2_simple_example/Renderer.cpp b/sdl2_simple_example/sdl2_simple_example/Renderer.cpp index 27cfea4..cd1c6fa 100644 --- a/sdl2_simple_example/sdl2_simple_example/Renderer.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Renderer.cpp @@ -6,6 +6,10 @@ // Define the static member variable ivec2 Renderer::_WINDOW_SIZE; +float Renderer::eyeX = 0.0f; // Asignar un valor inicial +float Renderer::eyeY = 0.0f; // Asignar un valor inicial +float Renderer::eyeZ = 0.0f; // Asignar un valor inicial + void Renderer::initOpenGL(ivec2 WINDOW_SIZE) { glewInit(); if (!GLEW_VERSION_3_0) throw std::exception("OpenGL 3.0 API is not available."); @@ -55,9 +59,10 @@ void Renderer::setupView(float cameraDistance, float cameraAngleX, float cameraA glMatrixMode(GL_MODELVIEW); glLoadIdentity(); - float eyeX = cameraDistance * sin(cameraAngleY) * cos(cameraAngleX) + panX; - float eyeY = cameraDistance * sin(cameraAngleX) + panY; - float eyeZ = cameraDistance * cos(cameraAngleY) * cos(cameraAngleX); + // Actualiza las variables miembro con los valores calculados + eyeX = cameraDistance * sin(cameraAngleY) * cos(cameraAngleX) + panX; + eyeY = cameraDistance * sin(cameraAngleX) + panY; + eyeZ = cameraDistance * cos(cameraAngleY) * cos(cameraAngleX); gluLookAt(eyeX, eyeY, eyeZ, panX, panY, 0.0, 0.0, 1.0, 0.0); } diff --git a/sdl2_simple_example/sdl2_simple_example/Renderer.h b/sdl2_simple_example/sdl2_simple_example/Renderer.h index 78c10e3..64f633a 100644 --- a/sdl2_simple_example/sdl2_simple_example/Renderer.h +++ b/sdl2_simple_example/sdl2_simple_example/Renderer.h @@ -13,6 +13,9 @@ class Renderer { static void setupView(float cameraDistance, float cameraAngleX, float cameraAngleY, float panX, float panY); static void drawGrid(float spacing); + // Nuevas variables miembro + static float eyeX, eyeY, eyeZ; + private: static ivec2 _WINDOW_SIZE; }; \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index c3dafeb..c4e7917 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -69,6 +69,11 @@ Pos=60,60 Size=32,35 Collapsed=0 +[Window][Jerarquía] +Pos=61,60 +Size=190,202 +Collapsed=0 + [Docking][Data] DockSpace ID=0x11111111 Pos=368,151 Size=800,581 Split=X DockNode ID=0x00000003 Parent=0x11111111 SizeRef=600,581 Split=X From a6e81957deea73943fcc9c32f066f1c3b19d723b Mon Sep 17 00:00:00 2001 From: miguelturmo <125253347+miguelturmo@users.noreply.github.com> Date: Wed, 6 Nov 2024 19:58:18 +0100 Subject: [PATCH 22/48] =?UTF-8?q?cubo=20y=20esfera=20a=C3=B1adidos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sdl2_simple_example/MyWindow.cpp | 11 ++- .../sdl2_simple_example/Scene.cpp | 71 +++++++++++++++++++ .../sdl2_simple_example/Scene.h | 6 ++ .../sdl2_simple_example/imgui.ini | 16 +++-- 4 files changed, 98 insertions(+), 6 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index 3812197..abb241c 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -10,7 +10,6 @@ #include "imgui_impl_sdl2.h" #include "imgui_impl_opengl3.h" #include "MemoryUsage.h" -#include "experimental/deque" #include #include @@ -141,7 +140,15 @@ void MyWindow::draw() { } ImGui::EndMenu(); } - + if (ImGui::BeginMenu("GameObject")) { + if (ImGui::MenuItem("Cube")) { + scene.createCube(" Cubo"); + } + if (ImGui::MenuItem("Sphere")) { + scene.createSphere(" Esfera"); + } + ImGui::EndMenu(); + } ImGui::EndMainMenuBar(); } //COMENTA ESTA LINEA PARA SER FELIZ diff --git a/sdl2_simple_example/sdl2_simple_example/Scene.cpp b/sdl2_simple_example/sdl2_simple_example/Scene.cpp index e0dc8c4..1506aab 100644 --- a/sdl2_simple_example/sdl2_simple_example/Scene.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Scene.cpp @@ -45,4 +45,75 @@ void Scene::drawScene() { glPopMatrix(); // Restaurar la matriz previa } +} +void Scene::createCube(const std::string& name, const Transform& transform) { + // Datos básicos del cubo (vértices, UVs, índices) + std::vector vertices = { + -0.5f, -0.5f, -0.5f, 0.5f, -0.5f, -0.5f, 0.5f, 0.5f, -0.5f, -0.5f, 0.5f, -0.5f, + -0.5f, -0.5f, 0.5f, 0.5f, -0.5f, 0.5f, 0.5f, 0.5f, 0.5f, -0.5f, 0.5f, 0.5f + }; + + std::vector uvs = { + 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, 1.0f, 0.0f, 1.0f, + 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, 1.0f, 0.0f, 1.0f + }; + + std::vector indices = { + 0, 1, 2, 2, 3, 0, 4, 5, 6, 6, 7, 4, + 0, 1, 5, 5, 4, 0, 2, 3, 7, 7, 6, 2, + 0, 3, 7, 7, 4, 0, 1, 2, 6, 6, 5, 1 + }; + + loadModelData(vertices, uvs, indices, name, transform); // Añadir el cubo a la escena +} +void Scene::createSphere(const std::string& name, const Transform& transform) { + + const int sectors = 36; // Divide la esfera en 36 partes (puedes cambiar este número para más resolución) + const int stacks = 18; // Divide la esfera en 18 partes (puedes cambiar este número) + + // Vértices y UVs para la esfera + std::vector vertices; + std::vector uvs; + std::vector indices; + + // Generar la malla esférica (esto se hace con un algoritmo para crear una esfera) + for (int i = 0; i <= stacks; ++i) { + float stackStep = angle / stacks; + float stackAngle = angle / 2 - i * stackStep; + + for (int j = 0; j <= sectors; ++j) { + float sectorAngle = j * (2 * angle / sectors); + + // Coordenadas esféricas convertidas a cartesianas + float x = cos(stackAngle) * cos(sectorAngle); + float y = cos(stackAngle) * sin(sectorAngle); + float z = sin(stackAngle); + + // Añadir vértices + vertices.push_back(x); + vertices.push_back(y); + vertices.push_back(z); + + // Generar coordenadas UV + uvs.push_back((float)j / sectors); + uvs.push_back((float)i / stacks); + } + } + + // Generar índices para el dibujo de las caras + for (int i = 0; i < stacks; ++i) { + for (int j = 0; j < sectors; ++j) { + int first = (i * (sectors + 1)) + j; + int second = first + sectors + 1; + + indices.push_back(first); + indices.push_back(second); + indices.push_back(first + 1); + + indices.push_back(second); + indices.push_back(second + 1); + indices.push_back(first + 1); + } + } + loadModelData(vertices, uvs, indices, name, transform); } \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Scene.h b/sdl2_simple_example/sdl2_simple_example/Scene.h index d3eb8a9..c30db67 100644 --- a/sdl2_simple_example/sdl2_simple_example/Scene.h +++ b/sdl2_simple_example/sdl2_simple_example/Scene.h @@ -2,12 +2,17 @@ #include #include #include "GameObject.h" +#include +#include + class Scene { public: Scene(); ~Scene(); void loadModelData(const std::vector& vertices, const std::vector& uvs, const std::vector& indices, const std::string& name, const Transform& transform = Transform()); + void createSphere(const std::string& name, const Transform& transform = Transform()); + void createCube(const std::string& name, const Transform& transform = Transform()); void setTexture(GLuint textureID); void setCheckerTexture(GLuint checkerTextureID); void drawScene(); @@ -17,4 +22,5 @@ class Scene { // Índice del objeto seleccionado (-1 si no hay ninguno) int selectedGameObjectIndex = -1; + float angle = 3.14159265359f; }; \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index c4e7917..28ff308 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -29,9 +29,11 @@ Size=488,472 Collapsed=0 [Window][Config] -Pos=0,19 -Size=206,546 +ViewportPos=226,263 +ViewportId=0xA3B4A2E7 +Size=154,237 Collapsed=0 +DockId=0x00000006,0 [Window][Hierarchy] Pos=176,287 @@ -70,11 +72,17 @@ Size=32,35 Collapsed=0 [Window][Jerarquía] -Pos=61,60 -Size=190,202 +ViewportPos=226,263 +ViewportId=0xA3B4A2E7 +Pos=0,239 +Size=154,245 Collapsed=0 +DockId=0x00000007,0 [Docking][Data] +DockNode ID=0x00000005 Pos=226,263 Size=154,484 Split=Y + DockNode ID=0x00000006 Parent=0x00000005 SizeRef=190,237 Selected=0x94B17C7D + DockNode ID=0x00000007 Parent=0x00000005 SizeRef=190,245 Selected=0xADB1772B DockSpace ID=0x11111111 Pos=368,151 Size=800,581 Split=X DockNode ID=0x00000003 Parent=0x11111111 SizeRef=600,581 Split=X DockNode ID=0x00000001 Parent=0x00000003 SizeRef=397,581 Selected=0x29384C3A From 219bf8fb0de7f1118ec570c19dfde331b929e689 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=ADdac=20P=C3=A9rez=20M=C3=A1rquez?= <125640145+didacpema@users.noreply.github.com> Date: Wed, 6 Nov 2024 20:31:09 +0100 Subject: [PATCH 23/48] UI fixes --- .../sdl2_simple_example/MyWindow.cpp | 46 ++++++------------- .../sdl2_simple_example/imgui.ini | 30 ++++++------ 2 files changed, 29 insertions(+), 47 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index abb241c..02feb1e 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -134,12 +134,6 @@ void MyWindow::draw() { ImGui::EndMenu(); } - if (ImGui::BeginMenu("Formes b�siques")) { - if (ImGui::MenuItem("Cargar Forma B�sica")) { - // Aqu� se manejar� la carga de formas - } - ImGui::EndMenu(); - } if (ImGui::BeginMenu("GameObject")) { if (ImGui::MenuItem("Cube")) { scene.createCube(" Cubo"); @@ -165,12 +159,8 @@ void MyWindow::draw() { if (isConfigOn) { ImGui::Begin("Config"); - ImGui::Text("Configuraci� general del sistema"); - //gr�fico de FPS - ImGui::Text("Gr�fic FPS (Placeholder)"); - ImGui::Text("Configuraci� general del sistema"); - // Placeholder para gr�fico de FPS - ImGui::Text("Gr�fic FPS (Placeholder)"); + ImGui::Text("Configuracion general del sistema"); + ImGui::Text("Grafico FPS"); static float values[90] = {}; static int values_offset = 0; values[values_offset] = fps; // Ejemplo fijo de FPS @@ -179,12 +169,7 @@ void MyWindow::draw() { sprintf_s(fpsText, "%d fps", static_cast(fps)); ImGui::PlotLines("FPS", values, IM_ARRAYSIZE(values), values_offset, fpsText, 0.0f, 100.0f, ImVec2(0, 80)); - // Opciones de configuraci�n de m�dulos (placeholder) - ImGui::Text("Configuraci� de cada m�dul:"); - ImGui::Text(" - Renderitzador\n - Finestra\n - Entrada\n - Textures"); - - //consumo de memoria y detecci�n de hardware - ImGui::Text("Consum de Mem�ria: "); + ImGui::Text("Consumo de Memoria: "); try { MemoryInfo memInfo = MemoryUsage::getMemoryInfo(); ImGui::Separator(); @@ -209,10 +194,7 @@ void MyWindow::draw() { catch (const std::exception& e) { ImGui::Text("Error obteniendo memoria: %s", e.what()); } - ImGui::Text("Detecci� de maquinari i versions de programari:"); - // Placeholder para consumo de memoria y detecci�n de hardware - ImGui::Text("Consum de Mem�ria: "); - ImGui::Text("Detecci� de maquinari i versions de programari:"); + ImGui::Text("Deteccion de maquinaria i versions de programario:"); ImGui::Text("SDL, OpenGL, DevIL"); ImGui::End(); } @@ -261,17 +243,17 @@ void MyWindow::draw() { if (scene.selectedGameObjectIndex >= 0 && scene.selectedGameObjectIndex < scene.gameObjects.size()) { GameObject* selectedObject = scene.gameObjects[scene.selectedGameObjectIndex]; - ImGui::Text("Informaci�n del GameObject seleccionado"); + ImGui::Text("Informacion del GameObject seleccionado"); // Mostrar y modificar la posici�n float position[3] = { selectedObject->transform.position.x, selectedObject->transform.position.y, selectedObject->transform.position.z }; - if (ImGui::InputFloat3("Posici�n", position)) { + if (ImGui::InputFloat3("Posicion", position)) { selectedObject->transform.position = { position[0], position[1], position[2] }; } // Mostrar y modificar la rotaci�n float rotation[3] = { selectedObject->transform.rotation.x, selectedObject->transform.rotation.y, selectedObject->transform.rotation.z }; - if (ImGui::InputFloat3("Rotaci�n", rotation)) { + if (ImGui::InputFloat3("Rotacion", rotation)) { selectedObject->transform.rotation = { rotation[0], rotation[1], rotation[2] }; } @@ -296,14 +278,14 @@ void MyWindow::draw() { const std::vector& uvs = selectedObject->getMesh()->getUVs(); const std::vector& indices = selectedObject->getMesh()->getIndices(); - ImGui::Text("Informaci�n de la Malla:"); + ImGui::Text("Informacion de la Malla:"); ImGui::Text("Vertices: %zu", vertices.size()); ImGui::Text("UVs: %zu", uvs.size()); ImGui::Text("Indices: %zu", indices.size()); // Mostrar una vista previa opcional ImGui::Separator(); - ImGui::Text("Vista previa de v�rtices:"); + ImGui::Text("Vista previa de vertices:"); for (size_t i = 0; i < std::min(vertices.size(), 9); i += 3) { ImGui::Text("(%f, %f, %f)", vertices[i], vertices[i + 1], vertices[i + 2]); } @@ -313,7 +295,7 @@ void MyWindow::draw() { ImGui::Text("(%f, %f)", uvs[i], uvs[i + 1]); } - ImGui::Text("Vista previa de �ndices:"); + ImGui::Text("Vista previa de indices:"); for (size_t i = 0; i < std::min(indices.size(), 9); i += 3) { ImGui::Text("(%u, %u, %u)", indices[i], indices[i + 1], indices[i + 2]); } @@ -323,7 +305,7 @@ void MyWindow::draw() { } } else { - ImGui::Text("Seleccione un GameObject de la jerarqu�a para ver sus propiedades."); + ImGui::Text("Seleccione un GameObject de la jerarquia para ver sus propiedades."); } ImGui::End(); @@ -332,9 +314,9 @@ void MyWindow::draw() { // Popup "About" if (ImGui::BeginPopup("AboutPopup")) { - ImGui::Text("Informaci� sobre el motor:"); - ImGui::Text("Versi�: 1.0"); - ImGui::Text("Desenvolupat amb SDL, OpenGL, ImGui, Assimp, DevIL"); + ImGui::Text("Informacion sobre el motor:"); + ImGui::Text("Version: 1.0"); + ImGui::Text("Desarrollado con SDL, OpenGL, ImGui, Assimp, DevIL"); ImGui::EndPopup(); } diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index 28ff308..62724a0 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -5,7 +5,7 @@ Collapsed=0 [Window][Consola] Pos=0,509 -Size=631,91 +Size=458,91 Collapsed=0 [Window][Configuració] @@ -19,9 +19,10 @@ Size=186,113 Collapsed=0 [Window][Inspector] -Pos=633,19 -Size=167,581 +Pos=630,22 +Size=169,574 Collapsed=0 +DockId=0x00000008,0 [Window][Console] Pos=28,107 @@ -29,11 +30,10 @@ Size=488,472 Collapsed=0 [Window][Config] -ViewportPos=226,263 -ViewportId=0xA3B4A2E7 -Size=154,237 +Pos=461,391 +Size=167,205 Collapsed=0 -DockId=0x00000006,0 +DockId=0x00000009,0 [Window][Hierarchy] Pos=176,287 @@ -72,17 +72,17 @@ Size=32,35 Collapsed=0 [Window][Jerarquía] -ViewportPos=226,263 -ViewportId=0xA3B4A2E7 -Pos=0,239 -Size=154,245 +Pos=461,22 +Size=167,367 Collapsed=0 -DockId=0x00000007,0 +DockId=0x00000005,0 [Docking][Data] -DockNode ID=0x00000005 Pos=226,263 Size=154,484 Split=Y - DockNode ID=0x00000006 Parent=0x00000005 SizeRef=190,237 Selected=0x94B17C7D - DockNode ID=0x00000007 Parent=0x00000005 SizeRef=190,245 Selected=0xADB1772B +DockNode ID=0x00000006 Pos=645,133 Size=338,574 Split=X + DockNode ID=0x00000007 Parent=0x00000006 SizeRef=181,581 Split=Y Selected=0xADB1772B + DockNode ID=0x00000005 Parent=0x00000007 SizeRef=141,371 Selected=0xADB1772B + DockNode ID=0x00000009 Parent=0x00000007 SizeRef=141,208 Selected=0x94B17C7D + DockNode ID=0x00000008 Parent=0x00000006 SizeRef=184,581 Selected=0xE7039252 DockSpace ID=0x11111111 Pos=368,151 Size=800,581 Split=X DockNode ID=0x00000003 Parent=0x11111111 SizeRef=600,581 Split=X DockNode ID=0x00000001 Parent=0x00000003 SizeRef=397,581 Selected=0x29384C3A From a54eac1273abf3acebb848b40de44338ff63d01e Mon Sep 17 00:00:00 2001 From: Adri1714 Date: Thu, 7 Nov 2024 12:01:51 +0100 Subject: [PATCH 24/48] Windows Colors (dark purple) --- .../sdl2_simple_example/MyWindow.cpp | 19 +++++++++++++++ .../sdl2_simple_example/imgui.ini | 24 +++++++++---------- 2 files changed, 30 insertions(+), 13 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index 02feb1e..bee48bd 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -35,6 +35,24 @@ MyWindow::MyWindow(const char* title, unsigned short width, unsigned short heigh ImGui_ImplSDL2_InitForOpenGL(_window, _ctx); ImGui_ImplOpenGL3_Init("#version 130"); + // Tema de colores a un estilo lila oscuro cercano al negro + ImGuiStyle& style = ImGui::GetStyle(); + ImVec4* colors = style.Colors; + + colors[ImGuiCol_WindowBg] = ImVec4(0.08f, 0.02f, 0.1f, 0.9f); // Fondo de la ventana + colors[ImGuiCol_TitleBg] = ImVec4(0.18f, 0.05f, 0.2f, 1.0f); // Título de la ventana (sin focus) + colors[ImGuiCol_TitleBgActive] = ImVec4(0.22f, 0.05f, 0.25f, 1.0f); // Título de la ventana (con focus) + colors[ImGuiCol_Border] = ImVec4(0.2f, 0.1f, 0.25f, 1.0f); // Bordes + colors[ImGuiCol_FrameBg] = ImVec4(0.12f, 0.02f, 0.15f, 1.0f); // Fondo de widgets como InputFloat3 + colors[ImGuiCol_FrameBgHovered] = ImVec4(0.2f, 0.1f, 0.25f, 1.0f); // Fondo de widgets cuando están en hover + colors[ImGuiCol_FrameBgActive] = ImVec4(0.25f, 0.1f, 0.3f, 1.0f); // Fondo de widgets cuando están activos + colors[ImGuiCol_Button] = ImVec4(0.15f, 0.05f, 0.2f, 1.0f); // Botones + colors[ImGuiCol_ButtonHovered] = ImVec4(0.2f, 0.1f, 0.25f, 1.0f); // Botones cuando están en hover + colors[ImGuiCol_ButtonActive] = ImVec4(0.25f, 0.1f, 0.3f, 1.0f); // Botones cuando están activos + colors[ImGuiCol_Header] = ImVec4(0.2f, 0.1f, 0.25f, 1.0f); // Cabecera de listas desplegables + colors[ImGuiCol_HeaderHovered] = ImVec4(0.25f, 0.1f, 0.3f, 1.0f); // Cabecera de listas desplegables en hover + colors[ImGuiCol_HeaderActive] = ImVec4(0.3f, 0.15f, 0.35f, 1.0f); // Cabecera de listas desplegables activas + SDL_EventState(SDL_DROPFILE, SDL_ENABLE); } @@ -43,6 +61,7 @@ MyWindow::~MyWindow() { ImGui_ImplOpenGL3_Shutdown(); ImGui::DestroyContext(); close(); + SDL_Quit(); } void MyWindow::logMessage(const std::string& message) { diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index 62724a0..81c8794 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -4,7 +4,7 @@ Size=400,400 Collapsed=0 [Window][Consola] -Pos=0,509 +Pos=3,496 Size=458,91 Collapsed=0 @@ -19,10 +19,10 @@ Size=186,113 Collapsed=0 [Window][Inspector] -Pos=630,22 -Size=169,574 +Pos=457,16 +Size=338,367 Collapsed=0 -DockId=0x00000008,0 +DockId=0x00000005,1 [Window][Console] Pos=28,107 @@ -30,8 +30,8 @@ Size=488,472 Collapsed=0 [Window][Config] -Pos=461,391 -Size=167,205 +Pos=457,385 +Size=338,205 Collapsed=0 DockId=0x00000009,0 @@ -72,17 +72,15 @@ Size=32,35 Collapsed=0 [Window][Jerarquía] -Pos=461,22 -Size=167,367 +Pos=457,16 +Size=338,367 Collapsed=0 DockId=0x00000005,0 [Docking][Data] -DockNode ID=0x00000006 Pos=645,133 Size=338,574 Split=X - DockNode ID=0x00000007 Parent=0x00000006 SizeRef=181,581 Split=Y Selected=0xADB1772B - DockNode ID=0x00000005 Parent=0x00000007 SizeRef=141,371 Selected=0xADB1772B - DockNode ID=0x00000009 Parent=0x00000007 SizeRef=141,208 Selected=0x94B17C7D - DockNode ID=0x00000008 Parent=0x00000006 SizeRef=184,581 Selected=0xE7039252 +DockNode ID=0x00000006 Pos=825,148 Size=338,574 Split=Y + DockNode ID=0x00000005 Parent=0x00000006 SizeRef=141,371 Selected=0xE7039252 + DockNode ID=0x00000009 Parent=0x00000006 SizeRef=141,208 Selected=0x94B17C7D DockSpace ID=0x11111111 Pos=368,151 Size=800,581 Split=X DockNode ID=0x00000003 Parent=0x11111111 SizeRef=600,581 Split=X DockNode ID=0x00000001 Parent=0x00000003 SizeRef=397,581 Selected=0x29384C3A From 5555abbd6b384649dafa51bfefe35f9533deff87 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=ADdac=20P=C3=A9rez=20M=C3=A1rquez?= <125640145+didacpema@users.noreply.github.com> Date: Fri, 8 Nov 2024 09:50:17 +0100 Subject: [PATCH 25/48] pantalla completa --- .../sdl2_simple_example/MyWindow.cpp | 85 ++++++++++++++++--- .../sdl2_simple_example/MyWindow.h | 6 +- .../sdl2_simple_example/Renderer.cpp | 5 ++ .../sdl2_simple_example/Renderer.h | 2 +- .../sdl2_simple_example/imgui.ini | 28 +++--- 5 files changed, 98 insertions(+), 28 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index bee48bd..3028d63 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -13,8 +13,10 @@ #include #include + using namespace std; extern Scene scene; +Renderer renderer; ImGuiIO* g_io = nullptr; float x = Renderer::eyeX; @@ -96,7 +98,7 @@ void MyWindow::close() { _ctx = nullptr; SDL_DestroyWindow(static_cast(_window)); - _window = nullptr; + _window = nullptr; logMessage("Ventana cerrada."); } @@ -148,20 +150,20 @@ void MyWindow::draw() { } if (ImGui::MenuItem("Inspector", NULL, isInspectorOn, true)) { - isInspectorOn =!isInspectorOn; + isInspectorOn = !isInspectorOn; } ImGui::EndMenu(); } - if (ImGui::BeginMenu("GameObject")) { - if (ImGui::MenuItem("Cube")) { + if (ImGui::BeginMenu("GameObject")) { + if (ImGui::MenuItem("Cube")) { scene.createCube(" Cubo"); - } - if (ImGui::MenuItem("Sphere")) { - scene.createSphere(" Esfera"); - } - ImGui::EndMenu(); - } + } + if (ImGui::MenuItem("Sphere")) { + scene.createSphere(" Esfera"); + } + ImGui::EndMenu(); + } ImGui::EndMainMenuBar(); } //COMENTA ESTA LINEA PARA SER FELIZ @@ -175,10 +177,67 @@ void MyWindow::draw() { } ImGui::End(); } + if (isConfigOn) { ImGui::Begin("Config"); ImGui::Text("Configuracion general del sistema"); + + // Sección de resolución de pantalla + ImGui::Text("Resolución de pantalla:"); + + struct ResolutionItem { + ivec2 resolution; + std::string name; + }; + + std::vector resolutions = { + { {800, 600}, "800 x 600" }, + { {1024, 768}, "1024 x 768" }, + { {1280, 720}, "1280 x 720" }, + { {1360, 768}, "1360 x 768" }, + { {1366, 768}, "1366 x 768" }, + { {1440, 900}, "1440 x 900" }, + { {1600, 900}, "1600 x 900" }, + { {1920, 1080}, "1920 x 1080" } + }; + + static int selectedResolutionIndex = 0; + if (ImGui::Combo("Resolucion", &selectedResolutionIndex, [](void* data, int idx, const char** out_text) { + const std::vector* resolutions = static_cast*>(data); + *out_text = resolutions->at(idx).name.c_str(); // Return resolution name + return true; + }, (void*)&resolutions, resolutions.size())) { + selectedResolution = resolutions[selectedResolutionIndex].resolution; + + // Update window size + SDL_SetWindowSize(_window, selectedResolution.x, selectedResolution.y); + + // Ensure we apply the new projection and viewport + if (!isFullscreen) { + renderer.applyProjectionAndViewport(selectedResolution); // Aplica la resolución seleccionada + } + } + + // Sección de pantalla completa + if (ImGui::Checkbox("Pantalla completa", &isFullscreen)) { + if (isFullscreen) { + SDL_SetWindowFullscreen(_window, SDL_WINDOW_FULLSCREEN_DESKTOP); + logMessage("Pantalla completa activada."); + } + else { + SDL_SetWindowFullscreen(_window, 0); // 0 means windowed mode + logMessage("Pantalla completa desactivada."); + } + + // Get the current window size dynamically after changing fullscreen mode + int windowWidth, windowHeight; + SDL_GetWindowSize(_window, &windowWidth, &windowHeight); + + // Apply the new window size for projection and viewport + renderer.applyProjectionAndViewport(ivec2(windowWidth, windowHeight)); + } + ImGui::Text("Grafico FPS"); static float values[90] = {}; static int values_offset = 0; @@ -244,7 +303,7 @@ void MyWindow::draw() { } // Si el usuario pulsa 'F', movemos la cámara al objeto seleccionado - if (ImGui::IsKeyPressed(ImGui::GetKeyIndex(ImGuiKey_F)) && scene.selectedGameObjectIndex != -1){ + if (ImGui::IsKeyPressed(ImGui::GetKeyIndex(ImGuiKey_F)) && scene.selectedGameObjectIndex != -1) { GameObject* selectedObject = scene.gameObjects[scene.selectedGameObjectIndex]; panX = selectedObject->transform.position.x; panY = selectedObject->transform.position.y; @@ -329,7 +388,7 @@ void MyWindow::draw() { ImGui::End(); } - + // Popup "About" if (ImGui::BeginPopup("AboutPopup")) { @@ -338,7 +397,7 @@ void MyWindow::draw() { ImGui::Text("Desarrollado con SDL, OpenGL, ImGui, Assimp, DevIL"); ImGui::EndPopup(); } - + ImGui::Render(); ImGui_ImplOpenGL3_RenderDrawData(ImGui::GetDrawData()); diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.h b/sdl2_simple_example/sdl2_simple_example/MyWindow.h index d6a97a3..95ac6fa 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.h +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.h @@ -1,5 +1,5 @@ #pragma once - +#include #include #include @@ -57,6 +57,10 @@ class MyWindow { void logMessage(const std::string& message); // Método para agregar mensajes al LOG std::vector logMessages; // Vector de mensajes de LOG + glm::ivec2 selectedResolution; + + bool isFullscreen = false; + }; extern void handleFileDrop(const char* filePath); \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Renderer.cpp b/sdl2_simple_example/sdl2_simple_example/Renderer.cpp index cd1c6fa..2551886 100644 --- a/sdl2_simple_example/sdl2_simple_example/Renderer.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Renderer.cpp @@ -67,3 +67,8 @@ void Renderer::setupView(float cameraDistance, float cameraAngleX, float cameraA gluLookAt(eyeX, eyeY, eyeZ, panX, panY, 0.0, 0.0, 1.0, 0.0); } +void Renderer::applyProjectionAndViewport(ivec2 selectedResolution) { + glViewport(0, 0, selectedResolution.x, selectedResolution.y); // Actualiza el viewport + // Asegúrate de usar selectedResolution para calcular el aspecto + setupProjection(45.0f, static_cast(selectedResolution.x) / selectedResolution.y, 0.1f, 1000.0f); +} \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Renderer.h b/sdl2_simple_example/sdl2_simple_example/Renderer.h index 64f633a..afec596 100644 --- a/sdl2_simple_example/sdl2_simple_example/Renderer.h +++ b/sdl2_simple_example/sdl2_simple_example/Renderer.h @@ -12,10 +12,10 @@ class Renderer { static void setupProjection(float fov, float aspectRatio, float nearPlane, float farPlane); static void setupView(float cameraDistance, float cameraAngleX, float cameraAngleY, float panX, float panY); static void drawGrid(float spacing); + void applyProjectionAndViewport(ivec2 selectedResolution); // Nuevas variables miembro static float eyeX, eyeY, eyeZ; -private: static ivec2 _WINDOW_SIZE; }; \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index 81c8794..8dd1087 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -4,8 +4,8 @@ Size=400,400 Collapsed=0 [Window][Consola] -Pos=3,496 -Size=458,91 +Pos=21,494 +Size=568,100 Collapsed=0 [Window][Configuració] @@ -19,10 +19,10 @@ Size=186,113 Collapsed=0 [Window][Inspector] -Pos=457,16 -Size=338,367 +Pos=1156,72 +Size=94,280 Collapsed=0 -DockId=0x00000005,1 +DockId=0x00000005,0 [Window][Console] Pos=28,107 @@ -30,8 +30,8 @@ Size=488,472 Collapsed=0 [Window][Config] -Pos=457,385 -Size=338,205 +Pos=1156,354 +Size=195,277 Collapsed=0 DockId=0x00000009,0 @@ -72,15 +72,17 @@ Size=32,35 Collapsed=0 [Window][Jerarquía] -Pos=457,16 -Size=338,367 +Pos=1252,72 +Size=99,280 Collapsed=0 -DockId=0x00000005,0 +DockId=0x00000008,0 [Docking][Data] -DockNode ID=0x00000006 Pos=825,148 Size=338,574 Split=Y - DockNode ID=0x00000005 Parent=0x00000006 SizeRef=141,371 Selected=0xE7039252 - DockNode ID=0x00000009 Parent=0x00000006 SizeRef=141,208 Selected=0x94B17C7D +DockNode ID=0x00000006 Pos=1155,104 Size=195,559 Split=Y Selected=0xADB1772B + DockNode ID=0x00000007 Parent=0x00000006 SizeRef=195,280 Split=X + DockNode ID=0x00000005 Parent=0x00000007 SizeRef=94,559 Selected=0xE7039252 + DockNode ID=0x00000008 Parent=0x00000007 SizeRef=99,559 Selected=0xADB1772B + DockNode ID=0x00000009 Parent=0x00000006 SizeRef=195,277 Selected=0x94B17C7D DockSpace ID=0x11111111 Pos=368,151 Size=800,581 Split=X DockNode ID=0x00000003 Parent=0x11111111 SizeRef=600,581 Split=X DockNode ID=0x00000001 Parent=0x00000003 SizeRef=397,581 Selected=0x29384C3A From ed80e9c2108916bba5c95470df44e6ebac6fbbad Mon Sep 17 00:00:00 2001 From: Adri1714 Date: Sat, 9 Nov 2024 17:01:15 +0100 Subject: [PATCH 26/48] Checker On/Off --- .../sdl2_simple_example/MyWindow.cpp | 31 +++++++++++++++---- .../sdl2_simple_example/Scene.h | 1 + .../sdl2_simple_example/main.cpp | 7 +++-- 3 files changed, 31 insertions(+), 8 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index 3028d63..3600ec3 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -22,6 +22,7 @@ ImGuiIO* g_io = nullptr; float x = Renderer::eyeX; float y = Renderer::eyeY; float z = Renderer::eyeZ; +bool chekerOn = false; MyWindow::MyWindow(const char* title, unsigned short width, unsigned short height) : fps(0.0f), frameCount(0), lastTime(SDL_GetTicks()) { SDL_Init(SDL_INIT_VIDEO); // Mueve esta l�nea al principio del constructor @@ -182,7 +183,7 @@ void MyWindow::draw() { { ImGui::Begin("Config"); ImGui::Text("Configuracion general del sistema"); - + // Sección de resolución de pantalla ImGui::Text("Resolución de pantalla:"); @@ -315,21 +316,39 @@ void MyWindow::draw() { if (isInspectorOn) { - // Inspector (vac�o) + // Inspector (vacio) ImGui::Begin("Inspector"); if (scene.selectedGameObjectIndex >= 0 && scene.selectedGameObjectIndex < scene.gameObjects.size()) { GameObject* selectedObject = scene.gameObjects[scene.selectedGameObjectIndex]; - ImGui::Text("Informacion del GameObject seleccionado"); + ImGui::Text("Texture"); + // Guardar la textura original solo si aún no lo hemos hecho + static Texture* originalTexture = selectedObject->texture; - // Mostrar y modificar la posici�n + if (ImGui::Button("Off")) { + if (!chekerOn) + { + selectedObject->setTexture(new Texture(scene.checkerTextureID)); // Asignar textura checker + } + chekerOn = !chekerOn; // Cambiar estado de checker + } + ImGui::SameLine(); + if (ImGui::Button("On")) { + if (chekerOn) + { + selectedObject->setTexture(originalTexture); // Restaurar la textura original + } + chekerOn = !chekerOn; // Cambiar estado de checker + } + + // Mostrar y modificar la posicion float position[3] = { selectedObject->transform.position.x, selectedObject->transform.position.y, selectedObject->transform.position.z }; if (ImGui::InputFloat3("Posicion", position)) { selectedObject->transform.position = { position[0], position[1], position[2] }; } - // Mostrar y modificar la rotaci�n + // Mostrar y modificar la rotacion float rotation[3] = { selectedObject->transform.rotation.x, selectedObject->transform.rotation.y, selectedObject->transform.rotation.z }; if (ImGui::InputFloat3("Rotacion", rotation)) { selectedObject->transform.rotation = { rotation[0], rotation[1], rotation[2] }; @@ -350,7 +369,7 @@ void MyWindow::draw() { ImGui::Text("Texture ID: None"); } - // Mostrar la informaci�n de la malla + // Mostrar la informacion de la malla if (selectedObject->getMesh()) { const std::vector& vertices = selectedObject->getMesh()->getVertices(); const std::vector& uvs = selectedObject->getMesh()->getUVs(); diff --git a/sdl2_simple_example/sdl2_simple_example/Scene.h b/sdl2_simple_example/sdl2_simple_example/Scene.h index c30db67..4e0f699 100644 --- a/sdl2_simple_example/sdl2_simple_example/Scene.h +++ b/sdl2_simple_example/sdl2_simple_example/Scene.h @@ -23,4 +23,5 @@ class Scene { // Índice del objeto seleccionado (-1 si no hay ninguno) int selectedGameObjectIndex = -1; float angle = 3.14159265359f; + GLuint checkerTextureID = 0; }; \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/main.cpp b/sdl2_simple_example/sdl2_simple_example/main.cpp index 114765c..734e96f 100644 --- a/sdl2_simple_example/sdl2_simple_example/main.cpp +++ b/sdl2_simple_example/sdl2_simple_example/main.cpp @@ -41,8 +41,11 @@ void handleFileDrop(const char* filePath) { scene.loadModelData(importer.getVertices(), importer.getUVs(), importer.getIndices(), fileName); // Asigna la textura checker independientemente de si el modelo tiene una textura propia - GLuint checkerTexture = importer.createCheckerTexture(); - scene.setCheckerTexture(checkerTexture); + if (scene.checkerTextureID == 0) + { + scene.checkerTextureID = importer.createCheckerTexture(); + } + scene.setCheckerTexture(scene.checkerTextureID); } } else if (extension == "png" || extension == "jpg") { From bea04cdeb2d8f0d550fbeaec593c90fc55703454 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=ADdac=20P=C3=A9rez=20M=C3=A1rquez?= <125640145+didacpema@users.noreply.github.com> Date: Sat, 9 Nov 2024 17:39:51 +0100 Subject: [PATCH 27/48] Casita al inicio, texture component fix, & checkerFix --- .../sdl2_simple_example/Importer.cpp | 30 +++++++---- .../sdl2_simple_example/Importer.h | 4 +- .../Library/Meshes/BakerHouse.fbx | Bin 0 -> 57884 bytes .../Library/Meshes/cube.fbx | Bin 0 -> 15164 bytes .../Library/Textures/Baker_house.png | Bin 0 -> 1337056 bytes .../sdl2_simple_example/MyWindow.cpp | 4 +- .../sdl2_simple_example/Scene.cpp | 47 +++++++++--------- .../sdl2_simple_example/Scene.h | 4 +- .../sdl2_simple_example/Texture.h | 13 +++-- .../sdl2_simple_example/imgui.ini | 16 +++--- .../sdl2_simple_example/main.cpp | 14 +++++- 11 files changed, 81 insertions(+), 51 deletions(-) create mode 100644 sdl2_simple_example/sdl2_simple_example/Library/Meshes/BakerHouse.fbx create mode 100644 sdl2_simple_example/sdl2_simple_example/Library/Meshes/cube.fbx create mode 100644 sdl2_simple_example/sdl2_simple_example/Library/Textures/Baker_house.png diff --git a/sdl2_simple_example/sdl2_simple_example/Importer.cpp b/sdl2_simple_example/sdl2_simple_example/Importer.cpp index a35322a..a924272 100644 --- a/sdl2_simple_example/sdl2_simple_example/Importer.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Importer.cpp @@ -1,4 +1,5 @@ #include "Importer.h" +#include "Texture.h" #include #include #include @@ -74,7 +75,8 @@ GLuint Importer::createCheckerTexture() { 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_MAG_FILTER, GL_LINEAR); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); + return checkerTexture; } @@ -146,30 +148,38 @@ bool Importer::loadFBX(const std::string& filePath) { return true; } -GLuint Importer::loadTexture(const std::string& texturePath) { +Texture* Importer::loadTexture(const std::string& texturePath) { ILuint imageID; ilGenImages(1, &imageID); ilBindImage(imageID); - if (!ilLoadImage((const wchar_t*)texturePath.c_str())) { + if (!ilLoadImage((const wchar_t*)texturePath.c_str())) { // Cambia a ilLoadImage((const wchar_t*)texturePath.c_str()) en Windows si necesitas soporte para rutas UTF-16 ilDeleteImages(1, &imageID); std::cerr << "Failed to load texture from: " << texturePath << std::endl; - return 0; // Return 0 if loading fails + return 0; // Retorna 0 si falla la carga } - ilConvertImage(IL_RGBA, IL_UNSIGNED_BYTE); // Ensure RGBA format for OpenGL + // Convertir la imagen a formato RGBA para OpenGL + ilConvertImage(IL_RGBA, IL_UNSIGNED_BYTE); + + // Obtener dimensiones + int width = ilGetInteger(IL_IMAGE_WIDTH); + int height = ilGetInteger(IL_IMAGE_HEIGHT); + + GLuint textureID; glGenTextures(1, &textureID); glBindTexture(GL_TEXTURE_2D, textureID); - - // Specify texture parameters - glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, ilGetInteger(IL_IMAGE_WIDTH), ilGetInteger(IL_IMAGE_HEIGHT), 0, GL_RGBA, GL_UNSIGNED_BYTE, ilGetData()); + glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, ilGetData()); 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_MAG_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); - ilDeleteImages(1, &imageID); // Clean up DevIL image - return textureID; + ilDeleteImages(1, &imageID); // Limpia la imagen DevIL + + // Retorna la textura cargada con ID, path, ancho y alto + Texture* texture = new Texture(textureID, texturePath, width, height); + return texture; } // Método para obtener la textura cargada o checker diff --git a/sdl2_simple_example/sdl2_simple_example/Importer.h b/sdl2_simple_example/sdl2_simple_example/Importer.h index ddafe45..0e23662 100644 --- a/sdl2_simple_example/sdl2_simple_example/Importer.h +++ b/sdl2_simple_example/sdl2_simple_example/Importer.h @@ -5,6 +5,7 @@ #include #include "glm/glm.hpp" #include "MyWindow.h" +#include "Texture.h" class Importer { public: @@ -12,8 +13,7 @@ class Importer { ~Importer(); bool loadFBX(const std::string& filePath); - GLuint loadTexture(const std::string& texturePath); - + Texture* loadTexture(const std::string& texturePath); const std::vector& getVertices() const { return vertices; } const std::vector& getUVs() const { return uvs; } const std::vector& getIndices() const { return indices; } diff --git a/sdl2_simple_example/sdl2_simple_example/Library/Meshes/BakerHouse.fbx b/sdl2_simple_example/sdl2_simple_example/Library/Meshes/BakerHouse.fbx new file mode 100644 index 0000000000000000000000000000000000000000..b6e6721440a430eb9347efe07ca5d98b490359f5 GIT binary patch literal 57884 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 literal 0 HcmV?d00001 diff --git a/sdl2_simple_example/sdl2_simple_example/Library/Meshes/cube.fbx b/sdl2_simple_example/sdl2_simple_example/Library/Meshes/cube.fbx new file mode 100644 index 0000000000000000000000000000000000000000..3de70b0aa73775f384e0a1e6f96e55ca021854fe GIT binary patch literal 15164 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 literal 0 HcmV?d00001 diff --git a/sdl2_simple_example/sdl2_simple_example/Library/Textures/Baker_house.png b/sdl2_simple_example/sdl2_simple_example/Library/Textures/Baker_house.png new file mode 100644 index 0000000000000000000000000000000000000000..415732b77913203f11ea39712b431622c69dcee7 GIT binary patch literal 1337056 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

BDZQM!bOL=>P;2QvQC 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

j8@9VS&ZI6>6Ir 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 *wb7?d;R`KDKrRln!apDnczKd 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�Uq=}EjsqZPB8Q~h# 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%0At%1S6MTkqM;Jgd}FS8^%}XZbdRR2QCD7ZMU` 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ⅇasB3f17dn9RDya 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�)z)t~gi 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

^!E<&f4E^ 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

Sqvr>^WV0+)bs_F-$5=Ho~+3!5Yst|6nt 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ෘz4s*5^Js!^;kCP`ai~`! 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

GgoyhBwD>O8>g?w5dvf{j#r3 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’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 ct&3r{bs$CoR+?)b?GSG!-bc#&;BG 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‹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

B2Q=MOJ%(*9R7ST0KEg}olkb#Q=V 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%0AS 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 )sDW6SNZIXU78ukiU5oJ{mrLN7W13l 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 m2Cx&Tp){)J8vyCcpZ@?#WbyA`dcvgu0000 +extern Importer importer; + Scene::Scene() {} Scene::~Scene() { @@ -20,10 +24,8 @@ void Scene::loadModelData(const std::vector& vertices, const std::vector< gameObjectNames.push_back(name); } -void Scene::setTexture(GLuint textureID) { +void Scene::setTexture(Texture* newTexture) { if (!gameObjects.empty()) { - Texture* newTexture = new Texture(textureID); - GameObject* lastObject = gameObjects.back(); if (lastObject->getTexture() != nullptr) { delete lastObject->getTexture(); @@ -33,7 +35,11 @@ void Scene::setTexture(GLuint textureID) { } void Scene::setCheckerTexture(GLuint checkerTextureID) { - setTexture(checkerTextureID); + // Creamos una textura temporal con el checkerTextureID, un path vacío y tamaño predeterminado (0,0) + Texture* checkerTexture = new Texture(checkerTextureID, "checker_texture_path", 0, 0); + + // Asignamos esta textura a través de setTexture + setTexture(checkerTexture); } void Scene::drawScene() { @@ -46,26 +52,20 @@ void Scene::drawScene() { glPopMatrix(); // Restaurar la matriz previa } } -void Scene::createCube(const std::string& name, const Transform& transform) { - // Datos básicos del cubo (vértices, UVs, índices) - std::vector vertices = { - -0.5f, -0.5f, -0.5f, 0.5f, -0.5f, -0.5f, 0.5f, 0.5f, -0.5f, -0.5f, 0.5f, -0.5f, - -0.5f, -0.5f, 0.5f, 0.5f, -0.5f, 0.5f, 0.5f, 0.5f, 0.5f, -0.5f, 0.5f, 0.5f - }; - - std::vector uvs = { - 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, 1.0f, 0.0f, 1.0f, - 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, 1.0f, 0.0f, 1.0f - }; - - std::vector indices = { - 0, 1, 2, 2, 3, 0, 4, 5, 6, 6, 7, 4, - 0, 1, 5, 5, 4, 0, 2, 3, 7, 7, 6, 2, - 0, 3, 7, 7, 4, 0, 1, 2, 6, 6, 5, 1 - }; - - loadModelData(vertices, uvs, indices, name, transform); // Añadir el cubo a la escena +void Scene::createCube(const char* filePath) { + + std::string fileName = "Cube"; + + std::string path(filePath); + std::string extension = path.substr(path.find_last_of('.') + 1); + + if (importer.loadFBX(filePath)) { + loadModelData(importer.getVertices(), importer.getUVs(), importer.getIndices(), fileName); + + setCheckerTexture(checkerTextureID); + } } + void Scene::createSphere(const std::string& name, const Transform& transform) { const int sectors = 36; // Divide la esfera en 36 partes (puedes cambiar este número para más resolución) @@ -116,4 +116,5 @@ void Scene::createSphere(const std::string& name, const Transform& transform) { } } loadModelData(vertices, uvs, indices, name, transform); + setCheckerTexture(checkerTextureID); } \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Scene.h b/sdl2_simple_example/sdl2_simple_example/Scene.h index 4e0f699..64b78c9 100644 --- a/sdl2_simple_example/sdl2_simple_example/Scene.h +++ b/sdl2_simple_example/sdl2_simple_example/Scene.h @@ -12,8 +12,8 @@ class Scene { ~Scene(); void loadModelData(const std::vector& vertices, const std::vector& uvs, const std::vector& indices, const std::string& name, const Transform& transform = Transform()); void createSphere(const std::string& name, const Transform& transform = Transform()); - void createCube(const std::string& name, const Transform& transform = Transform()); - void setTexture(GLuint textureID); + void createCube(const char* filePath); + void setTexture(Texture* newTexture); void setCheckerTexture(GLuint checkerTextureID); void drawScene(); diff --git a/sdl2_simple_example/sdl2_simple_example/Texture.h b/sdl2_simple_example/sdl2_simple_example/Texture.h index 39d1387..d3ca333 100644 --- a/sdl2_simple_example/sdl2_simple_example/Texture.h +++ b/sdl2_simple_example/sdl2_simple_example/Texture.h @@ -1,15 +1,22 @@ #pragma once #include +#include class Texture { public: GLuint id; + std::string path; + int width; + int height; - Texture(GLuint textureId = 0) : id(textureId) {} + Texture(GLuint textureId = 0, const std::string& filePath = "", int texWidth = 0, int texHeight = 0) + : id(textureId), path(filePath), width(texWidth), height(texHeight) {} void bind() const; void unbind() const; - // Getter for texture ID - GLuint getTextureID() const {return id;} + GLuint getTextureID() const { return id; } + std::string getPath() const { return path; } + int getWidth() const { return width; } + int getHeight() const { return height; } }; \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index 8dd1087..c56dd94 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -19,8 +19,8 @@ Size=186,113 Collapsed=0 [Window][Inspector] -Pos=1156,72 -Size=94,280 +Pos=597,26 +Size=96,280 Collapsed=0 DockId=0x00000005,0 @@ -30,7 +30,7 @@ Size=488,472 Collapsed=0 [Window][Config] -Pos=1156,354 +Pos=597,308 Size=195,277 Collapsed=0 DockId=0x00000009,0 @@ -72,16 +72,16 @@ Size=32,35 Collapsed=0 [Window][Jerarquía] -Pos=1252,72 -Size=99,280 +Pos=695,26 +Size=97,280 Collapsed=0 DockId=0x00000008,0 [Docking][Data] -DockNode ID=0x00000006 Pos=1155,104 Size=195,559 Split=Y Selected=0xADB1772B +DockNode ID=0x00000006 Pos=877,110 Size=195,559 Split=Y Selected=0xADB1772B DockNode ID=0x00000007 Parent=0x00000006 SizeRef=195,280 Split=X - DockNode ID=0x00000005 Parent=0x00000007 SizeRef=94,559 Selected=0xE7039252 - DockNode ID=0x00000008 Parent=0x00000007 SizeRef=99,559 Selected=0xADB1772B + DockNode ID=0x00000005 Parent=0x00000007 SizeRef=96,559 Selected=0xE7039252 + DockNode ID=0x00000008 Parent=0x00000007 SizeRef=97,559 Selected=0xADB1772B DockNode ID=0x00000009 Parent=0x00000006 SizeRef=195,277 Selected=0x94B17C7D DockSpace ID=0x11111111 Pos=368,151 Size=800,581 Split=X DockNode ID=0x00000003 Parent=0x11111111 SizeRef=600,581 Split=X diff --git a/sdl2_simple_example/sdl2_simple_example/main.cpp b/sdl2_simple_example/sdl2_simple_example/main.cpp index 734e96f..8a6e0fc 100644 --- a/sdl2_simple_example/sdl2_simple_example/main.cpp +++ b/sdl2_simple_example/sdl2_simple_example/main.cpp @@ -30,9 +30,15 @@ static const auto FRAME_DT = 1.0s / FPS; Importer importer; Scene scene; +FileSystemUtils fileSystemUtils; void handleFileDrop(const char* filePath) { std::string fileName = FileSystemUtils::getFileName(filePath); + + size_t dotPos = fileName.find_last_of("."); + if (dotPos != std::string::npos) { + fileName = fileName.substr(0, dotPos); + } std::string path(filePath); std::string extension = path.substr(path.find_last_of('.') + 1); @@ -49,7 +55,7 @@ void handleFileDrop(const char* filePath) { } } else if (extension == "png" || extension == "jpg") { - GLuint texture = importer.loadTexture(filePath); + Texture* texture = importer.loadTexture(filePath); if (texture != 0) { scene.setTexture(texture); } @@ -57,6 +63,9 @@ void handleFileDrop(const char* filePath) { } int main(int argc, char** argv) { + + fileSystemUtils.createRequiredDirectories(); + MyWindow myWindow("SDL2 Simple Example", WINDOW_SIZE.x, WINDOW_SIZE.y); importer.setWindow(&myWindow); @@ -80,6 +89,9 @@ int main(int argc, char** argv) { SDL_EventState(SDL_DROPFILE, SDL_ENABLE); + handleFileDrop("Library/Meshes/BakerHouse.fbx"); + handleFileDrop("Library/Textures/Baker_house.png"); + while (myWindow.processEvents() && myWindow.isOpen()) { auto start = hrclock::now(); From afcc7a61033e6d552b5b4e85270444d8172b8417 Mon Sep 17 00:00:00 2001 From: miguelturmo <125253347+miguelturmo@users.noreply.github.com> Date: Sat, 9 Nov 2024 18:31:21 +0100 Subject: [PATCH 28/48] path shape y about --- .../sdl2_simple_example/MyWindow.cpp | 13 +++++++++++++ .../sdl2_simple_example/MyWindow.h | 1 + .../sdl2_simple_example/Scene.h | 2 +- .../sdl2_simple_example/imgui.ini | 19 ++++++++++++------- 4 files changed, 27 insertions(+), 8 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index 35670bf..cf4b7c4 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -128,10 +128,12 @@ void MyWindow::draw() { SDL_PushEvent(&quit_event); } if (ImGui::MenuItem("GitHub")) { + SDL_OpenURL("https://github.com/didacpema/Oyuki_Engine.git"); // Aqu� podr�amos abrir el enlace de GitHub } if (ImGui::MenuItem("Sobre el motor")) { ImGui::OpenPopup("AboutPopup"); + ImGui::Text("Este motor grafico es propiedad de los estudiantes de la UPC"); } ImGui::EndMenu(); } @@ -369,6 +371,17 @@ void MyWindow::draw() { ImGui::Text("Texture ID: None"); } + if (selectedObject->texture->getHeight() && selectedObject->texture->getWidth()) + { + GLuint GetHeight = selectedObject->texture->getHeight(); + GLuint GetWidth = selectedObject->texture->getWidth(); + ImGui::Text("Texture Shape: %u x %u", GetHeight, GetWidth); + } + else + { + ImGui::Text("Texture Shape: None"); + } + ImGui::Text("Texture path: %s", selectedObject->texture->getPath().c_str()); // Mostrar la informacion de la malla if (selectedObject->getMesh()) { const std::vector& vertices = selectedObject->getMesh()->getVertices(); diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.h b/sdl2_simple_example/sdl2_simple_example/MyWindow.h index 95ac6fa..efcc3eb 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.h +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.h @@ -53,6 +53,7 @@ class MyWindow { bool processEvents(IEventProcessor* event_processor = nullptr); void draw(); void swapBuffers() const; + void logMessage(const std::string& message); // Método para agregar mensajes al LOG std::vector logMessages; // Vector de mensajes de LOG diff --git a/sdl2_simple_example/sdl2_simple_example/Scene.h b/sdl2_simple_example/sdl2_simple_example/Scene.h index 64b78c9..11e510b 100644 --- a/sdl2_simple_example/sdl2_simple_example/Scene.h +++ b/sdl2_simple_example/sdl2_simple_example/Scene.h @@ -16,7 +16,7 @@ class Scene { void setTexture(Texture* newTexture); void setCheckerTexture(GLuint checkerTextureID); void drawScene(); - + std::vector gameObjects; std::vector gameObjectNames; diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index c56dd94..21650f7 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -19,8 +19,9 @@ Size=186,113 Collapsed=0 [Window][Inspector] -Pos=597,26 -Size=96,280 +ViewportPos=979,162 +ViewportId=0x3ABDF35D +Size=375,280 Collapsed=0 DockId=0x00000005,0 @@ -30,8 +31,10 @@ Size=488,472 Collapsed=0 [Window][Config] -Pos=597,308 -Size=195,277 +ViewportPos=979,162 +ViewportId=0x3ABDF35D +Pos=0,282 +Size=755,277 Collapsed=0 DockId=0x00000009,0 @@ -72,13 +75,15 @@ Size=32,35 Collapsed=0 [Window][Jerarquía] -Pos=695,26 -Size=97,280 +ViewportPos=979,162 +ViewportId=0x3ABDF35D +Pos=377,0 +Size=378,280 Collapsed=0 DockId=0x00000008,0 [Docking][Data] -DockNode ID=0x00000006 Pos=877,110 Size=195,559 Split=Y Selected=0xADB1772B +DockNode ID=0x00000006 Pos=979,162 Size=755,559 Split=Y Selected=0xADB1772B DockNode ID=0x00000007 Parent=0x00000006 SizeRef=195,280 Split=X DockNode ID=0x00000005 Parent=0x00000007 SizeRef=96,559 Selected=0xE7039252 DockNode ID=0x00000008 Parent=0x00000007 SizeRef=97,559 Selected=0xADB1772B From 348ff126c7cd22d1eddd58f5249092a587b08f65 Mon Sep 17 00:00:00 2001 From: miguelturmo <125253347+miguelturmo@users.noreply.github.com> Date: Sun, 10 Nov 2024 13:43:07 +0100 Subject: [PATCH 29/48] ajustes --- sdl2_simple_example/sdl2_simple_example/FilesystemUtils.h | 2 +- sdl2_simple_example/sdl2_simple_example/GameObject.cpp | 4 ++-- sdl2_simple_example/sdl2_simple_example/GameObject.h | 8 ++++---- sdl2_simple_example/sdl2_simple_example/Importer.cpp | 6 +++--- sdl2_simple_example/sdl2_simple_example/Importer.h | 4 ++-- sdl2_simple_example/sdl2_simple_example/MyWindow.cpp | 4 ++-- sdl2_simple_example/sdl2_simple_example/Renderer.cpp | 2 +- sdl2_simple_example/sdl2_simple_example/Renderer.h | 2 +- sdl2_simple_example/sdl2_simple_example/Scene.cpp | 4 ++-- sdl2_simple_example/sdl2_simple_example/Scene.h | 2 +- sdl2_simple_example/sdl2_simple_example/Texture.cpp | 4 ++-- sdl2_simple_example/sdl2_simple_example/Texture.h | 4 ++-- sdl2_simple_example/sdl2_simple_example/main.cpp | 8 ++++---- 13 files changed, 27 insertions(+), 27 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/FilesystemUtils.h b/sdl2_simple_example/sdl2_simple_example/FilesystemUtils.h index 7c8571f..4e3d0e0 100644 --- a/sdl2_simple_example/sdl2_simple_example/FilesystemUtils.h +++ b/sdl2_simple_example/sdl2_simple_example/FilesystemUtils.h @@ -8,7 +8,7 @@ namespace fs = std::filesystem; class FileSystemUtils { public: - static void createRequiredDirectories() { + static void GenerateRequiredDirectories() { const std::vector dirs = { "Assets", "Library/Meshes", "Library/Materials", "Library/Models" }; for (const auto& dir : dirs) { if (!fs::exists(dir)) { diff --git a/sdl2_simple_example/sdl2_simple_example/GameObject.cpp b/sdl2_simple_example/sdl2_simple_example/GameObject.cpp index 754e0f4..e359ead 100644 --- a/sdl2_simple_example/sdl2_simple_example/GameObject.cpp +++ b/sdl2_simple_example/sdl2_simple_example/GameObject.cpp @@ -2,7 +2,7 @@ #include #include -GameObject::GameObject(Mesh* mesh, Texture* texture) +GameObject::GameObject(Mesh* mesh, TextureData* texture) : mesh(mesh), texture(texture) {} GameObject::~GameObject() { @@ -10,7 +10,7 @@ GameObject::~GameObject() { if (texture) delete texture; } -void GameObject::setTexture(Texture* newTexture) { +void GameObject::setTexture(TextureData* newTexture) { texture = newTexture; } diff --git a/sdl2_simple_example/sdl2_simple_example/GameObject.h b/sdl2_simple_example/sdl2_simple_example/GameObject.h index 0db97e9..ba1d0b5 100644 --- a/sdl2_simple_example/sdl2_simple_example/GameObject.h +++ b/sdl2_simple_example/sdl2_simple_example/GameObject.h @@ -5,18 +5,18 @@ class GameObject { public: - GameObject(Mesh* mesh, Texture* texture); + GameObject(Mesh* mesh, TextureData* texture); ~GameObject(); void draw() const; - void setTexture(Texture* texture); + void setTexture(TextureData* texture); - Texture* getTexture() const { return texture; } + TextureData* getTexture() const { return texture; } Mesh* getMesh() const { return mesh; } void setTransform(const Transform& newTransform); Mesh* mesh; - Texture* texture; + TextureData* texture; Transform transform; }; \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Importer.cpp b/sdl2_simple_example/sdl2_simple_example/Importer.cpp index a924272..672966b 100644 --- a/sdl2_simple_example/sdl2_simple_example/Importer.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Importer.cpp @@ -52,7 +52,7 @@ void centerModel(const aiScene* scene) { } // Dentro de la clase Importer, agrega un método para crear una textura checker -GLuint Importer::createCheckerTexture() { +GLuint Importer::GenerateCheckerTexture() { const int width = 64; const int height = 64; std::vector checkerImage(width * height * 4); @@ -148,7 +148,7 @@ bool Importer::loadFBX(const std::string& filePath) { return true; } -Texture* Importer::loadTexture(const std::string& texturePath) { +TextureData* Importer::loadTexture(const std::string& texturePath) { ILuint imageID; ilGenImages(1, &imageID); ilBindImage(imageID); @@ -178,7 +178,7 @@ Texture* Importer::loadTexture(const std::string& texturePath) { ilDeleteImages(1, &imageID); // Limpia la imagen DevIL // Retorna la textura cargada con ID, path, ancho y alto - Texture* texture = new Texture(textureID, texturePath, width, height); + TextureData* texture = new TextureData(textureID, texturePath, width, height); return texture; } diff --git a/sdl2_simple_example/sdl2_simple_example/Importer.h b/sdl2_simple_example/sdl2_simple_example/Importer.h index 0e23662..ae249d0 100644 --- a/sdl2_simple_example/sdl2_simple_example/Importer.h +++ b/sdl2_simple_example/sdl2_simple_example/Importer.h @@ -13,13 +13,13 @@ class Importer { ~Importer(); bool loadFBX(const std::string& filePath); - Texture* loadTexture(const std::string& texturePath); + TextureData* loadTexture(const std::string& texturePath); const std::vector& getVertices() const { return vertices; } const std::vector& getUVs() const { return uvs; } const std::vector& getIndices() const { return indices; } GLuint getTextureID() { return textureID; } - GLuint createCheckerTexture(); + GLuint GenerateCheckerTexture(); GLuint getTextureID() const; void setWindow(MyWindow* window); diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index cf4b7c4..8ee6a69 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -326,12 +326,12 @@ void MyWindow::draw() { ImGui::Text("Texture"); // Guardar la textura original solo si aún no lo hemos hecho - static Texture* originalTexture = selectedObject->texture; + static TextureData* originalTexture = selectedObject->texture; if (ImGui::Button("Off")) { if (!chekerOn) { - selectedObject->setTexture(new Texture(scene.checkerTextureID)); // Asignar textura checker + selectedObject->setTexture(new TextureData(scene.checkerTextureID)); // Asignar textura checker } chekerOn = !chekerOn; // Cambiar estado de checker } diff --git a/sdl2_simple_example/sdl2_simple_example/Renderer.cpp b/sdl2_simple_example/sdl2_simple_example/Renderer.cpp index 2551886..6724bb2 100644 --- a/sdl2_simple_example/sdl2_simple_example/Renderer.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Renderer.cpp @@ -25,7 +25,7 @@ void Renderer::initOpenGL(ivec2 WINDOW_SIZE) { Renderer::_WINDOW_SIZE = WINDOW_SIZE; } -void Renderer::drawGrid(float spacing) { +void Renderer::deployGrid(float spacing) { glDisable(GL_TEXTURE_2D); // Disable texture for the grid lines float gridRange = 1000.0f; diff --git a/sdl2_simple_example/sdl2_simple_example/Renderer.h b/sdl2_simple_example/sdl2_simple_example/Renderer.h index afec596..7decd14 100644 --- a/sdl2_simple_example/sdl2_simple_example/Renderer.h +++ b/sdl2_simple_example/sdl2_simple_example/Renderer.h @@ -11,7 +11,7 @@ class Renderer { static void initOpenGL(ivec2 WINDOW_SIZE); static void setupProjection(float fov, float aspectRatio, float nearPlane, float farPlane); static void setupView(float cameraDistance, float cameraAngleX, float cameraAngleY, float panX, float panY); - static void drawGrid(float spacing); + static void deployGrid(float spacing); void applyProjectionAndViewport(ivec2 selectedResolution); // Nuevas variables miembro diff --git a/sdl2_simple_example/sdl2_simple_example/Scene.cpp b/sdl2_simple_example/sdl2_simple_example/Scene.cpp index da5c20b..ae1d540 100644 --- a/sdl2_simple_example/sdl2_simple_example/Scene.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Scene.cpp @@ -24,7 +24,7 @@ void Scene::loadModelData(const std::vector& vertices, const std::vector< gameObjectNames.push_back(name); } -void Scene::setTexture(Texture* newTexture) { +void Scene::setTexture(TextureData* newTexture) { if (!gameObjects.empty()) { GameObject* lastObject = gameObjects.back(); if (lastObject->getTexture() != nullptr) { @@ -36,7 +36,7 @@ void Scene::setTexture(Texture* newTexture) { void Scene::setCheckerTexture(GLuint checkerTextureID) { // Creamos una textura temporal con el checkerTextureID, un path vacío y tamaño predeterminado (0,0) - Texture* checkerTexture = new Texture(checkerTextureID, "checker_texture_path", 0, 0); + TextureData* checkerTexture = new TextureData(checkerTextureID, "checker_texture_path", 0, 0); // Asignamos esta textura a través de setTexture setTexture(checkerTexture); diff --git a/sdl2_simple_example/sdl2_simple_example/Scene.h b/sdl2_simple_example/sdl2_simple_example/Scene.h index 11e510b..b3a15bc 100644 --- a/sdl2_simple_example/sdl2_simple_example/Scene.h +++ b/sdl2_simple_example/sdl2_simple_example/Scene.h @@ -13,7 +13,7 @@ class Scene { void loadModelData(const std::vector& vertices, const std::vector& uvs, const std::vector& indices, const std::string& name, const Transform& transform = Transform()); void createSphere(const std::string& name, const Transform& transform = Transform()); void createCube(const char* filePath); - void setTexture(Texture* newTexture); + void setTexture(TextureData* newTexture); void setCheckerTexture(GLuint checkerTextureID); void drawScene(); diff --git a/sdl2_simple_example/sdl2_simple_example/Texture.cpp b/sdl2_simple_example/sdl2_simple_example/Texture.cpp index 52575da..768e55c 100644 --- a/sdl2_simple_example/sdl2_simple_example/Texture.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Texture.cpp @@ -1,9 +1,9 @@ #include "Texture.h" -void Texture::bind() const { +void TextureData::bind() const { glBindTexture(GL_TEXTURE_2D, id); } -void Texture::unbind() const { +void TextureData::unbind() const { glBindTexture(GL_TEXTURE_2D, 0); } \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Texture.h b/sdl2_simple_example/sdl2_simple_example/Texture.h index d3ca333..de4e896 100644 --- a/sdl2_simple_example/sdl2_simple_example/Texture.h +++ b/sdl2_simple_example/sdl2_simple_example/Texture.h @@ -2,14 +2,14 @@ #include #include -class Texture { +class TextureData { public: GLuint id; std::string path; int width; int height; - Texture(GLuint textureId = 0, const std::string& filePath = "", int texWidth = 0, int texHeight = 0) + TextureData(GLuint textureId = 0, const std::string& filePath = "", int texWidth = 0, int texHeight = 0) : id(textureId), path(filePath), width(texWidth), height(texHeight) {} void bind() const; diff --git a/sdl2_simple_example/sdl2_simple_example/main.cpp b/sdl2_simple_example/sdl2_simple_example/main.cpp index 8a6e0fc..c9335fa 100644 --- a/sdl2_simple_example/sdl2_simple_example/main.cpp +++ b/sdl2_simple_example/sdl2_simple_example/main.cpp @@ -49,13 +49,13 @@ void handleFileDrop(const char* filePath) { // Asigna la textura checker independientemente de si el modelo tiene una textura propia if (scene.checkerTextureID == 0) { - scene.checkerTextureID = importer.createCheckerTexture(); + scene.checkerTextureID = importer.GenerateCheckerTexture(); } scene.setCheckerTexture(scene.checkerTextureID); } } else if (extension == "png" || extension == "jpg") { - Texture* texture = importer.loadTexture(filePath); + TextureData* texture = importer.loadTexture(filePath); if (texture != 0) { scene.setTexture(texture); } @@ -64,7 +64,7 @@ void handleFileDrop(const char* filePath) { int main(int argc, char** argv) { - fileSystemUtils.createRequiredDirectories(); + fileSystemUtils.GenerateRequiredDirectories(); MyWindow myWindow("SDL2 Simple Example", WINDOW_SIZE.x, WINDOW_SIZE.y); importer.setWindow(&myWindow); @@ -99,7 +99,7 @@ int main(int argc, char** argv) { Renderer::setupView(myWindow.cameraDistance, myWindow.cameraAngleX, myWindow.cameraAngleY, myWindow.panX, myWindow.panY); - Renderer::drawGrid(10.0f); // Draw grid first + Renderer::deployGrid(10.0f); // Draw grid first scene.drawScene(); // Draw objects in the scene From 19c22f3ca75f3039734ef378f172ca1a58d4ea3a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=ADdac=20P=C3=A9rez=20M=C3=A1rquez?= <125640145+didacpema@users.noreply.github.com> Date: Sun, 10 Nov 2024 22:50:09 +0100 Subject: [PATCH 30/48] loadFbx fix --- .../sdl2_simple_example/Importer.cpp | 52 +++++++++---------- .../sdl2_simple_example/imgui.ini | 8 +-- 2 files changed, 28 insertions(+), 32 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/Importer.cpp b/sdl2_simple_example/sdl2_simple_example/Importer.cpp index 672966b..cf1e074 100644 --- a/sdl2_simple_example/sdl2_simple_example/Importer.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Importer.cpp @@ -32,23 +32,25 @@ void Importer::setWindow(MyWindow* window) { } void centerModel(const aiScene* scene) { - aiVector3D min, max; - min = max = scene->mMeshes[0]->mVertices[0]; + if (scene->mNumMeshes == 0) return; + + aiVector3D minimo(FLT_MAX, FLT_MAX, FLT_MAX); + aiVector3D maximo(-FLT_MAX, -FLT_MAX, -FLT_MAX); for (unsigned int i = 0; i < scene->mNumMeshes; i++) { for (unsigned int v = 0; v < scene->mMeshes[i]->mNumVertices; v++) { aiVector3D vertex = scene->mMeshes[i]->mVertices[v]; - min.x = min(min.x, vertex.x); - min.y = min(min.y, vertex.y); - min.z = min(min.z, vertex.z); - max.x = max(max.x, vertex.x); - max.y = max(max.y, vertex.y); - max.z = max(max.z, vertex.z); + minimo.x = min(minimo.x, vertex.x); + minimo.y = min(minimo.y, vertex.y); + minimo.z = min(minimo.z, vertex.z); + maximo.x = max(maximo.x, vertex.x); + maximo.y = max(maximo.y, vertex.y); + maximo.z = max(maximo.z, vertex.z); } } - modelCenter = vec3((min.x + max.x) / 2, (min.y + max.y) / 2, (min.z + max.z) / 2); - modelScale = 2.0f / glm::length(vec3(max.x - min.x, max.y - min.y, max.z - min.z)); - //modelScale = 2.0f / glm::length(vec3(max.x - min.x, max.y - min.y, max.z - min.z)); + + modelCenter = vec3((minimo.x + maximo.x) / 2, (minimo.y + maximo.y) / 2, (minimo.z + maximo.z) / 2); + modelScale = 2.0f / glm::length(vec3(maximo.x - minimo.x, maximo.y - minimo.y, maximo.z - minimo.z)); } // Dentro de la clase Importer, agrega un método para crear una textura checker @@ -82,7 +84,7 @@ GLuint Importer::GenerateCheckerTexture() { } bool Importer::loadFBX(const std::string& filePath) { - _window->logMessage("Attempting to load FBX file: " + filePath); // New log message + _window->logMessage("Attempting to load FBX file: " + filePath); // Log de carga Assimp::Importer importer; const aiScene* scene = importer.ReadFile(filePath, aiProcess_Triangulate | aiProcess_GenUVCoords | aiProcess_CalcTangentSpace); @@ -93,24 +95,26 @@ bool Importer::loadFBX(const std::string& filePath) { } _window->logMessage("Successfully loaded FBX file: " + filePath); + _window->logMessage("Total meshes in scene: " + std::to_string(scene->mNumMeshes)); - // Centering the model and logging its details + // Centrado y escalado del modelo centerModel(scene); - _window->logMessage("Model centered with scale factor: " + std::to_string(modelScale) + ", center: (" + - std::to_string(modelCenter.x) + ", " + - std::to_string(modelCenter.y) + ", " + - std::to_string(modelCenter.z) + ")"); + // Limpiar los contenedores para evitar que se mezclen datos de diferentes cargas vertices.clear(); uvs.clear(); indices.clear(); + // Procesar cada malla en el archivo FBX for (unsigned int i = 0; i < scene->mNumMeshes; i++) { aiMesh* mesh = scene->mMeshes[i]; _window->logMessage("Processing mesh: " + std::to_string(i) + " with " + std::to_string(mesh->mNumVertices) + " vertices and " + std::to_string(mesh->mNumFaces) + " faces."); + unsigned int baseVertex = vertices.size() / 3; // Offset para los índices de cada malla + + // Añadir vértices y coordenadas UV de la malla actual for (unsigned int v = 0; v < mesh->mNumVertices; v++) { aiVector3D vertex = mesh->mVertices[v]; vertices.push_back(vertex.x); @@ -127,24 +131,16 @@ bool Importer::loadFBX(const std::string& filePath) { uvs.push_back(0.0f); } } + + // Añadir índices de la malla actual for (unsigned int f = 0; f < mesh->mNumFaces; f++) { aiFace face = mesh->mFaces[f]; for (unsigned int j = 0; j < face.mNumIndices; j++) { - indices.push_back(face.mIndices[j]); + indices.push_back(baseVertex + face.mIndices[j]); // Ajuste para índice base } } } - /* - if (scene->mNumMaterials == 0) { - textureID = createCheckerTexture(); - _window->logMessage("No texture found in model. Checker texture applied."); - } - else { - _window->logMessage("Texture detected and applied."); - } - */ - return true; } diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index 21650f7..2a6eb84 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -19,7 +19,7 @@ Size=186,113 Collapsed=0 [Window][Inspector] -ViewportPos=979,162 +ViewportPos=608,362 ViewportId=0x3ABDF35D Size=375,280 Collapsed=0 @@ -31,7 +31,7 @@ Size=488,472 Collapsed=0 [Window][Config] -ViewportPos=979,162 +ViewportPos=608,362 ViewportId=0x3ABDF35D Pos=0,282 Size=755,277 @@ -75,7 +75,7 @@ Size=32,35 Collapsed=0 [Window][Jerarquía] -ViewportPos=979,162 +ViewportPos=608,362 ViewportId=0x3ABDF35D Pos=377,0 Size=378,280 @@ -83,7 +83,7 @@ Collapsed=0 DockId=0x00000008,0 [Docking][Data] -DockNode ID=0x00000006 Pos=979,162 Size=755,559 Split=Y Selected=0xADB1772B +DockNode ID=0x00000006 Pos=608,362 Size=755,559 Split=Y Selected=0xADB1772B DockNode ID=0x00000007 Parent=0x00000006 SizeRef=195,280 Split=X DockNode ID=0x00000005 Parent=0x00000007 SizeRef=96,559 Selected=0xE7039252 DockNode ID=0x00000008 Parent=0x00000007 SizeRef=97,559 Selected=0xADB1772B From abf1f20b8b18eeeee13635d9facc4e33584289b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=ADdac=20P=C3=A9rez=20M=C3=A1rquez?= <125640145+didacpema@users.noreply.github.com> Date: Wed, 13 Nov 2024 12:07:55 +0100 Subject: [PATCH 31/48] intento sceneWindow --- .../sdl2_simple_example/MyWindow.cpp | 55 ++++++++++++++++--- .../sdl2_simple_example/MyWindow.h | 17 +++++- 2 files changed, 63 insertions(+), 9 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index 8ee6a69..cc62c53 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -1,11 +1,7 @@ -#include "Renderer.h" -#include "Scene.h" -#include -#include -#include -#include -#include + #include "MyWindow.h" +#include + #include "imgui.h" #include "imgui_impl_sdl2.h" #include "imgui_impl_opengl3.h" @@ -104,6 +100,39 @@ void MyWindow::close() { logMessage("Ventana cerrada."); } +void MyWindow::setupFramebuffer() { + glGenFramebuffers(1, &framebuffer); + glBindFramebuffer(GL_FRAMEBUFFER, framebuffer); + + // Crear la textura a la que renderizar + glGenTextures(1, &textureColorbuffer); + glBindTexture(GL_TEXTURE_2D, textureColorbuffer); + glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, renderer._WINDOW_SIZE.x, renderer._WINDOW_SIZE.y, 0, GL_RGB, GL_UNSIGNED_BYTE, NULL); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); + glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, textureColorbuffer, 0); + + // Crear el renderbuffer para almacenar el buffer de profundidad + glGenRenderbuffers(1, &rbo); + glBindRenderbuffer(GL_RENDERBUFFER, rbo); + glRenderbufferStorage(GL_RENDERBUFFER, GL_DEPTH24_STENCIL8, renderer._WINDOW_SIZE.x, renderer._WINDOW_SIZE.y); + glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_STENCIL_ATTACHMENT, GL_RENDERBUFFER, rbo); + + glBindFramebuffer(GL_FRAMEBUFFER, 0); // Desenlazar el framebuffer +} + +void MyWindow::renderToFramebuffer() { + glBindFramebuffer(GL_FRAMEBUFFER, framebuffer); + glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); // Limpiar los buffers + + // Configurar y dibujar la escena + renderer.setupView(5.0f, 0.5f, 0.5f, 0.0f, 0.0f); // Parámetros de la cámara + renderer.deployGrid(1.0f); // Renderizar una cuadrícula en la escena + scene.drawScene(); // Aquí debería dibujar toda la escena + + glBindFramebuffer(GL_FRAMEBUFFER, 0); // Desenlazar el framebuffer +} + void MyWindow::draw() { Uint32 currentTime = SDL_GetTicks(); @@ -170,7 +199,7 @@ void MyWindow::draw() { ImGui::EndMainMenuBar(); } //COMENTA ESTA LINEA PARA SER FELIZ - //ImGui::DockSpaceOverViewport(ImGui::GetMainViewport()->ID); + ImGui::DockSpaceOverViewport(ImGui::GetMainViewport()->ID); if (isConsolaOn) { @@ -314,6 +343,16 @@ void MyWindow::draw() { logMessage("Cámara ajustada al objeto seleccionado."); } + if (isSceneOn) { + renderToFramebuffer(); // Renderizar la escena en el framebuffer + + ImGui::Begin("Scene"); + + GLuint textureID = textureColorbuffer; // Usamos la textura del framebuffer + ImGui::Image((void*)(intptr_t)textureID, ImVec2(Renderer::_WINDOW_SIZE.x, Renderer::_WINDOW_SIZE.y)); + + ImGui::End(); + } if (isInspectorOn) { diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.h b/sdl2_simple_example/sdl2_simple_example/MyWindow.h index efcc3eb..3f95ccc 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.h +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.h @@ -1,7 +1,15 @@ #pragma once + + +#include "Renderer.h" +#include "Scene.h" + #include +#include #include #include +#include + #include @@ -28,6 +36,7 @@ class MyWindow { float cameraAngleX = 0.0f; // Ángulo de rotación en el eje X float cameraAngleY = 0.0f; // Ángulo de rotación en el eje Y float panX = 0.0f, panY = 0.0f; // Desplazamiento de la cámara (pan) + bool isSceneOn = true; bool isConsolaOn = true; bool isConfigOn = true; bool isJerarquiaOn = true; @@ -53,7 +62,11 @@ class MyWindow { bool processEvents(IEventProcessor* event_processor = nullptr); void draw(); void swapBuffers() const; - + + void setupFramebuffer(); + void renderToFramebuffer(); + + GLuint getFramebufferTexture() const { return textureColorbuffer; } void logMessage(const std::string& message); // Método para agregar mensajes al LOG std::vector logMessages; // Vector de mensajes de LOG @@ -62,6 +75,8 @@ class MyWindow { bool isFullscreen = false; + GLuint framebuffer, textureColorbuffer, rbo; + }; extern void handleFileDrop(const char* filePath); \ No newline at end of file From e4691aab2b8fe391d393a46959e215e7d83305ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=ADdac=20P=C3=A9rez=20M=C3=A1rquez?= <125640145+didacpema@users.noreply.github.com> Date: Wed, 20 Nov 2024 10:51:39 +0100 Subject: [PATCH 32/48] dockingDone & sceneWindow --- .../sdl2_simple_example/MyWindow.cpp | 36 +++++++------ .../sdl2_simple_example/Renderer.cpp | 2 +- .../sdl2_simple_example/Scene.cpp | 15 +++--- .../sdl2_simple_example/imgui.ini | 53 ++++++++++--------- .../sdl2_simple_example/main.cpp | 24 +++------ 5 files changed, 65 insertions(+), 65 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index cc62c53..ec75501 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -104,7 +104,6 @@ void MyWindow::setupFramebuffer() { glGenFramebuffers(1, &framebuffer); glBindFramebuffer(GL_FRAMEBUFFER, framebuffer); - // Crear la textura a la que renderizar glGenTextures(1, &textureColorbuffer); glBindTexture(GL_TEXTURE_2D, textureColorbuffer); glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, renderer._WINDOW_SIZE.x, renderer._WINDOW_SIZE.y, 0, GL_RGB, GL_UNSIGNED_BYTE, NULL); @@ -112,25 +111,34 @@ void MyWindow::setupFramebuffer() { glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, textureColorbuffer, 0); - // Crear el renderbuffer para almacenar el buffer de profundidad glGenRenderbuffers(1, &rbo); glBindRenderbuffer(GL_RENDERBUFFER, rbo); glRenderbufferStorage(GL_RENDERBUFFER, GL_DEPTH24_STENCIL8, renderer._WINDOW_SIZE.x, renderer._WINDOW_SIZE.y); glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_STENCIL_ATTACHMENT, GL_RENDERBUFFER, rbo); - glBindFramebuffer(GL_FRAMEBUFFER, 0); // Desenlazar el framebuffer + if (glCheckFramebufferStatus(GL_FRAMEBUFFER) != GL_FRAMEBUFFER_COMPLETE) { + logMessage("Framebuffer no está completo."); + } + + glBindFramebuffer(GL_FRAMEBUFFER, 0); } void MyWindow::renderToFramebuffer() { glBindFramebuffer(GL_FRAMEBUFFER, framebuffer); - glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); // Limpiar los buffers + glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); + + if (glCheckFramebufferStatus(GL_FRAMEBUFFER) != GL_FRAMEBUFFER_COMPLETE) { + logMessage("Framebuffer no está completo."); + return; + } + + renderer.setupView(cameraDistance, cameraAngleX, cameraAngleY, panX, panY); - // Configurar y dibujar la escena - renderer.setupView(5.0f, 0.5f, 0.5f, 0.0f, 0.0f); // Parámetros de la cámara - renderer.deployGrid(1.0f); // Renderizar una cuadrícula en la escena - scene.drawScene(); // Aquí debería dibujar toda la escena + renderer.deployGrid(10.0f); // Draw grid first - glBindFramebuffer(GL_FRAMEBUFFER, 0); // Desenlazar el framebuffer + scene.drawScene(); + + glBindFramebuffer(GL_FRAMEBUFFER, 0); } void MyWindow::draw() { @@ -344,13 +352,11 @@ void MyWindow::draw() { } if (isSceneOn) { - renderToFramebuffer(); // Renderizar la escena en el framebuffer - + renderToFramebuffer(); // Renderiza la escena al framebuffer ImGui::Begin("Scene"); - - GLuint textureID = textureColorbuffer; // Usamos la textura del framebuffer - ImGui::Image((void*)(intptr_t)textureID, ImVec2(Renderer::_WINDOW_SIZE.x, Renderer::_WINDOW_SIZE.y)); - + if (textureColorbuffer) { + ImGui::Image((void*)(intptr_t)textureColorbuffer, ImVec2(renderer._WINDOW_SIZE.x, renderer._WINDOW_SIZE.y)); + } ImGui::End(); } diff --git a/sdl2_simple_example/sdl2_simple_example/Renderer.cpp b/sdl2_simple_example/sdl2_simple_example/Renderer.cpp index 6724bb2..f4aecce 100644 --- a/sdl2_simple_example/sdl2_simple_example/Renderer.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Renderer.cpp @@ -64,7 +64,7 @@ void Renderer::setupView(float cameraDistance, float cameraAngleX, float cameraA eyeY = cameraDistance * sin(cameraAngleX) + panY; eyeZ = cameraDistance * cos(cameraAngleY) * cos(cameraAngleX); - gluLookAt(eyeX, eyeY, eyeZ, panX, panY, 0.0, 0.0, 1.0, 0.0); + gluLookAt(eyeX, eyeY, eyeZ, panX, panY, 0.0, 0.0, -1.0, 0.0); } void Renderer::applyProjectionAndViewport(ivec2 selectedResolution) { diff --git a/sdl2_simple_example/sdl2_simple_example/Scene.cpp b/sdl2_simple_example/sdl2_simple_example/Scene.cpp index ae1d540..ba418e0 100644 --- a/sdl2_simple_example/sdl2_simple_example/Scene.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Scene.cpp @@ -43,13 +43,14 @@ void Scene::setCheckerTexture(GLuint checkerTextureID) { } void Scene::drawScene() { - - for (const auto& obj : gameObjects) { - glPushMatrix(); // Guardar la matriz actual - - obj->draw(); // Dibujar el objeto - - glPopMatrix(); // Restaurar la matriz previa + for (auto* obj : gameObjects) { + if (obj->getTexture() == nullptr) { + if (checkerTextureID != 0) { + TextureData* checkerTexture = new TextureData(checkerTextureID, "checker_texture_path", 0, 0); + obj->setTexture(checkerTexture); + } + } + obj->draw(); } } void Scene::createCube(const char* filePath) { diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index 2a6eb84..29a7e16 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -4,9 +4,10 @@ Size=400,400 Collapsed=0 [Window][Consola] -Pos=21,494 -Size=568,100 +Pos=0,477 +Size=800,123 Collapsed=0 +DockId=0x00000009,1 [Window][Configuració] Pos=37,333 @@ -19,11 +20,10 @@ Size=186,113 Collapsed=0 [Window][Inspector] -ViewportPos=608,362 -ViewportId=0x3ABDF35D -Size=375,280 +Pos=464,19 +Size=176,456 Collapsed=0 -DockId=0x00000005,0 +DockId=0x00000006,0 [Window][Console] Pos=28,107 @@ -31,10 +31,8 @@ Size=488,472 Collapsed=0 [Window][Config] -ViewportPos=608,362 -ViewportId=0x3ABDF35D -Pos=0,282 -Size=755,277 +Pos=0,477 +Size=800,123 Collapsed=0 DockId=0x00000009,0 @@ -75,22 +73,27 @@ Size=32,35 Collapsed=0 [Window][Jerarquía] -ViewportPos=608,362 -ViewportId=0x3ABDF35D -Pos=377,0 -Size=378,280 +Pos=642,19 +Size=158,456 Collapsed=0 -DockId=0x00000008,0 +DockId=0x0000000B,0 + +[Window][Scene] +Pos=0,19 +Size=462,456 +Collapsed=0 +DockId=0x00000005,0 [Docking][Data] -DockNode ID=0x00000006 Pos=608,362 Size=755,559 Split=Y Selected=0xADB1772B - DockNode ID=0x00000007 Parent=0x00000006 SizeRef=195,280 Split=X - DockNode ID=0x00000005 Parent=0x00000007 SizeRef=96,559 Selected=0xE7039252 - DockNode ID=0x00000008 Parent=0x00000007 SizeRef=97,559 Selected=0xADB1772B - DockNode ID=0x00000009 Parent=0x00000006 SizeRef=195,277 Selected=0x94B17C7D -DockSpace ID=0x11111111 Pos=368,151 Size=800,581 Split=X - DockNode ID=0x00000003 Parent=0x11111111 SizeRef=600,581 Split=X - DockNode ID=0x00000001 Parent=0x00000003 SizeRef=397,581 Selected=0x29384C3A - DockNode ID=0x00000002 Parent=0x00000003 SizeRef=401,581 CentralNode=1 Selected=0x83E87391 - DockNode ID=0x00000004 Parent=0x11111111 SizeRef=198,581 Selected=0x6E9836EA +DockSpace ID=0x11111111 Window=0xA87D555D Pos=431,296 Size=800,581 Split=X + DockNode ID=0x00000003 Parent=0x11111111 SizeRef=600,581 Split=X + DockNode ID=0x00000001 Parent=0x00000003 SizeRef=397,581 Selected=0x29384C3A + DockNode ID=0x00000002 Parent=0x00000003 SizeRef=0,0 Split=Y Selected=0x83E87391 + DockNode ID=0x00000007 Parent=0x00000002 SizeRef=816,456 Split=X + DockNode ID=0x00000005 Parent=0x00000007 SizeRef=462,559 CentralNode=1 Selected=0xE192E354 + DockNode ID=0x00000008 Parent=0x00000007 SizeRef=336,559 Split=X Selected=0xADB1772B + DockNode ID=0x00000006 Parent=0x00000008 SizeRef=176,318 Selected=0xE7039252 + DockNode ID=0x0000000B Parent=0x00000008 SizeRef=158,318 Selected=0xADB1772B + DockNode ID=0x00000009 Parent=0x00000002 SizeRef=816,123 Selected=0xBCA7282E + DockNode ID=0x00000004 Parent=0x11111111 SizeRef=198,581 Selected=0x6E9836EA diff --git a/sdl2_simple_example/sdl2_simple_example/main.cpp b/sdl2_simple_example/sdl2_simple_example/main.cpp index c9335fa..463ee40 100644 --- a/sdl2_simple_example/sdl2_simple_example/main.cpp +++ b/sdl2_simple_example/sdl2_simple_example/main.cpp @@ -1,3 +1,7 @@ + + +#define SDL_MAIN_HANDLED + #include #include #include @@ -10,15 +14,6 @@ #include #include #include -#include -#include - -#define SDL_MAIN_HANDLED -#include -#include - -#include "Scene.h" -#include "Renderer.h" using namespace std; using hrclock = chrono::high_resolution_clock; @@ -94,14 +89,9 @@ int main(int argc, char** argv) { while (myWindow.processEvents() && myWindow.isOpen()) { auto start = hrclock::now(); - - glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); // Clear color and depth buffers - - Renderer::setupView(myWindow.cameraDistance, myWindow.cameraAngleX, myWindow.cameraAngleY, myWindow.panX, myWindow.panY); - - Renderer::deployGrid(10.0f); // Draw grid first - - scene.drawScene(); // Draw objects in the scene + + myWindow.setupFramebuffer(); + myWindow.renderToFramebuffer(); myWindow.draw(); myWindow.swapBuffers(); From e1b35b7a2d3475df50b0220f2c5d8ba6a61c1503 Mon Sep 17 00:00:00 2001 From: Adri1714 Date: Wed, 20 Nov 2024 11:20:30 +0100 Subject: [PATCH 33/48] no esta bien --- .../sdl2_simple_example/FilesystemUtils.h | 22 ++++++-- .../sdl2_simple_example/MyWindow.cpp | 53 +++++++++++++++---- .../sdl2_simple_example/MyWindow.h | 1 + .../sdl2_simple_example/imgui.ini | 48 +++++++++-------- .../sdl2_simple_example/main.cpp | 6 +-- 5 files changed, 92 insertions(+), 38 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/FilesystemUtils.h b/sdl2_simple_example/sdl2_simple_example/FilesystemUtils.h index 4e3d0e0..1a64586 100644 --- a/sdl2_simple_example/sdl2_simple_example/FilesystemUtils.h +++ b/sdl2_simple_example/sdl2_simple_example/FilesystemUtils.h @@ -1,15 +1,14 @@ #pragma once #include -#include -#include namespace fs = std::filesystem; class FileSystemUtils { public: + //crear directorios necesarios static void GenerateRequiredDirectories() { - const std::vector dirs = { "Assets", "Library/Meshes", "Library/Materials", "Library/Models" }; + const std::vector dirs = { "Assets", "Library/Meshes", "Library/Materials", "Library/Models", "Library/Textures"}; for (const auto& dir : dirs) { if (!fs::exists(dir)) { fs::create_directories(dir); @@ -17,7 +16,24 @@ class FileSystemUtils { } } + //Obtener nombre del archivo a partir de su ruta static std::string getFileName(const std::string& filePath) { return fs::path(filePath).filename().string(); } + + // Listar todos los archivos y carpetas dentro de un directorio + static std::vector ListDirectory(const std::string& directoryPath) { + std::vector entries; + if (fs::exists(directoryPath) && fs::is_directory(directoryPath)) { + for (const auto& entry : fs::directory_iterator(directoryPath)) { + entries.push_back(entry.path().string()); + } + } + return entries; + } + + // Verificar si un archivo existe + static bool FileExists(const std::string& filePath) { + return fs::exists(filePath); + } }; diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index ec75501..8621a6b 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -8,7 +8,7 @@ #include "MemoryUsage.h" #include #include - +#include "FilesystemUtils.h" using namespace std; extern Scene scene; @@ -20,6 +20,10 @@ float y = Renderer::eyeY; float z = Renderer::eyeZ; bool chekerOn = false; + +std::string currentDirectory = "Library/Meshes"; +std::vector directoryContents; + MyWindow::MyWindow(const char* title, unsigned short width, unsigned short height) : fps(0.0f), frameCount(0), lastTime(SDL_GetTicks()) { SDL_Init(SDL_INIT_VIDEO); // Mueve esta l�nea al principio del constructor open(title, width, height); @@ -67,6 +71,10 @@ void MyWindow::logMessage(const std::string& message) { logMessages.push_back(message); } +void MyWindow::UpdateDirectoryContents() { + directoryContents = FileSystemUtils::ListDirectory(currentDirectory); +} + void MyWindow::open(const char* title, unsigned short width, unsigned short height) { if (isOpen()) return; SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1); @@ -475,7 +483,33 @@ void MyWindow::draw() { ImGui::EndPopup(); } + ImGui::Begin("File Explorer"); + + // Mostrar directorio actual + ImGui::Text("Current Directory: %s", currentDirectory.c_str()); + + // Botón para volver al directorio padre + if (ImGui::Button(".. (Go Up)")) { + currentDirectory = fs::path(currentDirectory).parent_path().string(); + UpdateDirectoryContents(); + } + + // Mostrar los archivos y carpetas + for (const auto& entry : directoryContents) { + if (fs::is_directory(entry)) { + // Mostrar carpetas + if (ImGui::Button((FileSystemUtils::getFileName(entry) + "/").c_str())) { + currentDirectory = entry; + UpdateDirectoryContents(); + } + } + else { + // Mostrar archivos + ImGui::Text("%s", FileSystemUtils::getFileName(entry).c_str()); + } + } + ImGui::End(); ImGui::Render(); ImGui_ImplOpenGL3_RenderDrawData(ImGui::GetDrawData()); @@ -499,20 +533,19 @@ bool MyWindow::processEvents(IEventProcessor* event_processor) { // Enviar el evento a ImGui primero ImGui_ImplSDL2_ProcessEvent(&e); - // Procesa el evento de archivo arrastrado y soltado - if (e.type == SDL_DROPFILE) { + if (event_processor) { + event_processor->processEvent(e); // Procesar eventos personalizados + } + + switch (e.type) + { + case SDL_DROPFILE: { char* droppedFile = e.drop.file; logMessage("Archivo arrastrado: " + string(droppedFile)); handleFileDrop(droppedFile); // Tu función para manejar archivos SDL_free(droppedFile); - continue; - } - - if (event_processor) { - event_processor->processEvent(e); // Procesar eventos personalizados + break; } - - switch (e.type) { case SDL_QUIT: logMessage("Evento de salida recibido."); close(); diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.h b/sdl2_simple_example/sdl2_simple_example/MyWindow.h index 3f95ccc..c038ed7 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.h +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.h @@ -70,6 +70,7 @@ class MyWindow { void logMessage(const std::string& message); // Método para agregar mensajes al LOG std::vector logMessages; // Vector de mensajes de LOG + void UpdateDirectoryContents(); glm::ivec2 selectedResolution; diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index 29a7e16..3b4a79c 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -4,8 +4,8 @@ Size=400,400 Collapsed=0 [Window][Consola] -Pos=0,477 -Size=800,123 +Pos=0,568 +Size=800,32 Collapsed=0 DockId=0x00000009,1 @@ -20,10 +20,10 @@ Size=186,113 Collapsed=0 [Window][Inspector] -Pos=464,19 -Size=176,456 +Pos=590,19 +Size=210,547 Collapsed=0 -DockId=0x00000006,0 +DockId=0x00000008,1 [Window][Console] Pos=28,107 @@ -31,8 +31,8 @@ Size=488,472 Collapsed=0 [Window][Config] -Pos=0,477 -Size=800,123 +Pos=0,568 +Size=800,32 Collapsed=0 DockId=0x00000009,0 @@ -73,27 +73,31 @@ Size=32,35 Collapsed=0 [Window][Jerarquía] -Pos=642,19 -Size=158,456 +Pos=590,19 +Size=210,547 Collapsed=0 -DockId=0x0000000B,0 +DockId=0x00000008,0 [Window][Scene] Pos=0,19 -Size=462,456 +Size=588,547 Collapsed=0 DockId=0x00000005,0 +[Window][File Explorer] +Pos=0,568 +Size=800,32 +Collapsed=0 +DockId=0x00000009,2 + [Docking][Data] -DockSpace ID=0x11111111 Window=0xA87D555D Pos=431,296 Size=800,581 Split=X - DockNode ID=0x00000003 Parent=0x11111111 SizeRef=600,581 Split=X - DockNode ID=0x00000001 Parent=0x00000003 SizeRef=397,581 Selected=0x29384C3A - DockNode ID=0x00000002 Parent=0x00000003 SizeRef=0,0 Split=Y Selected=0x83E87391 - DockNode ID=0x00000007 Parent=0x00000002 SizeRef=816,456 Split=X - DockNode ID=0x00000005 Parent=0x00000007 SizeRef=462,559 CentralNode=1 Selected=0xE192E354 - DockNode ID=0x00000008 Parent=0x00000007 SizeRef=336,559 Split=X Selected=0xADB1772B - DockNode ID=0x00000006 Parent=0x00000008 SizeRef=176,318 Selected=0xE7039252 - DockNode ID=0x0000000B Parent=0x00000008 SizeRef=158,318 Selected=0xADB1772B - DockNode ID=0x00000009 Parent=0x00000002 SizeRef=816,123 Selected=0xBCA7282E - DockNode ID=0x00000004 Parent=0x11111111 SizeRef=198,581 Selected=0x6E9836EA +DockSpace ID=0x11111111 Window=0xA87D555D Pos=440,244 Size=800,581 Split=X + DockNode ID=0x00000003 Parent=0x11111111 SizeRef=600,581 Split=X + DockNode ID=0x00000001 Parent=0x00000003 SizeRef=397,581 Selected=0x29384C3A + DockNode ID=0x00000002 Parent=0x00000003 SizeRef=0,0 Split=Y Selected=0x83E87391 + DockNode ID=0x00000007 Parent=0x00000002 SizeRef=816,547 Split=X + DockNode ID=0x00000005 Parent=0x00000007 SizeRef=588,559 CentralNode=1 Selected=0xE192E354 + DockNode ID=0x00000008 Parent=0x00000007 SizeRef=210,559 Selected=0xADB1772B + DockNode ID=0x00000009 Parent=0x00000002 SizeRef=816,32 Selected=0xCAC6E4C7 + DockNode ID=0x00000004 Parent=0x11111111 SizeRef=198,581 Selected=0x6E9836EA diff --git a/sdl2_simple_example/sdl2_simple_example/main.cpp b/sdl2_simple_example/sdl2_simple_example/main.cpp index 463ee40..7aeab28 100644 --- a/sdl2_simple_example/sdl2_simple_example/main.cpp +++ b/sdl2_simple_example/sdl2_simple_example/main.cpp @@ -25,7 +25,6 @@ static const auto FRAME_DT = 1.0s / FPS; Importer importer; Scene scene; -FileSystemUtils fileSystemUtils; void handleFileDrop(const char* filePath) { std::string fileName = FileSystemUtils::getFileName(filePath); @@ -59,9 +58,10 @@ void handleFileDrop(const char* filePath) { int main(int argc, char** argv) { - fileSystemUtils.GenerateRequiredDirectories(); - + FileSystemUtils::GenerateRequiredDirectories(); + MyWindow myWindow("SDL2 Simple Example", WINDOW_SIZE.x, WINDOW_SIZE.y); + myWindow.UpdateDirectoryContents(); // Cargar contenido inicial importer.setWindow(&myWindow); myWindow.logMessage("Initializing SDL..."); From 44c6c74d24652808c5e7553ee899412545c79a50 Mon Sep 17 00:00:00 2001 From: Adri1714 Date: Wed, 20 Nov 2024 12:05:22 +0100 Subject: [PATCH 34/48] import from files va pero no hay drag and drop, es con clic --- .../sdl2_simple_example/FilesystemUtils.h | 50 ++++++++++++--- .../sdl2_simple_example/MyWindow.cpp | 64 +++++++++++++++---- .../sdl2_simple_example/imgui.ini | 22 +++---- .../sdl2_simple_example/main.cpp | 13 ++-- 4 files changed, 109 insertions(+), 40 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/FilesystemUtils.h b/sdl2_simple_example/sdl2_simple_example/FilesystemUtils.h index 1a64586..56a9cef 100644 --- a/sdl2_simple_example/sdl2_simple_example/FilesystemUtils.h +++ b/sdl2_simple_example/sdl2_simple_example/FilesystemUtils.h @@ -1,39 +1,69 @@ #pragma once #include +#include namespace fs = std::filesystem; class FileSystemUtils { public: - //crear directorios necesarios + // Crear directorios necesarios static void GenerateRequiredDirectories() { - const std::vector dirs = { "Assets", "Library/Meshes", "Library/Materials", "Library/Models", "Library/Textures"}; + const std::vector dirs = { + "Assets", + "Library/Meshes", + "Library/Materials", + "Library/Models", + "Library/Textures" + }; + for (const auto& dir : dirs) { - if (!fs::exists(dir)) { - fs::create_directories(dir); + try { + if (!fs::exists(dir)) { + fs::create_directories(dir); + } + } + catch (const fs::filesystem_error& e) { + std::cerr << "Error al crear directorio " << dir << ": " << e.what() << std::endl; } } } - //Obtener nombre del archivo a partir de su ruta + // Obtener nombre del archivo a partir de su ruta static std::string getFileName(const std::string& filePath) { - return fs::path(filePath).filename().string(); + try { + return fs::path(filePath).filename().string(); + } + catch (const fs::filesystem_error& e) { + std::cerr << "Error al obtener el nombre del archivo: " << e.what() << std::endl; + return ""; + } } // Listar todos los archivos y carpetas dentro de un directorio static std::vector ListDirectory(const std::string& directoryPath) { std::vector entries; - if (fs::exists(directoryPath) && fs::is_directory(directoryPath)) { - for (const auto& entry : fs::directory_iterator(directoryPath)) { - entries.push_back(entry.path().string()); + try { + if (fs::exists(directoryPath) && fs::is_directory(directoryPath)) { + for (const auto& entry : fs::directory_iterator(directoryPath)) { + entries.push_back(entry.path().generic_string()); + } } } + catch (const fs::filesystem_error& e) { + std::cerr << "Error al listar el directorio " << directoryPath << ": " << e.what() << std::endl; + } return entries; } // Verificar si un archivo existe static bool FileExists(const std::string& filePath) { - return fs::exists(filePath); + try { + return fs::exists(filePath); + } + catch (const fs::filesystem_error& e) { + std::cerr << "Error al verificar existencia de archivo: " << e.what() << std::endl; + return false; + } } }; diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index 8621a6b..a8627f4 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -72,7 +72,17 @@ void MyWindow::logMessage(const std::string& message) { } void MyWindow::UpdateDirectoryContents() { - directoryContents = FileSystemUtils::ListDirectory(currentDirectory); + try { + directoryContents.clear(); // Limpiar contenido previo + + if (fs::exists(currentDirectory) && fs::is_directory(currentDirectory)) { + for (const auto& entry : fs::directory_iterator(currentDirectory)) { + directoryContents.push_back(entry.path().string()); + } + } + } catch (const fs::filesystem_error& e) { + std::cerr << "Error listing directory: " << e.what() << std::endl; + } } void MyWindow::open(const char* title, unsigned short width, unsigned short height) { @@ -488,28 +498,54 @@ void MyWindow::draw() { // Mostrar directorio actual ImGui::Text("Current Directory: %s", currentDirectory.c_str()); - // Botón para volver al directorio padre + // Botón para navegar al directorio padre if (ImGui::Button(".. (Go Up)")) { - currentDirectory = fs::path(currentDirectory).parent_path().string(); - UpdateDirectoryContents(); + try { + fs::path parent = fs::path(currentDirectory).parent_path(); + if (fs::exists(parent)) { + currentDirectory = parent.string(); + UpdateDirectoryContents(); + } + else { + ImGui::Text("Error: Parent directory does not exist."); + } + } + catch (const fs::filesystem_error& e) { + ImGui::Text("Error accessing parent directory: %s", e.what()); + } } - // Mostrar los archivos y carpetas - for (const auto& entry : directoryContents) { - if (fs::is_directory(entry)) { - // Mostrar carpetas - if (ImGui::Button((FileSystemUtils::getFileName(entry) + "/").c_str())) { - currentDirectory = entry; - UpdateDirectoryContents(); + // Listar contenido del directorio + for (const auto& entryPath : directoryContents) { + try { + fs::path entry(entryPath); // Convertir a fs::path + + // Si es un directorio, mostrarlo como botón + if (fs::is_directory(entry)) { + if (ImGui::Button(FileSystemUtils::getFileName(entry.string()).c_str())) { + currentDirectory = entry.string(); + UpdateDirectoryContents(); + } + } + // Si es un archivo, permitir interacción + else { + ImGui::Text("%s", FileSystemUtils::getFileName(entry.string()).c_str()); + + // Permitir arrastrar archivos hacia la escena + if (ImGui::IsItemClicked()) { + handleFileDrop(entry.string().c_str()); + } } } - else { - // Mostrar archivos - ImGui::Text("%s", FileSystemUtils::getFileName(entry).c_str()); + catch (const fs::filesystem_error& e) { + ImGui::Text("Error: %s", e.what()); // Mostrar errores específicos por entrada } } ImGui::End(); + + + ImGui::Render(); ImGui_ImplOpenGL3_RenderDrawData(ImGui::GetDrawData()); diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index 3b4a79c..347e837 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -4,8 +4,8 @@ Size=400,400 Collapsed=0 [Window][Consola] -Pos=0,568 -Size=800,32 +Pos=0,381 +Size=800,219 Collapsed=0 DockId=0x00000009,1 @@ -21,7 +21,7 @@ Collapsed=0 [Window][Inspector] Pos=590,19 -Size=210,547 +Size=210,360 Collapsed=0 DockId=0x00000008,1 @@ -31,8 +31,8 @@ Size=488,472 Collapsed=0 [Window][Config] -Pos=0,568 -Size=800,32 +Pos=0,381 +Size=800,219 Collapsed=0 DockId=0x00000009,0 @@ -74,19 +74,19 @@ Collapsed=0 [Window][Jerarquía] Pos=590,19 -Size=210,547 +Size=210,360 Collapsed=0 DockId=0x00000008,0 [Window][Scene] Pos=0,19 -Size=588,547 +Size=588,360 Collapsed=0 DockId=0x00000005,0 [Window][File Explorer] -Pos=0,568 -Size=800,32 +Pos=0,381 +Size=800,219 Collapsed=0 DockId=0x00000009,2 @@ -95,9 +95,9 @@ DockSpace ID=0x11111111 Window=0xA87D555D Pos=440,244 Size=800,581 Split DockNode ID=0x00000003 Parent=0x11111111 SizeRef=600,581 Split=X DockNode ID=0x00000001 Parent=0x00000003 SizeRef=397,581 Selected=0x29384C3A DockNode ID=0x00000002 Parent=0x00000003 SizeRef=0,0 Split=Y Selected=0x83E87391 - DockNode ID=0x00000007 Parent=0x00000002 SizeRef=816,547 Split=X + DockNode ID=0x00000007 Parent=0x00000002 SizeRef=816,360 Split=X DockNode ID=0x00000005 Parent=0x00000007 SizeRef=588,559 CentralNode=1 Selected=0xE192E354 DockNode ID=0x00000008 Parent=0x00000007 SizeRef=210,559 Selected=0xADB1772B - DockNode ID=0x00000009 Parent=0x00000002 SizeRef=816,32 Selected=0xCAC6E4C7 + DockNode ID=0x00000009 Parent=0x00000002 SizeRef=816,219 Selected=0xCAC6E4C7 DockNode ID=0x00000004 Parent=0x11111111 SizeRef=198,581 Selected=0x6E9836EA diff --git a/sdl2_simple_example/sdl2_simple_example/main.cpp b/sdl2_simple_example/sdl2_simple_example/main.cpp index 7aeab28..d36f1d9 100644 --- a/sdl2_simple_example/sdl2_simple_example/main.cpp +++ b/sdl2_simple_example/sdl2_simple_example/main.cpp @@ -25,10 +25,12 @@ static const auto FRAME_DT = 1.0s / FPS; Importer importer; Scene scene; +MyWindow myWindow("SDL2 Simple Example", WINDOW_SIZE.x, WINDOW_SIZE.y); void handleFileDrop(const char* filePath) { std::string fileName = FileSystemUtils::getFileName(filePath); + // Procesar extensiones size_t dotPos = fileName.find_last_of("."); if (dotPos != std::string::npos) { fileName = fileName.substr(0, dotPos); @@ -40,9 +42,8 @@ void handleFileDrop(const char* filePath) { if (importer.loadFBX(filePath)) { scene.loadModelData(importer.getVertices(), importer.getUVs(), importer.getIndices(), fileName); - // Asigna la textura checker independientemente de si el modelo tiene una textura propia - if (scene.checkerTextureID == 0) - { + // Configurar textura checker si no está asignada + if (scene.checkerTextureID == 0) { scene.checkerTextureID = importer.GenerateCheckerTexture(); } scene.setCheckerTexture(scene.checkerTextureID); @@ -50,17 +51,19 @@ void handleFileDrop(const char* filePath) { } else if (extension == "png" || extension == "jpg") { TextureData* texture = importer.loadTexture(filePath); - if (texture != 0) { + if (texture != nullptr) { scene.setTexture(texture); } } + + // Actualizar el contenido del directorio en la interfaz + myWindow.UpdateDirectoryContents(); } int main(int argc, char** argv) { FileSystemUtils::GenerateRequiredDirectories(); - MyWindow myWindow("SDL2 Simple Example", WINDOW_SIZE.x, WINDOW_SIZE.y); myWindow.UpdateDirectoryContents(); // Cargar contenido inicial importer.setWindow(&myWindow); From e8c7390dc06034ca9b96aacfb7ae6b6774d98b4f Mon Sep 17 00:00:00 2001 From: Adri1714 Date: Mon, 25 Nov 2024 13:53:46 +0100 Subject: [PATCH 35/48] Different Window files, no va bien ahun --- .../sdl2_simple_example/Config.cpp | 104 ++++++++++++++++++ .../sdl2_simple_example/Config.h | 20 ++++ .../sdl2_simple_example/Consola.cpp | 12 ++ .../sdl2_simple_example/Consola.h | 19 ++++ .../sdl2_simple_example/MyWindow.cpp | 8 +- .../sdl2_simple_example/imgui.ini | 4 +- .../sdl2_simple_example.vcxproj | 4 + .../sdl2_simple_example.vcxproj.filters | 15 +++ 8 files changed, 178 insertions(+), 8 deletions(-) create mode 100644 sdl2_simple_example/sdl2_simple_example/Config.cpp create mode 100644 sdl2_simple_example/sdl2_simple_example/Config.h create mode 100644 sdl2_simple_example/sdl2_simple_example/Consola.cpp create mode 100644 sdl2_simple_example/sdl2_simple_example/Consola.h diff --git a/sdl2_simple_example/sdl2_simple_example/Config.cpp b/sdl2_simple_example/sdl2_simple_example/Config.cpp new file mode 100644 index 0000000..0245b72 --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/Config.cpp @@ -0,0 +1,104 @@ +#include "Config.h" +#include "MyWindow.h" + + +Config::Config() {} +Config::~Config() {} + +void Config::draw(SDL_Window* _window) { + ImGui::Begin("Config"); + ImGui::Text("Configuracion general del sistema"); + + // Sección de resolución de pantalla + ImGui::Text("Resolución de pantalla:"); + + struct ResolutionItem { + ivec2 resolution; + std::string name; + }; + + std::vector resolutions = { + { {800, 600}, "800 x 600" }, + { {1024, 768}, "1024 x 768" }, + { {1280, 720}, "1280 x 720" }, + { {1360, 768}, "1360 x 768" }, + { {1366, 768}, "1366 x 768" }, + { {1440, 900}, "1440 x 900" }, + { {1600, 900}, "1600 x 900" }, + { {1920, 1080}, "1920 x 1080" } + }; + + static int selectedResolutionIndex = 0; + if (ImGui::Combo("Resolucion", &selectedResolutionIndex, [](void* data, int idx, const char** out_text) { + const std::vector* resolutions = static_cast*>(data); + *out_text = resolutions->at(idx).name.c_str(); // Return resolution name + return true; + }, (void*)&resolutions, resolutions.size())) { + selectedResolution = resolutions[selectedResolutionIndex].resolution; + + // Update window size + SDL_SetWindowSize(_window, selectedResolution.x, selectedResolution.y); + + // Ensure we apply the new projection and viewport + if (!isFullscreen) { + renderer.applyProjectionAndViewport(selectedResolution); // Aplica la resolución seleccionada + } + } + + // Sección de pantalla completa + if (ImGui::Checkbox("Pantalla completa", &isFullscreen)) { + if (isFullscreen) { + SDL_SetWindowFullscreen(_window, SDL_WINDOW_FULLSCREEN_DESKTOP); + logMessage("Pantalla completa activada."); + } + else { + SDL_SetWindowFullscreen(_window, 0); // 0 means windowed mode + logMessage("Pantalla completa desactivada."); + } + + // Get the current window size dynamically after changing fullscreen mode + int windowWidth, windowHeight; + SDL_GetWindowSize(_window, &windowWidth, &windowHeight); + + // Apply the new window size for projection and viewport + renderer.applyProjectionAndViewport(ivec2(windowWidth, windowHeight)); + } + + ImGui::Text("Grafico FPS"); + static float values[90] = {}; + static int values_offset = 0; + values[values_offset] = fps; // Ejemplo fijo de FPS + values_offset = (values_offset + 1) % 90; + char fpsText[16]; + sprintf_s(fpsText, "%d fps", static_cast(fps)); + ImGui::PlotLines("FPS", values, IM_ARRAYSIZE(values), values_offset, fpsText, 0.0f, 100.0f, ImVec2(0, 80)); + + ImGui::Text("Consumo de Memoria: "); + try { + MemoryInfo memInfo = MemoryUsage::getMemoryInfo(); + ImGui::Separator(); + ImGui::Text("Consumo de Memoria:"); + ImGui::Text("Memoria Total: %llu MB", memInfo.totalMemory); + ImGui::Text("Memoria Libre: %llu MB", memInfo.freeMemory); + ImGui::Text("Memoria Usada: %llu MB", memInfo.usedMemory); + static float totalMemoryValues[90]; + static float freeMemoryValues[90]; + static float usedMemoryValues[90]; + static int memValuesOffset = 0; + + totalMemoryValues[memValuesOffset] = memInfo.totalMemory; + freeMemoryValues[memValuesOffset] = memInfo.freeMemory; + usedMemoryValues[memValuesOffset] = memInfo.usedMemory; + memValuesOffset = (values_offset + 1) % 90; + + ImGui::PlotLines("TotalMem", totalMemoryValues, IM_ARRAYSIZE(totalMemoryValues), memValuesOffset, "TotalMem", 0.0f, 100.0f, ImVec2(0, 80)); + ImGui::PlotLines("freeMem", freeMemoryValues, IM_ARRAYSIZE(freeMemoryValues), memValuesOffset, "FreeMem", 0.0f, 100.0f, ImVec2(0, 80)); + ImGui::PlotLines("UsedMem", usedMemoryValues, IM_ARRAYSIZE(usedMemoryValues), memValuesOffset, "UsedMem", 0.0f, 100.0f, ImVec2(0, 80)); + } + catch (const std::exception& e) { + ImGui::Text("Error obteniendo memoria: %s", e.what()); + } + ImGui::Text("Deteccion de maquinaria i versions de programario:"); + ImGui::Text("SDL, OpenGL, DevIL"); + ImGui::End(); +} \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Config.h b/sdl2_simple_example/sdl2_simple_example/Config.h new file mode 100644 index 0000000..20c18c1 --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/Config.h @@ -0,0 +1,20 @@ +#pragma once +#ifndef CONFIG_H +#define CONFIG_H + +#include +#include +#include + +class Config { +public: + Config(); + ~Config(); + + void draw(SDL_Window* _window); + glm::ivec2 selectedResolution; +private: +}; + + +#endif // CONFIG_H \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Consola.cpp b/sdl2_simple_example/sdl2_simple_example/Consola.cpp new file mode 100644 index 0000000..ff96704 --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/Consola.cpp @@ -0,0 +1,12 @@ +#include "Consola.h" + +Consola::Consola(){} +Consola::~Consola(){} + +void Consola::draw(std::vector logMessage) { + ImGui::Begin("Consola"); + for (const auto& msg : logMessage) { + ImGui::Text("%s", msg.c_str()); + } + ImGui::End(); +} \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Consola.h b/sdl2_simple_example/sdl2_simple_example/Consola.h new file mode 100644 index 0000000..73f490c --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/Consola.h @@ -0,0 +1,19 @@ +#pragma once +#ifndef CONSOLA_H +#define CONSOLA_H + +#include +#include +#include + +class Consola { +public: + Consola(); + ~Consola(); + + static void draw(std::vector logMessage); +private: + +}; + +#endif // CONSOLA_H \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index a8627f4..35f4e4a 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -6,9 +6,9 @@ #include "imgui_impl_sdl2.h" #include "imgui_impl_opengl3.h" #include "MemoryUsage.h" -#include #include #include "FilesystemUtils.h" +#include "Consola.h" using namespace std; extern Scene scene; @@ -229,11 +229,7 @@ void MyWindow::draw() { if (isConsolaOn) { - ImGui::Begin("Consola"); - for (const auto& msg : logMessages) { - ImGui::Text("%s", msg.c_str()); - } - ImGui::End(); + Consola::draw(logMessages); } if (isConfigOn) diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index 347e837..fc5c4ce 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -91,13 +91,13 @@ Collapsed=0 DockId=0x00000009,2 [Docking][Data] -DockSpace ID=0x11111111 Window=0xA87D555D Pos=440,244 Size=800,581 Split=X +DockSpace ID=0x11111111 Window=0xA87D555D Pos=368,151 Size=800,581 Split=X DockNode ID=0x00000003 Parent=0x11111111 SizeRef=600,581 Split=X DockNode ID=0x00000001 Parent=0x00000003 SizeRef=397,581 Selected=0x29384C3A DockNode ID=0x00000002 Parent=0x00000003 SizeRef=0,0 Split=Y Selected=0x83E87391 DockNode ID=0x00000007 Parent=0x00000002 SizeRef=816,360 Split=X DockNode ID=0x00000005 Parent=0x00000007 SizeRef=588,559 CentralNode=1 Selected=0xE192E354 DockNode ID=0x00000008 Parent=0x00000007 SizeRef=210,559 Selected=0xADB1772B - DockNode ID=0x00000009 Parent=0x00000002 SizeRef=816,219 Selected=0xCAC6E4C7 + DockNode ID=0x00000009 Parent=0x00000002 SizeRef=816,219 Selected=0xBCA7282E DockNode ID=0x00000004 Parent=0x11111111 SizeRef=198,581 Selected=0x6E9836EA diff --git a/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj b/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj index bc03109..ffb433d 100644 --- a/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj +++ b/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj @@ -128,6 +128,8 @@ + + @@ -138,7 +140,9 @@ + + diff --git a/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj.filters b/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj.filters index 799f651..b159d0e 100644 --- a/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj.filters +++ b/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj.filters @@ -13,6 +13,9 @@ {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + {15a2393b-0452-4c45-af67-e7d5dde42e75} + @@ -39,6 +42,12 @@ Source Files + + Windows + + + Windows + @@ -74,5 +83,11 @@ Header Files + + Windows + + + Windows + \ No newline at end of file From fa5f504fba80b37d55c7f89e8fe7e92529d3d283 Mon Sep 17 00:00:00 2001 From: Adri1714 Date: Wed, 27 Nov 2024 11:58:53 +0100 Subject: [PATCH 36/48] Config.cpp y .h funcionan! --- .../sdl2_simple_example/Config.cpp | 9 +- .../sdl2_simple_example/Config.h | 11 +- .../sdl2_simple_example/Importer.cpp | 2 +- .../sdl2_simple_example/MyWindow.cpp | 101 +----------------- .../sdl2_simple_example/MyWindow.h | 1 - .../sdl2_simple_example/imgui.ini | 4 +- 6 files changed, 19 insertions(+), 109 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/Config.cpp b/sdl2_simple_example/sdl2_simple_example/Config.cpp index 0245b72..b605b48 100644 --- a/sdl2_simple_example/sdl2_simple_example/Config.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Config.cpp @@ -1,11 +1,10 @@ #include "Config.h" -#include "MyWindow.h" -Config::Config() {} +Config::Config(MyWindow* window) : _myWindow(window) {} Config::~Config() {} -void Config::draw(SDL_Window* _window) { +void Config::draw(SDL_Window* _window, Renderer renderer, float fps) { ImGui::Begin("Config"); ImGui::Text("Configuracion general del sistema"); @@ -49,11 +48,11 @@ void Config::draw(SDL_Window* _window) { if (ImGui::Checkbox("Pantalla completa", &isFullscreen)) { if (isFullscreen) { SDL_SetWindowFullscreen(_window, SDL_WINDOW_FULLSCREEN_DESKTOP); - logMessage("Pantalla completa activada."); + _myWindow->logMessage("Pantalla completa activada."); } else { SDL_SetWindowFullscreen(_window, 0); // 0 means windowed mode - logMessage("Pantalla completa desactivada."); + _myWindow->logMessage("Pantalla completa desactivada."); } // Get the current window size dynamically after changing fullscreen mode diff --git a/sdl2_simple_example/sdl2_simple_example/Config.h b/sdl2_simple_example/sdl2_simple_example/Config.h index 20c18c1..f7d3d01 100644 --- a/sdl2_simple_example/sdl2_simple_example/Config.h +++ b/sdl2_simple_example/sdl2_simple_example/Config.h @@ -5,15 +5,20 @@ #include #include #include +#include "MyWindow.h" +#include "MemoryUsage.h" + class Config { public: - Config(); + Config(MyWindow* window); ~Config(); - void draw(SDL_Window* _window); - glm::ivec2 selectedResolution; + void draw(SDL_Window* _window, Renderer renderer, float fps); private: + MyWindow* _myWindow; + glm::ivec2 selectedResolution; + bool isFullscreen = false; }; diff --git a/sdl2_simple_example/sdl2_simple_example/Importer.cpp b/sdl2_simple_example/sdl2_simple_example/Importer.cpp index cf1e074..6245ea3 100644 --- a/sdl2_simple_example/sdl2_simple_example/Importer.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Importer.cpp @@ -8,7 +8,7 @@ #include #include #include -#include "MyWindow.h" +#include using vec3 = glm::dvec3; diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index 35f4e4a..81cb133 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -5,10 +5,10 @@ #include "imgui.h" #include "imgui_impl_sdl2.h" #include "imgui_impl_opengl3.h" -#include "MemoryUsage.h" #include #include "FilesystemUtils.h" #include "Consola.h" +#include "Config.h" using namespace std; extern Scene scene; @@ -27,7 +27,7 @@ std::vector directoryContents; MyWindow::MyWindow(const char* title, unsigned short width, unsigned short height) : fps(0.0f), frameCount(0), lastTime(SDL_GetTicks()) { SDL_Init(SDL_INIT_VIDEO); // Mueve esta l�nea al principio del constructor open(title, width, height); - + ImGui::CreateContext(); g_io = &ImGui::GetIO(); @@ -160,6 +160,7 @@ void MyWindow::renderToFramebuffer() { } void MyWindow::draw() { + Config config(this); Uint32 currentTime = SDL_GetTicks(); frameCount++; @@ -234,101 +235,7 @@ void MyWindow::draw() { if (isConfigOn) { - ImGui::Begin("Config"); - ImGui::Text("Configuracion general del sistema"); - - // Sección de resolución de pantalla - ImGui::Text("Resolución de pantalla:"); - - struct ResolutionItem { - ivec2 resolution; - std::string name; - }; - - std::vector resolutions = { - { {800, 600}, "800 x 600" }, - { {1024, 768}, "1024 x 768" }, - { {1280, 720}, "1280 x 720" }, - { {1360, 768}, "1360 x 768" }, - { {1366, 768}, "1366 x 768" }, - { {1440, 900}, "1440 x 900" }, - { {1600, 900}, "1600 x 900" }, - { {1920, 1080}, "1920 x 1080" } - }; - - static int selectedResolutionIndex = 0; - if (ImGui::Combo("Resolucion", &selectedResolutionIndex, [](void* data, int idx, const char** out_text) { - const std::vector* resolutions = static_cast*>(data); - *out_text = resolutions->at(idx).name.c_str(); // Return resolution name - return true; - }, (void*)&resolutions, resolutions.size())) { - selectedResolution = resolutions[selectedResolutionIndex].resolution; - - // Update window size - SDL_SetWindowSize(_window, selectedResolution.x, selectedResolution.y); - - // Ensure we apply the new projection and viewport - if (!isFullscreen) { - renderer.applyProjectionAndViewport(selectedResolution); // Aplica la resolución seleccionada - } - } - - // Sección de pantalla completa - if (ImGui::Checkbox("Pantalla completa", &isFullscreen)) { - if (isFullscreen) { - SDL_SetWindowFullscreen(_window, SDL_WINDOW_FULLSCREEN_DESKTOP); - logMessage("Pantalla completa activada."); - } - else { - SDL_SetWindowFullscreen(_window, 0); // 0 means windowed mode - logMessage("Pantalla completa desactivada."); - } - - // Get the current window size dynamically after changing fullscreen mode - int windowWidth, windowHeight; - SDL_GetWindowSize(_window, &windowWidth, &windowHeight); - - // Apply the new window size for projection and viewport - renderer.applyProjectionAndViewport(ivec2(windowWidth, windowHeight)); - } - - ImGui::Text("Grafico FPS"); - static float values[90] = {}; - static int values_offset = 0; - values[values_offset] = fps; // Ejemplo fijo de FPS - values_offset = (values_offset + 1) % 90; - char fpsText[16]; - sprintf_s(fpsText, "%d fps", static_cast(fps)); - ImGui::PlotLines("FPS", values, IM_ARRAYSIZE(values), values_offset, fpsText, 0.0f, 100.0f, ImVec2(0, 80)); - - ImGui::Text("Consumo de Memoria: "); - try { - MemoryInfo memInfo = MemoryUsage::getMemoryInfo(); - ImGui::Separator(); - ImGui::Text("Consumo de Memoria:"); - ImGui::Text("Memoria Total: %llu MB", memInfo.totalMemory); - ImGui::Text("Memoria Libre: %llu MB", memInfo.freeMemory); - ImGui::Text("Memoria Usada: %llu MB", memInfo.usedMemory); - static float totalMemoryValues[90]; - static float freeMemoryValues[90]; - static float usedMemoryValues[90]; - static int memValuesOffset = 0; - - totalMemoryValues[memValuesOffset] = memInfo.totalMemory; - freeMemoryValues[memValuesOffset] = memInfo.freeMemory; - usedMemoryValues[memValuesOffset] = memInfo.usedMemory; - memValuesOffset = (values_offset + 1) % 90; - - ImGui::PlotLines("TotalMem", totalMemoryValues, IM_ARRAYSIZE(totalMemoryValues), memValuesOffset, "TotalMem", 0.0f, 100.0f, ImVec2(0, 80)); - ImGui::PlotLines("freeMem", freeMemoryValues, IM_ARRAYSIZE(freeMemoryValues), memValuesOffset, "FreeMem", 0.0f, 100.0f, ImVec2(0, 80)); - ImGui::PlotLines("UsedMem", usedMemoryValues, IM_ARRAYSIZE(usedMemoryValues), memValuesOffset, "UsedMem", 0.0f, 100.0f, ImVec2(0, 80)); - } - catch (const std::exception& e) { - ImGui::Text("Error obteniendo memoria: %s", e.what()); - } - ImGui::Text("Deteccion de maquinaria i versions de programario:"); - ImGui::Text("SDL, OpenGL, DevIL"); - ImGui::End(); + config.draw(_window, renderer, fps); } if (isJerarquiaOn) { diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.h b/sdl2_simple_example/sdl2_simple_example/MyWindow.h index c038ed7..aa5cbcc 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.h +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.h @@ -77,7 +77,6 @@ class MyWindow { bool isFullscreen = false; GLuint framebuffer, textureColorbuffer, rbo; - }; extern void handleFileDrop(const char* filePath); \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index fc5c4ce..347e837 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -91,13 +91,13 @@ Collapsed=0 DockId=0x00000009,2 [Docking][Data] -DockSpace ID=0x11111111 Window=0xA87D555D Pos=368,151 Size=800,581 Split=X +DockSpace ID=0x11111111 Window=0xA87D555D Pos=440,244 Size=800,581 Split=X DockNode ID=0x00000003 Parent=0x11111111 SizeRef=600,581 Split=X DockNode ID=0x00000001 Parent=0x00000003 SizeRef=397,581 Selected=0x29384C3A DockNode ID=0x00000002 Parent=0x00000003 SizeRef=0,0 Split=Y Selected=0x83E87391 DockNode ID=0x00000007 Parent=0x00000002 SizeRef=816,360 Split=X DockNode ID=0x00000005 Parent=0x00000007 SizeRef=588,559 CentralNode=1 Selected=0xE192E354 DockNode ID=0x00000008 Parent=0x00000007 SizeRef=210,559 Selected=0xADB1772B - DockNode ID=0x00000009 Parent=0x00000002 SizeRef=816,219 Selected=0xBCA7282E + DockNode ID=0x00000009 Parent=0x00000002 SizeRef=816,219 Selected=0xCAC6E4C7 DockNode ID=0x00000004 Parent=0x11111111 SizeRef=198,581 Selected=0x6E9836EA From 9a2952e39ac34a79ce2a6e289ad5cbc3997df223 Mon Sep 17 00:00:00 2001 From: Adri1714 Date: Tue, 3 Dec 2024 11:54:15 +0100 Subject: [PATCH 37/48] Jerarquia, Escena, Inspector windows done --- .../sdl2_simple_example/Escena.cpp | 14 ++ .../sdl2_simple_example/Escena.h | 17 +++ .../sdl2_simple_example/Inspector.cpp | 112 +++++++++++++++ .../sdl2_simple_example/Inspector.h | 17 +++ .../sdl2_simple_example/Jerarquia.cpp | 29 ++++ .../sdl2_simple_example/Jerarquia.h | 17 +++ .../sdl2_simple_example/MyWindow.cpp | 136 +----------------- .../sdl2_simple_example/MyWindow.h | 2 - .../sdl2_simple_example/imgui.ini | 54 ++++--- .../sdl2_simple_example.vcxproj | 6 + .../sdl2_simple_example.vcxproj.filters | 18 +++ 11 files changed, 269 insertions(+), 153 deletions(-) create mode 100644 sdl2_simple_example/sdl2_simple_example/Escena.cpp create mode 100644 sdl2_simple_example/sdl2_simple_example/Escena.h create mode 100644 sdl2_simple_example/sdl2_simple_example/Inspector.cpp create mode 100644 sdl2_simple_example/sdl2_simple_example/Inspector.h create mode 100644 sdl2_simple_example/sdl2_simple_example/Jerarquia.cpp create mode 100644 sdl2_simple_example/sdl2_simple_example/Jerarquia.h diff --git a/sdl2_simple_example/sdl2_simple_example/Escena.cpp b/sdl2_simple_example/sdl2_simple_example/Escena.cpp new file mode 100644 index 0000000..5520f07 --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/Escena.cpp @@ -0,0 +1,14 @@ +#include "Escena.h" + +extern Renderer renderer; + +Escena::Escena(){} +Escena::~Escena(){} + +void Escena::draw(GLuint textureColorbuffer) { + ImGui::Begin("Scene"); + if (textureColorbuffer) { + ImGui::Image((void*)(intptr_t)textureColorbuffer, ImVec2(renderer._WINDOW_SIZE.x, renderer._WINDOW_SIZE.y)); + } + ImGui::End(); +} diff --git a/sdl2_simple_example/sdl2_simple_example/Escena.h b/sdl2_simple_example/sdl2_simple_example/Escena.h new file mode 100644 index 0000000..6964b86 --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/Escena.h @@ -0,0 +1,17 @@ +#pragma once +#ifndef ESCENA_H +#define ESCENA_H + +#include +#include "MyWindow.h" + +class Escena { +public: + Escena(); + ~Escena(); + static void draw(GLuint texturecolorbuffer); +private: + +}; + +#endif // ESCENA_H \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Inspector.cpp b/sdl2_simple_example/sdl2_simple_example/Inspector.cpp new file mode 100644 index 0000000..e8bd9a8 --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/Inspector.cpp @@ -0,0 +1,112 @@ +#include "Inspector.h" + +extern Scene scene; + +Inspector::Inspector() {} +Inspector::~Inspector(){} + +void Inspector::draw() { + + + // Inspector (vacio) + ImGui::Begin("Inspector"); + + if (scene.selectedGameObjectIndex >= 0 && scene.selectedGameObjectIndex < scene.gameObjects.size()) { + GameObject* selectedObject = scene.gameObjects[scene.selectedGameObjectIndex]; + + ImGui::Text("Texture"); + // Guardar la textura original solo si aún no lo hemos hecho + static TextureData* originalTexture = selectedObject->texture; + + if (ImGui::Button("Off")) { + if (!chekerOn) + { + selectedObject->setTexture(new TextureData(scene.checkerTextureID)); // Asignar textura checker + } + chekerOn = !chekerOn; // Cambiar estado de checker + } + ImGui::SameLine(); + if (ImGui::Button("On")) { + if (chekerOn) + { + selectedObject->setTexture(originalTexture); // Restaurar la textura original + } + chekerOn = !chekerOn; // Cambiar estado de checker + } + + // Mostrar y modificar la posicion + float position[3] = { selectedObject->transform.position.x, selectedObject->transform.position.y, selectedObject->transform.position.z }; + if (ImGui::InputFloat3("Posicion", position)) { + selectedObject->transform.position = { position[0], position[1], position[2] }; + } + + // Mostrar y modificar la rotacion + float rotation[3] = { selectedObject->transform.rotation.x, selectedObject->transform.rotation.y, selectedObject->transform.rotation.z }; + if (ImGui::InputFloat3("Rotacion", rotation)) { + selectedObject->transform.rotation = { rotation[0], rotation[1], rotation[2] }; + } + + // Mostrar y modificar la escala + float scale[3] = { selectedObject->transform.scale.x, selectedObject->transform.scale.y, selectedObject->transform.scale.z }; + if (ImGui::InputFloat3("Escala", scale)) { + selectedObject->transform.scale = { scale[0], scale[1], scale[2] }; + } + + // Mostrar el Texture ID (si existe) + if (selectedObject->getTexture()) { + GLuint textureID = selectedObject->getTexture()->getTextureID(); + ImGui::Text("Texture ID: %u", textureID); + } + else { + ImGui::Text("Texture ID: None"); + } + + if (selectedObject->texture->getHeight() && selectedObject->texture->getWidth()) + { + GLuint GetHeight = selectedObject->texture->getHeight(); + GLuint GetWidth = selectedObject->texture->getWidth(); + ImGui::Text("Texture Shape: %u x %u", GetHeight, GetWidth); + } + else + { + ImGui::Text("Texture Shape: None"); + } + ImGui::Text("Texture path: %s", selectedObject->texture->getPath().c_str()); + // Mostrar la informacion de la malla + if (selectedObject->getMesh()) { + const std::vector& vertices = selectedObject->getMesh()->getVertices(); + const std::vector& uvs = selectedObject->getMesh()->getUVs(); + const std::vector& indices = selectedObject->getMesh()->getIndices(); + + ImGui::Text("Informacion de la Malla:"); + ImGui::Text("Vertices: %zu", vertices.size()); + ImGui::Text("UVs: %zu", uvs.size()); + ImGui::Text("Indices: %zu", indices.size()); + + // Mostrar una vista previa opcional + ImGui::Separator(); + ImGui::Text("Vista previa de vertices:"); + for (size_t i = 0; i < std::min(vertices.size(), 9); i += 3) { + ImGui::Text("(%f, %f, %f)", vertices[i], vertices[i + 1], vertices[i + 2]); + } + + ImGui::Text("Vista previa de UVs:"); + for (size_t i = 0; i < std::min(uvs.size(), 6); i += 2) { + ImGui::Text("(%f, %f)", uvs[i], uvs[i + 1]); + } + + ImGui::Text("Vista previa de indices:"); + for (size_t i = 0; i < std::min(indices.size(), 9); i += 3) { + ImGui::Text("(%u, %u, %u)", indices[i], indices[i + 1], indices[i + 2]); + } + } + else { + ImGui::Text("Malla: Ninguna"); + } + } + else { + ImGui::Text("Seleccione un GameObject de la jerarquia para ver sus propiedades."); + } + + ImGui::End(); +} \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Inspector.h b/sdl2_simple_example/sdl2_simple_example/Inspector.h new file mode 100644 index 0000000..f2e1530 --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/Inspector.h @@ -0,0 +1,17 @@ +#pragma once +#ifndef INSPECTOR_H +#define INSPECTOR_H + +#include "MyWindow.h" +#include "imgui.h" + +class Inspector { +public: + Inspector(); + ~Inspector(); + void draw(); +private: + bool chekerOn = false; +}; + +#endif // INSPECTOR_H \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Jerarquia.cpp b/sdl2_simple_example/sdl2_simple_example/Jerarquia.cpp new file mode 100644 index 0000000..00c6174 --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/Jerarquia.cpp @@ -0,0 +1,29 @@ +#include "Jerarquia.h" + + +extern Scene scene; + +Jerarquia::Jerarquia() {} +Jerarquia::~Jerarquia() {} + +void Jerarquia::draw() { + // Jerarquía (vacía) + ImGui::Begin("Jerarquía"); + ImGui::Text("Lista de GameObjects:"); + + // Recorre todos los objetos en la jerarquía + for (size_t i = 0; i < scene.gameObjectNames.size(); ++i) { + // Verifica si el objeto está seleccionado (si el índice coincide con el seleccionado) + bool isSelected = (scene.selectedGameObjectIndex == i); + + // Dibuja el objeto y permite seleccionarlo + if (ImGui::Selectable((scene.gameObjectNames[i] + "###" + std::to_string(i)).c_str(), isSelected)) { + // Si el objeto seleccionado es diferente al actual, actualiza la selección + if (scene.selectedGameObjectIndex != i) { + // Cambia el índice del objeto seleccionado + scene.selectedGameObjectIndex = i; + } + } + } + ImGui::End(); +} \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Jerarquia.h b/sdl2_simple_example/sdl2_simple_example/Jerarquia.h new file mode 100644 index 0000000..82b61c3 --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/Jerarquia.h @@ -0,0 +1,17 @@ +#pragma once +#ifndef JERARQUIA_H +#define JERARQUIA_H + +#include +#include "MyWindow.h" + +class Jerarquia { +public: + Jerarquia(); + ~Jerarquia(); + static void draw(); + +private: +}; + +#endif // JERARQUIA_H diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index 81cb133..0de280a 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -9,11 +9,15 @@ #include "FilesystemUtils.h" #include "Consola.h" #include "Config.h" +#include "Jerarquia.h" +#include "Escena.h" +#include "Inspector.h" using namespace std; extern Scene scene; Renderer renderer; ImGuiIO* g_io = nullptr; +Inspector inspector; float x = Renderer::eyeX; float y = Renderer::eyeY; @@ -239,28 +243,7 @@ void MyWindow::draw() { } if (isJerarquiaOn) { - // Jerarquía (vacía) - ImGui::Begin("Jerarquía"); - ImGui::Text("Lista de GameObjects:"); - - // Recorre todos los objetos en la jerarquía - for (size_t i = 0; i < scene.gameObjectNames.size(); ++i) { - // Verifica si el objeto está seleccionado (si el índice coincide con el seleccionado) - bool isSelected = (scene.selectedGameObjectIndex == i); - - // Dibuja el objeto y permite seleccionarlo - if (ImGui::Selectable((scene.gameObjectNames[i] + "###" + std::to_string(i)).c_str(), isSelected)) { - // Si el objeto seleccionado es diferente al actual, actualiza la selección - if (scene.selectedGameObjectIndex != i) { - // Cambia el índice del objeto seleccionado - scene.selectedGameObjectIndex = i; - - // No cambiamos la cámara aún, solo actualizamos el índice seleccionado - logMessage("Objeto seleccionado."); - } - } - } - ImGui::End(); + Jerarquia::draw(); } // Si el usuario pulsa 'F', movemos la cámara al objeto seleccionado @@ -274,117 +257,12 @@ void MyWindow::draw() { if (isSceneOn) { renderToFramebuffer(); // Renderiza la escena al framebuffer - ImGui::Begin("Scene"); - if (textureColorbuffer) { - ImGui::Image((void*)(intptr_t)textureColorbuffer, ImVec2(renderer._WINDOW_SIZE.x, renderer._WINDOW_SIZE.y)); - } - ImGui::End(); + Escena::draw(textureColorbuffer); } if (isInspectorOn) { - - // Inspector (vacio) - ImGui::Begin("Inspector"); - - if (scene.selectedGameObjectIndex >= 0 && scene.selectedGameObjectIndex < scene.gameObjects.size()) { - GameObject* selectedObject = scene.gameObjects[scene.selectedGameObjectIndex]; - - ImGui::Text("Texture"); - // Guardar la textura original solo si aún no lo hemos hecho - static TextureData* originalTexture = selectedObject->texture; - - if (ImGui::Button("Off")) { - if (!chekerOn) - { - selectedObject->setTexture(new TextureData(scene.checkerTextureID)); // Asignar textura checker - } - chekerOn = !chekerOn; // Cambiar estado de checker - } - ImGui::SameLine(); - if (ImGui::Button("On")) { - if (chekerOn) - { - selectedObject->setTexture(originalTexture); // Restaurar la textura original - } - chekerOn = !chekerOn; // Cambiar estado de checker - } - - // Mostrar y modificar la posicion - float position[3] = { selectedObject->transform.position.x, selectedObject->transform.position.y, selectedObject->transform.position.z }; - if (ImGui::InputFloat3("Posicion", position)) { - selectedObject->transform.position = { position[0], position[1], position[2] }; - } - - // Mostrar y modificar la rotacion - float rotation[3] = { selectedObject->transform.rotation.x, selectedObject->transform.rotation.y, selectedObject->transform.rotation.z }; - if (ImGui::InputFloat3("Rotacion", rotation)) { - selectedObject->transform.rotation = { rotation[0], rotation[1], rotation[2] }; - } - - // Mostrar y modificar la escala - float scale[3] = { selectedObject->transform.scale.x, selectedObject->transform.scale.y, selectedObject->transform.scale.z }; - if (ImGui::InputFloat3("Escala", scale)) { - selectedObject->transform.scale = { scale[0], scale[1], scale[2] }; - } - - // Mostrar el Texture ID (si existe) - if (selectedObject->getTexture()) { - GLuint textureID = selectedObject->getTexture()->getTextureID(); - ImGui::Text("Texture ID: %u", textureID); - } - else { - ImGui::Text("Texture ID: None"); - } - - if (selectedObject->texture->getHeight() && selectedObject->texture->getWidth()) - { - GLuint GetHeight = selectedObject->texture->getHeight(); - GLuint GetWidth = selectedObject->texture->getWidth(); - ImGui::Text("Texture Shape: %u x %u", GetHeight, GetWidth); - } - else - { - ImGui::Text("Texture Shape: None"); - } - ImGui::Text("Texture path: %s", selectedObject->texture->getPath().c_str()); - // Mostrar la informacion de la malla - if (selectedObject->getMesh()) { - const std::vector& vertices = selectedObject->getMesh()->getVertices(); - const std::vector& uvs = selectedObject->getMesh()->getUVs(); - const std::vector& indices = selectedObject->getMesh()->getIndices(); - - ImGui::Text("Informacion de la Malla:"); - ImGui::Text("Vertices: %zu", vertices.size()); - ImGui::Text("UVs: %zu", uvs.size()); - ImGui::Text("Indices: %zu", indices.size()); - - // Mostrar una vista previa opcional - ImGui::Separator(); - ImGui::Text("Vista previa de vertices:"); - for (size_t i = 0; i < std::min(vertices.size(), 9); i += 3) { - ImGui::Text("(%f, %f, %f)", vertices[i], vertices[i + 1], vertices[i + 2]); - } - - ImGui::Text("Vista previa de UVs:"); - for (size_t i = 0; i < std::min(uvs.size(), 6); i += 2) { - ImGui::Text("(%f, %f)", uvs[i], uvs[i + 1]); - } - - ImGui::Text("Vista previa de indices:"); - for (size_t i = 0; i < std::min(indices.size(), 9); i += 3) { - ImGui::Text("(%u, %u, %u)", indices[i], indices[i + 1], indices[i + 2]); - } - } - else { - ImGui::Text("Malla: Ninguna"); - } - } - else { - ImGui::Text("Seleccione un GameObject de la jerarquia para ver sus propiedades."); - } - - ImGui::End(); + inspector.draw(); } diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.h b/sdl2_simple_example/sdl2_simple_example/MyWindow.h index aa5cbcc..2feff2a 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.h +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.h @@ -72,8 +72,6 @@ class MyWindow { std::vector logMessages; // Vector de mensajes de LOG void UpdateDirectoryContents(); - glm::ivec2 selectedResolution; - bool isFullscreen = false; GLuint framebuffer, textureColorbuffer, rbo; diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index 347e837..18172b7 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -4,8 +4,8 @@ Size=400,400 Collapsed=0 [Window][Consola] -Pos=0,381 -Size=800,219 +Pos=164,495 +Size=636,105 Collapsed=0 DockId=0x00000009,1 @@ -21,9 +21,9 @@ Collapsed=0 [Window][Inspector] Pos=590,19 -Size=210,360 +Size=210,474 Collapsed=0 -DockId=0x00000008,1 +DockId=0x00000008,0 [Window][Console] Pos=28,107 @@ -31,8 +31,8 @@ Size=488,472 Collapsed=0 [Window][Config] -Pos=0,381 -Size=800,219 +Pos=164,495 +Size=636,105 Collapsed=0 DockId=0x00000009,0 @@ -73,31 +73,41 @@ Size=32,35 Collapsed=0 [Window][Jerarquía] -Pos=590,19 -Size=210,360 +Pos=0,19 +Size=209,581 Collapsed=0 -DockId=0x00000008,0 +DockId=0x00000006,0 [Window][Scene] -Pos=0,19 -Size=588,360 +Pos=164,19 +Size=424,474 Collapsed=0 DockId=0x00000005,0 [Window][File Explorer] -Pos=0,381 -Size=800,219 +Pos=164,495 +Size=636,105 Collapsed=0 DockId=0x00000009,2 +[Window][Jerarquía] +Pos=0,19 +Size=162,581 +Collapsed=0 +DockId=0x0000000B,0 + [Docking][Data] -DockSpace ID=0x11111111 Window=0xA87D555D Pos=440,244 Size=800,581 Split=X - DockNode ID=0x00000003 Parent=0x11111111 SizeRef=600,581 Split=X - DockNode ID=0x00000001 Parent=0x00000003 SizeRef=397,581 Selected=0x29384C3A - DockNode ID=0x00000002 Parent=0x00000003 SizeRef=0,0 Split=Y Selected=0x83E87391 - DockNode ID=0x00000007 Parent=0x00000002 SizeRef=816,360 Split=X - DockNode ID=0x00000005 Parent=0x00000007 SizeRef=588,559 CentralNode=1 Selected=0xE192E354 - DockNode ID=0x00000008 Parent=0x00000007 SizeRef=210,559 Selected=0xADB1772B - DockNode ID=0x00000009 Parent=0x00000002 SizeRef=816,219 Selected=0xCAC6E4C7 - DockNode ID=0x00000004 Parent=0x11111111 SizeRef=198,581 Selected=0x6E9836EA +DockSpace ID=0x11111111 Window=0xA87D555D Pos=368,151 Size=800,581 Split=X + DockNode ID=0x0000000B Parent=0x11111111 SizeRef=162,581 Selected=0x06C9255F + DockNode ID=0x0000000C Parent=0x11111111 SizeRef=636,581 Split=X + DockNode ID=0x00000006 Parent=0x0000000C SizeRef=209,581 Selected=0xADB1772B + DockNode ID=0x0000000A Parent=0x0000000C SizeRef=589,581 Split=X + DockNode ID=0x00000003 Parent=0x0000000A SizeRef=600,581 Split=X + DockNode ID=0x00000001 Parent=0x00000003 SizeRef=397,581 Selected=0x29384C3A + DockNode ID=0x00000002 Parent=0x00000003 SizeRef=0,0 Split=Y Selected=0x83E87391 + DockNode ID=0x00000007 Parent=0x00000002 SizeRef=816,474 Split=X + DockNode ID=0x00000005 Parent=0x00000007 SizeRef=588,559 CentralNode=1 Selected=0xE192E354 + DockNode ID=0x00000008 Parent=0x00000007 SizeRef=210,559 Selected=0xE7039252 + DockNode ID=0x00000009 Parent=0x00000002 SizeRef=816,105 Selected=0xCAC6E4C7 + DockNode ID=0x00000004 Parent=0x0000000A SizeRef=198,581 Selected=0x6E9836EA diff --git a/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj b/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj index ffb433d..b0c6ed8 100644 --- a/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj +++ b/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj @@ -130,8 +130,11 @@ + + + @@ -143,9 +146,12 @@ + + + diff --git a/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj.filters b/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj.filters index b159d0e..b32c0aa 100644 --- a/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj.filters +++ b/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj.filters @@ -48,6 +48,15 @@ Windows + + Windows + + + Windows + + + Windows + @@ -89,5 +98,14 @@ Windows + + Windows + + + Windows + + + Windows + \ No newline at end of file From 3b6758e69456175d39f69fa2b8c3a85267d39726 Mon Sep 17 00:00:00 2001 From: Adri1714 Date: Wed, 4 Dec 2024 11:42:51 +0100 Subject: [PATCH 38/48] FileExplorer separeted --- .../sdl2_simple_example/FileExplorer.cpp | 73 ++++++++++++++++++ .../sdl2_simple_example/FileExplorer.h | 27 +++++++ .../sdl2_simple_example/MyWindow.cpp | 75 +------------------ .../sdl2_simple_example/MyWindow.h | 3 - .../sdl2_simple_example/imgui.ini | 2 +- .../sdl2_simple_example/main.cpp | 6 +- .../sdl2_simple_example.vcxproj | 2 + .../sdl2_simple_example.vcxproj.filters | 12 ++- 8 files changed, 120 insertions(+), 80 deletions(-) create mode 100644 sdl2_simple_example/sdl2_simple_example/FileExplorer.cpp create mode 100644 sdl2_simple_example/sdl2_simple_example/FileExplorer.h diff --git a/sdl2_simple_example/sdl2_simple_example/FileExplorer.cpp b/sdl2_simple_example/sdl2_simple_example/FileExplorer.cpp new file mode 100644 index 0000000..04f70f6 --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/FileExplorer.cpp @@ -0,0 +1,73 @@ +#include "FileExplorer.h" + +Explorer::Explorer(){} +Explorer::~Explorer(){} + + +void Explorer::UpdateDirectoryContents() { + try { + directoryContents.clear(); // Limpiar contenido previo + + if (fs::exists(currentDirectory) && fs::is_directory(currentDirectory)) { + for (const auto& entry : fs::directory_iterator(currentDirectory)) { + directoryContents.push_back(entry.path().string()); + } + } + } + catch (const fs::filesystem_error& e) { + std::cerr << "Error listing directory: " << e.what() << std::endl; + } +} + +void Explorer::draw() { + ImGui::Begin("File Explorer"); + + // Mostrar directorio actual + ImGui::Text("Current Directory: %s", currentDirectory.c_str()); + + // Botón para navegar al directorio padre + if (ImGui::Button(".. (Go Up)")) { + try { + fs::path parent = fs::path(currentDirectory).parent_path(); + if (fs::exists(parent)) { + currentDirectory = parent.string(); + UpdateDirectoryContents(); + } + else { + ImGui::Text("Error: Parent directory does not exist."); + } + } + catch (const fs::filesystem_error& e) { + ImGui::Text("Error accessing parent directory: %s", e.what()); + } + } + + // Listar contenido del directorio + for (const auto& entryPath : directoryContents) { + try { + fs::path entry(entryPath); // Convertir a fs::path + + // Si es un directorio, mostrarlo como botón + if (fs::is_directory(entry)) { + if (ImGui::Button(FileSystemUtils::getFileName(entry.string()).c_str())) { + currentDirectory = entry.string(); + UpdateDirectoryContents(); + } + } + // Si es un archivo, permitir interacción + else { + ImGui::Text("%s", FileSystemUtils::getFileName(entry.string()).c_str()); + + // Permitir arrastrar archivos hacia la escena + if (ImGui::IsItemClicked()) { + handleFileDrop(entry.string().c_str()); + } + } + } + catch (const fs::filesystem_error& e) { + ImGui::Text("Error: %s", e.what()); // Mostrar errores específicos por entrada + } + } + + ImGui::End(); +} \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/FileExplorer.h b/sdl2_simple_example/sdl2_simple_example/FileExplorer.h new file mode 100644 index 0000000..bda6117 --- /dev/null +++ b/sdl2_simple_example/sdl2_simple_example/FileExplorer.h @@ -0,0 +1,27 @@ +#pragma once +#ifndef FILEEXPLORER_H +#define FILEEXPLORER_H + +#include +#include "MyWindow.h" +#include "FilesystemUtils.h" + + +class Explorer { +public: + //MyWindow* window + Explorer(); + ~Explorer(); + + void draw(); + void UpdateDirectoryContents(); +private: + //MyWindow* _myWindow; + glm::ivec2 selectedResolution; + bool isFullscreen = false; + std::string currentDirectory = "Library/Meshes"; + std::vector directoryContents; +}; + + +#endif // FILEEXPLORER_H \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index 0de280a..5a44cb5 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -6,28 +6,26 @@ #include "imgui_impl_sdl2.h" #include "imgui_impl_opengl3.h" #include -#include "FilesystemUtils.h" + #include "Consola.h" #include "Config.h" #include "Jerarquia.h" #include "Escena.h" #include "Inspector.h" +#include "FileExplorer.h" using namespace std; extern Scene scene; Renderer renderer; ImGuiIO* g_io = nullptr; Inspector inspector; +Explorer explorer; float x = Renderer::eyeX; float y = Renderer::eyeY; float z = Renderer::eyeZ; bool chekerOn = false; - -std::string currentDirectory = "Library/Meshes"; -std::vector directoryContents; - MyWindow::MyWindow(const char* title, unsigned short width, unsigned short height) : fps(0.0f), frameCount(0), lastTime(SDL_GetTicks()) { SDL_Init(SDL_INIT_VIDEO); // Mueve esta l�nea al principio del constructor open(title, width, height); @@ -75,20 +73,6 @@ void MyWindow::logMessage(const std::string& message) { logMessages.push_back(message); } -void MyWindow::UpdateDirectoryContents() { - try { - directoryContents.clear(); // Limpiar contenido previo - - if (fs::exists(currentDirectory) && fs::is_directory(currentDirectory)) { - for (const auto& entry : fs::directory_iterator(currentDirectory)) { - directoryContents.push_back(entry.path().string()); - } - } - } catch (const fs::filesystem_error& e) { - std::cerr << "Error listing directory: " << e.what() << std::endl; - } -} - void MyWindow::open(const char* title, unsigned short width, unsigned short height) { if (isOpen()) return; SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1); @@ -274,58 +258,7 @@ void MyWindow::draw() { ImGui::EndPopup(); } - ImGui::Begin("File Explorer"); - - // Mostrar directorio actual - ImGui::Text("Current Directory: %s", currentDirectory.c_str()); - - // Botón para navegar al directorio padre - if (ImGui::Button(".. (Go Up)")) { - try { - fs::path parent = fs::path(currentDirectory).parent_path(); - if (fs::exists(parent)) { - currentDirectory = parent.string(); - UpdateDirectoryContents(); - } - else { - ImGui::Text("Error: Parent directory does not exist."); - } - } - catch (const fs::filesystem_error& e) { - ImGui::Text("Error accessing parent directory: %s", e.what()); - } - } - - // Listar contenido del directorio - for (const auto& entryPath : directoryContents) { - try { - fs::path entry(entryPath); // Convertir a fs::path - - // Si es un directorio, mostrarlo como botón - if (fs::is_directory(entry)) { - if (ImGui::Button(FileSystemUtils::getFileName(entry.string()).c_str())) { - currentDirectory = entry.string(); - UpdateDirectoryContents(); - } - } - // Si es un archivo, permitir interacción - else { - ImGui::Text("%s", FileSystemUtils::getFileName(entry.string()).c_str()); - - // Permitir arrastrar archivos hacia la escena - if (ImGui::IsItemClicked()) { - handleFileDrop(entry.string().c_str()); - } - } - } - catch (const fs::filesystem_error& e) { - ImGui::Text("Error: %s", e.what()); // Mostrar errores específicos por entrada - } - } - - ImGui::End(); - - + explorer.draw(); ImGui::Render(); ImGui_ImplOpenGL3_RenderDrawData(ImGui::GetDrawData()); diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.h b/sdl2_simple_example/sdl2_simple_example/MyWindow.h index 2feff2a..d174ea5 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.h +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.h @@ -70,9 +70,6 @@ class MyWindow { void logMessage(const std::string& message); // Método para agregar mensajes al LOG std::vector logMessages; // Vector de mensajes de LOG - void UpdateDirectoryContents(); - - bool isFullscreen = false; GLuint framebuffer, textureColorbuffer, rbo; }; diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index 18172b7..f51c710 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -97,7 +97,7 @@ Collapsed=0 DockId=0x0000000B,0 [Docking][Data] -DockSpace ID=0x11111111 Window=0xA87D555D Pos=368,151 Size=800,581 Split=X +DockSpace ID=0x11111111 Window=0xA87D555D Pos=379,173 Size=800,581 Split=X DockNode ID=0x0000000B Parent=0x11111111 SizeRef=162,581 Selected=0x06C9255F DockNode ID=0x0000000C Parent=0x11111111 SizeRef=636,581 Split=X DockNode ID=0x00000006 Parent=0x0000000C SizeRef=209,581 Selected=0xADB1772B diff --git a/sdl2_simple_example/sdl2_simple_example/main.cpp b/sdl2_simple_example/sdl2_simple_example/main.cpp index d36f1d9..b269d85 100644 --- a/sdl2_simple_example/sdl2_simple_example/main.cpp +++ b/sdl2_simple_example/sdl2_simple_example/main.cpp @@ -14,6 +14,7 @@ #include #include #include +#include "FileExplorer.h" using namespace std; using hrclock = chrono::high_resolution_clock; @@ -26,6 +27,7 @@ static const auto FRAME_DT = 1.0s / FPS; Importer importer; Scene scene; MyWindow myWindow("SDL2 Simple Example", WINDOW_SIZE.x, WINDOW_SIZE.y); +extern Explorer explorer; void handleFileDrop(const char* filePath) { std::string fileName = FileSystemUtils::getFileName(filePath); @@ -57,14 +59,14 @@ void handleFileDrop(const char* filePath) { } // Actualizar el contenido del directorio en la interfaz - myWindow.UpdateDirectoryContents(); + explorer.UpdateDirectoryContents(); } int main(int argc, char** argv) { FileSystemUtils::GenerateRequiredDirectories(); - myWindow.UpdateDirectoryContents(); // Cargar contenido inicial + explorer.UpdateDirectoryContents(); // Cargar contenido inicial importer.setWindow(&myWindow); myWindow.logMessage("Initializing SDL..."); diff --git a/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj b/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj index b0c6ed8..226ed58 100644 --- a/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj +++ b/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj @@ -131,6 +131,7 @@ + @@ -147,6 +148,7 @@ + diff --git a/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj.filters b/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj.filters index b32c0aa..da064ea 100644 --- a/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj.filters +++ b/sdl2_simple_example/sdl2_simple_example/sdl2_simple_example.vcxproj.filters @@ -30,9 +30,6 @@ Source Files - - Source Files - Source Files @@ -57,6 +54,12 @@ Windows + + Source Files + + + Windows + @@ -107,5 +110,8 @@ Windows + + Windows + \ No newline at end of file From cc59b591aadddbe25ba17b4b06d2114092ffafa0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=ADdac=20P=C3=A9rez=20M=C3=A1rquez?= <125640145+didacpema@users.noreply.github.com> Date: Wed, 4 Dec 2024 11:46:11 +0100 Subject: [PATCH 39/48] fixMemoryLeaks --- sdl2_simple_example/sdl2_simple_example/MyWindow.cpp | 8 ++++++++ sdl2_simple_example/sdl2_simple_example/main.cpp | 5 +++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp index a8627f4..d661567 100644 --- a/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp +++ b/sdl2_simple_example/sdl2_simple_example/MyWindow.cpp @@ -60,9 +60,17 @@ MyWindow::MyWindow(const char* title, unsigned short width, unsigned short heigh } MyWindow::~MyWindow() { + // Limpieza de ImGui ImGui_ImplSDL2_Shutdown(); ImGui_ImplOpenGL3_Shutdown(); ImGui::DestroyContext(); + + // Liberar recursos OpenGL + glDeleteFramebuffers(1, &framebuffer); + glDeleteTextures(1, &textureColorbuffer); + glDeleteRenderbuffers(1, &rbo); + + // Cerrar ventana y SDL close(); SDL_Quit(); } diff --git a/sdl2_simple_example/sdl2_simple_example/main.cpp b/sdl2_simple_example/sdl2_simple_example/main.cpp index d36f1d9..6496d66 100644 --- a/sdl2_simple_example/sdl2_simple_example/main.cpp +++ b/sdl2_simple_example/sdl2_simple_example/main.cpp @@ -84,6 +84,8 @@ int main(int argc, char** argv) { Renderer::initOpenGL(WINDOW_SIZE); Renderer::setupProjection(45.0f, 1.0f, 0.1f, 1000.0f); myWindow.logMessage("OpenGL context initialized."); + myWindow.setupFramebuffer(); + myWindow.renderToFramebuffer(); SDL_EventState(SDL_DROPFILE, SDL_ENABLE); @@ -93,8 +95,7 @@ int main(int argc, char** argv) { while (myWindow.processEvents() && myWindow.isOpen()) { auto start = hrclock::now(); - myWindow.setupFramebuffer(); - myWindow.renderToFramebuffer(); + myWindow.draw(); myWindow.swapBuffers(); From 1abae2468c40ef420bd3beca4af5f41c6c73157a Mon Sep 17 00:00:00 2001 From: Adri1714 Date: Wed, 4 Dec 2024 12:16:39 +0100 Subject: [PATCH 40/48] DragAndDrop funciona pero raro --- .../sdl2_simple_example/Escena.cpp | 8 ++++++++ .../sdl2_simple_example/FileExplorer.cpp | 20 +++++++++---------- .../sdl2_simple_example/imgui.ini | 2 +- 3 files changed, 18 insertions(+), 12 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/Escena.cpp b/sdl2_simple_example/sdl2_simple_example/Escena.cpp index 5520f07..df89b41 100644 --- a/sdl2_simple_example/sdl2_simple_example/Escena.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Escena.cpp @@ -7,6 +7,14 @@ Escena::~Escena(){} void Escena::draw(GLuint textureColorbuffer) { ImGui::Begin("Scene"); + if (ImGui::BeginDragDropTarget()) { + if (const ImGuiPayload* payload = ImGui::AcceptDragDropPayload("FILE_PATH")) { + const char* filePath = (const char*)payload->Data; + // std::cout << "Dropped file: " << filePath << std::endl; + handleFileDrop(filePath); // Procesar archivo arrastrado + } + ImGui::EndDragDropTarget(); + } if (textureColorbuffer) { ImGui::Image((void*)(intptr_t)textureColorbuffer, ImVec2(renderer._WINDOW_SIZE.x, renderer._WINDOW_SIZE.y)); } diff --git a/sdl2_simple_example/sdl2_simple_example/FileExplorer.cpp b/sdl2_simple_example/sdl2_simple_example/FileExplorer.cpp index 04f70f6..94bc44e 100644 --- a/sdl2_simple_example/sdl2_simple_example/FileExplorer.cpp +++ b/sdl2_simple_example/sdl2_simple_example/FileExplorer.cpp @@ -22,10 +22,8 @@ void Explorer::UpdateDirectoryContents() { void Explorer::draw() { ImGui::Begin("File Explorer"); - // Mostrar directorio actual ImGui::Text("Current Directory: %s", currentDirectory.c_str()); - // Botón para navegar al directorio padre if (ImGui::Button(".. (Go Up)")) { try { fs::path parent = fs::path(currentDirectory).parent_path(); @@ -42,32 +40,32 @@ void Explorer::draw() { } } - // Listar contenido del directorio for (const auto& entryPath : directoryContents) { try { - fs::path entry(entryPath); // Convertir a fs::path + fs::path entry(entryPath); - // Si es un directorio, mostrarlo como botón if (fs::is_directory(entry)) { if (ImGui::Button(FileSystemUtils::getFileName(entry.string()).c_str())) { currentDirectory = entry.string(); UpdateDirectoryContents(); } } - // Si es un archivo, permitir interacción else { ImGui::Text("%s", FileSystemUtils::getFileName(entry.string()).c_str()); - // Permitir arrastrar archivos hacia la escena - if (ImGui::IsItemClicked()) { - handleFileDrop(entry.string().c_str()); + // Drag & Drop: iniciar un drag si el archivo es válido + if (ImGui::BeginDragDropSource(ImGuiDragDropFlags_SourceAllowNullID)) { + ImGui::SetDragDropPayload("FILE_PATH", entry.string().c_str(), entry.string().size() + 1); + ImGui::Text("Dragging %s", FileSystemUtils::getFileName(entry.string()).c_str()); + ImGui::EndDragDropSource(); } } } catch (const fs::filesystem_error& e) { - ImGui::Text("Error: %s", e.what()); // Mostrar errores específicos por entrada + ImGui::Text("Error: %s", e.what()); } } ImGui::End(); -} \ No newline at end of file +} + diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index f51c710..eadadd8 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -97,7 +97,7 @@ Collapsed=0 DockId=0x0000000B,0 [Docking][Data] -DockSpace ID=0x11111111 Window=0xA87D555D Pos=379,173 Size=800,581 Split=X +DockSpace ID=0x11111111 Window=0xA87D555D Pos=440,244 Size=800,581 Split=X DockNode ID=0x0000000B Parent=0x11111111 SizeRef=162,581 Selected=0x06C9255F DockNode ID=0x0000000C Parent=0x11111111 SizeRef=636,581 Split=X DockNode ID=0x00000006 Parent=0x0000000C SizeRef=209,581 Selected=0xADB1772B From 25f4179780e3d96489586db63bb7d41368a1d43c Mon Sep 17 00:00:00 2001 From: Adri1714 Date: Mon, 9 Dec 2024 13:45:56 +0100 Subject: [PATCH 41/48] drag and checkerTexture Drag and Drop funciona CheckerTextureID = 2 On/Off textures funciona --- .../sdl2_simple_example/Escena.cpp | 18 ++++++++++-------- .../sdl2_simple_example/Escena.h | 1 + .../sdl2_simple_example/Importer.cpp | 4 +--- .../sdl2_simple_example/Inspector.cpp | 6 +++++- .../sdl2_simple_example/Inspector.h | 2 ++ .../sdl2_simple_example/Scene.cpp | 2 +- .../sdl2_simple_example/Scene.h | 2 +- .../sdl2_simple_example/imgui.ini | 4 ++-- .../sdl2_simple_example/main.cpp | 6 +++--- 9 files changed, 26 insertions(+), 19 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/Escena.cpp b/sdl2_simple_example/sdl2_simple_example/Escena.cpp index df89b41..4bbccc4 100644 --- a/sdl2_simple_example/sdl2_simple_example/Escena.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Escena.cpp @@ -7,16 +7,18 @@ Escena::~Escena(){} void Escena::draw(GLuint textureColorbuffer) { ImGui::Begin("Scene"); - if (ImGui::BeginDragDropTarget()) { - if (const ImGuiPayload* payload = ImGui::AcceptDragDropPayload("FILE_PATH")) { - const char* filePath = (const char*)payload->Data; - // std::cout << "Dropped file: " << filePath << std::endl; - handleFileDrop(filePath); // Procesar archivo arrastrado - } - ImGui::EndDragDropTarget(); - } if (textureColorbuffer) { + ImGui::Image((void*)(intptr_t)textureColorbuffer, ImVec2(renderer._WINDOW_SIZE.x, renderer._WINDOW_SIZE.y)); + + if (ImGui::BeginDragDropTarget()) { + if (const ImGuiPayload* payload = ImGui::AcceptDragDropPayload("FILE_PATH")) { + const char* filePath = (const char*)payload->Data; + + handleFileDrop(filePath); // Procesar archivo arrastrado + } + ImGui::EndDragDropTarget(); + } } ImGui::End(); } diff --git a/sdl2_simple_example/sdl2_simple_example/Escena.h b/sdl2_simple_example/sdl2_simple_example/Escena.h index 6964b86..0f4fd72 100644 --- a/sdl2_simple_example/sdl2_simple_example/Escena.h +++ b/sdl2_simple_example/sdl2_simple_example/Escena.h @@ -5,6 +5,7 @@ #include #include "MyWindow.h" + class Escena { public: Escena(); diff --git a/sdl2_simple_example/sdl2_simple_example/Importer.cpp b/sdl2_simple_example/sdl2_simple_example/Importer.cpp index 6245ea3..00eb440 100644 --- a/sdl2_simple_example/sdl2_simple_example/Importer.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Importer.cpp @@ -70,8 +70,7 @@ GLuint Importer::GenerateCheckerTexture() { } } - GLuint checkerTexture; - glGenTextures(1, &checkerTexture); + static GLuint checkerTexture = 2; glBindTexture(GL_TEXTURE_2D, checkerTexture); glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, checkerImage.data()); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); @@ -79,7 +78,6 @@ GLuint Importer::GenerateCheckerTexture() { glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); - return checkerTexture; } diff --git a/sdl2_simple_example/sdl2_simple_example/Inspector.cpp b/sdl2_simple_example/sdl2_simple_example/Inspector.cpp index e8bd9a8..7af17bf 100644 --- a/sdl2_simple_example/sdl2_simple_example/Inspector.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Inspector.cpp @@ -5,6 +5,7 @@ extern Scene scene; Inspector::Inspector() {} Inspector::~Inspector(){} +static TextureData* originalTexture; void Inspector::draw() { @@ -16,7 +17,10 @@ void Inspector::draw() { ImGui::Text("Texture"); // Guardar la textura original solo si aún no lo hemos hecho - static TextureData* originalTexture = selectedObject->texture; + if (selectedObject->texture->id != 2) + { + originalTexture = selectedObject->texture; + } if (ImGui::Button("Off")) { if (!chekerOn) diff --git a/sdl2_simple_example/sdl2_simple_example/Inspector.h b/sdl2_simple_example/sdl2_simple_example/Inspector.h index f2e1530..e6c9c54 100644 --- a/sdl2_simple_example/sdl2_simple_example/Inspector.h +++ b/sdl2_simple_example/sdl2_simple_example/Inspector.h @@ -12,6 +12,8 @@ class Inspector { void draw(); private: bool chekerOn = false; + bool saved = false; + }; #endif // INSPECTOR_H \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Scene.cpp b/sdl2_simple_example/sdl2_simple_example/Scene.cpp index ba418e0..4e833db 100644 --- a/sdl2_simple_example/sdl2_simple_example/Scene.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Scene.cpp @@ -45,7 +45,7 @@ void Scene::setCheckerTexture(GLuint checkerTextureID) { void Scene::drawScene() { for (auto* obj : gameObjects) { if (obj->getTexture() == nullptr) { - if (checkerTextureID != 0) { + if (checkerTextureID != 2) { TextureData* checkerTexture = new TextureData(checkerTextureID, "checker_texture_path", 0, 0); obj->setTexture(checkerTexture); } diff --git a/sdl2_simple_example/sdl2_simple_example/Scene.h b/sdl2_simple_example/sdl2_simple_example/Scene.h index b3a15bc..995a72e 100644 --- a/sdl2_simple_example/sdl2_simple_example/Scene.h +++ b/sdl2_simple_example/sdl2_simple_example/Scene.h @@ -23,5 +23,5 @@ class Scene { // Índice del objeto seleccionado (-1 si no hay ninguno) int selectedGameObjectIndex = -1; float angle = 3.14159265359f; - GLuint checkerTextureID = 0; + GLuint checkerTextureID; }; \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index eadadd8..69e38fa 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -97,7 +97,7 @@ Collapsed=0 DockId=0x0000000B,0 [Docking][Data] -DockSpace ID=0x11111111 Window=0xA87D555D Pos=440,244 Size=800,581 Split=X +DockSpace ID=0x11111111 Window=0xA87D555D Pos=368,151 Size=800,581 Split=X DockNode ID=0x0000000B Parent=0x11111111 SizeRef=162,581 Selected=0x06C9255F DockNode ID=0x0000000C Parent=0x11111111 SizeRef=636,581 Split=X DockNode ID=0x00000006 Parent=0x0000000C SizeRef=209,581 Selected=0xADB1772B @@ -106,7 +106,7 @@ DockSpace ID=0x11111111 Window=0xA87D555D Pos=440,244 Size=800,581 S DockNode ID=0x00000001 Parent=0x00000003 SizeRef=397,581 Selected=0x29384C3A DockNode ID=0x00000002 Parent=0x00000003 SizeRef=0,0 Split=Y Selected=0x83E87391 DockNode ID=0x00000007 Parent=0x00000002 SizeRef=816,474 Split=X - DockNode ID=0x00000005 Parent=0x00000007 SizeRef=588,559 CentralNode=1 Selected=0xE192E354 + DockNode ID=0x00000005 Parent=0x00000007 SizeRef=424,559 CentralNode=1 Selected=0xE192E354 DockNode ID=0x00000008 Parent=0x00000007 SizeRef=210,559 Selected=0xE7039252 DockNode ID=0x00000009 Parent=0x00000002 SizeRef=816,105 Selected=0xCAC6E4C7 DockNode ID=0x00000004 Parent=0x0000000A SizeRef=198,581 Selected=0x6E9836EA diff --git a/sdl2_simple_example/sdl2_simple_example/main.cpp b/sdl2_simple_example/sdl2_simple_example/main.cpp index 7fd6d36..968a0ab 100644 --- a/sdl2_simple_example/sdl2_simple_example/main.cpp +++ b/sdl2_simple_example/sdl2_simple_example/main.cpp @@ -45,9 +45,9 @@ void handleFileDrop(const char* filePath) { scene.loadModelData(importer.getVertices(), importer.getUVs(), importer.getIndices(), fileName); // Configurar textura checker si no está asignada - if (scene.checkerTextureID == 0) { - scene.checkerTextureID = importer.GenerateCheckerTexture(); - } + + scene.checkerTextureID = importer.GenerateCheckerTexture(); + scene.setCheckerTexture(scene.checkerTextureID); } } From 994f75565637628cf7395f55c3a309ccada848e1 Mon Sep 17 00:00:00 2001 From: Adri1714 Date: Mon, 9 Dec 2024 13:48:00 +0100 Subject: [PATCH 42/48] arreglito on/Off --- sdl2_simple_example/sdl2_simple_example/Inspector.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/Inspector.cpp b/sdl2_simple_example/sdl2_simple_example/Inspector.cpp index 7af17bf..c74251c 100644 --- a/sdl2_simple_example/sdl2_simple_example/Inspector.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Inspector.cpp @@ -26,16 +26,16 @@ void Inspector::draw() { if (!chekerOn) { selectedObject->setTexture(new TextureData(scene.checkerTextureID)); // Asignar textura checker + chekerOn = !chekerOn; // Cambiar estado de checker } - chekerOn = !chekerOn; // Cambiar estado de checker } ImGui::SameLine(); if (ImGui::Button("On")) { if (chekerOn) { selectedObject->setTexture(originalTexture); // Restaurar la textura original + chekerOn = !chekerOn; // Cambiar estado de checker } - chekerOn = !chekerOn; // Cambiar estado de checker } // Mostrar y modificar la posicion From 5d5758d3dfadbf4581b1ff39c81d2890fdb535e9 Mon Sep 17 00:00:00 2001 From: miguelturmo <125253347+miguelturmo@users.noreply.github.com> Date: Wed, 11 Dec 2024 12:08:52 +0100 Subject: [PATCH 43/48] priemra parte --- .../sdl2_simple_example/GameObject.cpp | 35 +++++++++++++++ .../sdl2_simple_example/GameObject.h | 15 ++++++- .../sdl2_simple_example/Jerarquia.cpp | 44 +++++++++++++++---- .../sdl2_simple_example/Jerarquia.h | 4 ++ .../sdl2_simple_example/imgui.ini | 2 +- 5 files changed, 89 insertions(+), 11 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/GameObject.cpp b/sdl2_simple_example/sdl2_simple_example/GameObject.cpp index e359ead..f6310b9 100644 --- a/sdl2_simple_example/sdl2_simple_example/GameObject.cpp +++ b/sdl2_simple_example/sdl2_simple_example/GameObject.cpp @@ -8,8 +8,39 @@ GameObject::GameObject(Mesh* mesh, TextureData* texture) GameObject::~GameObject() { delete mesh; if (texture) delete texture; + + // Elimina todos los hijos + for (auto child : children) { + delete child; + } +} + +void GameObject::addChild(GameObject* child) { + if (child) { + children.push_back(child); + } +} + +void GameObject::removeChild(GameObject* child) { + children.erase(std::remove(children.begin(), children.end(), child), children.end()); } +const std::vector& GameObject::getChildren() const { + return children; +} +bool GameObject::isDescendantOf(GameObject* other) const { + GameObject* currentParent = this->parent; // Asume que tienes un puntero a un padre + + // Recorre la cadena de padres hasta encontrar el objeto 'other' + while (currentParent != nullptr) { + if (currentParent == other) { + return true; // Si el objeto actual es un descendiente del 'other' + } + currentParent = currentParent->parent; // Subimos al siguiente nivel + } + + return false; // No encontramos al objeto 'other' en la cadena de padres +} void GameObject::setTexture(TextureData* newTexture) { texture = newTexture; } @@ -46,5 +77,9 @@ void GameObject::draw() const { glDisable(GL_TEXTURE_2D); } + for (const auto& child : children) { + child->draw(); + } + glPopMatrix(); // Restore the previous matrix } \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/GameObject.h b/sdl2_simple_example/sdl2_simple_example/GameObject.h index ba1d0b5..c9739a2 100644 --- a/sdl2_simple_example/sdl2_simple_example/GameObject.h +++ b/sdl2_simple_example/sdl2_simple_example/GameObject.h @@ -11,11 +11,24 @@ class GameObject { void draw() const; void setTexture(TextureData* texture); + // Métodos de jerarquía + void addChild(GameObject* child); + void removeChild(GameObject* child); + const std::vector& getChildren() const; + + bool isDescendantOf(GameObject* other) const; + + // Acceso al nombre + const std::string& getName() const { return name; } + void setName(const std::string& newName) { name = newName; } + TextureData* getTexture() const { return texture; } Mesh* getMesh() const { return mesh; } - void setTransform(const Transform& newTransform); + + std::string name; // Nombre del objeto + std::vector children; // Lista de hijos Mesh* mesh; TextureData* texture; Transform transform; diff --git a/sdl2_simple_example/sdl2_simple_example/Jerarquia.cpp b/sdl2_simple_example/sdl2_simple_example/Jerarquia.cpp index 00c6174..fd950fe 100644 --- a/sdl2_simple_example/sdl2_simple_example/Jerarquia.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Jerarquia.cpp @@ -1,5 +1,5 @@ #include "Jerarquia.h" - +#include "Scene.h" // Para acceder a la escena y los objetos extern Scene scene; @@ -7,23 +7,49 @@ Jerarquia::Jerarquia() {} Jerarquia::~Jerarquia() {} void Jerarquia::draw() { - // Jerarquía (vacía) ImGui::Begin("Jerarquía"); ImGui::Text("Lista de GameObjects:"); - // Recorre todos los objetos en la jerarquía for (size_t i = 0; i < scene.gameObjectNames.size(); ++i) { - // Verifica si el objeto está seleccionado (si el índice coincide con el seleccionado) bool isSelected = (scene.selectedGameObjectIndex == i); // Dibuja el objeto y permite seleccionarlo if (ImGui::Selectable((scene.gameObjectNames[i] + "###" + std::to_string(i)).c_str(), isSelected)) { - // Si el objeto seleccionado es diferente al actual, actualiza la selección - if (scene.selectedGameObjectIndex != i) { - // Cambia el índice del objeto seleccionado - scene.selectedGameObjectIndex = i; + scene.selectedGameObjectIndex = i; + } + + // Configura arrastrar y soltar + if (ImGui::BeginDragDropSource(ImGuiDragDropFlags_SourceAllowNullID)) { + ImGui::SetDragDropPayload("GAMEOBJECT", &i, sizeof(size_t)); + ImGui::Text("%s", scene.gameObjectNames[i].c_str()); + ImGui::EndDragDropSource(); + } + + if (ImGui::BeginDragDropTarget()) { + if (const ImGuiPayload* payload = ImGui::AcceptDragDropPayload("GAMEOBJECT")) { + size_t draggedIndex = *(const size_t*)payload->Data; + if (draggedIndex != i) { + // Convierte el objeto arrastrado en hijo del actual + GameObject* draggedObject = scene.gameObjects[draggedIndex]; + GameObject* targetObject = scene.gameObjects[i]; + targetObject->addChild(draggedObject); + + // No eliminamos el objeto arrastrado de la lista raíz, solo lo marcamos + // Si es necesario, podrías moverlo a otro contenedor de objetos hijos + // O marcarlo como 'no visible' si es una jerarquía de ocultación + + // Ajusta los índices si es necesario + if (scene.selectedGameObjectIndex == draggedIndex) { + scene.selectedGameObjectIndex = -1; + } + else if (scene.selectedGameObjectIndex > draggedIndex) { + scene.selectedGameObjectIndex--; + } + } } + ImGui::EndDragDropTarget(); } } + ImGui::End(); -} \ No newline at end of file +} diff --git a/sdl2_simple_example/sdl2_simple_example/Jerarquia.h b/sdl2_simple_example/sdl2_simple_example/Jerarquia.h index 82b61c3..0e6626a 100644 --- a/sdl2_simple_example/sdl2_simple_example/Jerarquia.h +++ b/sdl2_simple_example/sdl2_simple_example/Jerarquia.h @@ -4,6 +4,7 @@ #include #include "MyWindow.h" +#include "GameObject.h" class Jerarquia { public: @@ -12,6 +13,9 @@ class Jerarquia { static void draw(); private: + // Método auxiliar para dibujar un objeto y manejar la jerarquía + static void drawGameObject(GameObject* gameObject, size_t index); + }; #endif // JERARQUIA_H diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index 69e38fa..f3f2f81 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -97,7 +97,7 @@ Collapsed=0 DockId=0x0000000B,0 [Docking][Data] -DockSpace ID=0x11111111 Window=0xA87D555D Pos=368,151 Size=800,581 Split=X +DockSpace ID=0x11111111 Window=0xA87D555D Pos=440,244 Size=800,581 Split=X DockNode ID=0x0000000B Parent=0x11111111 SizeRef=162,581 Selected=0x06C9255F DockNode ID=0x0000000C Parent=0x11111111 SizeRef=636,581 Split=X DockNode ID=0x00000006 Parent=0x0000000C SizeRef=209,581 Selected=0xADB1772B From 3d47cea97a66e8806ec93b30c8e996d45eaa8231 Mon Sep 17 00:00:00 2001 From: miguelturmo <125253347+miguelturmo@users.noreply.github.com> Date: Wed, 18 Dec 2024 10:58:06 +0100 Subject: [PATCH 44/48] Revert "priemra parte" This reverts commit 5d5758d3dfadbf4581b1ff39c81d2890fdb535e9. --- .../sdl2_simple_example/GameObject.cpp | 35 --------------- .../sdl2_simple_example/GameObject.h | 15 +------ .../sdl2_simple_example/Jerarquia.cpp | 44 ++++--------------- .../sdl2_simple_example/Jerarquia.h | 4 -- .../sdl2_simple_example/imgui.ini | 2 +- 5 files changed, 11 insertions(+), 89 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/GameObject.cpp b/sdl2_simple_example/sdl2_simple_example/GameObject.cpp index f6310b9..e359ead 100644 --- a/sdl2_simple_example/sdl2_simple_example/GameObject.cpp +++ b/sdl2_simple_example/sdl2_simple_example/GameObject.cpp @@ -8,39 +8,8 @@ GameObject::GameObject(Mesh* mesh, TextureData* texture) GameObject::~GameObject() { delete mesh; if (texture) delete texture; - - // Elimina todos los hijos - for (auto child : children) { - delete child; - } -} - -void GameObject::addChild(GameObject* child) { - if (child) { - children.push_back(child); - } -} - -void GameObject::removeChild(GameObject* child) { - children.erase(std::remove(children.begin(), children.end(), child), children.end()); } -const std::vector& GameObject::getChildren() const { - return children; -} -bool GameObject::isDescendantOf(GameObject* other) const { - GameObject* currentParent = this->parent; // Asume que tienes un puntero a un padre - - // Recorre la cadena de padres hasta encontrar el objeto 'other' - while (currentParent != nullptr) { - if (currentParent == other) { - return true; // Si el objeto actual es un descendiente del 'other' - } - currentParent = currentParent->parent; // Subimos al siguiente nivel - } - - return false; // No encontramos al objeto 'other' en la cadena de padres -} void GameObject::setTexture(TextureData* newTexture) { texture = newTexture; } @@ -77,9 +46,5 @@ void GameObject::draw() const { glDisable(GL_TEXTURE_2D); } - for (const auto& child : children) { - child->draw(); - } - glPopMatrix(); // Restore the previous matrix } \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/GameObject.h b/sdl2_simple_example/sdl2_simple_example/GameObject.h index c9739a2..ba1d0b5 100644 --- a/sdl2_simple_example/sdl2_simple_example/GameObject.h +++ b/sdl2_simple_example/sdl2_simple_example/GameObject.h @@ -11,24 +11,11 @@ class GameObject { void draw() const; void setTexture(TextureData* texture); - // Métodos de jerarquía - void addChild(GameObject* child); - void removeChild(GameObject* child); - const std::vector& getChildren() const; - - bool isDescendantOf(GameObject* other) const; - - // Acceso al nombre - const std::string& getName() const { return name; } - void setName(const std::string& newName) { name = newName; } - TextureData* getTexture() const { return texture; } Mesh* getMesh() const { return mesh; } - void setTransform(const Transform& newTransform); + void setTransform(const Transform& newTransform); - std::string name; // Nombre del objeto - std::vector children; // Lista de hijos Mesh* mesh; TextureData* texture; Transform transform; diff --git a/sdl2_simple_example/sdl2_simple_example/Jerarquia.cpp b/sdl2_simple_example/sdl2_simple_example/Jerarquia.cpp index fd950fe..00c6174 100644 --- a/sdl2_simple_example/sdl2_simple_example/Jerarquia.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Jerarquia.cpp @@ -1,5 +1,5 @@ #include "Jerarquia.h" -#include "Scene.h" // Para acceder a la escena y los objetos + extern Scene scene; @@ -7,49 +7,23 @@ Jerarquia::Jerarquia() {} Jerarquia::~Jerarquia() {} void Jerarquia::draw() { + // Jerarquía (vacía) ImGui::Begin("Jerarquía"); ImGui::Text("Lista de GameObjects:"); + // Recorre todos los objetos en la jerarquía for (size_t i = 0; i < scene.gameObjectNames.size(); ++i) { + // Verifica si el objeto está seleccionado (si el índice coincide con el seleccionado) bool isSelected = (scene.selectedGameObjectIndex == i); // Dibuja el objeto y permite seleccionarlo if (ImGui::Selectable((scene.gameObjectNames[i] + "###" + std::to_string(i)).c_str(), isSelected)) { - scene.selectedGameObjectIndex = i; - } - - // Configura arrastrar y soltar - if (ImGui::BeginDragDropSource(ImGuiDragDropFlags_SourceAllowNullID)) { - ImGui::SetDragDropPayload("GAMEOBJECT", &i, sizeof(size_t)); - ImGui::Text("%s", scene.gameObjectNames[i].c_str()); - ImGui::EndDragDropSource(); - } - - if (ImGui::BeginDragDropTarget()) { - if (const ImGuiPayload* payload = ImGui::AcceptDragDropPayload("GAMEOBJECT")) { - size_t draggedIndex = *(const size_t*)payload->Data; - if (draggedIndex != i) { - // Convierte el objeto arrastrado en hijo del actual - GameObject* draggedObject = scene.gameObjects[draggedIndex]; - GameObject* targetObject = scene.gameObjects[i]; - targetObject->addChild(draggedObject); - - // No eliminamos el objeto arrastrado de la lista raíz, solo lo marcamos - // Si es necesario, podrías moverlo a otro contenedor de objetos hijos - // O marcarlo como 'no visible' si es una jerarquía de ocultación - - // Ajusta los índices si es necesario - if (scene.selectedGameObjectIndex == draggedIndex) { - scene.selectedGameObjectIndex = -1; - } - else if (scene.selectedGameObjectIndex > draggedIndex) { - scene.selectedGameObjectIndex--; - } - } + // Si el objeto seleccionado es diferente al actual, actualiza la selección + if (scene.selectedGameObjectIndex != i) { + // Cambia el índice del objeto seleccionado + scene.selectedGameObjectIndex = i; } - ImGui::EndDragDropTarget(); } } - ImGui::End(); -} +} \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Jerarquia.h b/sdl2_simple_example/sdl2_simple_example/Jerarquia.h index 0e6626a..82b61c3 100644 --- a/sdl2_simple_example/sdl2_simple_example/Jerarquia.h +++ b/sdl2_simple_example/sdl2_simple_example/Jerarquia.h @@ -4,7 +4,6 @@ #include #include "MyWindow.h" -#include "GameObject.h" class Jerarquia { public: @@ -13,9 +12,6 @@ class Jerarquia { static void draw(); private: - // Método auxiliar para dibujar un objeto y manejar la jerarquía - static void drawGameObject(GameObject* gameObject, size_t index); - }; #endif // JERARQUIA_H diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index f3f2f81..69e38fa 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -97,7 +97,7 @@ Collapsed=0 DockId=0x0000000B,0 [Docking][Data] -DockSpace ID=0x11111111 Window=0xA87D555D Pos=440,244 Size=800,581 Split=X +DockSpace ID=0x11111111 Window=0xA87D555D Pos=368,151 Size=800,581 Split=X DockNode ID=0x0000000B Parent=0x11111111 SizeRef=162,581 Selected=0x06C9255F DockNode ID=0x0000000C Parent=0x11111111 SizeRef=636,581 Split=X DockNode ID=0x00000006 Parent=0x0000000C SizeRef=209,581 Selected=0xADB1772B From 89cf2845847f5241f793ec19aa002d1c60409f81 Mon Sep 17 00:00:00 2001 From: miguelturmo <125253347+miguelturmo@users.noreply.github.com> Date: Sat, 21 Dec 2024 19:26:22 +0100 Subject: [PATCH 45/48] jerarquia parcialmente funcionando --- .../sdl2_simple_example/GameObject.cpp | 87 ++++++++++++++++-- .../sdl2_simple_example/GameObject.h | 14 ++- .../sdl2_simple_example/Jerarquia.cpp | 91 ++++++++++++++++--- .../sdl2_simple_example/Jerarquia.h | 4 +- .../sdl2_simple_example/Scene.cpp | 71 ++++++++++++++- .../sdl2_simple_example/Scene.h | 8 ++ .../sdl2_simple_example/imgui.ini | 2 +- 7 files changed, 247 insertions(+), 30 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/GameObject.cpp b/sdl2_simple_example/sdl2_simple_example/GameObject.cpp index e359ead..40f3445 100644 --- a/sdl2_simple_example/sdl2_simple_example/GameObject.cpp +++ b/sdl2_simple_example/sdl2_simple_example/GameObject.cpp @@ -1,11 +1,21 @@ #include "GameObject.h" #include #include +#include GameObject::GameObject(Mesh* mesh, TextureData* texture) - : mesh(mesh), texture(texture) {} + : mesh(mesh), texture(texture), parent(nullptr) {} GameObject::~GameObject() { + // Desvinculamos todos los hijos antes de destruir el objeto + for (auto* child : children) { + child->parent = nullptr; + } + + // Si tenemos un padre, nos removemos de su lista de hijos + if (parent) { + parent->removeChild(this); + } delete mesh; if (texture) delete texture; } @@ -18,16 +28,76 @@ void GameObject::setTexture(TextureData* newTexture) { void GameObject::setTransform(const Transform& newTransform) { transform = newTransform; } +bool GameObject::isChildOf(GameObject* potentialParent) const { + if (!potentialParent) return false; + + GameObject* current = parent; + while (current) { + if (current == potentialParent) return true; + current = current->getParent(); + } + return false; +} +void GameObject::setParent(GameObject* newParent) { + // Si ya teníamos un padre, nos removemos de su lista de hijos + if (parent) { + parent->removeChild(this); + } + + parent = newParent; + + // Nos agregamos a la lista de hijos del nuevo padre + if (parent) { + parent->addChild(this); + } +} + +void GameObject::addChild(GameObject* child) { + if (child && std::find(children.begin(), children.end(), child) == children.end()) { + children.push_back(child); + if (child->parent != this) { + child->setParent(this); + } + } +} + +void GameObject::removeChild(GameObject* child) { + auto it = std::find(children.begin(), children.end(), child); + if (it != children.end()) { + children.erase(it); + if (child->parent == this) { + child->parent = nullptr; + } + } +} + +Transform GameObject::getGlobalTransform() const { + Transform globalTransform = transform; + + if (parent) { + Transform parentTransform = parent->getGlobalTransform(); + + // Aplicar transformaciones del padre + globalTransform.position = parentTransform.position + transform.position; + globalTransform.rotation = parentTransform.rotation + transform.rotation; + globalTransform.scale.x *= parentTransform.scale.x; + globalTransform.scale.y *= parentTransform.scale.y; + globalTransform.scale.z *= parentTransform.scale.z; + } + + return globalTransform; +} void GameObject::draw() const { glPushMatrix(); // Save the current matrix + Transform globalTransform = getGlobalTransform(); // Apply transformations based on the GameObject's transform - glTranslatef(transform.position.x, transform.position.y, transform.position.z); - glRotatef(transform.rotation.x, 1.0f, 0.0f, 0.0f); - glRotatef(transform.rotation.y, 0.0f, 1.0f, 0.0f); - glRotatef(transform.rotation.z, 0.0f, 0.0f, 1.0f); - glScalef(transform.scale.x, transform.scale.y, transform.scale.z); + glTranslatef(globalTransform.position.x, globalTransform.position.y, globalTransform.position.z); + glRotatef(globalTransform.rotation.x, 1.0f, 0.0f, 0.0f); + glRotatef(globalTransform.rotation.y, 0.0f, 1.0f, 0.0f); + glRotatef(globalTransform.rotation.z, 0.0f, 0.0f, 1.0f); + glScalef(globalTransform.scale.x, globalTransform.scale.y, globalTransform.scale.z); // Enable textures if there is a texture bound if (texture) { @@ -45,6 +115,9 @@ void GameObject::draw() const { texture->unbind(); glDisable(GL_TEXTURE_2D); } - + // Dibujar todos los hijos + for (const auto* child : children) { + child->draw(); + } glPopMatrix(); // Restore the previous matrix } \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/GameObject.h b/sdl2_simple_example/sdl2_simple_example/GameObject.h index ba1d0b5..e0af0fb 100644 --- a/sdl2_simple_example/sdl2_simple_example/GameObject.h +++ b/sdl2_simple_example/sdl2_simple_example/GameObject.h @@ -2,6 +2,7 @@ #include "Mesh.h" #include "Texture.h" #include "Transform.h" +#include class GameObject { public: @@ -10,13 +11,22 @@ class GameObject { void draw() const; void setTexture(TextureData* texture); + void setParent(GameObject* newParent); + void addChild(GameObject* child); + void removeChild(GameObject* child); + + Transform getGlobalTransform() const; + void setTransform(const Transform& newTransform); + bool isChildOf(GameObject* potentialParent) const; TextureData* getTexture() const { return texture; } Mesh* getMesh() const { return mesh; } - - void setTransform(const Transform& newTransform); + GameObject* getParent() const { return parent; } + const std::vector& getChildren() const { return children; } Mesh* mesh; TextureData* texture; Transform transform; + GameObject* parent; + std::vector children; }; \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Jerarquia.cpp b/sdl2_simple_example/sdl2_simple_example/Jerarquia.cpp index 00c6174..86418d5 100644 --- a/sdl2_simple_example/sdl2_simple_example/Jerarquia.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Jerarquia.cpp @@ -6,24 +6,89 @@ extern Scene scene; Jerarquia::Jerarquia() {} Jerarquia::~Jerarquia() {} +void Jerarquia::drawGameObjectNode(GameObject* obj, const std::string& name, int index) { + if (!obj) return; + + ImGuiTreeNodeFlags flags = ImGuiTreeNodeFlags_OpenOnArrow | ImGuiTreeNodeFlags_OpenOnDoubleClick; + + // Añadir la bandera Selected si este objeto está seleccionado + if (scene.selectedGameObjectIndex == index) { + flags |= ImGuiTreeNodeFlags_Selected; + } + + // Si no tiene hijos, usamos una hoja (node) en lugar de un árbol + if (obj->getChildren().empty()) { + flags |= ImGuiTreeNodeFlags_Leaf; + } + + bool nodeOpen = ImGui::TreeNodeEx((name + "###" + std::to_string(index)).c_str(), flags); + + // Manejo de la selección al hacer clic + if (ImGui::IsItemClicked()) { + scene.selectedGameObjectIndex = index; + } + + // Manejo del Drag and Drop + if (ImGui::BeginDragDropSource(ImGuiDragDropFlags_None)) { + // Guardamos el índice del objeto que estamos arrastrando + int draggedIndex = index; + ImGui::SetDragDropPayload("GAMEOBJECT_DND", &draggedIndex, sizeof(int)); + ImGui::Text("Arrastrando: %s", name.c_str()); + ImGui::EndDragDropSource(); + } + + if (ImGui::BeginDragDropTarget()) { + if (const ImGuiPayload* payload = ImGui::AcceptDragDropPayload("GAMEOBJECT_DND")) { + int droppedIndex = *(const int*)payload->Data; + + // Intentar establecer la relación padre-hijo usando Scene + if (droppedIndex != index) { + if (scene.setParentChild(droppedIndex, index)) { + // La relación se estableció con éxito + printf("Objeto %s ahora es hijo de %s\n", + scene.gameObjectNames[droppedIndex].c_str(), + scene.gameObjectNames[index].c_str()); + } + } + } + ImGui::EndDragDropTarget(); + } + + if (nodeOpen) { + auto& children = obj->getChildren(); + for (GameObject* child : children) { + auto it = std::find(scene.gameObjects.begin(), scene.gameObjects.end(), child); + if (it != scene.gameObjects.end()) { + int childIndex = std::distance(scene.gameObjects.begin(), it); + drawGameObjectNode(child, scene.gameObjectNames[childIndex], childIndex); + } + } + ImGui::TreePop(); + } +} + + void Jerarquia::draw() { - // Jerarquía (vacía) ImGui::Begin("Jerarquía"); ImGui::Text("Lista de GameObjects:"); - // Recorre todos los objetos en la jerarquía - for (size_t i = 0; i < scene.gameObjectNames.size(); ++i) { - // Verifica si el objeto está seleccionado (si el índice coincide con el seleccionado) - bool isSelected = (scene.selectedGameObjectIndex == i); - - // Dibuja el objeto y permite seleccionarlo - if (ImGui::Selectable((scene.gameObjectNames[i] + "###" + std::to_string(i)).c_str(), isSelected)) { - // Si el objeto seleccionado es diferente al actual, actualiza la selección - if (scene.selectedGameObjectIndex != i) { - // Cambia el índice del objeto seleccionado - scene.selectedGameObjectIndex = i; - } + // Área para detectar drops en el espacio vacío + ImGui::BeginChild("GameObjectList", ImVec2(0, 0), true); + // Permitir que se suelte un objeto en el área vacía de la ventana (para remover padre) + if (ImGui::BeginDragDropTarget()) { + if (const ImGuiPayload* payload = ImGui::AcceptDragDropPayload("GAMEOBJECT_DND")) { + int droppedIndex = *(const int*)payload->Data; + scene.removeFromParent(droppedIndex); + } + ImGui::EndDragDropTarget(); + } + // Dibujar solo los objetos que no tienen padre (objetos raíz) + for (size_t i = 0; i < scene.gameObjects.size(); ++i) { + GameObject* obj = scene.gameObjects[i]; + if (!obj->getParent()) { + drawGameObjectNode(obj, scene.gameObjectNames[i], i); } } + ImGui::EndChild(); ImGui::End(); } \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Jerarquia.h b/sdl2_simple_example/sdl2_simple_example/Jerarquia.h index 82b61c3..4bfb01f 100644 --- a/sdl2_simple_example/sdl2_simple_example/Jerarquia.h +++ b/sdl2_simple_example/sdl2_simple_example/Jerarquia.h @@ -4,14 +4,14 @@ #include #include "MyWindow.h" - +#include "Scene.h" class Jerarquia { public: Jerarquia(); ~Jerarquia(); static void draw(); - private: + static void drawGameObjectNode(GameObject* obj, const std::string& name, int index); }; #endif // JERARQUIA_H diff --git a/sdl2_simple_example/sdl2_simple_example/Scene.cpp b/sdl2_simple_example/sdl2_simple_example/Scene.cpp index 4e833db..94f1355 100644 --- a/sdl2_simple_example/sdl2_simple_example/Scene.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Scene.cpp @@ -8,12 +8,39 @@ extern Importer importer; Scene::Scene() {} Scene::~Scene() { - for (GameObject* obj : gameObjects) { - delete obj; + // Solo eliminamos los objetos raíz, ya que eliminarán recursivamente a sus hijos + for (auto it = gameObjects.begin(); it != gameObjects.end();) { + GameObject* obj = *it; + if (!obj->getParent()) { + deleteGameObjectHierarchy(obj); + it = gameObjects.erase(it); + } + else { + ++it; + } } gameObjects.clear(); + gameObjectNames.clear(); } +void Scene::deleteGameObjectHierarchy(GameObject* obj) { + if (!obj) return; + + // Primero eliminamos los hijos recursivamente + auto children = obj->getChildren(); // Hacemos una copia porque se modificará durante la eliminación + for (auto* child : children) { + deleteGameObjectHierarchy(child); + } + + // Eliminamos este objeto de la lista de gameObjects y gameObjectNames + auto it = std::find(gameObjects.begin(), gameObjects.end(), obj); + if (it != gameObjects.end()) { + int index = std::distance(gameObjects.begin(), it); + gameObjects.erase(it); + gameObjectNames.erase(gameObjectNames.begin() + index); + } + delete obj; +} void Scene::loadModelData(const std::vector& vertices, const std::vector& uvs, const std::vector& indices, const std::string& name, const Transform& transform) { Mesh* mesh = new Mesh(vertices, uvs, indices); GameObject* gameObject = new GameObject(mesh, nullptr); @@ -42,17 +69,51 @@ void Scene::setCheckerTexture(GLuint checkerTextureID) { setTexture(checkerTexture); } +bool Scene::setParentChild(int childIndex, int parentIndex) { + if (!isValidParenting(childIndex, parentIndex)) { + return false; + } + + GameObject* child = gameObjects[childIndex]; + GameObject* newParent = gameObjects[parentIndex]; + + child->setParent(newParent); + return true; +} +void Scene::removeFromParent(int childIndex) { + if (childIndex >= 0 && childIndex < gameObjects.size()) { + GameObject* child = gameObjects[childIndex]; + if (child->getParent()) { + child->setParent(nullptr); + } + } +} +bool Scene::isValidParenting(int childIndex, int parentIndex) const { + if (childIndex < 0 || childIndex >= gameObjects.size() || + parentIndex < 0 || parentIndex >= gameObjects.size() || + childIndex == parentIndex) { + return false; + } + + GameObject* child = gameObjects[childIndex]; + GameObject* parent = gameObjects[parentIndex]; + + // Verificar que el padre no sea hijo del hijo (evitar ciclos) + return !parent->isChildOf(child); +} void Scene::drawScene() { + // Solo dibujamos los objetos raíz, ellos dibujarán a sus hijos for (auto* obj : gameObjects) { - if (obj->getTexture() == nullptr) { - if (checkerTextureID != 2) { + if (!obj->getParent()) { // Si no tiene padre, es un objeto raíz + if (obj->getTexture() == nullptr && checkerTextureID != 2) { TextureData* checkerTexture = new TextureData(checkerTextureID, "checker_texture_path", 0, 0); obj->setTexture(checkerTexture); } + obj->draw(); } - obj->draw(); } } + void Scene::createCube(const char* filePath) { std::string fileName = "Cube"; diff --git a/sdl2_simple_example/sdl2_simple_example/Scene.h b/sdl2_simple_example/sdl2_simple_example/Scene.h index 995a72e..7723b25 100644 --- a/sdl2_simple_example/sdl2_simple_example/Scene.h +++ b/sdl2_simple_example/sdl2_simple_example/Scene.h @@ -17,6 +17,11 @@ class Scene { void setCheckerTexture(GLuint checkerTextureID); void drawScene(); + // Nuevos métodos para manejar la jerarquía + bool setParentChild(int childIndex, int parentIndex); + void removeFromParent(int childIndex); + bool isValidParenting(int childIndex, int parentIndex) const; + std::vector gameObjects; std::vector gameObjectNames; @@ -24,4 +29,7 @@ class Scene { int selectedGameObjectIndex = -1; float angle = 3.14159265359f; GLuint checkerTextureID; + + void deleteGameObjectHierarchy(GameObject* obj); + }; \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index 69e38fa..3da8773 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -97,7 +97,7 @@ Collapsed=0 DockId=0x0000000B,0 [Docking][Data] -DockSpace ID=0x11111111 Window=0xA87D555D Pos=368,151 Size=800,581 Split=X +DockSpace ID=0x11111111 Window=0xA87D555D Pos=560,259 Size=800,581 Split=X DockNode ID=0x0000000B Parent=0x11111111 SizeRef=162,581 Selected=0x06C9255F DockNode ID=0x0000000C Parent=0x11111111 SizeRef=636,581 Split=X DockNode ID=0x00000006 Parent=0x0000000C SizeRef=209,581 Selected=0xADB1772B From db9bf00410ba555d0adb41c3207d93e136e3fa28 Mon Sep 17 00:00:00 2001 From: miguelturmo <125253347+miguelturmo@users.noreply.github.com> Date: Mon, 23 Dec 2024 18:10:07 +0100 Subject: [PATCH 46/48] borrar hijos --- .../sdl2_simple_example/GameObject.cpp | 45 +++++++++++++++---- .../sdl2_simple_example/Jerarquia.cpp | 29 +++++++----- .../sdl2_simple_example/Scene.cpp | 6 ++- 3 files changed, 60 insertions(+), 20 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/GameObject.cpp b/sdl2_simple_example/sdl2_simple_example/GameObject.cpp index 40f3445..fae217b 100644 --- a/sdl2_simple_example/sdl2_simple_example/GameObject.cpp +++ b/sdl2_simple_example/sdl2_simple_example/GameObject.cpp @@ -72,19 +72,48 @@ void GameObject::removeChild(GameObject* child) { } Transform GameObject::getGlobalTransform() const { - Transform globalTransform = transform; - + glm::mat4 localMatrix = glm::mat4(1.0f); + localMatrix = glm::translate(localMatrix, glm::vec3(transform.position.x, transform.position.y, transform.position.z)); + localMatrix = glm::rotate(localMatrix, glm::radians(transform.rotation.x), glm::vec3(1.0f, 0.0f, 0.0f)); + localMatrix = glm::rotate(localMatrix, glm::radians(transform.rotation.y), glm::vec3(0.0f, 1.0f, 0.0f)); + localMatrix = glm::rotate(localMatrix, glm::radians(transform.rotation.z), glm::vec3(0.0f, 0.0f, 1.0f)); + localMatrix = glm::scale(localMatrix, glm::vec3(transform.scale.x, transform.scale.y, transform.scale.z)); + + // Multiply with parent's matrix if exists if (parent) { + glm::mat4 parentMatrix = glm::mat4(1.0f); Transform parentTransform = parent->getGlobalTransform(); + parentMatrix = glm::translate(parentMatrix, glm::vec3(parentTransform.position.x, parentTransform.position.y, parentTransform.position.z)); + parentMatrix = glm::rotate(parentMatrix, glm::radians(parentTransform.rotation.x), glm::vec3(1.0f, 0.0f, 0.0f)); + parentMatrix = glm::rotate(parentMatrix, glm::radians(parentTransform.rotation.y), glm::vec3(0.0f, 1.0f, 0.0f)); + parentMatrix = glm::rotate(parentMatrix, glm::radians(parentTransform.rotation.z), glm::vec3(0.0f, 0.0f, 1.0f)); + parentMatrix = glm::scale(parentMatrix, glm::vec3(parentTransform.scale.x, parentTransform.scale.y, parentTransform.scale.z)); - // Aplicar transformaciones del padre - globalTransform.position = parentTransform.position + transform.position; - globalTransform.rotation = parentTransform.rotation + transform.rotation; - globalTransform.scale.x *= parentTransform.scale.x; - globalTransform.scale.y *= parentTransform.scale.y; - globalTransform.scale.z *= parentTransform.scale.z; + localMatrix = parentMatrix * localMatrix; } + Transform globalTransform; + + // Extract position + glm::vec3 position = glm::vec3(localMatrix[3]); + globalTransform.position.x = position.x; + globalTransform.position.y = position.y; + globalTransform.position.z = position.z; + + // Extract rotation + glm::vec3 rotation; + rotation.x = glm::degrees(atan2(localMatrix[1][2], localMatrix[2][2])); + rotation.y = glm::degrees(asin(-localMatrix[0][2])); + rotation.z = glm::degrees(atan2(localMatrix[0][1], localMatrix[0][0])); + globalTransform.rotation.x = rotation.x; + globalTransform.rotation.y = rotation.y; + globalTransform.rotation.z = rotation.z; + + // Extract scale + globalTransform.scale.x = glm::length(glm::vec3(localMatrix[0])); + globalTransform.scale.y = glm::length(glm::vec3(localMatrix[1])); + globalTransform.scale.z = glm::length(glm::vec3(localMatrix[2])); + return globalTransform; } diff --git a/sdl2_simple_example/sdl2_simple_example/Jerarquia.cpp b/sdl2_simple_example/sdl2_simple_example/Jerarquia.cpp index 86418d5..77eb3cc 100644 --- a/sdl2_simple_example/sdl2_simple_example/Jerarquia.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Jerarquia.cpp @@ -72,9 +72,22 @@ void Jerarquia::draw() { ImGui::Begin("Jerarquía"); ImGui::Text("Lista de GameObjects:"); - // Área para detectar drops en el espacio vacío - ImGui::BeginChild("GameObjectList", ImVec2(0, 0), true); - // Permitir que se suelte un objeto en el área vacía de la ventana (para remover padre) + ImGui::BeginChild("GameObjectList", ImVec2(0, -30), true); // Reduced height to make room for drop zone + + // Dibujar objetos raíz + for (size_t i = 0; i < scene.gameObjects.size(); ++i) { + GameObject* obj = scene.gameObjects[i]; + if (!obj->getParent()) { + drawGameObjectNode(obj, scene.gameObjectNames[i], i); + } + } + ImGui::EndChild(); + + // Drop zone area + ImGui::PushStyleColor(ImGuiCol_ChildBg, ImVec4(0.15f, 0.15f, 0.15f, 1.0f)); + ImGui::BeginChild("DropZone", ImVec2(0, 25), true); + ImGui::Text("Desvincular padre"); + if (ImGui::BeginDragDropTarget()) { if (const ImGuiPayload* payload = ImGui::AcceptDragDropPayload("GAMEOBJECT_DND")) { int droppedIndex = *(const int*)payload->Data; @@ -82,13 +95,9 @@ void Jerarquia::draw() { } ImGui::EndDragDropTarget(); } - // Dibujar solo los objetos que no tienen padre (objetos raíz) - for (size_t i = 0; i < scene.gameObjects.size(); ++i) { - GameObject* obj = scene.gameObjects[i]; - if (!obj->getParent()) { - drawGameObjectNode(obj, scene.gameObjectNames[i], i); - } - } + ImGui::EndChild(); + ImGui::PopStyleColor(); + ImGui::End(); } \ No newline at end of file diff --git a/sdl2_simple_example/sdl2_simple_example/Scene.cpp b/sdl2_simple_example/sdl2_simple_example/Scene.cpp index 94f1355..41ff887 100644 --- a/sdl2_simple_example/sdl2_simple_example/Scene.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Scene.cpp @@ -83,8 +83,10 @@ bool Scene::setParentChild(int childIndex, int parentIndex) { void Scene::removeFromParent(int childIndex) { if (childIndex >= 0 && childIndex < gameObjects.size()) { GameObject* child = gameObjects[childIndex]; - if (child->getParent()) { - child->setParent(nullptr); + GameObject* parent = child->getParent(); + if (parent) { + parent->removeChild(child); + child->setParent(nullptr); } } } From 117f75169e195a69416357fe8b21dcffe5bd7fc2 Mon Sep 17 00:00:00 2001 From: miguelturmo <125253347+miguelturmo@users.noreply.github.com> Date: Tue, 24 Dec 2024 18:45:32 +0100 Subject: [PATCH 47/48] jerarquia terminada --- .../sdl2_simple_example/Inspector.cpp | 98 +++++++++---------- .../sdl2_simple_example/Jerarquia.cpp | 29 +++--- 2 files changed, 63 insertions(+), 64 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/Inspector.cpp b/sdl2_simple_example/sdl2_simple_example/Inspector.cpp index c74251c..e401541 100644 --- a/sdl2_simple_example/sdl2_simple_example/Inspector.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Inspector.cpp @@ -3,91 +3,87 @@ extern Scene scene; Inspector::Inspector() {} -Inspector::~Inspector(){} - -static TextureData* originalTexture; -void Inspector::draw() { +Inspector::~Inspector() {} +static TextureData* originalTexture = nullptr; - // Inspector (vacio) +void Inspector::draw() { ImGui::Begin("Inspector"); if (scene.selectedGameObjectIndex >= 0 && scene.selectedGameObjectIndex < scene.gameObjects.size()) { GameObject* selectedObject = scene.gameObjects[scene.selectedGameObjectIndex]; + if (!selectedObject) { + ImGui::End(); + return; + } ImGui::Text("Texture"); - // Guardar la textura original solo si aún no lo hemos hecho - if (selectedObject->texture->id != 2) - { - originalTexture = selectedObject->texture; - } - if (ImGui::Button("Off")) { - if (!chekerOn) - { - selectedObject->setTexture(new TextureData(scene.checkerTextureID)); // Asignar textura checker - chekerOn = !chekerOn; // Cambiar estado de checker + // Safe texture handling + if (selectedObject->texture) { + if (selectedObject->texture->id != 2 && !originalTexture) { + originalTexture = selectedObject->texture; } - } - ImGui::SameLine(); - if (ImGui::Button("On")) { - if (chekerOn) - { - selectedObject->setTexture(originalTexture); // Restaurar la textura original - chekerOn = !chekerOn; // Cambiar estado de checker + + if (ImGui::Button("Off")) { + if (!chekerOn && scene.checkerTextureID != 0) { + selectedObject->setTexture(new TextureData(scene.checkerTextureID)); + chekerOn = true; + } + } + ImGui::SameLine(); + if (ImGui::Button("On")) { + if (chekerOn && originalTexture) { + selectedObject->setTexture(originalTexture); + chekerOn = false; + } + } + + // Display texture information + GLuint textureID = selectedObject->texture->getTextureID(); + ImGui::Text("Texture ID: %u", textureID); + + if (selectedObject->texture->getHeight() && selectedObject->texture->getWidth()) { + GLuint GetHeight = selectedObject->texture->getHeight(); + GLuint GetWidth = selectedObject->texture->getWidth(); + ImGui::Text("Texture Shape: %u x %u", GetHeight, GetWidth); + } + else { + ImGui::Text("Texture Shape: None"); } + ImGui::Text("Texture path: %s", selectedObject->texture->getPath().c_str()); + } + else { + ImGui::Text("No texture assigned"); } - // Mostrar y modificar la posicion + // Transform controls float position[3] = { selectedObject->transform.position.x, selectedObject->transform.position.y, selectedObject->transform.position.z }; if (ImGui::InputFloat3("Posicion", position)) { selectedObject->transform.position = { position[0], position[1], position[2] }; } - // Mostrar y modificar la rotacion float rotation[3] = { selectedObject->transform.rotation.x, selectedObject->transform.rotation.y, selectedObject->transform.rotation.z }; if (ImGui::InputFloat3("Rotacion", rotation)) { selectedObject->transform.rotation = { rotation[0], rotation[1], rotation[2] }; } - // Mostrar y modificar la escala float scale[3] = { selectedObject->transform.scale.x, selectedObject->transform.scale.y, selectedObject->transform.scale.z }; if (ImGui::InputFloat3("Escala", scale)) { selectedObject->transform.scale = { scale[0], scale[1], scale[2] }; } - // Mostrar el Texture ID (si existe) - if (selectedObject->getTexture()) { - GLuint textureID = selectedObject->getTexture()->getTextureID(); - ImGui::Text("Texture ID: %u", textureID); - } - else { - ImGui::Text("Texture ID: None"); - } - - if (selectedObject->texture->getHeight() && selectedObject->texture->getWidth()) - { - GLuint GetHeight = selectedObject->texture->getHeight(); - GLuint GetWidth = selectedObject->texture->getWidth(); - ImGui::Text("Texture Shape: %u x %u", GetHeight, GetWidth); - } - else - { - ImGui::Text("Texture Shape: None"); - } - ImGui::Text("Texture path: %s", selectedObject->texture->getPath().c_str()); - // Mostrar la informacion de la malla - if (selectedObject->getMesh()) { - const std::vector& vertices = selectedObject->getMesh()->getVertices(); - const std::vector& uvs = selectedObject->getMesh()->getUVs(); - const std::vector& indices = selectedObject->getMesh()->getIndices(); + // Mesh information + if (Mesh* mesh = selectedObject->getMesh()) { + const std::vector& vertices = mesh->getVertices(); + const std::vector& uvs = mesh->getUVs(); + const std::vector& indices = mesh->getIndices(); ImGui::Text("Informacion de la Malla:"); ImGui::Text("Vertices: %zu", vertices.size()); ImGui::Text("UVs: %zu", uvs.size()); ImGui::Text("Indices: %zu", indices.size()); - // Mostrar una vista previa opcional ImGui::Separator(); ImGui::Text("Vista previa de vertices:"); for (size_t i = 0; i < std::min(vertices.size(), 9); i += 3) { diff --git a/sdl2_simple_example/sdl2_simple_example/Jerarquia.cpp b/sdl2_simple_example/sdl2_simple_example/Jerarquia.cpp index 77eb3cc..043b6e0 100644 --- a/sdl2_simple_example/sdl2_simple_example/Jerarquia.cpp +++ b/sdl2_simple_example/sdl2_simple_example/Jerarquia.cpp @@ -1,6 +1,5 @@ #include "Jerarquia.h" - extern Scene scene; Jerarquia::Jerarquia() {} @@ -11,26 +10,28 @@ void Jerarquia::drawGameObjectNode(GameObject* obj, const std::string& name, int ImGuiTreeNodeFlags flags = ImGuiTreeNodeFlags_OpenOnArrow | ImGuiTreeNodeFlags_OpenOnDoubleClick; - // Añadir la bandera Selected si este objeto está seleccionado if (scene.selectedGameObjectIndex == index) { flags |= ImGuiTreeNodeFlags_Selected; } - // Si no tiene hijos, usamos una hoja (node) en lugar de un árbol if (obj->getChildren().empty()) { flags |= ImGuiTreeNodeFlags_Leaf; } bool nodeOpen = ImGui::TreeNodeEx((name + "###" + std::to_string(index)).c_str(), flags); - // Manejo de la selección al hacer clic if (ImGui::IsItemClicked()) { scene.selectedGameObjectIndex = index; } - // Manejo del Drag and Drop + // Handle delete with Delete key + if (scene.selectedGameObjectIndex == index && ImGui::IsKeyPressed(ImGuiKey_Delete)) { + scene.deleteGameObjectHierarchy(obj); + if (nodeOpen) ImGui::TreePop(); + return; + } + if (ImGui::BeginDragDropSource(ImGuiDragDropFlags_None)) { - // Guardamos el índice del objeto que estamos arrastrando int draggedIndex = index; ImGui::SetDragDropPayload("GAMEOBJECT_DND", &draggedIndex, sizeof(int)); ImGui::Text("Arrastrando: %s", name.c_str()); @@ -40,11 +41,8 @@ void Jerarquia::drawGameObjectNode(GameObject* obj, const std::string& name, int if (ImGui::BeginDragDropTarget()) { if (const ImGuiPayload* payload = ImGui::AcceptDragDropPayload("GAMEOBJECT_DND")) { int droppedIndex = *(const int*)payload->Data; - - // Intentar establecer la relación padre-hijo usando Scene if (droppedIndex != index) { if (scene.setParentChild(droppedIndex, index)) { - // La relación se estableció con éxito printf("Objeto %s ahora es hijo de %s\n", scene.gameObjectNames[droppedIndex].c_str(), scene.gameObjectNames[index].c_str()); @@ -67,14 +65,20 @@ void Jerarquia::drawGameObjectNode(GameObject* obj, const std::string& name, int } } - void Jerarquia::draw() { ImGui::Begin("Jerarquía"); + + // Add "Create Empty" button + if (ImGui::Button("Create Empty")) { + GameObject* emptyObj = new GameObject(nullptr, nullptr); + scene.gameObjects.push_back(emptyObj); + scene.gameObjectNames.push_back("Empty Object " + std::to_string(scene.gameObjects.size())); + } + ImGui::Text("Lista de GameObjects:"); - ImGui::BeginChild("GameObjectList", ImVec2(0, -30), true); // Reduced height to make room for drop zone + ImGui::BeginChild("GameObjectList", ImVec2(0, -30), true); - // Dibujar objetos raíz for (size_t i = 0; i < scene.gameObjects.size(); ++i) { GameObject* obj = scene.gameObjects[i]; if (!obj->getParent()) { @@ -83,7 +87,6 @@ void Jerarquia::draw() { } ImGui::EndChild(); - // Drop zone area ImGui::PushStyleColor(ImGuiCol_ChildBg, ImVec4(0.15f, 0.15f, 0.15f, 1.0f)); ImGui::BeginChild("DropZone", ImVec2(0, 25), true); ImGui::Text("Desvincular padre"); From a678d368c19625f6bc1bf1abd955d48ab7b6bdb1 Mon Sep 17 00:00:00 2001 From: miguelturmo <125253347+miguelturmo@users.noreply.github.com> Date: Fri, 27 Dec 2024 11:14:05 +0100 Subject: [PATCH 48/48] errase objects from library --- .../sdl2_simple_example/FileExplorer.cpp | 68 +++++++++++++++---- .../sdl2_simple_example/FileExplorer.h | 15 +++- .../sdl2_simple_example/imgui.ini | 44 ++++++------ 3 files changed, 91 insertions(+), 36 deletions(-) diff --git a/sdl2_simple_example/sdl2_simple_example/FileExplorer.cpp b/sdl2_simple_example/sdl2_simple_example/FileExplorer.cpp index 94bc44e..022bbd9 100644 --- a/sdl2_simple_example/sdl2_simple_example/FileExplorer.cpp +++ b/sdl2_simple_example/sdl2_simple_example/FileExplorer.cpp @@ -6,65 +6,105 @@ Explorer::~Explorer(){} void Explorer::UpdateDirectoryContents() { try { - directoryContents.clear(); // Limpiar contenido previo + directoryContents.clear(); if (fs::exists(currentDirectory) && fs::is_directory(currentDirectory)) { for (const auto& entry : fs::directory_iterator(currentDirectory)) { directoryContents.push_back(entry.path().string()); } + // Asegurarnos de que el índice seleccionado sea válido + if (selectedFileIndex >= directoryContents.size()) { + selectedFileIndex = -1; + } } } catch (const fs::filesystem_error& e) { std::cerr << "Error listing directory: " << e.what() << std::endl; + selectedFileIndex = -1; } } +void Explorer::deleteSelectedFile() { + if (selectedFileIndex < 0 || selectedFileIndex >= directoryContents.size()) { + return; + } + try { + std::string filePath = directoryContents[selectedFileIndex]; + if (!fs::is_directory(filePath) && fs::exists(filePath)) { + if (fs::remove(filePath)) { + selectedFileIndex = -1; + UpdateDirectoryContents(); + } + } + } + catch (const fs::filesystem_error& e) { + std::cerr << "Error deleting file: " << e.what() << std::endl; + } +} void Explorer::draw() { ImGui::Begin("File Explorer"); + // Mostrar directorio actual ImGui::Text("Current Directory: %s", currentDirectory.c_str()); + // Botón para subir un nivel if (ImGui::Button(".. (Go Up)")) { try { fs::path parent = fs::path(currentDirectory).parent_path(); if (fs::exists(parent)) { currentDirectory = parent.string(); + selectedFileIndex = -1; // Reset selection when changing directory UpdateDirectoryContents(); } - else { - ImGui::Text("Error: Parent directory does not exist."); - } } catch (const fs::filesystem_error& e) { - ImGui::Text("Error accessing parent directory: %s", e.what()); + std::cerr << "Error accessing parent directory: " << e.what() << std::endl; } } - for (const auto& entryPath : directoryContents) { + // Lista de archivos y directorios + ImGui::BeginChild("Files", ImVec2(0, -30), true); + for (size_t i = 0; i < directoryContents.size(); ++i) { try { - fs::path entry(entryPath); + fs::path entry(directoryContents[i]); + if (!fs::exists(entry)) continue; // Skip if file no longer exists + + std::string displayName = FileSystemUtils::getFileName(entry.string()); + bool isSelected = (i == selectedFileIndex); if (fs::is_directory(entry)) { - if (ImGui::Button(FileSystemUtils::getFileName(entry.string()).c_str())) { + // Directorios como botones + if (ImGui::Button(displayName.c_str())) { currentDirectory = entry.string(); + selectedFileIndex = -1; UpdateDirectoryContents(); } } else { - ImGui::Text("%s", FileSystemUtils::getFileName(entry.string()).c_str()); + // Archivos como seleccionables + if (ImGui::Selectable(displayName.c_str(), isSelected)) { + selectedFileIndex = i; + } - // Drag & Drop: iniciar un drag si el archivo es válido - if (ImGui::BeginDragDropSource(ImGuiDragDropFlags_SourceAllowNullID)) { - ImGui::SetDragDropPayload("FILE_PATH", entry.string().c_str(), entry.string().size() + 1); - ImGui::Text("Dragging %s", FileSystemUtils::getFileName(entry.string()).c_str()); + // Drag & Drop solo para archivos + if (ImGui::BeginDragDropSource(ImGuiDragDropFlags_None)) { + const char* filePath = entry.string().c_str(); + ImGui::SetDragDropPayload("FILE_PATH", filePath, strlen(filePath) + 1); + ImGui::Text("Dragging: %s", displayName.c_str()); ImGui::EndDragDropSource(); } } } catch (const fs::filesystem_error& e) { - ImGui::Text("Error: %s", e.what()); + std::cerr << "Error processing file: " << e.what() << std::endl; } } + ImGui::EndChild(); + + // Manejar borrado con tecla Delete + if (ImGui::IsKeyPressed(ImGuiKey_Delete) && selectedFileIndex >= 0) { + deleteSelectedFile(); + } ImGui::End(); } diff --git a/sdl2_simple_example/sdl2_simple_example/FileExplorer.h b/sdl2_simple_example/sdl2_simple_example/FileExplorer.h index bda6117..46dcc92 100644 --- a/sdl2_simple_example/sdl2_simple_example/FileExplorer.h +++ b/sdl2_simple_example/sdl2_simple_example/FileExplorer.h @@ -5,7 +5,8 @@ #include #include "MyWindow.h" #include "FilesystemUtils.h" - +#include +#include class Explorer { public: @@ -15,12 +16,24 @@ class Explorer { void draw(); void UpdateDirectoryContents(); + + + int getSelectedFileIndex() const { return selectedFileIndex; } + std::string getSelectedFilePath() const { + return selectedFileIndex >= 0 && selectedFileIndex < directoryContents.size() + ? directoryContents[selectedFileIndex] + : ""; + } private: //MyWindow* _myWindow; glm::ivec2 selectedResolution; bool isFullscreen = false; + std::string currentDirectory = "Library/Meshes"; std::vector directoryContents; + int selectedFileIndex = -1; + + void deleteSelectedFile(); }; diff --git a/sdl2_simple_example/sdl2_simple_example/imgui.ini b/sdl2_simple_example/sdl2_simple_example/imgui.ini index 3da8773..24ba21c 100644 --- a/sdl2_simple_example/sdl2_simple_example/imgui.ini +++ b/sdl2_simple_example/sdl2_simple_example/imgui.ini @@ -4,8 +4,9 @@ Size=400,400 Collapsed=0 [Window][Consola] -Pos=164,495 -Size=636,105 +ViewportPos=730,513 +ViewportId=0xAA02EECC +Size=636,241 Collapsed=0 DockId=0x00000009,1 @@ -21,7 +22,7 @@ Collapsed=0 [Window][Inspector] Pos=590,19 -Size=210,474 +Size=210,581 Collapsed=0 DockId=0x00000008,0 @@ -31,8 +32,9 @@ Size=488,472 Collapsed=0 [Window][Config] -Pos=164,495 -Size=636,105 +ViewportPos=730,513 +ViewportId=0xAA02EECC +Size=636,241 Collapsed=0 DockId=0x00000009,0 @@ -80,13 +82,14 @@ DockId=0x00000006,0 [Window][Scene] Pos=164,19 -Size=424,474 +Size=424,581 Collapsed=0 DockId=0x00000005,0 [Window][File Explorer] -Pos=164,495 -Size=636,105 +ViewportPos=730,513 +ViewportId=0xAA02EECC +Size=636,241 Collapsed=0 DockId=0x00000009,2 @@ -97,17 +100,16 @@ Collapsed=0 DockId=0x0000000B,0 [Docking][Data] -DockSpace ID=0x11111111 Window=0xA87D555D Pos=560,259 Size=800,581 Split=X - DockNode ID=0x0000000B Parent=0x11111111 SizeRef=162,581 Selected=0x06C9255F - DockNode ID=0x0000000C Parent=0x11111111 SizeRef=636,581 Split=X - DockNode ID=0x00000006 Parent=0x0000000C SizeRef=209,581 Selected=0xADB1772B - DockNode ID=0x0000000A Parent=0x0000000C SizeRef=589,581 Split=X - DockNode ID=0x00000003 Parent=0x0000000A SizeRef=600,581 Split=X - DockNode ID=0x00000001 Parent=0x00000003 SizeRef=397,581 Selected=0x29384C3A - DockNode ID=0x00000002 Parent=0x00000003 SizeRef=0,0 Split=Y Selected=0x83E87391 - DockNode ID=0x00000007 Parent=0x00000002 SizeRef=816,474 Split=X - DockNode ID=0x00000005 Parent=0x00000007 SizeRef=424,559 CentralNode=1 Selected=0xE192E354 - DockNode ID=0x00000008 Parent=0x00000007 SizeRef=210,559 Selected=0xE7039252 - DockNode ID=0x00000009 Parent=0x00000002 SizeRef=816,105 Selected=0xCAC6E4C7 - DockNode ID=0x00000004 Parent=0x0000000A SizeRef=198,581 Selected=0x6E9836EA +DockNode ID=0x00000009 Pos=730,513 Size=636,241 Selected=0xCAC6E4C7 +DockSpace ID=0x11111111 Window=0xA87D555D Pos=560,259 Size=800,581 Split=X + DockNode ID=0x0000000B Parent=0x11111111 SizeRef=162,581 Selected=0x06C9255F + DockNode ID=0x0000000C Parent=0x11111111 SizeRef=636,581 Split=X + DockNode ID=0x00000006 Parent=0x0000000C SizeRef=209,581 Selected=0xADB1772B + DockNode ID=0x0000000A Parent=0x0000000C SizeRef=589,581 Split=X + DockNode ID=0x00000003 Parent=0x0000000A SizeRef=600,581 Split=X + DockNode ID=0x00000001 Parent=0x00000003 SizeRef=397,581 Selected=0x29384C3A + DockNode ID=0x00000002 Parent=0x00000003 SizeRef=0,0 Split=X Selected=0x83E87391 + DockNode ID=0x00000005 Parent=0x00000002 SizeRef=424,559 CentralNode=1 Selected=0xE192E354 + DockNode ID=0x00000008 Parent=0x00000002 SizeRef=210,559 Selected=0xE7039252 + DockNode ID=0x00000004 Parent=0x0000000A SizeRef=198,581 Selected=0x6E9836EA

g{Ta>w!2PrY(hy~9 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