Files
bullet3/Demos/Raytracer/RaytracerSetup.h
erwin coumans 5d40d90bd0 add btMultiBodyConstraint::finalizeMultiDof API: if you add multi-body constraints to a multi-dof btMultiBody, before it has been finalized using the btMultiBody::finalizeMultiDof call,
then you have to manually call the btMultiBodyConstraint::finalizeMultiDof for all multi-dof multi body constraints.
2015-03-03 13:24:06 -08:00

43 lines
1.5 KiB
C

#ifndef RAYTRACER_SETUP_H
#define RAYTRACER_SETUP_H
#include "Bullet3AppSupport/CommonRigidBodySetup.h"
struct RaytracerPhysicsSetup : public CommonPhysicsSetup
{
struct RaytracerInternalData* m_internalData;
RaytracerPhysicsSetup();
virtual ~RaytracerPhysicsSetup();
virtual void initPhysics(GraphicsPhysicsBridge& gfxBridge);
virtual void exitPhysics();
virtual void stepSimulation(float deltaTime);
virtual void debugDraw(int debugDrawFlags);
virtual bool pickBody(const btVector3& rayFromWorld, const btVector3& rayToWorld);
virtual bool movePickedBody(const btVector3& rayFromWorld, const btVector3& rayToWorld);
virtual void removePickingConstraint();
virtual void syncPhysicsToGraphics(GraphicsPhysicsBridge& gfxBridge);
///worldRaytest performs a ray versus all objects in a collision world, returning true is a hit is found (filling in worldNormal and worldHitPoint)
bool worldRaytest(const btVector3& rayFrom,const btVector3& rayTo,btVector3& worldNormal,btVector3& worldHitPoint);
///singleObjectRaytest performs a ray versus one collision shape, returning true is a hit is found (filling in worldNormal and worldHitPoint)
bool singleObjectRaytest(const btVector3& rayFrom,const btVector3& rayTo,btVector3& worldNormal,btVector3& worldHitPoint);
///lowlevelRaytest performs a ray versus convex shape, returning true is a hit is found (filling in worldNormal and worldHitPoint)
bool lowlevelRaytest(const btVector3& rayFrom,const btVector3& rayTo,btVector3& worldNormal,btVector3& worldHitPoint);
};
#endif //RAYTRACER_SETUP_H