[snip]
> 1) One question raised involves how VRML can achieve true multi-user
> interactivity. Of course, VRML 1.0 has very little provision for
> interaction; this was understood when it was drafted. Someone on the chat
> mentioned the use, in 2.0, of some kind of interaction node (or class of
> nodes?) which would allow object interactions. Unfortunately, there seems
> to be a problem: can a static .WRL file, even with the 2.0spec, truly
> handle interactivity?
>
> We think that between two objects which are programmed, the .WRL file which
> the clients download will specify fully how the objects act and/or
> interact under given conditions. But when you add the human factor - i.e.
> actual users (or avatars, of SnowCrash fame) - a simple static .WRL file
> doesn't cut it for interactivity. All of the sudden, you must have a
> sophisticated client/server setup to allow the passage of messages
> between clients in a net-friendly manner.
>
a "sophisticated client/server setup" is already in place. Httpd and
something like Netscape already have almost everything we need, using
only the 1.0 spec.
Here is how to do it, easy. (and FUN!)
Simple put, you can implement it much like netscape does it's
"dynamic documents". By using x-mixed/replace, you can update
nodes on the fly. You should be able to simple define the
translation matrix of an object as a URL, then set that URL
to a cgi script, which will update that matrix whenever needed.
and BAM! you have a dynamic page. I have not used webspace yet,
but I belive this should work right now.
The hard part is getting a users input to cause an update. I'm
not sure what webspace does now with mouse clicks, but I'm sure
it could easyly be modified to send clicks which have no defined
action down the line to a cgi. this cgi would contact the cgi
doing the matrix updates, and that inturn would update an object.
and again... BAM! full interaction.
The last part about mouse clicks may be sparse, but that is because
I'm not sure how things are set up now. I supose you could make
some "buttons" on the bottom of the viewer (in 3d of course) and
have them call cgis to do the update.
I won't have access to an sgi until monday (I'm on vacation) but
I'll try to have a working example in a week or so.
any comments?
Howard.
-- Howard A. Abrams Center for Aviation/Aerospace Research [email protected] Airway Science Simulation Laboratory Embry-Riddle Aeronautical University Academic Computing Laboratory