私はその回転に基づいてオブジェクトを移動しようとしています、と私は4つの方法があります:前方移動オブジェクト
- アップダウン
4つの方法のうち、forward
とbackward
だけが正しく動作しているようです。他の2つは、回転に基づいて異なる効果を有するように見える。 90度回転に設定すると、forward
と同じ動作をしますが(実際にはこの回転で画面が下になります)、実際には右に動かすことが望ましい影響です。
これらの2つの方法が適切に動作しているように見える:
public get forward(): Vector2 {
return new Vector2(
Math.cos(this.rotation.degrees * (Math.PI/180)),
Math.sin(this.rotation.degrees * (Math.PI/180))
);
}
public get backward(): Vector2 {
return new Vector2(
-Math.cos(this.rotation.degrees * (Math.PI/180)),
-Math.sin(this.rotation.degrees * (Math.PI/180))
);
}
これら二つは、しかし、正常に動作していません。私はこれを引き起こしていることを理解できないようだが、私はそれが似ていると思った。
public get up(): Vector2 {
return new Vector2(
Math.cos(this.rotation.degrees * (Math.PI/180)),
-Math.sin(this.rotation.degrees * (Math.PI/180))
);
}
public get down(): Vector2 {
return new Vector2(
-Math.cos(this.rotation.degrees * (Math.PI/180)),
Math.sin(this.rotation.degrees * (Math.PI/180))
);
}
this.rotation.degreesあなたに正しい度を与えていますか? – Aschab
ええ、それは設定値ですので、それは(最後のparam)のように作成されます: 'インスタンス化(Guy、Stage.topLeftQuad、新しい回転(90));' –