human factors in networked virtual environments

21
Human Factors in Networked Virtual Environments Joe Manojlovich INFSCI 2350

Upload: kavitha-sekar

Post on 21-Apr-2015

17 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Human Factors in Networked Virtual Environments

Human Factors in Networked Virtual Environments

Joe ManojlovichINFSCI 2350

Page 2: Human Factors in Networked Virtual Environments

Networked Virtual Environments

We’ve so far described the problems of creating a single user, single site virtual environment

Now we’ll discuss the problems in distributing a virtual environment over different computers, and even across the Internet

Page 3: Human Factors in Networked Virtual Environments

Networked Virtual Environments

The central problem of networked virtual environments is how to share the same state among different hosts

How can one ensure that each viewer of the shared simulation has exactly the same virtual world, synchronized exactly with every other hosts?

Page 4: Human Factors in Networked Virtual Environments

Consistency-Throughput Tradeoff

It is impossible to allow a dynamic shared state to change frequently and guarantee that all hosts simultaneously have identical versions of that state

There is always inconsistencies in the clients compared to the authoritative server due to network and rendering lag

Page 5: Human Factors in Networked Virtual Environments

Consistency-Throughput Tradeoff (cont.) From a human factors standpoint,

inconsistent clients can lead to interaction difficulties in the simulation

Lags can cause feedback times to increase, resulting in the loss of presence, or even cybersickness

Three major methods of overcoming this: Centralized repository Frequent state generation Dead reckoning

Page 6: Human Factors in Networked Virtual Environments

Centralized Repository

Rely on one central server to keep a single authoritative simulation

Each client must try to keep up with the server

Network lag and rendering lag on the client could result in jerkiness, reducing presense

Page 7: Human Factors in Networked Virtual Environments

Frequent State Regeneration Assume the clients do not keep

track of the simulation, and every time interval send a dump of the simulation

Rapid updates should quickly override any inaccuracies in the client simulations

If updates are small enough, the jerkiness caused by network and rendering lag should be minimzed

Page 8: Human Factors in Networked Virtual Environments

Dead Reckoning Make predictions about the location

and state of objects in the simulation based on their current status

Can lead to inconsistency between simulators if assumptions do not match what actually occurs to the objects

Synchronization of states will cause jerkiness, reducing presence

Page 9: Human Factors in Networked Virtual Environments

Networked Virtual Environment Tracks

Three main tracks of development Military Academic Computer Games

Let’s use games as the basis for comparing the other types

Page 10: Human Factors in Networked Virtual Environments

Games versus Other Virtual Environments Academic and military simulators tend to

concentrate on “brute force” creation of virtual environments

Details as small as square meter soil types, while useful for scientific calculations, are not required for most simulations

Games eschew the brute force approach, and instead try to show a subset of the environment’s attributes in an accurate and smooth way

Page 11: Human Factors in Networked Virtual Environments

Multiplayer Gaming “Multiplayer gaming is about

shared reality: that all of the players feel that they are in the same world, seeing from different viewpoints the same events transpiring within that world.” – Tim Sweeny, Epic Games

The history of networked games parallels that of other networked virtual environments

Page 12: Human Factors in Networked Virtual Environments

History of Networked GamesFirst Generation

First networked games were peer-to-peer based

Each machine participating in the game was an equal to every other

Inputs and outputs were exactly synchronized between all machines

Page 13: Human Factors in Networked Virtual Environments

History of Networked GamesFirst Generation (cont.)

Each machine executed the same game logic on the same data

By using completely deterministic game logic, each player got the same virtual reality

Page 14: Human Factors in Networked Virtual Environments

History of Networked GamesFirst Generation (cont.) Main advantage was simplicity

Each machine was exactly the same, from data to code running

Very limiting at the same time Persistence: Players could not enter

and leave virtual world as desired Scalability: Reliance on lock-step

networking, problems of coordination and network failure

Page 15: Human Factors in Networked Virtual Environments

History of Networked GamesSecond Generation

Monolithic client-server architecture One server, responsible for all shared

decisions about the game Clients were just dumb terminals, and

relied totally on the server Much better scalability, enabled first

usable Internet-based virtual worlds

Page 16: Human Factors in Networked Virtual Environments

History of Networked GamesThird Generation Simulation and prediction logic

added to client Increased visible details and

lowered network bandwidth usage Server now sent out trajectory

information, allowing clients to make simple predictions Dead reckoning

Lowered client latency

Page 17: Human Factors in Networked Virtual Environments

History of Networked GamesThird Generation (cont.)

Disadvantages of simple dead reckoning Each client must know about each

object on the server to correctly implement trajectory predictions

Difficult to rejoin networking to game state to correctly distribute data to clients

Page 18: Human Factors in Networked Virtual Environments

History of Networked GamesFourth Generation Generalized client-server

architecture Server is still main authority on the

game state Clients maintain a small subset of

the game state locally Run the same code as the server

locally on nearly the same data Minimizes network communication

Page 19: Human Factors in Networked Virtual Environments

History of Networked GamesFourth Generation (cont.)

Approximate game state on client can get out of sync with the server

Does not require much bandwidth to synchronize clients and server

Needs reliable networking to reduce latency of objects moving in and out of client virtual world

Page 20: Human Factors in Networked Virtual Environments

The Cutting Edge

Games are the main application that is pushing the envelope of virtual reality

Augmented reality

Page 21: Human Factors in Networked Virtual Environments

Resources Sweeny, T. “Unreal Networking Architecture.”

http://unreal.epicgames.com/Network.htm Singhal, S., and Zyda, M. Networked Virtual Environments:

Design and Implementation. Addison-Wesley, New York, 1999. Lewis, M., and Jacobson, J. “Game Engines in Scientific

Research.” Communications of the ACM. January 2002, Vol. 45, 1, pages 27-31.

Wann, J., and Mon-Williams, M. “What does virtual reality NEED?: human factors issues in the design of three-dimensional computer environments.” International Journal of Human-Computer Studies (1996) 44, 829-847.

Smed, J., Kaukoranta, T., and Hakone, H. “A Review on Networking and Multiplayer Computer Games.”

Lewis, C. H., and Griffin, M. J. “Human Factors Consideration in Clinical Applications of Virtual Reality.”

Staney, K. M., Mourant, R. R., and Kennedy, R. S. “Human Factors Issues in Virtual Environments: A Review of the Literature.”