コード例 #1
0
ファイル: Sphere.cs プロジェクト: talesofpixelia/UKB
    /// <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]);
        }
    }
コード例 #2
0
    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]);
        }
    }