-
Notifications
You must be signed in to change notification settings - Fork 0
HowToUse
本パッケージは Packages > Pen Optimization Utility に展開されます。
新規に置く場合はSamplesフォルダーに入っているPrefabをヒエラルキーに置いてください。
シーンに既に存在するQvPenに適用する場合は、ペン本体を纏めているPensオブジェクトに Pen Optimize For QvPen
コンポーネントをAdd Componentし、追加された Pen Optimize For QvPen
の [Setup] ボタンを1回押してください。
ペンメッシュの付いたオブジェクトに Material Property Overwriter
コンポーネントが追加され、 Pen Optimize For QvPen
のSharing Targets配列にも登録されていれば成功です。
ペンのメッシュを変更している場合は、物によっては手作業での調整が必要です。
(現状、私の技術力不足により、少々ハードル高めです)
Pen Optimize For QvPen
のShared Material_PC/Androidにセットされたマテリアルがペンカラーを反映するマテリアルとして、実行時にペン本体メッシュのマテリアルスロットを置き換えます。置き換えるマテリアルスロット(Materials > Element番号)をMaterial Indexで指定できます。差し替えるメッシュによってはペン色にしたいマテリアルスロットが異なりますので、ここで指定してください。
ここにはお使いのマテリアルをセットできます。
PCと付いている方はPCプラットフォームで、Androidと付いている方はAndroidプラットフォームで適用されます。極力同じプロパティを持ったシェーダーを使うようにしてください。同じマテリアルをセットする事も可能です。
Pen Optimize For QvPen
のSetupではQvPenのPenManagerオブジェクトの子孫からペン本体の Mesh Renderer
を検索しますが、構成によっては間違ったMesh Rendererに Material Property Overwriter
が付いている可能性があります。その場合はペン本体の Mesh Renderer
があるオブジェクトに Material Property Overwriter
を付け直してください。
Material Property Overwriter
は、マテリアルとは別に、メッシュが独自に持てるマテリアルプロパティを設定するコンポーネントです。これにより、共通のマテリアルのまま個別のペンカラーを反映できる仕組みです。
Material Indexが Pen Optimize For QvPen
のMaterial Indexと同じになっている事を確認してください。
Material Property Overwriter
の同じ配列番号のProperty NameとProperty Typeを元に、同じ配列番号のプロパティ情報をメッシュに書き込みます。
SetupではStandardシェーダーのAlbedoカラーを書き換えるように設定されます。
虹ペンはテクスチャーでグラデーションを再現しているため、あえて白色に設定+元のグラデーションテクスチャーを再割り当てするよう設定されます。
Property Nameはシェーダーにより異なります。
例えば、差し替えたペンメッシュがStandardシェーダーのEmissionによりペン色を区別しているのであれば、Property Nameは _EmissionColor
に置き換えます。
シェーダーがなんのマテリアルプロパティを持っているのかは、マテリアルのInspectorからSelect Shaderでそのシェーダーを開き、Properties配列を見ると分かります。