mcpField
G
game-asset-generation

game-asset-generation

github.com/eachlabsクリエイティブ・メディア44568 回インストール今日更新
リポジトリ

game-asset-generation について

game-asset-generationは、インディー開発者、スタジオ、ゲームジャムのチーム向けのeach::senseスキルです。スプライト、テクスチャ、UI、アイコンなどを作成し、反復生成で統一感のある素材セットを作れます。

主な機能

  1. 012Dスプライトとスプライトシート
  2. 02シームレスなゲームテクスチャ
  3. 03UI要素とアイコン
  4. 04タイルセットとローディング画面
  5. 05素材の反復生成

活用シーン

  1. 01キャラクタースプライトの作成
  2. 02RPGのUI要素の制作
  3. 03環境用の反復テクスチャ生成
  4. 04ゲームのコンセプトアート制作

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/eachlabs/skills --skill game-asset-generation

インストール後、Claude Code で/game-asset-generationを入力して読み込まれたか確認します。

同梱ファイルreferences/SSE-EVENTS.md

詳細

ゲームアセット生成

each::senseを使って、プロ品質のゲームアートアセットを生成します。このスキルでは、ゲーム開発のワークフローに最適化された2Dスプライト、テクスチャ、UI要素、アイコン、環境アセットなどを作成できます。

コスト削減

従来のゲームアート制作と比較して、60~80%のコスト削減を実現します。AIを活用したアセット生成により、インディー開発者、スタジオ、ゲームジャムの時間と予算を大幅に節約できます。

機能

  • 2Dスプライト:ピクセルアートのキャラクター、オブジェクト、小道具
  • スプライトシート:複数のポーズを含む、アニメーション対応のキャラクターシート
  • ゲームテクスチャ:環境向けのシームレスなタイル可能テクスチャ
  • UI要素:ボタン、フレーム、ヘルスバー、インベントリスロット
  • ゲームアイコン:アイテムアイコン、アビリティアイコン、実績バッジ
  • タイルセット:プラットフォーマー、RPG、ストラテジーゲーム向けの環境タイル
  • ロード画面:雰囲気のあるロード画面やスプラッシュ画面
  • ゲームロゴ:タイトルロゴやブランディング用アセット
  • コンセプトアート:ビジュアル開発用アートやムードボード

クイックスタート

curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 32x32 pixel art sword icon for an RPG game, golden blade with ornate hilt, transparent background"}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'

一般的なゲームアートのサイズ

アセットタイプ一般的なサイズ用途
ピクセルアートアイコン16x16, 32x32, 64x64インベントリアイテム、アビリティ
キャラクタースプライト32x32, 64x64, 128x128プレイヤー/NPCキャラクター
スプライトシート512x512, 1024x1024アニメーションフレーム
テクスチャ256x256, 512x512, 1024x1024環境の表面
UI要素各種ボタン、フレーム、バー
ロード画面1920x1080, 2560x1440全画面表示

ユースケースの例

1. 2Dスプライトの生成(ピクセルアート)
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 64x64 pixel art character sprite of a medieval knight with blue armor and silver sword. Retro 16-bit style, side view facing right, transparent background. Clean pixel edges, no anti-aliasing."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'
2. キャラクタースプライトシート
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a character sprite sheet for a pixel art wizard character. Include 8 frames: 2 idle poses, 2 walking frames, 2 attack frames, 1 jump, 1 hurt pose. 32x32 per frame, arranged in a 4x2 grid (256x64 total). Purple robe, white beard, wooden staff."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'
3. ゲームテクスチャの生成(シームレス)
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a seamless tileable 512x512 stone dungeon floor texture. Dark gray cobblestones with moss growing between cracks, worn and weathered look. Must tile perfectly with no visible seams when repeated."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'
4. ゲームアイコンセット
# First icon
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 64x64 pixel art health potion icon for an RPG. Red liquid in a glass flask with cork stopper, glowing effect, transparent background. Fantasy game style."}],
    "model": "eachsense/beta",
    "stream": true,
    "session_id": "rpg-icons-set"
  }'

# Second icon (same session for style consistency)
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a mana potion icon in the same style. Blue liquid instead of red, same flask design, matching art style."}],
    "model": "eachsense/beta",
    "stream": true,
    "session_id": "rpg-icons-set"
  }'

# Third icon
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a stamina potion icon. Green liquid, same consistent style as the health and mana potions."}],
    "model": "eachsense/beta",
    "stream": true,
    "session_id": "rpg-icons-set"
  }'
5. UI要素(ボタン、フレーム、バー)
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a fantasy RPG UI kit containing: 1 rectangular button (200x50) with stone texture and gold border, 1 health bar frame (300x30) with ornate metal design, 1 inventory slot frame (64x64) with wooden texture and metal corners. Arrange on transparent background. Medieval fantasy style matching games like Diablo or Baldur'\''s Gate."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'
6. 環境/タイルセットの生成
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 2D platformer tileset for a forest level. Include 16x16 pixel tiles: grass top, dirt fill, grass corner pieces (4 corners), tree trunk, leaves, flowers, rocks, wooden platform. Arrange in a tileset grid. Colorful cartoon style similar to classic platformers. 256x256 total sheet."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'
7. アイテム/武器アイコン
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a set of 6 weapon icons for a fantasy game, each 48x48 pixels: iron sword, wooden bow, fire staff, battle axe, throwing daggers, war hammer. Arrange in a 3x2 grid. Consistent hand-painted style with slight glow effects, transparent backgrounds. Top-down perspective for inventory display."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'
8. ロード画面アート
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a 1920x1080 loading screen for a dark fantasy action RPG. Epic scene showing a lone warrior silhouette standing before a massive gothic castle on a cliff, stormy sky with lightning, dark moody atmosphere. Leave space at bottom center for a loading bar. Painterly digital art style."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'
9. ゲームロゴのデザイン
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a game logo for a space shooter called \"NOVA STRIKE\". Bold metallic chrome letters with neon blue glow effects, slight 3D perspective, stars and energy particles around it. Sci-fi futuristic style. Transparent background, 1024x512 resolution. Suitable for title screen and marketing."}],

    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'
