私は現在XNAをいじって、シンプルな2Dプラットフォーマーを作成しています。複数のレイヤーを追加して少し挑戦することを考えていました。
Vector2
自分の位置にを使用する代わりに、を使用してVector3
、Z
レイヤーの深さとしてのみ使用します。ただし、不明な理由[1]の間Vector2
で演算子を使用できないVector3
ため、ゲーム内の他のすべての、たとえば、加速、速度、オフセットを変更して、エラーなしで実行できるようにしました。Vector2
position += offset
また、回転変数をからfloat
に変更し、Vector3
そのZ
値を使用してテクスチャを回転させました。私が使用することを計画していますX
し、Y
規模フリップあなたはスーパーペーパーマリオ効果を得るので、私のテクスチャをします。
しかし、これらVector2
のすべてをsで変更した後Vector3
、私はそれについて少し気分が悪くなりました。これはゲームのパフォーマンスにどのように影響しますか?私の小さなプラットフォーマーゲームのパフォーマンスについて心配する必要はないはずですが、それだけに興味があります。
間の任意の顕著なパフォーマンスがありVector2
sおよびVector3
sがそれらを追加したり掛けるとき、たとえば、または呼び出すときNormalize
、Transform
またはDistance
?
[1]余談ですが、Vector3とVector2の間の計算に演算子がないのはなぜですか?