Multiplayer Papervision3D using Red5
With Paperworld3D coming to us very soon I've been experimenting with a multiplayer papervision3D application. I've been using Adobe Media Server before to build some multiplayer applications, but this time I want to build it in red5, since I was inspired by Chris Allen's session at FITC Amsterdam about a month ago.
To keep it all very simple for now, I just made a simple cube with some textures. Each visitor of the application will be represented as an avatar, which is in this case just a plane with a random colored texture. The avatar can be controlled by using your arrow key's in combination with the mouse.
Locally the avatar is moving in a 3D environment and pushes it's position (x/y/z/rotationX) every half a second to the server. Every half a second each avatar in the 3D environment will look where all the other avatars are positioned at that moment and tweens each plane to that position, so it will all happen smoothly with a delay of half a second.
It all sounds very simple and I have to say that it is! The most difficult part of getting this done was setting up the red5 environment and the server side application, since this is written in Java. The only java program I wrote before was a helloWorld years ago. I'll plan to post an article soon about how to set a red5 installation up.
Below you'll find a working multiplayer papervision3D example. Click on each version to set it's focus and use it.
Click here for to view a single example in a new window.
When you are interested in how this all work's you can download the source files here.
However this all is working, as it is right now, I'm looking forward to the public beta release of Paperworld3D, which is expected to be released within a couple of weeks. This is expected to be much more integrated with papervision3D and has the ability to do server side rendering (as far as I've heard).

super Paul :-), very smooth too.
Hello Paul,
It looks great! I’ve been experimenting with Red5 also and have some questions. Maybe you can help me out.
Do you know if there is a way to optimise picture quality (if it is pretty pixelated) with live streaming?
Also, how does Red5 stream a live stream into a flv file? Does it encode the video on the server?
Thanks.
Unfortunately I’m not a red5 guru at this moment to answer your questions Michael.
As far as I know, red5 can only stream flash7 (sorenson) encoded video’s and not flash8 on2 encoded video’s. Correct me when I’m wrong….
That is so damn cool! The performance is nice as well.
Very inspiring stuff *reads up on red5*
Excellent, paul, nice work…. let me know what you think of paperworld, sounds like we’re on similar wavelengths… T
[…] Tondeur developed a multiplayer environment with Red5 and Papervision3D. A nice start for game developers. Source code is also available. […]
This doesn’t seem to be working right now ?
Red5 server down ?
Unfortunately this server isn’t running anymore.