A Practical Introduction to Virtual Reality
From Concepts to Executables
- 1st Edition - October 7, 2024
- Authors: Lori Rebenitsch, Lisa Rebenitsch, Rohan Loveland
- Language: English
- Paperback ISBN:9 7 8 - 0 - 4 4 3 - 1 4 0 3 6 - 5
- eBook ISBN:9 7 8 - 0 - 4 4 3 - 1 4 0 3 7 - 2
A Practical Introduction to Virtual Reality: From Concepts to Executables is written for the undergraduate computer science student taking a course in virtual reality. This tuto… Read more
Purchase options
Institutional subscription on ScienceDirect
Request a sales quoteA Practical Introduction to Virtual Reality: From Concepts to Executables is written for the undergraduate computer science student taking a course in virtual reality. This tutorial-based text is organized so that by the end of the semester students will have created their first VR game, including sound and various interactions. The materials are written from the position of the student and the student’s professor as opposed to the professional with prior graphics experience.
Beginning with an introductory chapter covering the ten universal basics necessary for VR coding, the book moves on to such topics as putting together a VR set-up, creating Heads Up displays, building scene trees, learning how to import 3D models and animations, lighting and audio, and more, until by the end of the book, students will have a final project game ready for beta testing and publishing!
- Provides a complete course package, leading to the actual development of a publishable final project game
- Presents the first virtual reality textbook that combines tools and underlying fundamentals
- Minimizes required starting time for professors and educators
- Cover image
- Title page
- Table of Contents
- Copyright
- Acknowledgments
- Introduction
- Virtual Reality vs 3D
- Suggested Order
- 0. Object-Oriented Programming in Virtual Reality
- Abstract
- Overview
- OOP in Game Engines
- From Console to GUI to Game Engine
- Design Patterns in VR
- References
- 1. Basic Virtual Reality Objects and Interactions
- Abstract
- Game Objects
- Scene Trees
- Tracking Basics
- Teleportation
- Rays
- Summary
- 2. Transformations and Scene Trees
- Abstract
- The Connection to Linear Algebra
- Matrices
- Scene Tree
- Quaternions
- LERP and SLERP
- References
- 3. Basic Physics
- Abstract
- What Is a Physics Engine?
- Adding Physics to an Object
- Types of Collisions
- Reference
- 4. Multiple System Interaction Frameworks
- Abstract
- Basic Interaction Types
- Handling Different Input Sources
- Top-Level Organization of Interactions
- Reference
- 5. Virtual Reality Interactions
- Abstract
- Good Practices for Interaction Options
- Prominent VR Categories Differences
- Ergonomics
- Usability
- Event Source Consideration
- The Visitor Pattern
- Strategy Pattern
- Button Interaction
- Two-Handed Interaction
- Pockets
- References
- 6. Menus and Heads-Up Displays
- Abstract
- Usability Concerns
- Metaphors
- Heads-Up Display (HUD)
- Scene Changes
- Inventories
- Reference
- 7. Models and Animations
- Abstract
- Introduction to Models
- Other Components of Models
- Models for 3D Applications
- Animation
- Reference
- 8. Terrains
- Abstract
- What Are Terrains?
- Creating a New Terrain
- Adding Textures
- Adding Foliage
- Level of Detail
- Navigation
- 9. Textures
- Abstract
- Texture Mapping
- Animating Textures
- Non-Grid Textures
- More Texture Types
- 10. Walking and Navigation
- Abstract
- Cameras
- Walking Considerations
- Teleportation Enhancements
- Survey of Other Wayfinding Options
- Graded Surfaces and Walls
- References
- 11. Lighting and Shaders
- Abstract
- Lighting in Graphics
- Basic Lighting
- Postprocessing
- Shaders
- Acknowledgments
- Reference
- 12. Three-Dimensional Sound
- Abstract
- Sounds
- 3D Sounds
- Sound Settings
- Usability Tips
- References
- 13. Particle Systems
- Abstract
- Particles and Their Types
- Initializing a Particle System
- Particle Physics
- Particle Appearance
- Particle Effects
- Converting to a Campfire
- Vector Fields
- Reference
- 14. Artificial Intelligence
- Abstract
- Definition of AI
- State Machines
- Path Finding
- Navigation Meshes
- Reference
- 15. Advanced Physics
- Abstract
- Refresher on When to Use Custom Physics
- Two-Dimensional Collisions
- Tunneling and the Bisection Search
- Extending to 3D
- Collision Response
- 16. Joints
- Abstract
- Defining Joints and Poses
- Joint Characteristics
- Joint Categories
- Acknowledgments
- 17. Inverse Kinematics
- Abstract
- From Forward Kinematics to IK
- Conceptual IK
- Applying IK
- Suggestions When Using IK
- 18. Usability Design and Publishing
- Abstract
- Publishing
- Unit Testing
- Cybersickness Prevention
- User Interface Design
- References
- Appendix 1. Object-Oriented Programming and Patterns Common to Virtual Reality
- OOP Review
- Diagramming
- SOLID Review
- OOP Patterns
- Appendix 2. Programming Languages Guide
- Commenting
- Assignment
- Output
- Input
- Selection
- Repetition
- Functions
- Exceptions
- File I/O
- Classes
- Specialty
- Some Advice When Shifting Languages
- Appendix 3. Mathematical Foundations
- Notation
- Trigonometry and Geometry
- Imaginary Numbers
- Vector Calculus
- Quaternions
- Linear Algebra
- Subject Index
- Associated Tutorial Index
- No. of pages: 350
- Language: English
- Edition: 1
- Published: October 7, 2024
- Imprint: Morgan Kaufmann
- Paperback ISBN: 9780443140365
- eBook ISBN: 9780443140372
LR
Lori Rebenitsch
LR
Lisa Rebenitsch
RL