PANORAMA: A Rich VRML Application Platform For Online Gaming
S. Yin & A. Eliens

VRML/X3D?
- The first reason is the \textit{compatibility conflict between
different VRML viewers}. According to the list from the Web 3D consortium[7], there are
more than ten VRML players exists and about four of them are widely used.
The truth is that most of the players can't view others' VRML world well,
especially when involving special non-standard features.
We think such dilemma is more than a technical problem and
will not be discussed in the rest of the paper.
- The other reason is the \textit{lack of communication
interface}. Current VRML/X3D standards[8] don't have the facility to
support multi-users or network connections except simple URL
indication. One solution, provided by the Blaxxun company in
their communication server product[1], is expensive and
not general enough to expand. The other solution named Distributed
Logic Programming(DLP)[6], which supports sockets connections, focuses
on intelligence research with less care on the performance. The internal
Java support is also another option but it gives too much workload on the
client.



GWT
public static native void
setEventIn(node, field,value) {
document.Contact3D.setNodeEventIn
(node, field, value);
}

javascript
DEF Script Script {
field MFString url ["OnEvent(par)"]
url "javascript:
function value_changed(v, t) {
#load the current URL in default
Browser.loadURL(url, v);
}"
}
HTML
<script language=Javascript>
function onEvent(par){
alert(par1);
}
</script>


future work
Authorization mechanism. The server should maintain authorization function otherwise one
can easily change other's data through the HTTP header request. Since it's nothing to do with VRML, normal
web solution is sustainable.
Synchronization issues. Upon the time the paper is written, we haven't experienced
large scale multi-user scenarios on PANORAMA and such problem didn't occur at this moment.
But we think it's a web developing problem rather than a complex game engine design and PHP can easily handle that.
Modification in GWT for better VRML support Again, we discovery that the GWT is a well developed
framework which greatly saves time on debugging web applications and building UI. Since it uses an open source
license, it's possible to build a dervied package that specially serve for the VRML game development.

other platforms
- Open source licensed. Comparing with other commercial platforms, PANORAMA can be totally built upon open source softwares.
For example, the server can use Apache while the VRML client has Flux[9] and the GWT library is already Apache licensed. Such
environment gives developers more spaces to investigate and expand.
- The out performance of VRML. By fully supporting the DirectX9, VRML players gain the best performance in 3D graphics rendering,
resulting in high quality game images. The VRML/X3D are also open standards file format with a rich set of components featuring visualization
and entertainment.
- Royalty free Development. Commercial platforms need you to buy the authoring tools to create content while VRML applications
can be totally developed by text editors. Some respect authoring tool like Flux Studio and VrmlPad are free to download and use.
