Esempio n. 1
0
    public static GameObject CreatePlanet(Vector3 _position, int _seed, PlanetType _planetType)
    {
        GameObject planetObject = new GameObject("Planet");

        planetObject.transform.position = _position;
        //planetObject.transform.parent = transform;
        //newPlanet.AddComponent<Planet> ();

        int size = Random.Range(3, 10);

        planetObject.transform.localScale = new Vector3(size, size, size);

        ///	planet = newPlanet.GetComponent<Planet> ();
        int   pixWidth  = 256;
        int   pixHeight = 256;
        int   scale     = 6;
        float xOrg      = 0;
        float yOrg      = 0;

        //planetMesh = SolarBodyGeneration.GetSphereMesh ();
        planetObject.AddComponent <MeshFilter> ().mesh = SolarBodyGeneration.GetSphereMesh();
        MeshRenderer mr = planetObject.AddComponent <MeshRenderer> ();

        mr.material.mainTexture = Noise.CalculateSeamlessNoise(pixWidth, pixHeight, scale, xOrg, yOrg, _seed, PlanetColour.GetPlanetColour(_planetType));

//		if (_planetType == PlanetType.Molten) {
//			planetObject.GetComponent<MeshRenderer> ().material.EnableKeyword ("_EMISSION");
//			planetObject.GetComponent<MeshRenderer> ().material.SetTexture ("_EmissionMap", Noise.CalculateSeamlessNoise (pixWidth, pixHeight, scale, xOrg, yOrg, _seed, PlanetColour.GetPlanetColour (_planetType)));
//			planetObject.GetComponent<MeshRenderer> ().material.SetColor ("_EmissionColor", new Color(0.5f,0.5f,0.5f));
//			planetObject.GetComponent<MeshRenderer> ().material.SetFloat ("_Metallic", 1);
//			planetObject.GetComponent<MeshRenderer> ().material.SetFloat ("_Glossiness", 1);
//		}
        if (_planetType != PlanetType.Molten)
        {
            //cloud = new Clouds[numberOfCloudLayers];
        }

        return(planetObject);
    }
Esempio n. 2
0
    public static GameObject CreateMoon()
    {
        GameObject moonObject = new GameObject("Moon");
        //moonObject.transform.position = MoonPoint(0) + planetObject.transform.position;

        float sizeM = Random.Range(0.5f, 2.0f);

        moonObject.transform.localScale = new Vector3(sizeM, sizeM, sizeM);
        //moonObject.transform.parent = planetObject.transform;
        //newPlanet.AddComponent<Planet> ();



        ///	planet = newPlanet.GetComponent<Planet> ();
        int   pixWidthM  = 128;
        int   pixHeightM = 128;
        int   scaleM     = 4;
        float xOrgM      = 0;
        float yOrgM      = 0;
        int   seedM      = Random.Range(0, 999);

        //planetMesh = SolarBodyGeneration.GetSphereMesh ();
        moonObject.AddComponent <MeshFilter> ().mesh = SolarBodyGeneration.GetSphereMesh();
        MeshRenderer mr = moonObject.AddComponent <MeshRenderer> ();

        mr.material.mainTexture = Noise.CalculateSeamlessNoise(pixWidthM, pixHeightM, scaleM, xOrgM, yOrgM, seedM, PlanetColour.GetPlanetColour((PlanetType)Random.Range(0, 15)));


        return(moonObject);
    }