• 10-06-2020, 15:55:17
    #10
    Softwareus adlı üyeden alıntı: mesajı görüntüle
    Dostum bunu void update kısmında yapmayacaksın IENumerator oluşturacaksın Update kısmında olmaz. Ben sana direkt projemden o kısmı atayım bak aşağıdaki gibi.

    IEnumerator goToMenu() //goToMenu load screen
    {
    sliderContent.SetActive(true); //sliderBar visible=true
    progressBar.enabled = true; //progressBar enabled
    AsyncOperation async = SceneManager.LoadSceneAsync("menu");

    while (!async.isDone)
    {
    progressBar.value = async.progress;
    yield return null;
    }

    }
    Level var derken seviye sistemi hocam. Seviye sistemde sorun yok sadece slider değerini bir değerden diğerine belli sürede artirmam lazim.

    Movetowards deniyorum mesela. Yazdığım 3. Parametre süre olması lazimken o kadar atlayarak yazıyor. Mesela 2 yazarsam ikişer ikişer artıyor. Ben 2 saniyede artsın istiyorum
  • 10-06-2020, 16:00:47
    #11
    mfa95 adlı üyeden alıntı: mesajı görüntüle
    Level var derken seviye sistemi hocam. Seviye sistemde sorun yok sadece slider değerini bir değerden diğerine belli sürede artirmam lazim.

    Movetowards deniyorum mesela. Yazdığım 3. Parametre süre olması lazimken o kadar atlayarak yazıyor. Mesela 2 yazarsam ikişer ikişer artıyor. Ben 2 saniyede artsın istiyorum

    Valla bir şey anlamadım dostum. Mesela Start a basınca dolan çubuğu diyorsan (load progress bar) attığım kod şeklinde.
    Ama dediğini anlamadım maalesef.
  • 10-06-2020, 16:30:57
    #12
    Softwareus adlı üyeden alıntı: mesajı görüntüle
    Valla bir şey anlamadım dostum. Mesela Start a basınca dolan çubuğu diyorsan (load progress bar) attığım kod şeklinde.
    Ama dediğini anlamadım maalesef.
    Yok o değil. Slider'ı hiç karıştırmayalim.

    Bir sayım var mesela 100, bu sayıyı 500 e kadar arttırmak istiyorum. Ama bu artış süresini belli bir sürede gerceklestirmem lazım.

    Yani 100 ü 500 e kadar arttırmak 2 saniye sürsün.

    Yani saniyede 1 artır saniyede 2 artır demek yerine, küçük bir sayı da olsa büyük bir sayı da olsa artırma işlemi belli bir süre içinde gerceklessin
  • 10-06-2020, 17:53:43
    #13
    mfa95 adlı üyeden alıntı: mesajı görüntüle
    Yok o değil. Slider'ı hiç karıştırmayalim.

    Bir sayım var mesela 100, bu sayıyı 500 e kadar arttırmak istiyorum. Ama bu artış süresini belli bir sürede gerceklestirmem lazım.

    Yani 100 ü 500 e kadar arttırmak 2 saniye sürsün.

    Yani saniyede 1 artır saniyede 2 artır demek yerine, küçük bir sayı da olsa büyük bir sayı da olsa artırma işlemi belli bir süre içinde gerceklessin

    Basit, şöyle yapacaksınız 100'den 500'e 2 saniyede artacak ise

    500-100 arasında (500-100) = 400 artırma işlemi gerçekleşecek. Yani siz 2 saniyede 400 sayı artsın istiyorsunuz bu durumda 2/400 = her bir sayı 1/200 saniyede artacak. 1/200*400 yaparsak sağlamayı yapmış oluruz.

    bu durumda bir for oluşturup her sayıdan sonra 1/200 saniye beklemesini sağlayacaksınız.



    C# Unity İçin Kodlarfor(int k=100; k<=500; k++){k++;StartCoroutine(Wait()); // her sayıyı artırdıgında bekle.}IENumerator Wait(){yield return new WaitForSeconds(1/200);}C# Windows İçin kodlarfor(int k=100; k<=500; k++){k++;Thread.Sleep(1/200);}