I keep imagining that a 3D web-browser will be able to provide something beyond the current set of web "standards" (HTML, CSS, Flash, HTTP, etc…).
With a set of procedures for representing data objects on the web, a browser can interact with data that actually is important to them: with complete freedom of arrangement, visual style, filtering, and transformations – and without specific arbitrary styling imposed by site designers.
- web page content (HTML: text, links, images)
- returned by web services (XML, RDF, JSON, ...)
- received from protocols (ex: P2P or XMPP)
Vector space eliminates certain design considerations necessary with pixel-based displays. In vector space, all that matters is relative position, scale, and rotation. In contrast, the "page" concept might seem relatively flat, rigid, restrictive,... Vectors allow for structural "embedding" - sometimes it is more appropriate to place content "inside" of something. (Zooming is one way to navigate "inside".) But in a pixel-based system, there is a limit to the complexity that can be "infolded" without needing to resize everything else.
Such a 3D browser could merge "seamlessly" with its underlying operating system and windowing system. For example, certain Linux distributions boot directly into a browser. Similarly it's probably the goal of Google's Chrome-based OS http://googleblog.blogspot.com/2009/07/introducing-google-chrome-os.html. Google also develops the O3D browser plugin http://code.google.com/apis/o3d/ which provides a javascript scenegraph API. (BTW - I wonder how performance compares between O3D+Javascript and JME?)
Some possible development "paths" or "stacks" to reach this "ultimate 3D browser":
- Linux + Java (OpenJDK) + JMonkeyEngine, maybe with GCJ applied somewhere
- Linux + Google Chrome/OS + O3D
- Linux + Mozilla/XUL + O3D, or some other plugin or 3D CSS Standard
- Linux + C++ 3D Engine + ...
Any ideas?