This is probably the wrong board, it’s more about engine development really.
So I’m trying to implement a all-around model loader framework for my library, that just parses vertices and stores them as ‘Vertex’ objects…
Vertex.java
Vector4f position;
Vector2f textureUV;
Vector3f color; // I should probably remove this by now... xD
Vector3f normal;
// ... getters and setters / constructors
I made it like this because I wanted it to be super easy to send vertices down the pipeline however you want. By making a vertex class, and making VBOs read from them. Or draw them directly from immediate mode statically. This way I could have a model, loaded from any source, be rendered in the same way throughout the app.
But my problem is, what should a basic 3D model do? What fields/methods should it inherit? In other words, what stays constant per 3D model type?
Summary: I have a universal vertex class, wrapping a position, normal, texture UV, and a color… What functions/fields stay the same while loading different types of 3D models? Also, what different model types do I have to focus on?
EDIT: Also, where would I find documentation on format of each model?
Thanks in advance.