ドット絵にEmissionMapを適用する方法

2021/06/11に公開

こんにちは今回はドット絵にEmissionMapを適用する方法を解説します。

ライセンス表示

使用素材

Unityちゃん素材

https://unity-chan.com/download/index.php
上記のサイトから
『コーゲンシティ・オールスターズ!』
ユニティちゃんピクセルアートパック for アクションゲーム Vol.2

EmissionMap

EmissionMap用の画像を保存しておいて下さい。

完成予定


Unityちゃんの剣だけをEmissionさせるのが今回の目的です。

プロジェクトの新規立ち上げ


上記の様に新規プロジェクトを作って下さい。
新しく作る必要がない人はそのままでOKです!

素材のダウンロード

まず使用素材のダウンロードサイトから
『コーゲンシティ・オールスターズ!』
ユニティちゃんピクセルアートパック for アクションゲーム Vol.2をダウンロードしてください
ダウンロード後は
のアイコンをダブルクリックでUnityにプロジェクトにインストールされます

Post-Profilesの導入

https://ekulabo.com/post-processing
https://ekulabo.com/fun-bloom
上記の2つの技術記事を参考にBloomの実装までやってみて下さい。
上の記事から順に読むと実装が楽に出来るはずです。

以上の事ができると下図の様な状態になっていると思います。
MainCameraにはPost-process Layerがアタッチされている。

次にPost-Process用のオブジェクトが以下の様に存在する

UnityChanを画面に表示する

それでは今回の光らせるUnityChanを画面に表示しましょう。

  1. まず空のゲームオブジェクトを作成しましょう。
  2. 次にSpriteRendererをアタッチしましょう。
  3. SpriteRendererのSpriteをUnityChan_Soard_Combo_5に変更しましょう。

    これでUnityちゃんが表示されたと思います

EmissionMapを使う為のMaterialの作成

現在のMaterial(Sprites-Default)ではEmissionMapを指定できないので新しくMaterialを作成します。

  1. ProjectのAssetsでCreateMaterialを行う

    2.Material名は分かりやすくEmissionMaterial等にしましょう。

EmissionMaterialの詳細設定

  1. まずEmissionMaterialのInspectorを見て、RenderModeをCutoutに変更しましょう

    2.EmissionをOnに変更しましょう

    3.EmissionColorを試しに下図の様に変更しましょう
  1. Colorの隣の丸を押して記事の上で紹介しているEmissionMapを指定しましょう

UnityChanにEmissionMaterialを取り付ける


どうでしょうか下図の様に光ってると思います

BloomのIntensityやEmissionのColorを
お好みで調整すると下図の様に良い感じに剣が光ると思います

上手く出来ないときに見るポイント

  • VolumeのLayerとMainCameraにアタッチしたPost-process LayerのLayerのタグが下図の様に等しく成っていない

  • ProjectSettingのGraphicsのUseHDRにチェックがない場合

以上のこと以外で上手く行かない場合はコメントをください。

終わりに

次の記事で動的EmissionMapの実装に関して記事にするかと思いますのでアニメーションに合わせてEmissionMapを変更する方法に興味がある人は次回の記事を参考にしてみて下さい。

EmissionMapに関しては
光らせたい部分だけ白抜きして光らせたくない部分は黒くする事で作成出来ます。
今回は詳しく解説しませんでしたがイラストレーター等を上手く活用すると簡単にできると思うので挑戦してみて下さい。

今回のEmissionMapを活用すると

https://twitter.com/hirpokorin/status/1384045600816177152
上のツイートの様なゲームが作れると思います。

Discussion