Original Post
Hello there!
Im SirCyr, long time reader first time poster... I''m designing a 3D engine to be used in a space shooter game using OpenGl.
I was thinking about how I will render my object list and I came up with the following thoughts or question:
-> Each object polygons would be only stored once in the graphic engine and located at the origin. So if I want to have two spaceships that use the same model, I would use two "handles" that would bind a different texture and position.
-> My meshes would be stored in a database that would be sorted in a shader tree(As suggested on the Delphi3D site lately) to eliminate state changes as much as I can. Should I build that tree only once? or at each frame for the polygon that are visible...And, if the same mesh, at a given node, is used by more than one model. Does it means that I can''t render them only by one call to OpenGl since I have to transform that mesh two times...Ideally I would like to make only one render call for all the meshes that shares the same texture settings...Do you have some ideas how to acheive that?
thansk!