Exemple #1
0
        // Token: 0x0600420E RID: 16910 RVA: 0x0014FD20 File Offset: 0x0014E120
        public override void GenerateColliderGeometry()
        {
            Mesh colliderMesh = base.GetColliderMesh();

            if (colliderMesh)
            {
                colliderMesh.Clear();
                EllipsePrimitive.GenerateGeometry(colliderMesh, this.radius0, this.radius1, this.segments);
                base.RefreshMeshCollider();
            }
            base.GenerateColliderGeometry();
        }
Exemple #2
0
        // Token: 0x060041E9 RID: 16873 RVA: 0x0014F210 File Offset: 0x0014D610
        public void GenerateGeometry(float radius, int segments)
        {
            MeshFilter component = base.GetComponent <MeshFilter>();

            if (component.sharedMesh == null)
            {
                component.sharedMesh = new Mesh();
            }
            Mesh sharedMesh = component.sharedMesh;

            base.GenerationTimeMS = EllipsePrimitive.GenerateGeometry(sharedMesh, radius, radius, segments);
            this.radius           = radius;
            this.segments         = segments;
            this.flipNormals      = false;
        }
        static public GameObject Collider(float radius, int segments)
        {
            var          go    = new GameObject("collider");
            MeshCollider meshc = go.AddComponent(typeof(MeshCollider)) as MeshCollider;

            meshc.sharedMesh = new Mesh();
            var   mesh             = meshc.sharedMesh;
            float GenerationTimeMS = EllipsePrimitive.GenerateGeometry(mesh, radius / 2, radius / 2, segments);

            //go.AddComponent<MeshFilter>().sharedMesh = mesh;
            //go.AddComponent<MeshRenderer>();
            //go.GetComponent<Renderer>().sharedMaterial = new Material(Shader.Find("Diffuse"));

            go.transform.Rotate(-90, 0, 0, Space.Self); //go.transform.Rotate(0, 0, 180, Space.Self); // rotate to standard 2D perspective
            return(go);
        }