private void OnDrawGizmos() { if (!mGizmoSwitch) { return; } AccessToResources(); AirRide gizmosAirRide = new AirRide(transform, mRayConfig.GetAirRideRayConfig, mVehicleSettings.GetAirRideSettings); DirectionFixRay dirFixRay = new DirectionFixRay(transform, mRayConfig.GetDirectionFixRayConfig); dirFixRay.DrawGizmos(); gizmosAirRide.DrawGizmos(); LRRay lrRay = new LRRay(transform, mRayConfig.GetLRRayConfig); lrRay.DrawRayGizmos(); DriftScript ds = new DriftScript(mVehicleSettings.GetDriftSettings); ds.OnDrawGimos(transform, GetComponent <Rigidbody>()); }
private void Initialize() { AccessToResources(); //ユーザーの入力を取得 mPlayerInput = GetComponent <IPlayerInput>(); mRigidbody = GetComponent <Rigidbody>(); mDataUiCarModel = FindObjectOfType <DataUiCarModel>(); mGameSceneManager = FindObjectOfType <GameSceneManager>(); mRigidbody.constraints = RigidbodyConstraints.FreezeRotation; mRigidbody.useGravity = false; mInitializer = new TransformInitializer(transform); //エンジン内で使用する計算クラス EngineSpeedCalc engineCalc = new EngineSpeedCalc(mVehicleSettings.GetEngineSettings, mVehicleSettings.GetPenaltySettings, mGearParam, mPlayerInput.GetCurrentGear); //エンジンを初期化 mEngine = new Engine(engineCalc, mRigidbody, gameObject.FindObjectOfInterface <IGearManageable>(), mPlayerInput.GetCurrentGear); mVehicleMove = new VehicleMove(mRigidbody, transform, mWheelParams, mVehicleSettings.GetDriftSettings, mVehicleSettings.GetSteerSensitivities); mAirRide = new AirRide(transform, mRayConfig.GetAirRideRayConfig, mVehicleSettings.GetAirRideSettings); mDirFix = new DirectionFix(transform, mRayConfig.GetDirectionFixRayConfig); mAIPenaltyRay = new DirectionFixRay(transform, mRayConfig.GetDirectionFixRayConfig); mWallHitCheck = new WallHitCheck(transform, mRayConfig.GetLRRayConfig); }
public DirectionFix(Transform transform, RayConfig.DirectionFixRayConfig conf) { mTransform = transform; mFixRay = new DirectionFixRay(transform, conf); }