|
OpenMW
|
#include <physicssystem.hpp>
Public Member Functions | |
| PhysicsSystem (OEngine::Render::OgreRenderer &_rend) | |
| ~PhysicsSystem () | |
| void | addObject (const MWWorld::Ptr &ptr, bool placeable=false) |
| void | addActor (const MWWorld::Ptr &ptr) |
| void | addHeightField (float *heights, int x, int y, float yoffset, float triSize, float sqrtVerts) |
| void | removeHeightField (int x, int y) |
| void | removeObject (const std::string &handle) |
| void | moveObject (const MWWorld::Ptr &ptr) |
| void | rotateObject (const MWWorld::Ptr &ptr) |
| void | scaleObject (const MWWorld::Ptr &ptr) |
| bool | toggleCollisionMode () |
| std::vector< std::string > | getCollisions (const MWWorld::Ptr &ptr) |
| get handles this object collides with | |
| Ogre::Vector3 | traceDown (const MWWorld::Ptr &ptr) |
| std::pair< float, std::string > | getFacedHandle (float queryDistance) |
| std::pair< std::string, Ogre::Vector3 > | getHitContact (const std::string &name, const Ogre::Vector3 &origin, const Ogre::Quaternion &orientation, float queryDistance) |
| std::vector< std::pair< float, std::string > > | getFacedHandles (float queryDistance) |
| std::vector< std::pair< float, std::string > > | getFacedHandles (float mouseX, float mouseY, float queryDistance) |
| bool | castRay (const Ogre::Vector3 &from, const Ogre::Vector3 &to, bool raycastingObjectOnly=true, bool ignoreHeightMap=false) |
| std::pair< bool, Ogre::Vector3 > | castRay (const Ogre::Vector3 &orig, const Ogre::Vector3 &dir, float len) |
| std::pair< bool, Ogre::Vector3 > | castRay (float mouseX, float mouseY) |
| cast ray from the mouse, return true if it hit something and the first result (in OGRE coordinates) | |
| OEngine::Physic::PhysicEngine * | getEngine () |
| bool | getObjectAABB (const MWWorld::Ptr &ptr, Ogre::Vector3 &min, Ogre::Vector3 &max) |
| void | queueObjectMovement (const Ptr &ptr, const Ogre::Vector3 &velocity) |
| const PtrVelocityList & | applyQueuedMovement (float dt) |
Private Member Functions | |
| PhysicsSystem (const PhysicsSystem &) | |
| PhysicsSystem & | operator= (const PhysicsSystem &) |
Private Attributes | |
| OEngine::Render::OgreRenderer & | mRender |
| OEngine::Physic::PhysicEngine * | mEngine |
| std::map< std::string, std::string > | handleToMesh |
| PtrVelocityList | mMovementQueue |
| PtrVelocityList | mMovementResults |
| float | mTimeAccum |
| MWWorld::PhysicsSystem::PhysicsSystem | ( | const PhysicsSystem & | ) | [private] |
| void MWWorld::PhysicsSystem::addActor | ( | const MWWorld::Ptr & | ptr | ) |
| void MWWorld::PhysicsSystem::addHeightField | ( | float * | heights, |
| int | x, | ||
| int | y, | ||
| float | yoffset, | ||
| float | triSize, | ||
| float | sqrtVerts | ||
| ) |
| void MWWorld::PhysicsSystem::addObject | ( | const MWWorld::Ptr & | ptr, |
| bool | placeable = false |
||
| ) |
| const PtrVelocityList & MWWorld::PhysicsSystem::applyQueuedMovement | ( | float | dt | ) |
| bool MWWorld::PhysicsSystem::castRay | ( | const Ogre::Vector3 & | from, |
| const Ogre::Vector3 & | to, | ||
| bool | raycastingObjectOnly = true, |
||
| bool | ignoreHeightMap = false |
||
| ) |
| std::pair< bool, Ogre::Vector3 > MWWorld::PhysicsSystem::castRay | ( | const Ogre::Vector3 & | orig, |
| const Ogre::Vector3 & | dir, | ||
| float | len | ||
| ) |
| std::pair< bool, Ogre::Vector3 > MWWorld::PhysicsSystem::castRay | ( | float | mouseX, |
| float | mouseY | ||
| ) |
| std::vector< std::string > MWWorld::PhysicsSystem::getCollisions | ( | const MWWorld::Ptr & | ptr | ) |
get handles this object collides with
| std::pair< float, std::string > MWWorld::PhysicsSystem::getFacedHandle | ( | float | queryDistance | ) |
| std::vector< std::pair< float, std::string > > MWWorld::PhysicsSystem::getFacedHandles | ( | float | queryDistance | ) |
| std::vector< std::pair< float, std::string > > MWWorld::PhysicsSystem::getFacedHandles | ( | float | mouseX, |
| float | mouseY, | ||
| float | queryDistance | ||
| ) |
| std::pair< std::string, Ogre::Vector3 > MWWorld::PhysicsSystem::getHitContact | ( | const std::string & | name, |
| const Ogre::Vector3 & | origin, | ||
| const Ogre::Quaternion & | orientation, | ||
| float | queryDistance | ||
| ) |
| bool MWWorld::PhysicsSystem::getObjectAABB | ( | const MWWorld::Ptr & | ptr, |
| Ogre::Vector3 & | min, | ||
| Ogre::Vector3 & | max | ||
| ) |
| void MWWorld::PhysicsSystem::moveObject | ( | const MWWorld::Ptr & | ptr | ) |
| PhysicsSystem& MWWorld::PhysicsSystem::operator= | ( | const PhysicsSystem & | ) | [private] |
| void MWWorld::PhysicsSystem::queueObjectMovement | ( | const Ptr & | ptr, |
| const Ogre::Vector3 & | velocity | ||
| ) |
| void MWWorld::PhysicsSystem::removeHeightField | ( | int | x, |
| int | y | ||
| ) |
| void MWWorld::PhysicsSystem::removeObject | ( | const std::string & | handle | ) |
| void MWWorld::PhysicsSystem::rotateObject | ( | const MWWorld::Ptr & | ptr | ) |
| void MWWorld::PhysicsSystem::scaleObject | ( | const MWWorld::Ptr & | ptr | ) |
| Ogre::Vector3 MWWorld::PhysicsSystem::traceDown | ( | const MWWorld::Ptr & | ptr | ) |
std::map<std::string, std::string> MWWorld::PhysicsSystem::handleToMesh [private] |
float MWWorld::PhysicsSystem::mTimeAccum [private] |
1.7.6.1