so where's all this going? (OpenGL)

Started by
10 comments, last by ravyne2001 18 years, 7 months ago
Quote:Original post by Ravyne
I agree with the mods, but on the other hand it would be nice to have some standardized OO management stuff in an add-on library rather than everyone having to roll their own and worrying about bugs / supporting anyone else who may end up using it.

The thing is, I don't really see anyone rolling their own (at least, in the context of commercial and open source game engines). If someone decides to roll their own game engine, the raw OpenGL calls are in the same places as D3D member functions would be. The OO interface that D3D offers is really more syntactic than semantic. Very little polymorphism is offered, or needed.

Quote:That said, I doubt the OpenGL ARB will take it upon themselves to begin such an undertaking. In the world of OSS, things like that are generally accomplished by an individual or group beginning a project, this project reaches maturity and gains popularity, and then finally (if its deemed worthy) is addopted by the 'parent' project or otherwise officially/unnofficially recognized.

If you want to see this, find some like-minded and intelegent people to get together and start it yourself.

Such a thing already exists, in a sense. Google for OpenInventor. It's a scene graph library, built on OpenGL. This is really the next level of abstraction up, not thin OO wrappers. Other scene graph libraries exist, of course, and OpenInventor is not widely used in game development.
Advertisement
Sneftel, you're probably right about there not being much if any need for an OO wrapper. I think you'd need to go a little bit higher before you'll be able to make anything thats both usefull and provide a worthwhile abstraction, OpenInventor seems to be on that level, as you mentioned.

I'll add also that one, if not THE, advantage of C is its portability, not only in terms of its own widespread availability, but in its ability to bind with nearly any other language. If an OO add on library is created for OpenGL, at any level, seperate versions would have to be maintained for each supported language, or at least a language with the necessary inter-op bindings.

throw table_exception("(? ???)? ? ???");

This topic is closed to new replies.

Advertisement