✨ Anime Shading Plus について

はじめに
Anime Shading Plus(以下 ASP)は、日本のアニメ風キャラクターのレンダリングに特化して設計された Unity プラグインです。
Unity 上で 3D キャラクターを、従来のセルアニメ調や立ち絵のような質感に近づけて描画できるよう支援します。
また、日本の 3D ゲームでよく使われる PBR マテリアルをブレンドしつつ、アニメ調に落とし込む機能も備えています。
キャラクター用・目用の専用シェーダーに加えて、高度にカスタマイズ可能な各種アウトライン機能や、日本のアニメ表現に合わせた追加光源処理なども収録しています。
さらに、ゲームでトゥーンレンダリングを行う際によく発生する問題にも対応しています。たとえば、不自然な self-shadowing を抑えるための追加 Shadow Map、
顔の陰影マップを作成するツール、アニメ風の影を描く専用パス、アニメキャラクター向けに最適化した Tone Mapping などを用意しています。
なぜ Anime Shading+ を作ったのか
トゥーンレンダリング向けシェーダーは、Unity で最も広く使われているシェーダーのひとつであり、ネット上にも数多くの情報があります。しかし長年見てきた中で、Unity Asset Store には次の条件をすべて同時に満たすプラグインがありませんでした。
日本のアニメ風キャラクターの描画に特化したシェーダー
セルルックキャラクター向けに追加で描画される専用 Shadow Map
人物向けの Screen Space Outline と Mesh-based Outline を含む、十分に整った内輪郭・外輪郭表現
日本のアニメ風キャラクター向けのポストプロセス効果(例: Tone Mapping)
セルルックキャラクター向けの多光源処理と環境光(間接光)処理
標準的な PBR とトゥーンレンダリングをブレンドできる選択肢
高品質な日本アニメ風キャラクター表現を実現するには、これらはどれも欠かせない要素だと考えています。そこで Unity の URP 上で、これらの機能をひとつのプラグインとしてまとめました。
このプラグインは、PC 向けの production ready な製品として十分な安定性・性能・完成度を備えていると考えています。また、トゥーンレンダリングを必要とするプロジェクトで、人物向けシェーダーを拡張していく際の出発点としても活用できます。
ASP の主な機能
1. 日本のアニメ風キャラクター向けに設計されたシェーダー
ASP は、日本のアニメ風キャラクターを描画するために最適化されたシェーダーを提供します。シェーダーには、トゥーンライティング、スタイライズド PBR ライティング、リムライト、深度ベースのリムライト、MatCap 反射、サブサーフェススキャタリング、FOV 補正などの機能が含まれています。
また、アニメキャラクターの顔表現でよく使われる、SDF ベースの顔影マップをベイクするためのツールと各種パラメータも用意しています。
さらに、アニメキャラクターの目を描画するための専用シェーダーも提供しています。


2. Character-Only Shadow Map と Depth Offset Shadow
トゥーンレンダリングで人物に出やすい低品質な self shadow を解決するため、ASP はキャラクターだけを独立した Shadow Map に描画する機能をサポートしています(シーンでは 2 枚の Shadow Map を使用し、1 枚は Unity 標準でキャラクターを含まず、もう 1 枚はキャラクター専用です)。
さらに、キャラクターの細部表現を強化するために、指定した Renderer に対して深度オフセットベースの影を描画することもできます。


3. アニメ風キャラクター向けに調整された Tone Mapping
一般的なフルスクリーンの Tone Mapping は彩度が落ちやすく、アニメ風キャラクター表現には不向きです(あるいは、非常にカスタマイズされた LUT で補正する必要があります)。
ASP では、画面上でキャラクターが占めるピクセルに対して効果量を調整できる Tone Mapping を提供しています。これにより、3D の PBR シーン内でも、アニメキャラクターが白飛びしすぎたり彩度を失いすぎたりするのを防げます。

4. スクリーンスペースアウトラインとモデル空間アウトライン
ASP は、人物向けに最適化されたスクリーンスペースアウトラインとモデル空間アウトラインの両方を提供します。スクリーンスペースアウトラインは複数の情報をもとに描画でき、Vertex Color やカメラ距離に応じて重みや線幅を制御するオプションもあります。
また、モデル空間アウトライン向けにはスムーズ法線をベイクするツールも用意しています。

5. セルルック向けの追加光源と環境光(間接光)処理
ASP では、追加光源と環境光をフラット化するオプションを提供しています。これによりキャラクターの 3D 感を抑え、より 2D のセルアニメに近い見た目を実現できます。
