1

GenerateImpulse() を適切に呼び出して、ImpulseSource を介して Cinemachine のカメラ ImpulseListener (カメラの揺れ) を実装するにはどうすればよいですか? プレーヤーに CollisionImpuleSource を配置すれば動作させることができますが、それは望ましくありません。Impulse Source を使用してから、コードを使用して、振るタイミングを決定します。

ドキュメントhttps://docs.unity3d.com/Packages/com.unity.cinemachine@2.3/manual/CinemachineImpulseSource.htmlを見ていますが、ImpulseSource を適切に起動する方法がわかりません。

プライベートを設定しました...

public CinemachineVirtualCamera vCamera;
private CinemachineImpulseSource  _impulseSource;

generateImpulse を呼び出すことができます...

_impulseSource.GenerateImpulse();

しかし、コンポーネントを取得する方法がわかりません

private void Start(){

_impulseSource = vCamera.GetCinemachineComponent<CinemachineImpulseSource>();

}

エラーが出ます..

タイプ「Cinemachine.CinemachineImpulseSource」は、ジェネリック メソッド「T Cinemachine.CinemachineVirtualCamera.GetCinemachineComponent()」でパラメータ「T」として使用するために、「Cinemachine.CinemachineComponentBase」に変換可能である必要があります。

しかし、プライベートも変更すると..

private CinemachineComponentBase  _impulseSource;

それは役に立ちません。これをどのように参照すべきかについてのガイダンスが必要です。

4

1 に答える 1