Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter Eight - Internet Networked Virtual Environments VRML-Based Virtual Environments 251 Some Existing Networked VRML Worlds 253Some Existing Networked.

Similar presentations


Presentation on theme: "Chapter Eight - Internet Networked Virtual Environments VRML-Based Virtual Environments 251 Some Existing Networked VRML Worlds 253Some Existing Networked."— Presentation transcript:

1 Chapter Eight - Internet Networked Virtual Environments VRML-Based Virtual Environments 251 Some Existing Networked VRML Worlds 253Some Existing Networked VRML Worlds 253 virtual reality transfer protocol 262 VRML-Based Virtual Environments 251 Some Existing Networked VRML Worlds 253Some Existing Networked VRML Worlds 253 virtual reality transfer protocol 262 Internet Gaming 263 Overview of Online Gaming Services 264Overview of Online Gaming Services 264 Internet Gaming Software Architectures 266Internet Gaming Software Architectures 266 Future Internet Gaming Directions 269Future Internet Gaming Directions 269 Conclusion 271 References 271

2 VRML-Based Net-VEs Are already dead but the xml/x3d look quite promising...

3 Internet Game Architectures Overview of Online Gaming Services Internet Gaming Software Architectures Future Internet Gaming Directions Overview of Online Gaming Services Internet Gaming Software Architectures Future Internet Gaming Directions

4 Excerpt from technical feasibility document to the VCs... XXX has plans to develop a fully-3D web portal. We plan on multiple 3D virtual channels operating in parallel. Each VR channel will have its own content and our customers will be able to smoothly transition between channels via environment selection off of our web presence. There will be entertainment channels, where complex, multiplayer 3D worlds are navigated in adventure fashion. There will be e- commerce channels and 3D storefronts.XXX has plans to develop a fully-3D web portal. We plan on multiple 3D virtual channels operating in parallel. Each VR channel will have its own content and our customers will be able to smoothly transition between channels via environment selection off of our web presence. There will be entertainment channels, where complex, multiplayer 3D worlds are navigated in adventure fashion. There will be e- commerce channels and 3D storefronts.

5 Excerpt from technical feasibility document to the VCs... The 3D storefronts will allow our customers to examine and purchase products in full 3D. Our virtual storefronts will have the ability to be staffed by knowledgeable clerks able to answer questions via an audio channel inside of the virtual environment. Virtual community channels will be available depending on the synchronicity of customer interests. Our customers will be able to homestead in our virtual communities.The 3D storefronts will allow our customers to examine and purchase products in full 3D. Our virtual storefronts will have the ability to be staffed by knowledgeable clerks able to answer questions via an audio channel inside of the virtual environment. Virtual community channels will be available depending on the synchronicity of customer interests. Our customers will be able to homestead in our virtual communities.

6 Excerpt from technical feasibility document to the VCs... They will be able to meet with their friends in virtual space for interest area discussions or just chat. Our customers will be able to create their own corner of the virtual space they desire to occupy. We will have virtual education channels where our customers will be able to attend lecturers and presentations in virtual space.They will be able to meet with their friends in virtual space for interest area discussions or just chat. Our customers will be able to create their own corner of the virtual space they desire to occupy. We will have virtual education channels where our customers will be able to attend lecturers and presentations in virtual space.

7 Chapter Nine - Perspective and Predictions Better Library Support 275 Bamboo 276Bamboo 276 High Level Architecture 279High Level Architecture 279 Java-Based Toolkits 283Java-Based Toolkits 283 Toolkits Being Developed Everywhere... 284Toolkits Being Developed Everywhere... 284 Better Library Support 275 Bamboo 276Bamboo 276 High Level Architecture 279High Level Architecture 279 Java-Based Toolkits 283Java-Based Toolkits 283 Toolkits Being Developed Everywhere... 284Toolkits Being Developed Everywhere... 284 Toward a Better Internet 285 Research Frontiers 287 Past, Present, and Future 289 References 290

8 Better Library Support Bamboo High Level Architecture Java-Based Toolkits Toolkits Being Developed Everywhere... Bamboo High Level Architecture Java-Based Toolkits Toolkits Being Developed Everywhere...

