mainGeneric C++ engine for virtual world - Summary

 
 
Membership Info
Group Admin:
1 active member

Group identification
Id: 4706
System Name: vwe
Name: Generic C++ engine for virtual world
Group Type: non-GNU software and documentation

This group is not part of the GNU Project.

This is an engine for building networked virtual world with a simple (has it can) protocol and a generic server. Main goal is to make easier sharing objects between machines and grant control of object set to client.
A small library offers base classes and usefull client routines.

Main Concepts:
- everything is an object (instance of FObject class)
   *the server
   *each connection
   *each world specific object
   *sub-set defined on the object set (called 'part')
- every object is shared and updated on each client (depend on his read access)
- full text protocol (actualy, but planned to add a binary mode)
- the protocol only transfer object states
   ex. "obj-plane_one alive part-all part-player_one 3 6 8"
   (see the protocol grammar)
- read/write access authorisation on each object
- server is completly generic and world independent.

The full protocol grammar:   ('...' means world specific)
      <msg> ::= <head> <...>
      <head> ::= <obj> <state> <read-group> <write-group>
      <state>: 'dead' | '...'
      <*-group> ::= 'con-...' | <part>
      <part> ::= 'part-all' | 'part-...'
 
       <obj> ::=
         'server'      : the server               (ex: "server alive part-all server")
         'console'   : a common console  (ex: "console alive part-all part-all ...")
         'con-...'     : a connection           (ex: "con-... alive part-all con-... ...")
         'part-...'     : an objects sub-set  (ex: <head> {<obj>}*)
         'obj-...'      : specific world objects


To show it, a simple networked shooter game implements the engine.

Registration Date: Sun 22 Jun 2003 09:41:51 PM UTC
License: GNU Lesser General Public License
Development Status: 2 - Pre-Alpha

 

Quick Overview
 Memberlist (1 member)

Back to the top

Powered by Savane 3.14-d582.
Corresponding source code