- Home /
 
 
               Question by 
               kurai · May 07, 2013 at 10:01 AM · 
                meshverticestrianglesmesh-deformation  
              
 
              Expanding mesh animation
Hi there. I'm trying to create an expanding mesh animation. I've got a ring which I want to expand over time maintaing its width constant. So I tried to use the Mesh object to move the vertices each update cycle.
Here's what I'm trying to do: ![alt text][1]
The code I wrote so far:
 using UnityEngine;
 using System.Collections;
 
 public class WaveGenerator : MonoBehaviour {
     
     void Update() {
         Mesh mesh = GetComponent<MeshFilter>().mesh;
         Vector3[] vertices = mesh.vertices;
         Vector3[] normals = mesh.normals;
         int[] triangles = mesh.triangles;
         int i = 0;
         while (i < vertices.Length) {
             vertices[i].x += normals[i].x*0.1f ;
             vertices[i].z += normals[i].z*0.1f ;
             i++;
         }
        
         
         mesh.Clear();
         mesh.vertices = vertices;
         mesh.triangles = triangles;
         
         //mesh.RecalculateNormals();
         //mesh.RecalculateBounds();
     }
 }
 
               The problem is that with that the mesh "explodes" into a lot of triangles. How can I rebuild it in a way that keeps all the triangles connected?
Thanks for all the help. [1]: /storage/temp/10785-2013-05-07+11.52.20.jpg
 
                 
                2013-05-07 11.52.20.jpg 
                (51.7 kB) 
               
 
              
               Comment
              
 
               
              Your answer