Ejemplo n.º 1
0
void	btRaycastVehicle::setSteeringValue(btScalar steering,int wheel)
{
    btAssert(wheel>=0 && wheel < getNumWheels());

    btWheelInfo& wheelInfo = getWheelInfo(wheel);
    wheelInfo.m_steering = steering;
}
Ejemplo n.º 2
0
void	btRaycastVehicle::debugDraw(btIDebugDraw* debugDrawer)
{

    for (int v=0; v<this->getNumWheels(); v++)
    {
        btVector3 wheelColor(0,1,1);
        if (getWheelInfo(v).m_raycastInfo.m_isInContact)
        {
            wheelColor.setValue(0,0,1);
        } else
        {
            wheelColor.setValue(1,0,1);
        }

        btVector3 wheelPosWS = getWheelInfo(v).m_worldTransform.getOrigin();

        btVector3 axle = btVector3(
                             getWheelInfo(v).m_worldTransform.getBasis()[0][getRightAxis()],
                             getWheelInfo(v).m_worldTransform.getBasis()[1][getRightAxis()],
                             getWheelInfo(v).m_worldTransform.getBasis()[2][getRightAxis()]);

        //debug wheels (cylinders)
        debugDrawer->drawLine(wheelPosWS,wheelPosWS+axle,wheelColor);
        debugDrawer->drawLine(wheelPosWS,getWheelInfo(v).m_raycastInfo.m_contactPointWS,wheelColor);

    }
}
Ejemplo n.º 3
0
void RaycastCar::debugDraw(btIDebugDraw * debugDrawer)
{
    for (int v = 0; v < getNumWheels(); v++)
    {
        btVector3 wheelColor(0.0f,1.0f,1.0f);
        if (getWheelInfo(v).m_raycastInfo.m_isInContact)
        {
            wheelColor.setValue(0.0f,0.0f,1.0f);
        }
        else
        {
            wheelColor.setValue(1.0f,0.0f,1.0f);
        }
        btVector3 wheelPosWS = getWheelInfo(v).m_worldTransform.getOrigin();
        btVector3 axle = btVector3(
                             getWheelInfo(v).m_worldTransform.getBasis()[0][getRightAxis()],
                             getWheelInfo(v).m_worldTransform.getBasis()[1][getRightAxis()],
                             getWheelInfo(v).m_worldTransform.getBasis()[2][getRightAxis()]);

        debugDrawer->drawLine(wheelPosWS,wheelPosWS+axle,wheelColor);
        debugDrawer->drawLine(wheelPosWS,getWheelInfo(v).m_raycastInfo.m_contactPointWS,wheelColor);
    }
}
Ejemplo n.º 4
0
void btRaycastVehicle::setBrake(btScalar brake,int wheelIndex)
{
    btAssert((wheelIndex >= 0) && (wheelIndex < 	getNumWheels()));
    getWheelInfo(wheelIndex).m_brake = brake;
}
Ejemplo n.º 5
0
void	btRaycastVehicle::applyEngineForce(btScalar force, int wheel)
{
    btAssert(wheel>=0 && wheel < getNumWheels());
    btWheelInfo& wheelInfo = getWheelInfo(wheel);
    wheelInfo.m_engineForce = force;
}
Ejemplo n.º 6
0
btScalar	btRaycastVehicle::getSteeringValue(int wheel) const
{
    return getWheelInfo(wheel).m_steering;
}
Ejemplo n.º 7
0
// ----------------------------------------------------------------------------
void btKart::setAllBrakes(btScalar brake)
{
    for(int i=0; i<getNumWheels(); i++)
        getWheelInfo(i).m_brake = brake;
}   // setAllBrakes
Ejemplo n.º 8
0
// ----------------------------------------------------------------------------
btScalar btKart::getSteeringValue(int wheel) const
{
    return getWheelInfo(wheel).m_steering;
}
Ejemplo n.º 9
0
void RaycastCar::set_brake(btScalar dbrake, int wheelIndex)
{
    m_dbrake = dbrake;
    getWheelInfo(wheelIndex).m_brake = m_dbrake*m_max_braking_force;
}
Ejemplo n.º 10
0
void RaycastCar::setEngineForce(btScalar force, int wheel)
{
    WheelInfo& wheelInfo = getWheelInfo(wheel);
    wheelInfo.m_engine_force = force;
}
Ejemplo n.º 11
0
btScalar RaycastCar::getSteeringValue(int wheel) const
{
    return getWheelInfo(wheel).m_steering;
}
Ejemplo n.º 12
0
void RaycastCar::setSteeringValue(btScalar steering, int wheel)
{
    WheelInfo& wheelInfo = getWheelInfo(wheel);
    wheelInfo.m_steering = steering;
}