xPheve: An extensible physics engine for virtual environments
Almost any Virtual Reality application requires having a basic set of physical rules and properties such as gravity and collision elasticity. Traditionally, these physical laws were hard-coded within the application, adding an extensive amount of confusing codes that have little to do with the proje...
Main Author: | |
---|---|
Format: | Others |
Language: | en |
Published: |
University of Ottawa (Canada)
2013
|
Subjects: | |
Online Access: | http://hdl.handle.net/10393/26731 http://dx.doi.org/10.20381/ruor-9764 |
id |
ndltd-uottawa.ca-oai-ruor.uottawa.ca-10393-26731 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-uottawa.ca-oai-ruor.uottawa.ca-10393-267312018-01-05T19:07:14Z xPheve: An extensible physics engine for virtual environments Nourian, Saeid Computer Science. Almost any Virtual Reality application requires having a basic set of physical rules and properties such as gravity and collision elasticity. Traditionally, these physical laws were hard-coded within the application, adding an extensive amount of confusing codes that have little to do with the project requirements but more to do with satisfying the basic physics of the scene. Since every VR application would have its own implementation of physical behaviors, we face a problem that is commonly known as the "reinvention of the wheel"! To avoid the redundancy problem and to adequately separate the application components from the low-level physics components, modern programmers use a generic library called physics engine. A physics engine contains within itself all the codes required for dynamic computation of physical behaviors and provides these services to other applications through its application interface (API). There are several commercial physics engines available for programmers. Although they are computationally efficient, they lack a proper architecture. As a result, they face problems with extensibility and maintenance issues. In parallel to the above improvement opportunity, there is another industrial consideration. Sun Microsystems introduced a new technology for constructing portable virtual worlds called Java3D. Since Java3D is new, there are no physics engines available for Java3D programmers. This thesis proposes a new framework for developing virtual environments that obey physical laws. It introduces a new generation of physics engines that are fully customizable and extensible. This is due to a novel architecture that uses a container/plug-in pattern for implementing physical laws and attaching them to the physics engine. The physics engine is named xPheve (Extensible Physics Engine for Virtual Environments) and its current implemented is in Java and on top of Java3D libraries. 2013-11-07T17:25:46Z 2013-11-07T17:25:46Z 2004 2004 Thesis Source: Masters Abstracts International, Volume: 43-06, page: 2285. http://hdl.handle.net/10393/26731 http://dx.doi.org/10.20381/ruor-9764 en 102 p. University of Ottawa (Canada) |
collection |
NDLTD |
language |
en |
format |
Others
|
sources |
NDLTD |
topic |
Computer Science. |
spellingShingle |
Computer Science. Nourian, Saeid xPheve: An extensible physics engine for virtual environments |
description |
Almost any Virtual Reality application requires having a basic set of physical rules and properties such as gravity and collision elasticity. Traditionally, these physical laws were hard-coded within the application, adding an extensive amount of confusing codes that have little to do with the project requirements but more to do with satisfying the basic physics of the scene. Since every VR application would have its own implementation of physical behaviors, we face a problem that is commonly known as the "reinvention of the wheel"!
To avoid the redundancy problem and to adequately separate the application components from the low-level physics components, modern programmers use a generic library called physics engine. A physics engine contains within itself all the codes required for dynamic computation of physical behaviors and provides these services to other applications through its application interface (API).
There are several commercial physics engines available for programmers. Although they are computationally efficient, they lack a proper architecture. As a result, they face problems with extensibility and maintenance issues.
In parallel to the above improvement opportunity, there is another industrial consideration. Sun Microsystems introduced a new technology for constructing portable virtual worlds called Java3D. Since Java3D is new, there are no physics engines available for Java3D programmers.
This thesis proposes a new framework for developing virtual environments that obey physical laws. It introduces a new generation of physics engines that are fully customizable and extensible. This is due to a novel architecture that uses a container/plug-in pattern for implementing physical laws and attaching them to the physics engine. The physics engine is named xPheve (Extensible Physics Engine for Virtual Environments) and its current implemented is in Java and on top of Java3D libraries. |
author |
Nourian, Saeid |
author_facet |
Nourian, Saeid |
author_sort |
Nourian, Saeid |
title |
xPheve: An extensible physics engine for virtual environments |
title_short |
xPheve: An extensible physics engine for virtual environments |
title_full |
xPheve: An extensible physics engine for virtual environments |
title_fullStr |
xPheve: An extensible physics engine for virtual environments |
title_full_unstemmed |
xPheve: An extensible physics engine for virtual environments |
title_sort |
xpheve: an extensible physics engine for virtual environments |
publisher |
University of Ottawa (Canada) |
publishDate |
2013 |
url |
http://hdl.handle.net/10393/26731 http://dx.doi.org/10.20381/ruor-9764 |
work_keys_str_mv |
AT nouriansaeid xpheveanextensiblephysicsengineforvirtualenvironments |
_version_ |
1718602040582602752 |