Unityのゲームエフェクトを外注するときは、見た目だけでなく、プロジェクトへそのまま組み込める納品形式かを確認する必要があります。
動画や連番画像だけを受け取っても、ParticleSystem、Material、Texture、Shaderの設定を開発側で作り直すことになれば、外注による工数削減にはつながりません。
実装までの手間を減らしたい場合は、必要なデータが設定されたPrefabとUnity packageで納品してもらう方法が適しています。
UnityエフェクトのPrefab納品とは
Prefab納品とは、ゲーム内で使用するエフェクトの構成や設定をまとめた状態で受け取る方法です。
開発者は納品されたPrefabをシーンへ配置したり、キャラクターのスキル処理から呼び出したりして使用できます。
一般的なUnityエフェクトでは、次のデータが関係します。
- ParticleSystem
- Texture
- Material
- Mesh
- Shader
- Script
- Prefab
エフェクトの内容によっては、すべてのデータが必要になるわけではありません。
単純な発光や煙であればParticleSystem、Texture、Materialだけで構成できることがあります。一方、特殊な形状や動きが必要な場合は、Mesh、Shader、Scriptが追加されます。
重要なのは、必要なファイルがそろっていることと、参照関係が切れていないことです。
画像素材だけの納品では組み込み作業が残る
エフェクトの完成映像が希望どおりでも、Unity上で動作するデータがなければ、開発側に多くの作業が残ります。
たとえば、透過PNGだけを受け取った場合は、次の設定を自分で行わなければなりません。
- ParticleSystemの生成数を設定する
- パーティクルの寿命を調整する
- サイズや回転の変化を設定する
- Blend Modeを決める
- Materialを作成する
- Textureを割り当てる
- Prefabとして保存する
- スクリプトから再生できる状態にする
既にエフェクト制作に慣れている開発者であれば対応できますが、外注の目的が制作時間の短縮であれば、Prefabまで設定された状態で受け取ったほうが効率的です。
エフェクトの納品方法を比較
| 納品方法 | 開発側に残る作業 | 組み込みやすさ | 向いている用途 |
|---|---|---|---|
| 完成動画 | Unity用データを別途制作 | 低い | PVや演出確認 |
| 透過PNG・連番画像 | MaterialやParticleSystemを設定 | 低め | 自社で実装できる場合 |
| Unity Prefab | シーン配置や呼び出し設定 | 高い | 個人開発、アプリ開発 |
| Unity package | インポート後にPrefabを配置 | 高い | 複数ファイルをまとめて受け取りたい場合 |
| プロジェクト一式 | 必要部分の抽出や統合 | 案件による | 開発環境を共有している場合 |
既存プロジェクトへ追加する場合は、Unity packageで受け取ると、関連ファイルをまとめてインポートできます。
ただし、納品者側と依頼者側でUnityのバージョンやレンダーパイプラインが異なると、MaterialやShaderが正常に表示されないことがあります。
外注前にUnityのバージョンを伝える
Unityエフェクトを依頼するときは、使用しているUnityのバージョンを最初に伝えます。
同じUnityでも、バージョンによってParticleSystemやShaderの挙動、packageの互換性が異なる場合があります。
伝える情報の例は次のとおりです。
- Unity 2022.3.XXf1
- Unity 6の特定バージョン
- Windows版またはMac版
- 使用している主要package
- プロジェクトを更新する予定の有無
「Unity 2022を使用」といった大まかな指定ではなく、エディターに表示されている詳細なバージョン番号まで伝えると認識違いを減らせます。
レンダーパイプラインを確認する
Unityには、主に次のレンダーパイプラインがあります。
- Built-in Render Pipeline
- Universal Render Pipeline
- High Definition Render Pipeline
Built-in用に作られたMaterialやShaderをURPへ入れると、ピンク色に表示されることがあります。これは対応するShaderが見つからないときに起こる代表的な症状です。
依頼時には、使用中のレンダーパイプラインも明記します。
掲載されているサービスでは、基本的にParticleSystemのShurikenを使い、内容によってはURP Shader Graphにも対応可能とされています。一方、HDRPのVFX Graphは対象外です。
HDRPやVFX Graphを前提としたプロジェクトでは、購入前に対応範囲を確認してください。
軽量なエフェクトは見た目だけでは判断できない
エフェクトは派手に見えるほど品質が高いとは限りません。
ゲーム内では、複数のエフェクトが同時に再生されます。単体では問題がなくても、敵や味方が同時にスキルを使用するとフレームレートが低下することがあります。
負荷に影響する主な要素は次のとおりです。
- パーティクルの最大生成数
- 1個あたりの表示時間
- 透明オブジェクトの重なり
- Textureのサイズと枚数
- 使用するMaterialの数
- Shaderの処理
- Meshの頂点数
- Scriptによる更新処理
- 同時に表示するエフェクト数
特に透明なパーティクルを画面全体へ大量に重ねる構成は、描画負荷が高くなりやすい点に注意が必要です。
依頼するときは「軽くしてください」とだけ伝えるのではなく、使用環境と同時再生数を伝えます。
ターゲット端末を指定する
PC向けゲームとスマートフォン向けゲームでは、許容できる処理負荷が異なります。
次のように対象環境を具体的に伝えます。
- Windows向けPCゲーム
- Android端末
- iPhone、iPad
- WebGL
- VR機器
- 家庭用ゲーム機
- ローエンド端末も対象
- 画面解像度
- 想定フレームレート
スマートフォン向けであれば、最低対応端末の性能も重要です。
高性能端末で動作することだけを基準にすると、古い端末や低価格帯の端末でフレームレートが低下する可能性があります。
同時再生数を伝える
同じエフェクトでも、一度に1個だけ表示する場合と、20個同時に表示する場合では必要な設計が変わります。
依頼時には、次のような利用状況を説明します。
- ボスの必殺技として1回だけ使用する
- 通常攻撃で連続使用する
- 複数の敵が同時に使用する
- 常時表示するバフエフェクト
- 画面全体へ表示する天候表現
- 近距離と遠距離の両方で表示する
通常攻撃や弾丸の着弾エフェクトは、短時間に何度も生成されます。そのため、派手さよりも生成数、表示時間、再利用のしやすさが重要です。
参考画像だけでなく動きも指定する
静止画だけでは、エフェクトの速度や消え方を正確に共有できません。
可能であれば、参考動画や簡単な絵コンテを用意します。
伝える項目は次のとおりです。
- エフェクトが発生する位置
- 発生から終了までの秒数
- 最も大きくなるタイミング
- 移動方向
- キャラクターへ追従するか
- ループ再生するか
- カメラへ向けて表示するか
- 終了後に自動で停止するか
- 色や明るさの変化
- 使用する場面
たとえば「青い魔法エフェクト」だけでは、球体、雷、煙、光の輪など複数の表現が考えられます。
「発動時に足元から円が広がり、0.5秒後に上方向へ光が伸び、全体を1.2秒で消す」と説明すれば、完成イメージを共有しやすくなります。
組み込み方法も事前に決める
Prefabを受け取った後、どのように再生するかも確認します。
主な方法は次のとおりです。
- シーンへ直接配置して再生
- Instantiateで生成
- Object Poolから呼び出す
- Timelineから再生
- Animation Eventから再生
- スキル管理Scriptから再生
- 特定のTransformへ追従させる
大量に生成するエフェクトでは、毎回InstantiateとDestroyを行うより、Object Poolを利用する設計が適する場合があります。
外注先へObject Pool本体の実装まで依頼するのか、エフェクト側だけを納品してもらうのかを分けて考えてください。
掲載サービスはビジュアルエフェクト制作が中心です。ゲーム全体のシステム実装を含めたい場合は、対応範囲を見積もり相談で確認する必要があります。
ディレクトリ構成を指定すると管理しやすい
複数人で開発しているプロジェクトでは、納品ファイルの保存場所も重要です。
特に指定しない場合、既存の命名規則と合わず、インポート後にファイルを移動する作業が発生します。
依頼時に、希望する構成を共有しておくと管理しやすくなります。
例としては、次のような分類があります。
- Effects
- Prefabs
- Materials
- Textures
- Meshes
- Shaders
- Scripts
ファイル名の規則も指定できます。
- EF_Fire_Burst
- PF_EF_Heal
- MAT_EF_Smoke
- TEX_EF_Spark
- SHD_EF_Additive
既存プロジェクトに命名ルールがある場合は、そのルールを仕様書へ記載します。
packageの粒度を決める
エフェクトを複数依頼する場合は、1つの大きなpackageにまとめるか、エフェクトごとに分けるかを決めます。
| packageの形式 | メリット | 注意点 |
|---|---|---|
| 全エフェクトを1つにまとめる | 一括でインポートできる | 一部だけ導入しにくい |
| 種類ごとに分ける | 魔法、攻撃、UIなどで管理できる | package数が増える |
| エフェクトごとに分ける | 必要なデータだけ導入できる | 共通素材が重複する場合がある |
小規模な個人開発では1つにまとめても問題が少ない一方、複数タイトルで使用する場合や機能単位で管理する場合は、分割したほうが扱いやすくなります。
掲載サービスでは、ディレクトリ仕様やパッケージの粒度についても希望を伝えられます。
見積もり相談に入れる内容
見積もりを依頼するときは、最低限、次の情報をまとめます。
- 作りたいエフェクトの種類
- 参考画像または参考動画
- Unityの詳細なバージョン
- レンダーパイプライン
- ターゲットプラットフォーム
- 画面解像度
- 想定する同時再生数
- 再生時間
- ループの有無
- 必要なエフェクト数
- 希望納期
- 納品時のディレクトリ構成
- packageの分け方
- ScriptやShaderが必要か
- 商用作品で使用するか
仕様書は専門的な形式でなくても構いません。
箇条書きと参考動画があれば、文字だけで抽象的に説明するより見積もりを出しやすくなります。
料金はエフェクトの規模で変わる
掲載サービスでは、作業時間1時間あたり3,000円を基準に見積もる方式が案内されています。
実際の料金は、エフェクトの種類、必要な素材、ShaderやScriptの有無、修正内容によって変わります。
同じ炎のエフェクトでも、次の条件によって作業量が異なります。
- 1秒だけ表示する小さな着火
- キャラクターへ常時追従する炎
- 地面へ広がる範囲攻撃
- Mesh変形を伴う炎
- URP Shader Graphを使用する炎
- 複数段階で変化するボス攻撃
表示時間が短いから安いとは限りません。短時間でも独自Shaderや複雑な形状が必要であれば、制作時間は長くなります。
購入前に仕様を共有し、見積もりを確認してください。
納品物の権利と利用条件を確認する
ゲームを販売する場合は、商用利用とデータの権利も確認が必要です。
掲載サービスでは、納品物を商用利用でき、納品データの権利は依頼者へ帰属すると案内されています。納品後のデータも自由に改変できます。
クレジット表記は必須ではありません。
外注したエフェクトを次の用途で使用したい場合も、念のため見積もり時に伝えておくと安全です。
- 有料ゲーム
- 無料ゲーム内の広告表示
- アプリ内課金
- 法人案件
- 複数タイトルへの転用
- 納品後の自社改変
- 外部の開発会社への共有
サウンドは別途用意する
エフェクトの見た目が完成しても、攻撃音、爆発音、発動音は含まれません。
掲載サービスはビジュアルエフェクトのみを対象としており、サウンド制作は対象外です。
必要な場合は、次のデータを別途準備します。
- 魔法の発動音
- 爆発音
- 着弾音
- 炎や雷の持続音
- UI通知音
- 終了時の音
音に合わせてエフェクトのタイミングを調整したい場合は、仮のサウンドデータと再生時間を共有すると、演出を合わせやすくなります。
Prefab納品は実装工数まで考えて選ぶ
Unityエフェクトを外注する目的は、見栄えを良くすることだけではありません。
必要なTexture、Material、Shader、Prefabが整理された状態で受け取れば、開発側の組み込み作業を減らせます。
外注前には、次の条件を決めてください。
- Unityのバージョン
- レンダーパイプライン
- ターゲット端末
- 同時再生数
- エフェクトの動き
- 納品時のフォルダ構成
- packageの分け方
- 商用利用の条件
参考動画と使用環境をまとめて見積もり相談を行えば、見た目だけでなく、プロジェクトへ組み込みやすいエフェクトを依頼できます。

