예제 #1
0
 private static void Reset(Unity_collidersCollider collider)
 {
     collider.BoxCollider     = null;
     collider.SphereCollider  = null;
     collider.CapsuleCollider = null;
     collider.MeshCollider    = null;
 }
예제 #2
0
        public Unity_collidersCollider GetOrAddCollider(int nodeIndex)
        {
            Unity_collidersCollider collider;

            if (!colliders.TryGetValue(nodeIndex, out collider))
            {
                collider = new Unity_collidersCollider();
                colliders.Add(nodeIndex, collider);
            }

            return(collider);
        }
예제 #3
0
        private void AddNodeExtension(Node node, Unity_collidersCollider collider, int colliderIndex)
        {
            if (node.Extensions == null)
            {
                node.Extensions = new Dictionary <string, object>();
            }

            var nodeExtension = new Unity_collidersNodeExtension();

            node.Extensions[extensionName] = nodeExtension;

            AddCollider(collider, colliderIndex);
            nodeExtension.Collider = colliderIndex;
        }
예제 #4
0
        public static void SetColliderType(this Unity_collidersCollider collider, ColliderType colliderType)
        {
            Reset(collider);

            switch (colliderType)
            {
            case ColliderType.Box:
                collider.BoxCollider = new Unity_collidersBoxCollider();
                break;

            case ColliderType.Sphere:
                collider.SphereCollider = new Unity_collidersSphereCollider();
                break;

            case ColliderType.Capsule:
                collider.CapsuleCollider = new Unity_collidersCapsuleCollider();
                break;

            case ColliderType.Mesh:
                collider.MeshCollider = new Unity_collidersMeshCollider();
                break;
            }
        }
예제 #5
0
 public static ColliderType GetColliderType(this Unity_collidersCollider collider)
 {
     if (collider.BoxCollider != null)
     {
         return(ColliderType.Box);
     }
     else if (collider.SphereCollider != null)
     {
         return(ColliderType.Sphere);
     }
     else if (collider.CapsuleCollider != null)
     {
         return(ColliderType.Capsule);
     }
     else if (collider.MeshCollider != null)
     {
         return(ColliderType.Mesh);
     }
     else
     {
         return(ColliderType.None);
     }
 }
예제 #6
0
 public void AddCollider(int nodeIndex, Unity_collidersCollider collider)
 {
     colliders.Add(nodeIndex, collider);
 }
 public ColliderOptionsDisplayer(FlowLayoutPanel panel, Unity_collidersCollider collider)
 {
     this.panel    = panel;
     this.collider = collider;
 }
예제 #8
0
        private void AddCollider(Unity_collidersCollider collider, int colliderIndex)
        {
            var gltfExtension = (Unity_collidersGltfExtension)gltf.Extensions[extensionName];

            gltfExtension.Colliders[colliderIndex] = collider;
        }