jpskill.com
🛠️ 開発・MCP コミュニティ

game-developer

UnityやUnreal Engineなどのゲームエンジンを駆使し、没入感のあるインタラクティブエンターテイメントを開発するSkill。

📜 元の英語説明(参考)

Expert in interactive entertainment, creating immersive experiences with Unity, Unreal Engine, and Godot.

🇯🇵 日本人クリエイター向け解説

一言でいうと

UnityやUnreal Engineなどのゲームエンジンを駆使し、没入感のあるインタラクティブエンターテイメントを開発するSkill。

※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o game-developer.zip https://jpskill.com/download/6669.zip && unzip -o game-developer.zip && rm game-developer.zip
🪟 Windows (PowerShell)
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/6669.zip -OutFile "$d\game-developer.zip"; Expand-Archive "$d\game-developer.zip" -DestinationPath $d -Force; ri "$d\game-developer.zip"

完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。

💾 手動でダウンロードしたい(コマンドが難しい人向け)
  1. 1. 下の青いボタンを押して game-developer.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → game-developer フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。

詳しい使い方ガイドを見る →
最終更新
2026-05-17
取得日時
2026-05-17
同梱ファイル
1

📖 Skill本文(日本語訳)

※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。

ゲーム開発者

目的

Unity (C#) と Unreal Engine (C++) を専門とする、インタラクティブなエンターテイメント開発の専門知識を提供します。没入型ゲーム体験のために、ゲームプレイプログラミング、グラフィック最適化、マルチプレイヤーネットワーキング、エンジンアーキテクチャを備えた2D/3Dゲームを構築します。

使用場面

  • ゲームメカニクスのプロトタイプ作成(キャラクターコントローラー、戦闘システム)
  • グラフィックパフォーマンスの最適化(シェーダー、LOD、オクルージョンカリング)
  • マルチプレイヤーネットワーキングの実装(Netcode for GameObjects、Mirror、Unreal Replication)
  • レベルアーキテクチャとストリーミングシステムの設計
  • VR/AR体験の開発(OpenXR、ARKit)
  • カスタムエディターツールとパイプラインの作成


2. 意思決定フレームワーク

エンジン選択

どのエンジンがプロジェクトに適合しますか?
│
├─ **Unity**
│  ├─ モバイル/2D/VRですか? → **はい** (最高のエコシステム、ビルドサイズが小さい)
│  ├─ チームはC#を知っていますか? → **はい**
│  └─ スタイライズされたグラフィックですか? → **はい** (URPは柔軟です)
│
├─ **Unreal Engine 5**
│  ├─ フォトリアリズムですか? → **はい** (Nanite + Lumenがすぐに利用可能)
│  ├─ オープンワールドですか? → **はい** (World Partitionシステム)
│  └─ チームはC++を知っていますか? → **はい** (またはBlueprintsビジュアルスクリプティング)
│
└─ **Godot**
   ├─ オープンソースの要件がありますか? → **はい** (MITライセンス)
   ├─ 軽量な2Dですか? → **はい** (専用の2Dエンジン)
   └─ Linuxネイティブ開発ですか? → **はい** (優れたLinuxサポート)

マルチプレイヤーアーキテクチャ

モデル 説明 最適な用途
クライアントホスト型 (P2P) 1人のプレイヤーがホストです。 協力ゲーム、格闘ゲーム(ロールバックあり)。安価です。
専用サーバー クラウド内の権威あるサーバーです。 競技シューター、MMO。チートを防止します。
リレーサーバー リレーサービス(例:Unity Relay)。 NATの問題を回避するセッションベースのゲーム。

グラフィックパイプライン (Unity)

パイプライン ターゲット 利点
URP (Universal) モバイル、VR、Switch、PC 高性能、カスタマイズ可能、豊富なアセットストアサポート。
HDRP (High Def) PC、PS5、Xbox Series X フォトリアリズム、ボリューメトリックライティング、コンピュートシェーダー。
Built-in レガシー 新規プロジェクトでは避けてください。

危険信号 → graphics-engineer (スペシャリスト) にエスカレートしてください:

  • ゼロからのカスタムレンダリングバックエンド(Vulkan/DirectX/Metal)の記述
  • ドライバーレベルのGPUクラッシュのデバッグ
  • 新しいGI (Global Illumination) アルゴリズムの実装


ワークフロー 2: Unreal Engine マルチプレイヤー設定

目標: サーバーからクライアントへ変数 (Health) をレプリケートする。

手順:

  1. ヘッダー (Character.h)

    UPROPERTY(ReplicatedUsing=OnRep_Health)
    float Health;
    
    UFUNCTION()
    void OnRep_Health();
    
    void GetLifetimeReplicatedProps(TArray<FLifetimeProperty>& OutLifetimeProps) const override;
  2. 実装 (Character.cpp)

    void AMyCharacter::GetLifetimeReplicatedProps(TArray<FLifetimeProperty>& OutLifetimeProps) const {
        Super::GetLifetimeReplicatedProps(OutLifetimeProps);
        DOREPLIFETIME(AMyCharacter, Health);
    }
    
    void AMyCharacter::TakeDamage(float DamageAmount) {
        if (HasAuthority()) {
            Health -= DamageAmount;
            // OnRep_Health() called automatically on clients
            // Must call manually on Server if needed
            OnRep_Health(); 
        }
    }
  3. ブループリント統合

    • UIプログレスバーを Health 変数にバインドします。
    • "Play as Client" (NetMode) でテストします。


ワークフロー 4: VFX Graph & Shader Graph (視覚効果)

目標: 魔法の呪文のためのGPUアクセラレーションされたパーティクルシステムを作成する。

手順:

  1. Shader Graph (見た目)

    • Unlit Shader Graph を作成します。
    • Time でスクロールする Voronoi Noise ノードを追加します。
    • Color プロパティ (HDR) で乗算します。
    • Base ColorAlpha に接続します。
    • Surface Type を Transparent / Additive に設定します。
  2. VFX Graph (動き)

    • Visual Effect Graph アセットを作成します。
    • Spawn Context: Constant Rate (1000/秒)。
    • Initialize: Lifetime (0.5秒 - 1秒) を設定し、Velocity (Random Direction) を設定します。
    • Update: 風をシミュレートするために Turbulence (Noise Field) を追加します。
    • Output: 上記で作成したShader Graphを使用するように Quad Output を設定します。
  3. 最適化

    • パーティクルがゲームプレイロジック(例:ダメージ)をトリガーする必要がある場合は GPU Events を使用します。
    • カリングの問題を避けるために Bounds を正しく設定します。


5. アンチパターンと注意点

❌ アンチパターン 1: Update() 内の重いロジック

どのようなものか:

  • 毎フレーム FindObjectOfTypeGetComponent、または重い計算を実行する。

なぜ失敗するのか:

  • CPUパフォーマンスを低下させます。
  • モバイルのバッテリーを消耗させます。

正しいアプローチ:

  • Start() または Awake() で参照をキャッシュします。
  • 毎フレーム実行する必要のないロジック(例:AIのパスファインディング更新を0.5秒ごとに行う)には、コルーチンまたは InvokeRepeating を使用します。

❌ アンチパターン 2: クライアントを信頼する

どのようなものか:

  • クライアントがサーバーに「プレイヤーXを撃った」と送信する。
  • サーバーがすぐにダメージを適用する。

なぜ失敗するのか:

  • チーターが偽のパケットを送信できます。

正しいアプローチ:

  • 権威あるサーバー: クライアントは「発砲した」と送信します。サーバーがヒットを計算します。サーバーがクライアントに「ヒットした」と伝えます。
  • ローカルプレイヤーの遅延を隠すために予測/調整を使用します。

❌ アンチパターン 3: ゴッドクラス

どのようなものか:

  • PlayerController.cs が移動、戦闘、インベントリ、UI、オーディオを処理する2000行のコードを持っている。

なぜ失敗するのか:

  • スパゲッティコードになります。
  • デバッグが困難です。

正しいアプローチ:

  • コンポジション: PlayerMovementPlayerCombatPlayerInventory
  • 責任を分割するためにコンポーネントを使用します。


7. 品質チェックリスト

パフォーマンス:

  • [ ] フレームレート: ターゲットハードウェアで安定した60fps。
  • [ ] GC Alloc: メインゲームプレイループで毎フレーム0バイト割り当て。
  • [ ] ドローコール: 適切にバッチ処理されている(フレームデバッガーで確認)。
  • [ ] ロード時間: シーン/アセットに非同期ロードを使用。

コードアーキテクチャ:

  • [ ] 疎結合: システムはハードな依存関係ではなく、イベント/インターフェースを介して通信します。
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開

Game Developer

Purpose

Provides interactive entertainment development expertise specializing in Unity (C#) and Unreal Engine (C++). Builds 2D/3D games with gameplay programming, graphics optimization, multiplayer networking, and engine architecture for immersive gaming experiences.

When to Use

  • Prototyping game mechanics (Character controllers, combat systems)
  • Optimizing graphics performance (Shaders, LODs, Occlusion Culling)
  • Implementing multiplayer networking (Netcode for GameObjects, Mirror, Unreal Replication)
  • Designing level architecture and streaming systems
  • Developing VR/AR experiences (OpenXR, ARKit)
  • Creating custom editor tools and pipelines


2. Decision Framework

Engine Selection

Which engine fits the project?
│
├─ **Unity**
│  ├─ Mobile/2D/VR? → **Yes** (Best ecosystem, smaller build size)
│  ├─ Team knows C#? → **Yes**
│  └─ Stylized graphics? → **Yes** (URP is flexible)
│
├─ **Unreal Engine 5**
│  ├─ Photorealism? → **Yes** (Nanite + Lumen out of box)
│  ├─ Open World? → **Yes** (World Partition system)
│  └─ Team knows C++? → **Yes** (Or Blueprints visual scripting)
│
└─ **Godot**
   ├─ Open Source requirement? → **Yes** (MIT License)
   ├─ Lightweight 2D? → **Yes** (Dedicated 2D engine)
   └─ Linux native dev? → **Yes** (Excellent Linux support)

Multiplayer Architecture

Model Description Best For
Client-Hosted (P2P) One player is host. Co-op games, Fighting games (with rollback). Cheap.
Dedicated Server Authoritative server in cloud. Competitive Shooters, MMOs. Prevents cheating.
Relay Server Relay service (e.g., Unity Relay). Session-based games avoiding NAT issues.

Graphics Pipeline (Unity)

Pipeline Target Pros
URP (Universal) Mobile, VR, Switch, PC High perf, customizable, large asset store support.
HDRP (High Def) PC, PS5, Xbox Series X Photorealism, Volumetric lighting, Compute shaders.
Built-in Legacy Avoid for new projects.

Red Flags → Escalate to graphics-engineer (Specialist):

  • Writing custom rendering backends (Vulkan/DirectX/Metal) from scratch
  • Debugging driver-level GPU crashes
  • Implementing novel GI (Global Illumination) algorithms


Workflow 2: Unreal Engine Multiplayer Setup

Goal: Replicate a variable (Health) from Server to Clients.

Steps:

  1. Header (Character.h)

    UPROPERTY(ReplicatedUsing=OnRep_Health)
    float Health;
    
    UFUNCTION()
    void OnRep_Health();
    
    void GetLifetimeReplicatedProps(TArray<FLifetimeProperty>& OutLifetimeProps) const override;
  2. Implementation (Character.cpp)

    void AMyCharacter::GetLifetimeReplicatedProps(TArray<FLifetimeProperty>& OutLifetimeProps) const {
        Super::GetLifetimeReplicatedProps(OutLifetimeProps);
        DOREPLIFETIME(AMyCharacter, Health);
    }
    
    void AMyCharacter::TakeDamage(float DamageAmount) {
        if (HasAuthority()) {
            Health -= DamageAmount;
            // OnRep_Health() called automatically on clients
            // Must call manually on Server if needed
            OnRep_Health(); 
        }
    }
  3. Blueprint Integration

    • Bind UI Progress Bar to Health variable.
    • Test with "Play as Client" (NetMode).


Workflow 4: VFX Graph & Shader Graph (Visual Effects)

Goal: Create a GPU-accelerated particle system for a magic spell.

Steps:

  1. Shader Graph (The Look)

    • Create Unlit Shader Graph.
    • Add Voronoi Noise node scrolling with Time.
    • Multiply with Color property (HDR).
    • Connect to Base Color and Alpha.
    • Set Surface Type to Transparent / Additive.
  2. VFX Graph (The Motion)

    • Create Visual Effect Graph asset.
    • Spawn Context: Constant Rate (1000/sec).
    • Initialize: Set Lifetime (0.5s - 1s), Set Velocity (Random Direction).
    • Update: Add Turbulence (Noise Field) to simulate wind.
    • Output: Set Quad Output to use the Shader Graph created above.
  3. Optimization

    • Use GPU Events if particles need to trigger gameplay logic (e.g., damage).
    • Set Bounds correctly to avoid culling issues.


5. Anti-Patterns & Gotchas

❌ Anti-Pattern 1: Heavy Logic in Update()

What it looks like:

  • Performing FindObjectOfType, GetComponent, or heavy math every frame.

Why it fails:

  • Kills CPU performance.
  • Drains battery on mobile.

Correct approach:

  • Cache references in Start() or Awake().
  • Use Coroutines or InvokeRepeating for logic that doesn't need to run every frame (e.g., AI pathfinding updates every 0.5s).

❌ Anti-Pattern 2: Trusting the Client

What it looks like:

  • Client sends "I shot player X" to server.
  • Server applies damage immediately.

Why it fails:

  • Cheaters can send fake packets.

Correct approach:

  • Authoritative Server: Client sends "I fired". Server calculates hit. Server tells Client "You hit".
  • Use prediction/reconciliation to mask latency for the local player.

❌ Anti-Pattern 3: God Classes

What it looks like:

  • PlayerController.cs has 2000 lines handling Movement, Combat, Inventory, UI, and Audio.

Why it fails:

  • Spaghetti code.
  • Hard to debug.

Correct approach:

  • Composition: PlayerMovement, PlayerCombat, PlayerInventory.
  • Use components to split responsibility.


7. Quality Checklist

Performance:

  • [ ] Frame Rate: Stable 60fps on target hardware.
  • [ ] GC Alloc: 0 bytes allocated per frame in main gameplay loop.
  • [ ] Draw Calls: Batched appropriately (check Frame Debugger).
  • [ ] Load Times: Async loading used for scenes/assets.

Code Architecture:

  • [ ] Decoupled: Systems communicate via Events/Interfaces, not hard dependencies.
  • [ ] Clean: No "God Classes" > 500 lines.
  • [ ] Version Control: Large binaries (textures, audio) handled via Git LFS.

UX/Polish:

  • [ ] Controls: Input remapping supported.
  • [ ] UI: Scales correctly for different aspect ratios (16:9, 21:9, Mobile Notches).
  • [ ] Feedback: Audio/Visual cues for all player actions (Juice).

Examples

Example 1: 2D Platformer Game Development

Scenario: Building a commercial 2D platformer with physics-based gameplay.

Implementation:

  1. Physics: Custom physics engine for responsive platforming
  2. Animation: Sprite-based animation with state machines
  3. Level Design: Tilemap-based levels with procedural elements
  4. Audio: Spatial audio system with adaptive music

Technical Approach:

# Character controller pattern
class PlayerCharacter:
    def update(self, dt):
        input = self.input_system.get_player_input()
        velocity = self.physics.apply_gravity(velocity, dt)
        velocity = self.handle_movement(input, velocity)
        displacement = self.physics.integrate(velocity, dt)
        self.handle_collisions(displacement)
        self.animation.update_state(velocity, input)

Example 2: VR Experience Development

Scenario: Creating an immersive VR experience for Oculus/Meta Quest.

VR Implementation:

  1. Locomotion: Teleportation and smooth movement options
  2. Interaction: Hand tracking with gesture recognition
  3. Optimization: Single-pass stereo rendering
  4. Comfort: Comfort mode options for sensitive users

Key Considerations:

  • 72Hz minimum frame rate for comfort
  • Motion sickness avoidance in design
  • Hand physics for realistic interaction
  • Battery optimization for standalone headsets

Example 3: Multiplayer Battle Royale

Scenario: Developing a competitive multiplayer game with 100 players.

Multiplayer Architecture:

  1. Networking: Client-side prediction with server reconciliation
  2. Lag Compensation: Interpolation and extrapolation techniques
  3. Anti-Cheat: Server-side validation, cheat detection
  4. Matchmaking: Skill-based matchmaking with queue optimization

Best Practices

Game Development

  • Core Loop First: Prototype and refine the core gameplay loop
  • Modular Architecture: Decouple systems for maintainability
  • Performance Budgeting: Define and monitor performance targets
  • Data-Driven Design: Use configuration files for game balance
  • Version Control: Handle large binary assets appropriately

Physics and Movement

  • Determinism: Ensure consistent physics across networked games
  • Collision Detection: Optimize for minimal false positives
  • Character Controllers: Separate physics from character logic
  • Ragdoll Physics: Use for death animations and interaction
  • Performance: Profile physics update time, optimize as needed

Graphics and Rendering

  • Batching: Group draw calls for GPU efficiency
  • Level of Detail: Implement LOD for models and textures
  • Shaders: Optimize shader complexity, use shared materials
  • Lighting: Balance quality and performance, use baked lighting
  • Post-Processing: Apply selectively, profile GPU impact

Audio Implementation

  • Spatial Audio: 3D positioning for immersion
  • Adaptive Music: Dynamic soundtrack based on gameplay
  • Performance: Stream large audio files, pool sound effects
  • Compression: Use appropriate audio compression formats
  • Accessibility: Provide audio cues as alternatives to visual feedback

Testing and Quality

  • Playtesting: Regular playtesting sessions for feedback
  • Performance Profiling: Monitor frame rate, memory, load times
  • Platform Testing: Test on target hardware, not just dev machines
  • Accessibility: Implement accessibility features from start
  • Localization: Plan for international markets early