Na FreeHostingu Endora běží desítky tisíc webů. Přidejte se ještě dnes!

Vytvořit web zdarma

Na FreeHostingu Endora běží desítky tisíc webů. Přidejte se ještě dnes!

Vytvořit web zdarma
Úvod HTML CSS PHP MySQL JavaScript
random

Random

Třída pro generování náhodných dat.

Statické vlastnosti:

  • insideUnitCircle - Vrací náhodný bod uvnitř kruhu s poloměrem 1 (pouze pro čtení).
  • insideUnitSphere - Vrací náhodný bod uvnitř koule s poloměrem 1 (pouze pro čtení).
  • onUnitSphere - Vrací náhodný bod na plochu koule s poloměrem 1 (pouze pro čtení).
  • rotation -Vrací náhodnou rotaci (pouze pro čtení).
  • rotationUniform -Vrací náhodnou rotaci s rovnoměrným rozložením (pouze pro čtení).
  • state - Slouží k uložení stavu generátoru a znovu obnovení generátoru.
  • value - Vrátí náhodné číslo mezi 0,0 [včetně] a 1,0 [včetně] (Pouze ke čtení).

Statické metody:

  • ColorHSV - Náhodná barva s hodnotami HSV a alfa v zadaném rozsahu.
  • InitState(int číslo) - Inicializuje stav generátoru náhodných čísel podle čísla.
  • Range - Vrátí náhodné číslo typu float nebo int mezi zadanými hodnotami.
insideUnitCircle
       transform.position = Random.insideUnitCircle * 5;
      
insideUnitSphere
       transform.position = Random.insideUnitSphere * 5;
      
onUnitSphere
       transform.position = Random.onUnitSphere * 4;
      
rotation
       transform.rotation = Random.rotation;
      
rotationUniform
    private IEnumerator Start()
    {
        while (Application.isPlaying)
        {
            Quaternion rotation =  Random.rotationUniform;

            while(Vector3.Distance( this.transform.root.eulerAngles, rotation.eulerAngles) > 1.0f)
            {
                 this.transform.rotation = Quaternion.Slerp( this.transform.rotation, rotation,  Time.deltaTime);
                 yield return null;

            }
            yield return new  WaitForSeconds(1.0f); //počká vteřinu, pak znovu spustí rotaci  
        }
    }
      
state
     void Start  ()
    {
        Random.State  oldState = Random.state;

        PrintRandom("Step 1"  );
        PrintRandom("Step 2"  );

        Random.state = oldState;

        PrintRandom("Step 3"  );
        PrintRandom("Step 4"  );
    }

    void   PrintRandom(string   label)
    {
        Debug.Log(string.Format("{0} - RandomValue {1}"  , label, Random.Range(1, 100)));
    }
      
value
     if (Input.GetKeyDown(KeyCode.Space))
        {
           Renderer rend = GetComponent<Renderer>();
            rend.material.color = new Color(Random.value, Random.value, Random.value);
        }
      
ColorHSV
   void OnMouseDown()
    {
        GetComponent<Renderer>().material.color = Random.ColorHSV(0f, 1f, 1f, 1f, 0.5f, 1f);
    }
      
InitState Generátor náhodných čísel není skutečně náhodný, ale generuje čísla v přednastavené sekvenci. Podle zadaného čísla se generuje vždy stejné sekvence čísel.
       for (int i = 0; i < 5; i++)
        {
            Random.InitState(42);
            float noiseValues = Random.value;
            Debug.Log(noiseValues);
        }
      
Pro náhodná čísla (jakoby-hláška jedné slečny v práci:) ) se může využít systémový čas.
        var dt = System.DateTime.Now;
        Random.InitState(dt.Second*dt.Minute);
        float noiseValues = Random.value;
        Debug.Log(noiseValues);
      
Range Generuje float od -5 do 3.
           transform.position = new Vector3(Random.Range(-5.0f, 3.0f), transform.position.y);
          
Generuje int od-5 do 2.
           transform.position = new Vector3(Random.Range(-5, 3), transform.position.y);
          
pravy Ascii tabulka
Barvy
Klávesové zkratky


©2013-2021 Trojklik.8u.cz Autor: Vašek D.