/// <summary> /// Initialize the sphere faces on the sphere /// </summary> private void Initialize() { // Initialize the meshes if needed if (MeshFilters == null || MeshFilters.Length == 0) { MeshFilters = new MeshFilter[6]; } // Initialize the sphere faces SphereFaces = new SphereFace[6]; // Defines all directions to turn un cube into Vector3[] directions = { Vector3.up, Vector3.down, Vector3.left, Vector3.right, Vector3.forward, Vector3.back }; for (int i = 0; i < 6; i++) { if (MeshFilters[i] == null) { // Creation of a mesh GameObject meshObj = new GameObject("mesh"); meshObj.transform.parent = transform; // Default material meshObj.AddComponent <MeshRenderer>().sharedMaterial = new Material(Shader.Find("Standard")); MeshFilters[i] = meshObj.AddComponent <MeshFilter>(); MeshFilters[i].sharedMesh = new Mesh(); } // Creation of a sphere faces SphereFaces[i] = new SphereFace(MeshFilters[i].sharedMesh, resolution, directions[i]); } }
void Initialize() { if (meshFilters == null || meshFilters.Length == 0) { meshFilters = new MeshFilter[6]; } faces = new SphereFace[6]; Vector3[] directions = { Vector3.up, Vector3.down, Vector3.left, Vector3.right, Vector3.forward, Vector3.back }; for (int i = 0; i < 6; i++) { if (meshFilters[i] == null) { GameObject meshObj = new GameObject("mesh"); meshObj.transform.parent = transform; Material fireBallMatreial = new Material(Shader.Find("Custom/Fireball")); meshObj.AddComponent <MeshRenderer>().material = fireBallMatreial; fireBallMatreial.SetFloat("_RampVal", rampValue); fireBallMatreial.SetFloat("_Amplitude", amplitudeValue); meshFilters[i] = meshObj.AddComponent <MeshFilter>(); materials.Add(fireBallMatreial); meshFilters[i].sharedMesh = new Mesh(); } faces[i] = new SphereFace(meshFilters[i].sharedMesh, resolution, directions[i]); } }