9 Networked Virtual Environments - A Vision Eventually, there will exist a persistent virtual environment simultaneously shared by millions. There can never be a global reboot. All modifications must happen on the fly. The development of participant programs (live & autonomous characters) for that VE must be as simple as writing a web page is today... Eventually, there will exist a persistent virtual environment simultaneously shared by millions. There can never be a global reboot. All modifications must happen on the fly. The development of participant programs (live & autonomous characters) for that VE must be as simple as writing a web page is today...

10 Requirements for that Vision - Network Software Architecture Extensible/Composable/Interoperable Cross-platform, component frameworksCross-platform, component frameworks Dynamic Behavior ProtocolsDynamic Behavior Protocols Ability to Suspend/Resume State Persistent UniversePersistent Universe Large-Scale/Infinite Number of Players Area of Interest ManagementArea of Interest ManagementExtensible/Composable/Interoperable Cross-platform, component frameworksCross-platform, component frameworks Dynamic Behavior ProtocolsDynamic Behavior Protocols Ability to Suspend/Resume State Persistent UniversePersistent Universe Large-Scale/Infinite Number of Players Area of Interest ManagementArea of Interest Management

11 NSA Requirements - Extensible, Composable & Interoperable Motivation - Cross-platform, component frameworks The motivation behind cross-platform component frameworks is that we want to build systems that are changeable overtime, systems whose updates are downloadable over the Internet, systems that can work on multiple platforms, systems whose pieces are small-enough that they are understandable & reusable.The motivation behind cross-platform component frameworks is that we want to build systems that are changeable overtime, systems whose updates are downloadable over the Internet, systems that can work on multiple platforms, systems whose pieces are small-enough that they are understandable & reusable. Motivation - Cross-platform, component frameworks The motivation behind cross-platform component frameworks is that we want to build systems that are changeable overtime, systems whose updates are downloadable over the Internet, systems that can work on multiple platforms, systems whose pieces are small-enough that they are understandable & reusable.The motivation behind cross-platform component frameworks is that we want to build systems that are changeable overtime, systems whose updates are downloadable over the Internet, systems that can work on multiple platforms, systems whose pieces are small-enough that they are understandable & reusable.

12 NSA Requirements - Extensible, Composable & Interoperable More Than Just Extending Memory Dynamically loaded modules require a consistent framework in which to plug into.Dynamically loaded modules require a consistent framework in which to plug into. The system must establish a convention such that modules can integrate into already running applications.The system must establish a convention such that modules can integrate into already running applications. More Than Just Extending Memory Dynamically loaded modules require a consistent framework in which to plug into.Dynamically loaded modules require a consistent framework in which to plug into. The system must establish a convention such that modules can integrate into already running applications.The system must establish a convention such that modules can integrate into already running applications. Netscape Portable Runtime Bamboo Kernel Lang-1 Loader Lang-N Loader Lang-2 Loader

13 Dynamic Behavior Protocols Desire - each entity in the VE able to define its own protocol modules, modules that are dynamically loadable from the web. easy to maintaineasy to maintain always fully implementedalways fully implemented always optimized per individualalways optimized per individual never consumes unused system resourcesnever consumes unused system resources updateable in real-time!updateable in real-time! Desire - each entity in the VE able to define its own protocol modules, modules that are dynamically loadable from the web. easy to maintaineasy to maintain always fully implementedalways fully implemented always optimized per individualalways optimized per individual never consumes unused system resourcesnever consumes unused system resources updateable in real-time!updateable in real-time!

14 Dynamic Behavior Protocol Architecture Object i Server Object j Client Stub Object k Client Stub Object j Server Object i Client Stub Object k Client Stub Object k Server Object i Client Stub Object j Client Stub

15 A Three-Tier Approach Seems the Way to Go... Global - An environment registry (help me find an environment i.e. DNS, MAAS)(help me find an environment i.e. DNS, MAAS) Environment - An object registry (what objects are out there?)(what objects are out there?) Object - A module registry (input/output channels)(input/output channels) Global - An environment registry (help me find an environment i.e. DNS, MAAS)(help me find an environment i.e. DNS, MAAS) Environment - An object registry (what objects are out there?)(what objects are out there?) Object - A module registry (input/output channels)(input/output channels)

