Understanding new VBO and Mesh architecture

hey of board,

I’m trying to wrap my head around the way the new 3d classes are working in 007.

here is what I gather from the current files in git.

an ofPrimitive stores all the vertex, color, indeces, and texcoords, etc without really having anything to do with GL stuff… but it does specify a drawing mode

ofMesh is a bunch of ofPrimitives

ofMeshRenderer draws the ofPrimitives that an ofMesh contains using VBOs

ofMeshNode inherits from ofNode and contains a bunch of ofMeshes in order to apply transforms (position, rotation) and create hierarchies… (this one is fuzzy for me)

ofModel seems to take care of making ofMeshRenderers for your ofMeshes and links all the textures from a model you load.

Seems like there are two use cases to view these classes from - Either you want to load an existing 3d model and have it show up right (lit, textured, scaled, rotated, etc) potentially with animation too. This example is covered by the example devApps/meshTester with the cool space dude.

Or you want to generate your own mesh, which is what i’m interested in doing.

What’s the best way to do this? What classes are needed and how do we imagine they fit together?

There currently is a meshGeneration example, but it’s outdated and wont’ compile since the refactor from 3 weeks ago.

Any advice would be great as I’m stumbling on this one,

Hey Jim

the architecture for all those classes is still being discussed and refactored. Some of them are going to disssapear and others are going to be renamed so i won’t use them yet.

hey Arturo,

OK, that’s understandable… I’ll just use VBO and manage my own vector arrays for the time being as hopefully that won’t change too much.

If it’s of any value in the debate, it may be worth while to look at how Unity handles it’s mesh and animation architecture, it’s pretty intuitive: