OpenGL, most likely, will be slower than alternative API's like RenderMorphics
on a given platform when it comes to a full software based implementation (like most
Windows based implementations). There is alot more functionality in OpenGL from a
traditional sense, but that may not make sense for a VRML browser.
The VRML spec is definitely tilted toward OpenGL. The Nodes are pretty much 1-1
mappings to OpenGL calls. Some Nodes will need additional code to be implemented in
RenderMorphics, but generaly not too much. The problem comes into play when you
need to specify things like different colors for ambient/diffuse/specular/emissive
properties of a material and the 3D API doesn't support that. OpenGL supports this,
RenderMorphics probably doesn't. Thus, if you can live without ever having this
type of functionality, you'd be ok to use rendermorphics. However, the fact that
rendermorphics does not support these types of calculations may point to some of the
reasons they are so much faster. Whatever you do, I would suggest writing to your
own 3D API independant layer so you could *plug in* OpenGL/RenderMorphics or
whatever 3D API you want. Which API is best is difficult to tell, and depends on
the application, the user, and the platform. Being flexible in this area is pretty
easy to do.
Greg
Greg Scallan
Paper Software
(914)679-2440
[email protected]