High-Fidelity Distributed Physics for Continuous Interactive Virtual Worlds Using Server
Total Page:16
File Type:pdf, Size:1020Kb
High-fidelity Distributed Physics for Continuous Interactive Virtual Worlds using Server Clusters A thesis presented to the faculty of the Russ College of Engineering and Technology of Ohio University In partial fulfillment of the requirements for the degree Master of Science Scott L. Nykl November 2008 © 2008 Scott L. Nykl. All Rights Reserved. 2 This thesis titled High-fidelity Distributed Physics for Continuous Interactive Virtual Worlds using Server Clusters by SCOTT L. NYKL has been approved for the School of Electrical Engineering and Computer Science and the Russ College of Engineering and Technology by David M. Chelberg Associate Professor of Electrical Engineering and Computer Science Dennis Irwin Dean, Russ College of Engineering and Technology 3 ABSTRACT NYKL, SCOTT L., M.S., November 2008, Computer Science High-fidelity Distributed Physics for Continuous Interactive Virtual Worlds using Server Clusters (148 pp.) Director of Thesis: David M. Chelberg Today’s virtual worlds are places of immense interaction and realism that give rise to highly immersive environments. One of the most critical aspects providing this realism is the simulation of motion and the physical interaction between objects, i.e., physics. The physics of a virtual world is governed by mathematical equations that approximate the physical attributes of the real world. As virtual worlds grow larger, the computational complexity grows; thus, the processing time needed to simulate the virtual world grows. Once the processing time required to simulate an amount of time within the virtual world is greater than that same time in the real world, players in the virtual world begin to notice a slow down; this takes away from realism and causes immersion to suffer. As virtual worlds grow larger and more complex, the computational power required to simulate the virtual world in ‘real time’ grows proportionally. This thesis focuses on simulating high fidelity distributed physics for continuous interactive virtual worlds using server clusters. Approved: _____________________________________________________________ David M. Chelberg Associate Professor of Electrical Engineering and Computer Science 4 ACKNOWLEDGMENTS I would like to thank Dr. David Chelberg for his guidance and insight as my advisor over the course of my thesis research. Additionally, I would like to thank Dr. Shawn Ostermann, Dr. Hans Kruse, and Dr. Teresa Franklin for their oversight on my thesis committee. I would also like to thank Dr. Chang Liu and the STEAM project for giving me the opportunity to pursue my Master’s degree here at Ohio University. Furthermore, I would like to thank Chad Mourning and Mitch Leitch for their work on the STEAMiE Educational Game Engine. 5 TABLE OF CONTENTS Page Abstract............................................................................................................................... 3 Acknowledgments............................................................................................................... 4 List of Tables .................................................................................................................... 10 List of Figures................................................................................................................... 11 Chapter 1: Intoduction ...................................................................................................... 15 Abstract......................................................................................................................... 15 Purpose.......................................................................................................................... 15 Current Issues ............................................................................................................... 16 Chapter 2: Literature Review............................................................................................ 18 Introduction................................................................................................................... 18 IBM’s OptimalGrid....................................................................................................... 19 C. Hsu’s Region-Oriented Allocation Strategy ............................................................ 21 Peer-to-Peer Architecture.......................................................................................... 21 Client-Server Architecture........................................................................................ 22 Mirrored-Server Architecture ................................................................................... 22 Server Cluster Architecture....................................................................................... 23 Region Oriented Allocation Strategy.................................................................... 23 Cloud Computing.......................................................................................................... 25 Project Darkstar ............................................................................................................ 26 Chapter 3: Design Overview............................................................................................. 30 6 The World Object ......................................................................................................... 30 Graphical Representation.......................................................................................... 32 Physical Representation............................................................................................ 35 Distributed Representation........................................................................................ 37 User Interaction......................................................................................................... 39 The Cluster Server ........................................................................................................ 41 The Cluster Client......................................................................................................... 47 Chapter 4: Physics Engine Design.................................................................................... 49 What is a Physics Engine?............................................................................................ 49 Open Dynamics Engine ................................................................................................ 51 Physics Engine Independence....................................................................................... 54 Force Abstraction.......................................................................................................... 54 Chapter 5: Open Torque Network Library........................................................................ 56 What is the Open Torque Network Library.................................................................. 56 Framework Provided by the Open Torque Network Library ....................................... 56 TNL’s NetObject ...................................................................................................... 56 TNL’s Ghosting Mechanism..................................................................................... 57 TNL’s Remote Prodecure Call Mechanism.............................................................. 60 Chapter 6: Cluster Server Design ..................................................................................... 63 Overview of a Server Cluster........................................................................................ 63 Assumptions about the Server Cluster...................................................................... 64 Cluster Server Components .......................................................................................... 65 Logical Cluster Server to Cluster Server Connections ............................................. 65 7 Logical Cluster Server to Cluster Client Connections.............................................. 70 Cluster Server Computational Volume..................................................................... 76 World Object Cloning Between Peer Cluster Servers .............................................. 83 World Object Handoff from an Authoritative Cluster Server to an Adjacent Cluster Server ........................................................................................................................ 87 Chapter 7: Experiments and Analysis............................................................................... 91 Experiment Layout.................................................................................................... 92 Experiment Data ....................................................................................................... 93 Experiment Analysis................................................................................................. 94 Experiment 2: Two Cluster Servers Simulating a Terrain and Four Automobiles with One Client..................................................................................................................... 98 Experiment Layout.................................................................................................... 98 Experiment Data ....................................................................................................... 98 Experiment Analysis................................................................................................. 99 Experiment 3: Four Cluster Servers Simulating