Virtual Reality Programming

Grigore C. Burdea, Philippe Coiffet · 2024

Authoring a virtual world is a multistep process declaring object geometries, sensors, action functions, networking, as well as the definition of a scene graph reflecting object hierarchies. Authoring environments differ from run-time environments, which continuously refresh the state of the virtual environment while the simulation is running. Scene graphs are dynamic to reflect the current state of the virtual world and distributed to accommodate multiple users sharing the same environment. Toolkits are libraries of object-oriented functions used in programming the virtual world. Depending on the application domain, toolkits may be classified as “general-purpose” or “special purpose.” General-purpose toolkits discussed here are Java 3D and Vizard , which will be described in terms of their authoring functionality. Unity 3D is a gaming toolkit. However, its ease of programming made it a de facto general-purpose toolkit. When it comes to Unity 3D , we detail the game engine, as well as the use of Artificial Intelligence in controlling nonplayer characters. In addition, we detail the gaming production pipeline, as useful to those wishing to become game designers, game programmers, or producers. OpenHaptics is a special-purpose toolkit needed to create haptic scene graphs and to define object haptic behavior. Both Vizard and Unity 3D have OpenHaptics plug-ins such as to add haptic feedback functionality and increase simulation realism.

Read the paper · More papers on PaperTik