TA::CarTemplate* pCarTemplate = TA::CarTemplate::CreateNew();
pCarTemplate->BeginInitialise();
TA::CollisionObjectConvex* pCollisionObjectConvex = TA::CollisionObjectConvex::CreateNew();
pCollisionObjectConvex->InitialiseAsABox(TA::AABB(Vec3(0.0f, 0.0f, 0.0f), TA::Vec3(1.2f, 0.6f, 2.0f)));
pCarTemplate->AddCollisionObject(pCollisionObjectConvex);
pCollisionObjectConvex->Release();
const float k_fWheelRadius = 0.3f;
const float k_fWheelWidth = 1.1f;
const float k_fWheelTop = 0.0f;
const float k_fWheelBottom = -1.0f;
const float k_fWheelFront = 1.5f;
const float k_fWheelBack = -1.5f;
CarTemplate::Wheel wheel;
wheel.SetSuspensionTop(Vec3(k_fWheelWidth, k_fWheelTop, k_fWheelFront));
wheel.SetSuspensionBottom(Vec3(k_fWheelWidth, k_fWheelBottom, k_fWheelFront));
wheel.SetRadius(k_fWheelRadius);
wheel.SetSteeringFlag(true);
wheel.SetDrivingFlag(false);
wheel.SetHandBrakeFlag(false);
wheel.SetSlipAngleToLateralForceCallBack(SlipAngleToLateralForce);
wheel.SetSlipRatioToNormalisedTractionCallBack(SlipRatioToNormalisedTraction);
pCarTemplate->AddWheel(wheel);
wheel.SetSuspensionTop(Vec3(-k_fWheelWidth, k_fWheelTop, k_fWheelFront));
wheel.SetSuspensionBottom(Vec3(-k_fWheelWidth, k_fWheelBottom, k_fWheelFront));
wheel.SetRadius(k_fWheelRadius);
wheel.SetSteeringFlag(true);
wheel.SetDrivingFlag(false);
wheel.SetHandBrakeFlag(false);
pCarTemplate->AddWheel(wheel);
wheel.SetSuspensionTop(Vec3(k_fWheelWidth, k_fWheelTop, k_fWheelBack));
wheel.SetSuspensionBottom(Vec3(k_fWheelWidth, k_fWheelBottom, k_fWheelBack));
wheel.SetRadius(k_fWheelRadius);
wheel.SetSteeringFlag(false);
wheel.SetDrivingFlag(true);
wheel.SetHandBrakeFlag(true);
pCarTemplate->AddWheel(wheel);
wheel.SetSuspensionTop(Vec3(-k_fWheelWidth, k_fWheelTop, k_fWheelBack));
wheel.SetSuspensionBottom(Vec3(-k_fWheelWidth, k_fWheelBottom, k_fWheelBack));
wheel.SetRadius(k_fWheelRadius);
wheel.SetSteeringFlag(false);
wheel.SetDrivingFlag(true);
wheel.SetHandBrakeFlag(true);
pCarTemplate->AddWheel(wheel);
pCarTemplate->SetMass(1500.0f);
pCarTemplate->SetTorqueMultiplier(5.0f);
pCarTemplate->SetDownForce(4.0f);
pCarTemplate->EndInitialise();
© Copyright 2004-2006 TRUE AXIS PTY LTD Australia. All rights reserved.