There are many solutions for displaying 3D content in web browsers.
But they are all high-level interfaces, tying the content-provider
to fixed (proprietary or free) 3D data formats (VRML, X3D, …)
User-interaction is only possible in predefined ways
and there is zero to some humbling degree of scripting possible.
That’s why all current and past 3D web-browser plugins have failed to
proliferate
sophisticated game and visualization applications running within
browsers yet.
The logical consequence is to go one step back, from high-level
interfaces
to low-level APIs (anyone remembers the old Direct3D Retained Mode vs
Immediate Mode?).
What we need is something like a “DirectX for web-browsers” that
enables
us to write full fledget games and other 3D-applications with
optimized,
compiled native code as we do for standalone-applications.
The only difference would be that it runs in a brows-plugin-frame
instead
of in an operating system window.
Suggested Features:
- Info-API (what os, browser, cpu-architecture etc.)
- Mechanism for downloading and updating appropriate executable
binaries (platform…) - Signing of executable binaries
- (User-)Configurable local cache for downloaded data
- Something like WGL/GLX for the web-browser environment (BGL?)
- OpenGL for rendering
- OpenAL for sound
- Something like Open Input (OpenIN) for listening to input devices
- Access to the DOM of the embedding web-page
What do you think about that?
I have started a google-group for centralized discussion:
http://groups.google.com/group/openbe/
-Erik Unger