10. ゲーム向けコンセプトアート
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create concept art for a post-apocalyptic survival game. Show an abandoned city overgrown with vegetation, rusted vehicles, crumbling skyscrapers with trees growing through them, dramatic sunset lighting breaking through clouds. Painterly concept art style like The Last of Us or Horizon. 16:9 aspect ratio for presentation."}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "max"
  }'

ベストプラクティス

スプライトアート
  • 正確な寸法を指定する:必ずピクセル単位の寸法(32x32、64x64)を含めます
  • 透明度に言及する:ゲームへの組み込みに適した透明な背景を指定します
  • 視点を定義する:横視点、トップダウン、アイソメトリック、正面向き
  • アートスタイルを明確にする:ピクセルアート、手描き、ベクター、レトロな8ビット/16ビット
テクスチャ
  • シームレスを指定する:繰り返し使うテクスチャには、必ず「seamless tileable」と指定します
  • 2の累乗のサイズを使う:最適なGPUパフォーマンスのため、256、512、1024を使います
  • マテリアルの詳細を指定する:摩耗、風化、経年、状態を説明します
アイコンセット
  • session_idを使う:複数のアイコンで一貫したスタイルを維持します
  • グリッドに配置する:スプライトシート用に整理されたレイアウトを指定します
  • ライティングを統一する:一貫したセットにするため、光の方向を指定します
UI要素
  • セーフゾーンを確保する:テキストや動的コンテンツのための余白を考慮します
  • 拡大縮小を考慮する:異なる解像度でアセットがどのように拡大縮小されるかを検討します
  • 状態ごとのバリエーションを指定する:ボタンの通常、ホバー、押下状態をリクエストします

モードの選択

生成前にユーザーに確認してください。

「速さと低コストを優先しますか、それとも高品質を優先しますか?」

モード最適な用途速度品質
max最終製品用アセット、ヒーロー画像、キービジュアル遅い最高
eco素早い反復、コンセプトの検討、プロトタイピング速い良好

複数ターンでのアセット反復

session_idを使って、反復しながら一貫性のあるアセットセットを作成します。

# Initial character design
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a pixel art hero character for a platformer game, 64x64, knight with red cape"}],
    "model": "eachsense/beta",
    "stream": true,
    "session_id": "hero-character-project"
  }'

# Request variations
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create the same character but with a blue cape for player 2, matching style exactly"}],
    "model": "eachsense/beta",
    "stream": true,
    "session_id": "hero-character-project"
  }'

# Create matching enemy
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create an enemy character in the same pixel art style - a skeleton warrior, same size and art direction"}],
    "model": "eachsense/beta",
    "stream": true,
    "session_id": "hero-character-project"
  }'

アセットの一括生成

複数のバリエーションを効率的に生成します。

# Style A - Pixel Art
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a treasure chest icon, 32x32, pixel art, closed position"}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "eco"
  }'

# Style B - Hand-painted
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a treasure chest icon, 64x64, hand-painted fantasy style, closed position"}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "eco"
  }'

# Style C - Modern Vector
curl -X POST https://eachsense-agent.core.eachlabs.run/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $EACHLABS_API_KEY" \
  -H "Accept: text/event-stream" \
  -d '{
    "messages": [{"role": "user", "content": "Create a treasure chest icon, 128x128, clean vector style with gradients, modern mobile game look"}],
    "model": "eachsense/beta",
    "stream": true,
    "mode": "eco"
  }'

エラー処理

エラー原因解決策
Failed to create prediction: HTTP 422残高不足eachlabs.aiでチャージしてください
コンテンツポリシー違反禁止されているコンテンツ暴力的または露骨なコンテンツを避けるようプロンプトを調整してください
タイムアウト複雑な生成クライアントのタイムアウトを最低10分に設定してください

ゲームアセット用のプロンプトのヒント

ゲームアートを作成する際は、プロンプトに次の詳細を含めてください。

  1. 寸法:正確なピクセルサイズ(32x32、512x512)
  2. アートスタイル:ピクセルアート、手描き、ベクター、レトロ、モダン
  3. 視点:サイドビュー、トップダウン、アイソメトリック、3/4 ビュー
  4. 背景:透明、単色、または場面に合った背景
  5. カラーパレット:限定されたパレット、鮮やか、落ち着いた色調、指定の色
  6. ゲームジャンル:RPG、プラットフォーマー、シューティング、パズル — スタイルへの期待に影響します
  7. 参考スタイル:「Stardew Valley のような」、「Zelda に着想を得た」など
プロンプトの構成例
"Create a [dimensions] [art style] [asset type] for a [game genre].
[Visual description with colors, materials, details].
[Perspective/view angle]. [Background requirement].
[Additional technical requirements]."

関連スキル

  • each-sense - コア API ドキュメント
  • product-visuals - 製品のビジュアライゼーション
  • image-generation - 汎用の画像生成

参考資料

コメント