スタック オーバーフロー ユーザーの皆様、こんにちは。XNA ゲームで楽しい問題が発生しました。
したがって、基本的には 80x80 の小惑星があり、原点を imageW / 2、imageH / 2 に設定します (順序が問題になる場合、小惑星は正方形です)。
これが問題を説明する画像です!ビジュアライゼーション FTW :D
それで、何がこれを引き起こしているのかについてのアイデアはありますか?私は1時間を費やし、例を見て、次のように回転することになっていることがわかりました:
http://www.riemers.net/images/Tutorials/XNA/Csharp/Series2D/rotation.jpg
しかし、そうではありません。
これがコードサンプルです。ベクトル位置などを保持するプロパティを持つ Drawable という名前のオブジェクトがあります。
Vector2 asteroidOrigin = new Vector2(asteroidImgs[asteroid.asteroidType].Width / 2, asteroidImgs[asteroid.asteroidType].Height / 2);
drawableList.Add(new Drawable(asteroidImgs[asteroid.asteroidType], asteroid.asteroidPos, asteroid.angle, asteroidOrigin));
描画方法は次のとおりです。
foreach (Drawable drawable in renderManager.getRenderList)
{
spriteBatch.Draw(drawable.image, drawable.position, drawable.sourceRectangle, drawable.tint, drawable.angle, drawable.origin, drawable.imageScale, drawable.spriteEffects, drawable.depth);
}
はい、Drawable クラスには複数のコンストラクターがあり、デフォルト値を割り当てます。