Add a boolean flag to Mesh3D constructor and loadOBJFile to optionally
flip the Y coordinate of vertices.
Update engine to use this flag for specific objects (e.g., mimikyu) that
require flipping.
- Add position, rotation and scale fields to `Mesh3D` and expose them publicly.
- Remove the old `Object3D` struct; `Objects3D` now stores `unique_ptr<Mesh3D>`.
- Implement a new `createObject(name,textures,filepath,position,rotation,scale)` overload that sets transforms after loading the mesh.
- Add a `draw(Mesh3D*)` helper that binds the texture, builds a model matrix and issues `glDrawArrays`.
- Update the rendering loop to use `draw()` instead of the old cube routine.
- Simplify `onCreate`: enable depth test, flip textures, create two objects with proper transforms, set clear color.
- Enable window resizing (`GLFW_RESIZABLE`), change default size to 800×600 in `main.cpp`.
- Clean up includes and remove unused `cube.cpp`; refactor OBJ parsing for robustness.
These changes unify object handling, allow per‑object transformations, simplify the rendering pipeline, improve maintainability, and make the window resizable.
- Introduce Mesh3D class with vertices, texture, VBO/VAO.
- Replace Object3D struct and textures map in engine with Mesh3D objects.
- Update createObject to load from file path instead of vertex array.
- Adjust cube rendering to use new vertex count.
- Remove debug prints from Texture2D loading.
- Toggle fragment shader color vs texture usage.