/// <summary> /// 数字描画 /// </summary> /// <param name="name">アセット名</param> /// <param name="position">位置</param> /// <param name="num">数字</param> /// <param name="scale">大きさ</param> public static void DrawNumber(string name, Vector2 position, int num, float scale = 1f, float depth = 1.0f) { Texture2D texture = ResouceManager.GetTexture(name); foreach (var n in num.ToString()) { spriteBatch.Draw(texture, position, new Rectangle((n - '0') * 16, 0, 16, 32), Color.White , 0f, Vector2.Zero, scale, SpriteEffects.None, depth); position.X += 16 * scale; } }
/// <summary> /// 2D画像描画(よく使う全設定あり) /// </summary> /// <param name="name">アセット名</param> /// <param name="position">位置</param> //画像の中心標準に描画 /// <param name="alpha">透明度</param> /// <param name="rect">描画範囲</param> /// <param name="scale">大きさ</param> /// <param name="rocate">回転孤度</param> /// <param name="origin">回転中心</param> /// <param name="isRight">横フリップするか</param> public static void DrawTexture(string name, Vector2 position, float alpha, Rectangle rect, Vector2 scale, float rocate, Vector2 origin, bool isRight, float depth = 1.0f) { Texture2D texture = ResouceManager.GetTexture(name); if (isRight) { spriteBatch.Draw(texture, position, rect, Color.White * alpha, rocate, origin, scale, SpriteEffects.None, depth); } else { spriteBatch.Draw(texture, position, rect, Color.White * alpha, rocate, origin, scale, SpriteEffects.FlipVertically, depth); } }
/// <summary> /// 2D画像描画(透明度あり) /// </summary> /// <param name="name">アセット名</param> /// <param name="position">位置</param> /// <param name="alpha">透明度</param> public static void DrawTexture(string name, Vector2 position, float alpha = 1.0f) { Texture2D texture = ResouceManager.GetTexture(name); spriteBatch.Draw(texture, position, Color.White * alpha); }
/// <summary> /// 2D画像描画(よく使う全設定あり) /// </summary> /// <param name="name">アセット名</param> /// <param name="position">位置</param> //画像の中心標準に描画 /// <param name="color">色</param> /// <param name="alpha">透明度</param> /// <param name="rect">描画範囲</param> /// <param name="scale">大きさ</param> /// <param name="rocate">回転孤度</param> /// <param name="origin">回転中心</param> public static void DrawTexture(string name, Vector2 position, Color color, float alpha, Rectangle rect, Vector2 scale, float rocate, Vector2 origin, float depth = 1.0f) { Texture2D texture = ResouceManager.GetTexture(name); spriteBatch.Draw(texture, position, rect, color * alpha, rocate, origin, scale, SpriteEffects.None, depth); }
/// <summary> /// 2D画像描画(リソースの描画範囲設定あり) /// </summary> /// <param name="name">アセット名</param> /// <param name="position">位置</param> /// <param name="rect">描画範囲</param> public static void DrawTexture(string name, Vector2 position, Rectangle rect) { Texture2D texture = ResouceManager.GetTexture(name); spriteBatch.Draw(texture, position, rect, Color.White); }
/// <summary> /// 2D画像描画(色と大きさの設定あり) /// </summary> /// <param name="name">アセット名</param> /// <param name="position">位置</param> /// <param name="color">色</param> /// <param name="scale">大きさ</param> public static void DrawTexture(string name, Vector2 position, Color color, Vector2 scale) { Texture2D texture = ResouceManager.GetTexture(name); spriteBatch.Draw(texture, position, new Rectangle(0, 0, ResouceManager.GetTextureWidth(name), ResouceManager.GetTextureHeight(name)), color, 0, Vector2.Zero, scale, SpriteEffects.None, 0); }