Currently I have a naive Mesh data structure to store wavefront files.
This data has 3 buffers for the vertices, normals and UVs. It works well to the point I can render the sponza scene, despite such a scene having multiple inner meshes.
The issue is, currently I can onlky render 1 "thing" (I can only have all the mesh associated to a single texture and material properties).
Since I want to be able to render the sponza scene properly (with all the textures), I need to associate with the vertices different textures and material properties. Based on the information of the associated mtl files.
What is the proper design to have a Mesh, transform and material objects wrapped in a containing structure such that you can handle complex geometry like the sponza scene?