void Water() { //Iterate through all vertices for (int i = 0; i < vertices.Length; i++) { //If the height of vertex is less than the water height if (vertices[i].y <= waterHeight + 0.2f) { //Generate Water GameObject water = new GameObject(); water.name = "Water"; water.transform.SetParent(transform); water.transform.position = transform.position; Water wg = water.AddComponent <Water>(); //Material Material waterMat = new Material(waterMaterial); waterMat.SetVector("_Offset", offset / chunkSize); water.GetComponent <MeshRenderer>().material = waterMat; //Spawn water wg.AddWater(chunkSize, waterHeight, waveOctaves, offset, waveLOD); break; } } }