Local project added
This commit is contained in:
38
Assets/Scripts/VoxelOctree/CPU/OctreeNode.cs
Normal file
38
Assets/Scripts/VoxelOctree/CPU/OctreeNode.cs
Normal file
@ -0,0 +1,38 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using UnityEngine;
|
||||
|
||||
public class OctreeNode
|
||||
{
|
||||
public Bounds bounds; // The 3D space covered by this node
|
||||
public bool isLeaf; // True if this node is not subdivided
|
||||
public bool isOccupied; // True if this node contains solid voxels
|
||||
public bool hasChildrenOccupied; // True if this node contains solid voxels
|
||||
public OctreeNode[] children; // 8 sub-nodes (for each octant)
|
||||
|
||||
public float penetrationFactor;
|
||||
public float reflexionFactor;
|
||||
|
||||
public OctreeNode(Bounds bounds)
|
||||
{
|
||||
penetrationFactor = 1;
|
||||
reflexionFactor = 1;
|
||||
this.bounds = bounds;
|
||||
isLeaf = true;
|
||||
isOccupied = false;
|
||||
hasChildrenOccupied = false;
|
||||
|
||||
children = new OctreeNode[8];
|
||||
|
||||
children[0] = null;
|
||||
children[1] = null;
|
||||
children[2] = null;
|
||||
children[3] = null;
|
||||
children[4] = null;
|
||||
children[5] = null;
|
||||
children[6] = null;
|
||||
children[7] = null;
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user