コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

【Unity】MeshFilter から Voxel を生成できる「unity-voxel」紹介

はじめに

「unity-voxel」を Unity プロジェクトに導入することで
MeshFilter から Voxel を生成できるようになります

使用例

f:id:baba_s:20180101152354p:plain

使い方

using mattatz.VoxelSystem;
using UnityEngine;

public class Example : MonoBehaviour
{
    private void Awake()
    {
        var filter = GetComponent<MeshFilter>();
        var voxels = Voxelizer.Voxelize( filter.mesh, 10 );
        voxels.ForEach( voxel =>
        {
            var cube = GameObject.CreatePrimitive( PrimitiveType.Cube );
            cube.transform.parent = transform;
            cube.transform.localPosition = voxel.position;
            cube.transform.localScale = voxel.size * Vector3.one;
            cube.transform.localRotation = Quaternion.identity;
        } );
    }
}

このようなコードを記述して使用します

関連記事