16 A Persistent Universe Motivation - By using dynamic protocols, along with components of the existing Internet architecture, we can support the persistence of a large-scale distributed virtual environment.By using dynamic protocols, along with components of the existing Internet architecture, we can support the persistence of a large-scale distributed virtual environment. http Statelets - A platform independent file containing: Names of archived classesNames of archived classes URLs of the modules containing the classesURLs of the modules containing the classes Archived classesArchived classes Motivation - By using dynamic protocols, along with components of the existing Internet architecture, we can support the persistence of a large-scale distributed virtual environment.By using dynamic protocols, along with components of the existing Internet architecture, we can support the persistence of a large-scale distributed virtual environment. http Statelets - A platform independent file containing: Names of archived classesNames of archived classes URLs of the modules containing the classesURLs of the modules containing the classes Archived classesArchived classes

17 Area of Interest Management - Large-Scale, Infinite Players Multicast and area of interest managers - to facilitate many-to-many communications while using limited bandwidth.

18 4 Keys to Success for Very Large Virtual Environments Receive only what you need to process. Must be expandable dynamically add new protocols, environmentsdynamically add new protocols, environments Must have the ability to handle ‘crowd’ situations. Low overhead for interest management. Receive only what you need to process. Must be expandable dynamically add new protocols, environmentsdynamically add new protocols, environments Must have the ability to handle ‘crowd’ situations. Low overhead for interest management.

19 Interest Management Issues Network Latency, BandwidthNetwork Latency, Bandwidth The time to join a multicast group (0.5 seconds typical)The time to join a multicast group (0.5 seconds typical) Multicast Address Space/Allocation --> IPv6Multicast Address Space/Allocation --> IPv6 Number of multicast groups supported by workstation/PC NICsNumber of multicast groups supported by workstation/PC NICs Number of multicast routes supported by network routers.Number of multicast routes supported by network routers. Unreliable nature of large-scale multicast --> Need QoS supportUnreliable nature of large-scale multicast --> Need QoS support Network Latency, BandwidthNetwork Latency, Bandwidth The time to join a multicast group (0.5 seconds typical)The time to join a multicast group (0.5 seconds typical) Multicast Address Space/Allocation --> IPv6Multicast Address Space/Allocation --> IPv6 Number of multicast groups supported by workstation/PC NICsNumber of multicast groups supported by workstation/PC NICs Number of multicast routes supported by network routers.Number of multicast routes supported by network routers. Unreliable nature of large-scale multicast --> Need QoS supportUnreliable nature of large-scale multicast --> Need QoS support

20 Standards for Interoperability We must be designing standards for interoperability that are as simple to use as writing a web page … So once we have done all the net-VE work on the previous slides, we can then think about standardization...So once we have done all the net-VE work on the previous slides, we can then think about standardization... We must be designing standards for interoperability that are as simple to use as writing a web page … So once we have done all the net-VE work on the previous slides, we can then think about standardization...So once we have done all the net-VE work on the previous slides, we can then think about standardization...

21 Appendix - Network Communications in C, C++, and Java Using TCP/IP from C and C++ 293 Managing Concurrent Connections in C and C++ 297 Using TCP/IP from Java 300 Managing Concurrent Connections in Java 303 Using UDP/IP from C and C++ 305 Using TCP/IP from C and C++ 293 Managing Concurrent Connections in C and C++ 297 Using TCP/IP from Java 300 Managing Concurrent Connections in Java 303 Using UDP/IP from C and C++ 305 Using UDP/IP from Java 308 Broadcasting from C and C++ 310 Broadcasting from Java 310 Multicasting from C and C++ 311 Multicasting from Java 312 References 313

22 2 3

23 5 7

24 10 12

25 Final

26 Any questions?


Download ppt "Chapter Eight - Internet Networked Virtual Environments VRML-Based Virtual Environments 251 Some Existing Networked VRML Worlds 253Some Existing Networked."

Similar presentations


Ads by Google