Java-Gaming.org    
Featured games (81)
games approved by the League of Dukes
Games in Showcase (498)
Games in Android Showcase (114)
games submitted by our members
Games in WIP (563)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
   Home   Help   Search   Login   Register   
  Show Posts
Pages: [1]
1  Game Development / Networking & Multiplayer / Re: Shared Universes among various computers on: 2007-11-13 13:40:38
Hi,

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

J-Ware
Pages: [1]
 

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

BurntPizza (19 views)
2014-09-21 02:42:18

BurntPizza (14 views)
2014-09-21 01:30:30

moogie (14 views)
2014-09-21 00:26:15

UprightPath (25 views)
2014-09-20 20:14:06

BurntPizza (27 views)
2014-09-19 03:14:18

Dwinin (40 views)
2014-09-12 09:08:26

Norakomi (73 views)
2014-09-10 13:57:51

TehJavaDev (96 views)
2014-09-10 06:39:09

Tekkerue (49 views)
2014-09-09 02:24:56

mitcheeb (70 views)
2014-09-08 06:06:29
List of Learning Resources
by Longor1996
2014-08-16 10:40:00

List of Learning Resources
by SilverTiger
2014-08-05 19:33:27

Resources for WIP games
by CogWheelz
2014-08-01 16:20:17

Resources for WIP games
by CogWheelz
2014-08-01 16:19:50

List of Learning Resources
by SilverTiger
2014-07-31 16:29:50

List of Learning Resources
by SilverTiger
2014-07-31 16:26:06

List of Learning Resources
by SilverTiger
2014-07-31 11:54:12

HotSpot Options
by dleskov
2014-07-08 01:59:08
java-gaming.org 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‑gaming.org
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!