Hi !
Featured games (91)
games approved by the League of Dukes
Games in Showcase (757)
Games in Android Showcase (229)
games submitted by our members
Games in WIP (844)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  Shared Universes among various computers  (Read 2460 times)
0 Members and 1 Guest are viewing this topic.
Offline aaron3.1416

Innocent Bystander

« Posted 2007-10-15 04:12:15 »

Hi Java Guys!!!

I´m just learning about MMOG technology and I have some questions about rendering the same java virtual universe among different clients through the net. Let me explain you...

I wanted two Java JFrames pointing to the same virtual universe. I´ve solved it by manually creating two (or more) Viewing Superstructures branches and attach´em to the same Locale object belonging to just one VirtualUniverse instance, then I put two (or more) different Canva3D objects in the frames that I wanted at the begining and DONE!!!
But my problem goes beyond than sharing THE SAME Virtual Universe in the SAME machine. Could you guess what is it??? ... ha ha ... I know you can!!!

Exactly!!! Would not be even more interesting be able to share that SAME Universe between (or among) different computers by using a network connection???

I tried by sending the Canvas3D object through the net ( and receive it at the other side in order to be used in a JFrame located "ailleurs", but the operation was not succesful.
I´ve found some interesting ideas about the use of RMI, but I cannot conceptualize how exactly would work.

- I know how to create a simple cube.
- I know how to stablish communication by using RMI between two computers.

So... how to make clients able to SEE that universe??

... so, what to do?, could be better send the universe or some Viewing superstructures (writeObject(), readObject())??, How to make two or more computers render THE SAME VIRTUAL UNIVERSE at real time?, so many answers?, and if so, what would be the best one?
I read some documentation, nevertheless I want to use a logic in which the server HOSTS the Virtual Universe COMPLETELY, and for each client trying to acquire it, the server sends a kind of "WINDOW" that points to that same universe; I mean, dinamically LOAD 3D objects into the client in order to avoid memory leaks in the client side when treating with complex and big Virtual Universes.

I would like to receive your comments and suggestions to develop my applications.

Thanks for your time and attention.

Good Bye.
Offline j-ware

Innocent Bystander

« Reply #1 - Posted 2007-11-13 13:40:38 »


A while ago I made a multi user gaming engine that consisted of a server and many clients; I came across the same problem as you.

Before I go into detail, will your universe be having 3d objects added and removed from it throughout its use?? (ie, will a person have to appear if someone logs in, will a building have to appear if someone builds it, etc...)

Many networked games (ie on the playstation) have the 3d universe (world) built within the client, therefore, each client will not have to download the universe from a server (which helps towards bandwidth usage). All the server does is pass messages to and from each client.

When I made my multi user games engine I tried streaming the universe to each client, because the universe would be constantly getting larger, however, you do not need to do this. Here's my suggestion:

Each client has a basic 3d universe, which possibly contains the ground, sky, etc.. all the basic features. Also, have a library of 3d objects which the client has access to all the time, and upon login the server can stream some sort of file containg a map of the 3d universe and what and where objects need to go. if someone else logs in on a different computer, that client will pass a message to the server which in turns relays the message to all the other clients that are logged, telling them where the newly logged user is and what 3D object they are. Each client then independantly loads that 3D object into the universe (scenegraph is more precise).

If and when new objects appear in the library the server can pass out a message to each client telling them that a new object has arrived, then each client can download the object from the server (I would suggest have this as a text file which your client can load in and convert into a 3D object).

By doing this each client can use there bandwidth to the full for the actual game play (or whatever you client server app is doing) instead of using it to download large scenegraphs and 3d objects.

Hope this helps

Pages: [1]
  ignore  |  Print  

EgonOlsen (78 views)
2018-06-10 19:43:48

EgonOlsen (58 views)
2018-06-10 19:43:44

EgonOlsen (78 views)
2018-06-10 19:43:20

DesertCoockie (260 views)
2018-05-13 18:23:11

nelsongames (158 views)
2018-04-24 18:15:36

nelsongames (157 views)
2018-04-24 18:14:32

ivj94 (898 views)
2018-03-24 14:47:39

ivj94 (162 views)
2018-03-24 14:46:31

ivj94 (811 views)
2018-03-24 14:43:53

Solater (175 views)
2018-03-17 05:04:08
Java Gaming Resources
by philfrei
2017-12-05 19:38:37

Java Gaming Resources
by philfrei
2017-12-05 19:37:39

Java Gaming Resources
by philfrei
2017-12-05 19:36:10

Java Gaming Resources
by philfrei
2017-12-05 19:33:10

List of Learning Resources
by elect
2017-03-13 14:05:44

List of Learning Resources
by elect
2017-03-13 14:04:45

SF/X Libraries
by philfrei
2017-03-02 08:45:19

SF/X Libraries
by philfrei
2017-03-02 08:44:05 is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!