Anime Shading Plus
Show / Hide Table of Contents

🟢 8. 表面設定 - FOV 補正とディザリング

FOV 補正


アニメ風キャラクター、特に顔まわりは、一般的な三人称視点ゲームよりも低い FOV のほうが自然に見えることが多いです。通常の三人称ゲームでは 60〜65 以上の FOV がよく使われますが、アニメ風キャラクターでは 40〜45 程度の FOV のほうが適しています。

設定


この問題に対応するため、ASP の Shader には頂点ベースで透視感を補正するパラメータが用意されています。ASP Character Panel の Surface Options 内にある Set FOV Adjust On All から設定できます。

Image

FOV Adjust を 0 にすると補正なし、1 にすると正投影に近い見え方になります。
透視補正の前後比較は以下のとおりです。

Image

Script から FOV を設定する


ASP Character Panel には、FOV を設定するための API も用意されています。

var myFOVAdjustment = 0.5f;
GetComponent<ASPCharacterPanel>().SetFOVAdjustValueToAllMaterials(myFOVAdjustment );

Dithering による疑似半透明


ASP で描画するキャラクターは、Transparent マテリアルを完全にはサポートしていません。キャラクター専用 Tone Mapping や Depth Offset Shadow などの効果が、正しく動作するために深度情報を必要とするためです。ゲームではよく、Dithering Pattern を使って Alpha Clip を行い、半透明に見せる方法が使われます。

設定


マテリアルで Alpha Clip を有効にしたうえで、ASP Character Panel の Surface Options から Dithering Factor と Dithering Size を調整します。
Dithering Factor はクリップの強さを制御し、値が大きいほど透明に近づきます。

Image

Dithering Size はディザパターンの粒度に影響します。

Image

Script から Dithering を設定する


ASP Character Panel には、Dithering を設定するための API も用意されています。

var myDithering= 0.5f;
GetComponent<ASPCharacterPanel>().SetDitheringValueToAllMaterials(myDithering);

var myDitherSize = 6.0f;
GetComponent<ASPCharacterPanel>().SetDitheringSizeValueToAllMaterials(myDitherSize);
  • Edit this page
In this article
Back to top Generated by DocFX