/// <summary> /// Initialise the data needed for colliding with height maps and fires the /// <c>HeightMapTerrainColliderCreation</c> event. /// </summary> void Start() { heightMapTerrain = GetComponent <HeightMapTerrain>(); Width = heightMapTerrain.sourceRect.width; Height = heightMapTerrain.sourceRect.height; CellSize = heightMapTerrain.cellSize; TriMesh = GetComponent <MeshFilter>().sharedMesh; TriGrid = new TriangleGrid( TriMesh.vertices, TriMesh.triangles, Width - 1, Height - 1, CellSize, transform.localScale, transform.position ); var args = new CollisionEvents.HeightMapColliderCreationEventArgs(this); CollisionEvents.FireEvent(CollisionEvents.EventType.HeightMapTerrainColliderCreation, gameObject, args); }
void OnHeightMapColliderCreation(object source, CollisionEvents.HeightMapColliderCreationEventArgs args) { heightMapColliders.Add(args.Collider); }