Webbased Collaborative 3D Modeling - PowerPoint PPT Presentation

1 / 27
About This Presentation
Title:

Webbased Collaborative 3D Modeling

Description:

Object Server. Proxy. Network Architecture. Communication Protocol. 3D Modeling Applet ... Fully-distributed Object Server. Combine Proxy and Client Applet ... – PowerPoint PPT presentation

Number of Views:22
Avg rating:3.0/5.0
Slides: 28
Provided by: alexde7
Category:

less

Transcript and Presenter's Notes

Title: Webbased Collaborative 3D Modeling


1
Web-based Collaborative 3D Modeling
  • Alex DeCastro
  • San Diego Supercomputer Center
  • University of California, San Diego
  • Department of Computer Science
  • University of California, Santa Barbara
  • June 16, 1999

2
Presentation Outline
  • Objective and Design Goals
  • Project Description
  • Future Work
  • Conclusions
  • Demo

3
Objective
  • Develop a Web-based environment for multiple
    users to interactively construct a shared 3D
    model

4
Design Goals
  • Leverage Web-based technology to perform 3D
    modeling
  • Network architecture provides reliable and
    scalable message delivery between the clients
  • Communication protocol allows a high-level of
    interaction between the users

5
Project Description
  • Outline
  • 3D Modeling Applet
  • Object Server
  • Proxy
  • Network Architecture
  • Communication Protocol

6
3D Modeling Applet
  • Construct a 3D model
  • Two different implementations
  • Java3D Client
  • VRML - JavaEAI Client

7
Java3D Modeling Applet
  • Java3D is a general 3D graphics API.
  • Single-user applet
  • Create, Delete, Select and Transform shapes
  • Multi-user environment
  • Create and Delete messages
  • Lock and Unlock messages
  • Transformation messages

8
VRML - JavaEAI Applet
  • VRML
  • Virtual Reality Modeling Language
  • JavaEAI
  • External Authoring Interface
  • Tiny3D is an existing 3D modeling applet
  • Modified Tiny3D
  • Added Delete object
  • Changed the GUI
  • Added client-side communication

9
Inter-Applet Coordination
  • Once the 3D modeling applets were completed
  • Need some way to coordinate activity between the
    clients
  • This is accomplished using a centralized
    coordinator Object Server

10
Object Server
  • Services Provided
  • Forwards messages between the clients
  • Coordinates communication between the clients
  • Maintains the shared 3D model

11
Object Server
HTTP Server
Object Database
  • Simple network architecture
  • Object Server running on HTTP server
  • All clients connect to the object server

Object Server
TCP/IP Socket
TCP/IP Socket
Browser
Browser
Client Applet
Client Applet
12
Proxy
Object Database
  • Proxy provides greater flexibility
  • Message forwarding agent between each client and
    the object server
  • TCP/IP sockets provide reliable message delivery

Object Server
TCP/IP Socket
TCP/IP Socket
HTTP Server
HTTP Server
Proxy
Proxy
TCP/IP Socket
TCP/IP Socket
Browser
Browser
Client Applet
Client Applet
13
Network Architecture
  • Limitations
  • Object server is a single point of failure
  • Communication bottleneck
  • Not scalable
  • Linear relationship between the number of clients
    and the network resources required to broadcast a
    message
  • (Communication Protocol)

14
Communication Protocol
  • Synchronization messages
  • Create, Delete, Lock, Unlock
  • Transformation messages
  • Translate, Rotate, Scale
  • Session management
  • Join - New client joins a session
  • Leave - Client leaves a session

15
Synchronization Messages
  • Create and Delete
  • Ensure that all clients are aware of the same
    objects
  • Lock and Unlock
  • Ensure mutual exclusive access by each client to
    each object
  • Critical for maintaining a consistent shared
    model
  • Must be delivered reliably

16
Transformation Messages
  • Notify other clients of object transformations
  • Contain absolute transformation information
  • Occur with greater frequency
  • Are broadcast to all of the clients

17
Transformation Messages
  • Contain absolute transformation information
  • Can tolerate unreliable message delivery
  • It is possible to lose all but the last
    transformation message in a sequence and still
    have an object properly transformed

18
Scalable Message Delivery
  • Can use multicast communication to deliver
    transformation messages scalably
  • Multicast can deliver a message to a group of
    receivers without sending a separate message for
    each receiver

19
Multicast Communication
Object Database
  • Transformation messages sent through multicast
    group

Object Server
Multicast Group
TCP/IP Socket
TCP/IP Socket
Multicast Socket
HTTP Server
HTTP Server
Proxy
Proxy
TCP/IP Socket
TCP/IP Socket
Browser
Browser
Client Applet
Client Applet
20
System Limitations
  • Object Server
  • Centralized coordinator
  • Single point of failure
  • Communication bottleneck
  • 3D Modeling Applets
  • Latency of shadow objects
  • Addressed with application level congestion
    control

21
Future Work
  • Combine Proxy and Client Applet
  • Reliable Multicast
  • Fully-distributed Object Server

22
Combine Proxy and Client Applet
  • Signed applet can connect to multicast group

Object Server
Multicast Group
TCP/IP Socket
Multicast Socket
Client
Client
23
Reliable Multicast
  • Provides scalable message delivery without
    sacrificing reliability
  • Techniques for implementing reliable multicast
  • SRM (Scalable Reliable Multicast)

24
Fully-Distributed Object Server
  • Eliminate the centralized coordinator
  • Object locking handled by distributed mutual
    exclusion protocol

Client
Client
Multicast Socket
Reliable Multicast
Multicast Socket
Client
Client
25
Future Applications
  • Collaborative CAD
  • Designing buildings
  • Collaborative movie animation
  • Creating movies
  • Distance Learning
  • Collaborative problem solving

26
Conclusions
  • Demonstrate a Web-based collaborative 3D modeling
    environment.
  • Leverage emerging and existing Web-based
    technology for 3D modeling.
  • Balance reliable and scalable communication using
    unicast and multicast sockets.
  • Communication protocol that supports fine-grained
    synchronization, high-level of interactivity.

27
Demo
  • www.cs.ucsb.edu/alex/c3d/index.html
Write a Comment
User Comments (0)
About PowerShow.com