// Start is called before the first frame update void Start() { VoxelizeMesh voxelizeMesh = GetComponent <VoxelizeMesh>(); voxelizeMesh.Voxelize(voxelizeMesh.meshToVoxelize); float pS = voxelizeMesh.ParticleSize; Vector3 scale = new Vector3(pS, pS, pS); for (int i = 0; i < voxelizeMesh.PositionList.Count; i++) { Vector3 pos = voxelizeMesh.PositionList[i]; GameObject ball = GameObject.CreatePrimitive(PrimitiveType.Sphere); ball.transform.position = pos; ball.transform.localScale = scale; ball.transform.parent = gameObject.transform; } }
void Start() { //1. Get the VoxelizeMesh component //2. Use meshToVoxelize as the property mesh //3. Use it to voxelize its mesh //4. Set the particleInitialPositions to the PositionList //5. Set the particlesPerBody //6. Set vertex count //7. Set the particle diameter // 1. VoxelizeMesh voxelizeMesh = GetComponent <VoxelizeMesh>(); // 2. mesh = voxelizeMesh.meshToVoxelize; // 3. voxelizeMesh.Voxelize(mesh); // 4. particleInitialPositions = voxelizeMesh.PositionList; // 5. particlesPerBody = voxelizeMesh.PositionList.Count; // 6. vertexCount = mesh.GetIndexCount(0); // 7. particleDiameter = voxelizeMesh.ParticleSize; InitArrays(); InitRigidBodies(); InitParticles(); InitBuffers(); InitShader(); InitInstancing(); }
void Start() { VoxelizeMesh voxelizeMesh = GetComponent <VoxelizeMesh>(); voxelizeMesh.Voxelize(voxelizeMesh.meshToVoxelize); mesh = voxelizeMesh.meshToVoxelize; particleInitialPositions = voxelizeMesh.PositionList; particlesPerBody = particleInitialPositions.Count; vertexCount = mesh.GetIndexCount(0); particleDiameter = voxelizeMesh.ParticleSize; InitArrays(); InitRigidBodies(); InitParticles(); InitBuffers(); InitShader(); InitInstancing(); }