Ad-Hoc Advanced Mesh Duplication
収録パッケージ: kb10uy’s Various Tools / org.kb10uy.zatools (>= 6.0.0)
上級者向けのコンポーネントです!
概要
アバターのビルド時に既存の SkinnedMeshRenderer から部分的にメッシュを複製しつつ、それらの頂点属性を自由に変更できるコンポーネントです。
NDMF Preview に対応していますが、パフォーマンス上の問題によりデフォルトで無効になっています。
使い方
アバター内に作成した空の GameObject に Zatools Advanced Duplicate Mesh on Build を追加します。SkinnedMeshRenderer が同時に追加されます。
- 複製対象: メッシュの複製元になる SkinnedMeshRenderer。指定しない場合実行されません。
頂点の選択
- 選択マスクテクスチャ: 複製対象の頂点を選択するためのマスクテクスチャ。元テクスチャが sRGB でインポートされている場合 sRGB to Linear 変換が適用されます。
- サンプリング UV チャンネル: 選択マスクテクスチャをどの UV チャンネルでサンプリングするか指定します。
- 閾値: 下の ZAX 式の返り値のうち、この値以上の頂点によって構成されるポリゴンが複製されます。
- ZAX 式: ZAX で頂点選択の式を指定します。
頂点属性の改変
要素を追加すると上から順に適用されます
- 有効: この改変要素を適用するかどうか。
- 書き込み先: 書き込み先の頂点属性。
- 追加テクスチャ: 下の ZAX 式で追加で参照するテクスチャ。元テクスチャが sRGB でインポートされている場合 sRGB to Linear 変換が適用されます。
- サンプリング UV チャンネル: 追加テクスチャをこの改変要素が適用されるタイミングでどの UV チャンネルでサンプリングするか指定します。
- ZAX 式: ZAX で書き込む頂点属性の計算式を指定します。
後処理
- 法線を再計算する:
Mesh.RecalculateNormals()を実行するかどうか。 - 接線を再計算する:
Mesh.RecalculateTangents()を実行するかどうか。
ZAX 式で利用可能な変数について
@position(float3) 頂点座標@normal(float3) 頂点法線@tangent(float4) 頂点接線@color(float4) 頂点カラー@uv0~7(float4) UV 値@scratch0~3(float4) スクラッチ領域。改変要素間でデータを受渡しするのに利用可能で、頂点には書き込まれません
これ以外に、頂点の選択では @mask (float4) が、それぞれの改変要素では @texture (float4) が利用可能です。
