Unity上で任意の3Dモデルをリアルタイムでボクセル化するシェーダーです。
元のモデルのテクスチャおよびベースカラーをボクセル色に反映させることができます。
Unity 2021.2.5f1 URP
- ボクセル化したいオブジェクトに専用のレイヤーを割り当てます。MainCameraのCullingMaskからはこのレイヤーを除外してください。
- マテリアルのシェーダーに"Voxelizer"を指定します。必要に応じてテクスチャとベースカラーを指定します。
- プレハブ"Voxelizer"をシーン上に配置します。
- Target Layer:ボクセル化したいオブジェクトのレイヤーを指定します。
- Mesh:ボクセル1つをどのメッシュで描画するかを指定します。
- Center Pos:ボクセル化したい領域の中心座標を指定します。
- Area Size:ボクセル化したい領域のサイズを指定します。Center Posを中心とした、一片の長さがArea Sizeの立方体がボクセル化対象の領域となります。
- Grid Width:ボクセル化対象領域の1辺を何個のボクセルで分割するかを指定します。8の整数倍の数値を入力してください。
- Target Pos:ここにTransformを設定すると、Center PosがそのTransfromに追従するようになります。
- Height Scale:ボクセルの高さにスケールを掛けます。
- FPS:ボクセルの更新間隔を指定し、コマ送りのような効果を与えることができます。