Ziyaretçi Defteri


gorkemalmaz için bir cevap yazın Cevabı iptal et


1.219 yanıt

  1. Hakan Avatar
    Hakan

    Merhaba 2 boyutlu oyunumda 2 obje carpıstıktan sonra birbirlerini itiyorlar karakter olarak kontrol ettiğim objenın geri sekmemesi için ne yapabilirim

    1. yasirkula Avatar

      Karakterin ağırlığını artırmak işe yarayabilir.

  2. Kartal Avatar
    Kartal

    Hocam merhabalar euler angles ne işe yarar cevaplarsanız çok mutlu olurum teşekkürler.

    1. yasirkula Avatar

      Inspector’da gördüğünüz Rotation değeri kodda eulerAngles ve localEulerAngles olarak geçiyor. Koddaki rotation ise Quaternion türünde başka bir veri döndürüyor. Quaternion’larla ilgili Unity’nin bir dersi: https://learn.unity.com/tutorial/quaternions

  3. bilgiyigini Avatar

    Hocam merhaba, fps silah oyununda ateş ederken crosshairı düşmanın üzerine doğru yumuşak ve otomatik bir şekilde nasıl hareket ettiririz? Mobilde nişan alması zor oluyor sizinde bileceğiniz gibi. Şimdiden teşekkür ediyorum 🙂

    1. yasirkula Avatar

      X düşmanına ateş ederken, Update’te şu kodu çağırdığınız sürece imleç yavaşça düşmanın üzerine kaymalı:

      float nisanHizi = 5f;
      Vector3 dusmanYonu = X.transform.position – kamera.transform.position;
      kamera.transform.rotation = Quaternion.Lerp(kamera.transform.rotation, Quaternion.LookRotation(dusmanYonu), nisanHizi * Time.deltaTime);

  4. Berkcan Avatar
    Berkcan

    Merhaba oyunumda 2d bir daireyi mobil input ile kontrol ediyorum en son haraket ettirmeyi bıraktığımda biraz daha devam etmesini kaymasını birden durmamasını nasıl sağlayabilirim ?

    1. yasirkula Avatar

      Dairenin hızını Mathf.Lerp veya Mathf.MoveTowards ile yumuşak bir şekilde 0’a çekebilirsiniz (bunu Update’te yapmanız lazım). Lerp dersim için: https://yasirkula.com/2015/12/27/unity-lerp-ile-smoothing-yumusatma-islemi-yapimi/

  5. Yasin Avatar
    Yasin

    Abi kolay gelsin hayırlı ramazanlar.

    2D bir oyunumu bitirdim. 1280×728 Landscape olarak ayarladım. Her sahnemdeki objelerimi anchor ayarı yaptım. Hatta hepsini tek panele atıp o panelin anchorları tam köşelere getirecek şekilde ayarladım. Scale with screen size ayarınıda yaptım. Ama oyunu build alıp telefonda test ettiğimde hala küçük çıkıyor. Neyi eksik yapıyorum?

    1. yasirkula Avatar

      Canvas Scaler ayarlarınıza bakabilir miyim?

      1. Yasin Avatar
        Yasin

        Tekrar kontrol ettim. Halletim hocam. Kusura bakmayın burayı boş yere doldurdum, bu soruyu silin isterseniz. (scale with screen size yaptım sanıyordum, yapmamışım.)

  6. kartal Avatar
    kartal

    Hocam merhabalar,
    Ben Unity’de bir oyun yapmaya çalışıyorum.Ticaret butonuna bastığım zaman ticaret sayfasının açılmasını ,savaş butonuna bastığım zaman savaş sayfasının açılmasını istiyorum.Bunu nasıl yapabilirim?
    Scene Manager ile yaparsam önceki sahnedeki oyun mekaniklerine,değişkenlere,bilgilere ulaşamam sanırım.
    Şu ana kadar Panel sistemi ile devam etmiştim.Butona basıldığı zaman Set Active ile istediğim Panel’i açıp kapıyordum ama bu bir süre sonra zorlaşacak gibi geldiği için size danışmak istedim,tavsiyeniz nedir ?

    1. yasirkula Avatar

      Ben bahsettiğiniz Panel sistemini kullanıyorum. Scene Manager ile yapmak isterseniz, SceneManager.LoadScene(“SahneAdi”,SceneManager.LoadSceneMode.Additive); ile istediğiniz sahneyi mevcut sahnenin üzerine ekleyebilirsiniz. Bu sahneyle işiniz bittiğinde ise SceneManager.UnloadSceneAsync ile sahneyi kapatabilirsiniz.

      1. kartal Avatar
        kartal

        Hocam teşekkürler,peki panel sayısı artınca bir zorluk,sıkıntı oluyor mu?

      2. yasirkula Avatar

        Ben henüz sıkıntı yaşamadım.

  7. Bedirhan Avatar
    Bedirhan

    Hocam merhabalar,
    IAP Purchase hakkında Türkçe kaynak yok denecek kadar az. Acaba bununla ilgili bi yazı yayınlayabilir misiniz? Oyunda her şey iyi güzel mekanikler tamam ama skin ekledim fakat bunları nasıl kalıcı olarak satacağımı ve kullanıcının o skini seçtiğinde kalıcı olarak onu kullanması gerektiğini bilmiyorum. Çok teşekkürler

    1. yasirkula Avatar

      Şu an için benim de bu konuda tecrübem sıfır. Tecrübe edinirsem ders yazmaya çalışırım.

  8. Yusuf tuna Avatar
    Yusuf tuna

    Hocam merhaba ben oyunumda sepet olan objemin duvarların arasından gecmemesini istiyorum ilk başta her şey normal bir sıkıntı yoktu ama projeyi android moduna geçirince duvarlarin özelliği bozuldu ve sepet duvarların içinden geçmeye basladi ama ne yaptıysam geçiyor box colider ve rigidbody de ekledim ama olmuyor lütfen yardım ne yapmalıyım

    1. yasirkula Avatar

      Eğer sepetin Rigidbody’sinde “Is Kinematic” işaretli ise, duvarın içinden geçmesini engelleyemezsiniz, bunun için raycast vb. yöntemlerle bu sıkıntıyı elle çözmeniz lazım. Aksi taktirde, hem duvarda hem de sepette collider olduğundan, bu collider’ların “Is Trigger”ının kapalı olduğundan ve sepette Rigidbody olduğundan emin olun. Edit-Project Settings-Physics’in en altındaki matriste, sepet ile duvarın layer’larını bağlayan tikin işaretli olduğundan da emin olun.

      1. Yusuf tuna Avatar
        Yusuf tuna

        Hocam yorumunuz için teşekkür ederim ama dediklerinizi uyguladım yinede düzelmedi problem devam ediyor karakterim duvarlarin içinden geçiyor ne yapacağım bilemedim şuan projem bitmişti ama sadece bu sorunla başa çıkmaya çalışıyorum başka bir öneriniz varmı hocam

      2. yasirkula Avatar

        Aklıma gelen başka bir şey yok maalesef.

  9. Yiğit Avatar
    Yiğit

    hocam selamlar. oyunumda bir top var karakter olarak, bunun rengi beyaz, ben renk değiştirme ekranı yapıp rengini değiştirip bunu kaydetmek istiyorum playerprefs ile. kullanıcı birdaha değiştirene kadar o renk kalsın istiyorum, bunu nasıl yapabilirim, bunun hakkında bir ders yapabilir misiniz?

    1. yasirkula Avatar

      Rengi Color c; değişkeninde tutuyorsanız, 3 SetFloat komutu ile rengi kaydedebilirsiniz:

      PlayerPrefs.SetFloat(“RenkR”,c.r);
      PlayerPrefs.SetFloat(“RenkG”,c.g);
      PlayerPrefs.SetFloat(“RenkB”,c.b);

      Rengi geri çekerken de:

      if(PlayerPrefs.HasKey(“RenkR”))
      c = new Color(PlayerPrefs.GetFloat(“RenkR”),PlayerPrefs.GetFloat(“RenkG”),PlayerPrefs.GetFloat(“RenkB”),1f);

  10. Bayram Avatar
    Bayram

    Merhaba unity ile bluetooth kullanarak bir oyun yapmak istiyorum bunun için bir kaynak önerebilirmisiniz ben bulamadımda

    1. yasirkula Avatar

      Benim bu konuda tecrübem yok ama Asset Store’da birkaç kez bluetooth plugin’leri görmüştüm.

  11. Umur Ercan Avatar
    Umur Ercan

    merhaba hocam unity motoru kullanarak ios oyun geliştiriyorum resimdeki gibi cocoapods kurdum build alırkan diğer resimdeki hatayı veriyor hatanın çözümünü bulamadım sizce neden kaynakalanıyordur.

    https://hizliresim.com/yGLDtz
    https://hizliresim.com/pVRT2Z

    1. yasirkula Avatar

      CocoaPods kurulumu konusunda maalesef bilgim yok.

  12. Yiğit Avatar
    Yiğit

    hocam selamlar. unityde bir hata ile karşılaşıyorum, bilmiyorum burdan sormam mantıklımı ama. kodlarımla ilgili bir sorun yok,

    https://hizliresim.com/pTlPLy
    https://hizliresim.com/aJvnYI
    https://hizliresim.com/dSlBHA

    çok garip hatalar ilk defa görüyorum. lütfen yardımcı olabilir misiniz? çok sevineceğim.

    1. yasirkula Avatar

      Konuyla alakalı bulabildiğim tek şey şu: https://stackoverflow.com/questions/34940056/could-not-dispatch-a-message-to-the-daemon. Unity’e restart atınca da aynı sıkıntı oluyorsa, GRADLE_HOME’lu cevabı inceleyebilirsiniz.

  13. Adem Avatar
    Adem

    hocam unity de 2d ve 3d için sohbet kutusu yapımını bir yazınızda anlatabilirmisiniz?

    1. yasirkula Avatar

      Maalesef bilgi alanımın çok dışında bir konu, o yüzden yardımcı olabileceğimi pek sanmıyorum :/

  14. user1 Avatar
    user1

    Yasir bey blenderda yaptığım obje yi unity ye atadığımda neden renksiz oluyor.tsskrlr

    1. yasirkula Avatar

      Texture’ları Unity’e elle atıp sonra objenin materyaline değer olarak vermeniz lazım. Bildiğim kadarıyla texture’lar otomatik olarak gelmiyor maalesef.

  15. Mehmet Avatar
    Mehmet

    Age of war oyunun nesnelerin hareket sistemi bu şekilde bir sistem yapmak nasıl olur? Yeterince açıktır umarım.

    1. yasirkula Avatar

      Bence en basit yolu, her karaktere bir Rigidbody2D ve BoxCollider2D verip Update/FixedUpdate’te Physics2D.Raycast ile hareket yönünün 1 metre ilerisinde bir başka karakter var mı diye kontrol etmek. Eğer yoksa karakter o yönde bir miktar transform.Translate olur. Alternatif bir yöntem ise sahadaki tüm karakterleri bir List’te tutup, Update’te hareket yönünün 1 metre ilerisine uzaklığı yarım metre olan bir karakter var mı diye kontrol etmek. Eğer yoksa karakter o yönde bir miktar transform.Translate olur.

      1. mehmet Avatar
        mehmet

        Tag’ı Player olanları nasıl List’te eklerim. Yardımcı olurmusunuz.

      2. yasirkula Avatar

        GameObject.FindGameObjectsWithTag(“Player”) bir array döndürür, bunu kullanabilirsiniz.

      3. mehmet Avatar
        mehmet

        GameObject.FindGameObjectsWithTag(“Player”) for döngüsüne ekleyebiliyorum ama list oluşturamıyorum. Nasıl yapabilirim.

      4. yasirkula Avatar

        List<GameObject> list = new List<GameObject>(GameObject.FindGameObjectsWithTag(“Player”));

    2. mehmet Avatar
      mehmet

      Karakterin 1 metre ilerisinde düşmanı algıladığı zaman true oluyor. Ama diğer karakterler doğar doğmaz true olarak başlıyor. Bunu düzeltmenin bir yolu varmı ? (karakterlerin hepsi prefab)

      1. yasirkula Avatar

        true değeri static bir değişkende tutmuyorsanız bu sıkıntıyı yaşamamanız lazım, sebebini tahmin edemiyorum.

  16. mehmet Avatar
    mehmet

    Nesneleri spawn ettikten sonra birlikte hareket ediyorlar bu nesneleri ayırmanın bir yolu var mı?
    Önce spawn ettiğim nesne önde olacak ve sırasıyla arka arkaya dizilecekler.
    Mantığı hakkında bilginiz varsa anlatırmısınız.

    1. yasirkula Avatar

      En öndeki obje obje1.transform.position’dan B noktasına hareket ediyorsa, bir sonraki obje obje2.transform.position’dan obje1.transform.position+(obje1.transform.position-B)*mesafe noktasına hareket etmeli.

      1. Mehmet Avatar
        Mehmet

        Ben şöyle düşünmüştüm sahnede ne kadar nesne varsa bir dizi oluşturup içine atmaktır. Sonra ilk spawnlanan (yani element 0) objeyi hareket ettirmek.
        Sonra element1, element2, ve sırasıyla hareket ettirmek. Sizin anlattığınız bana karışık geldi.
        Daha pratik yolu var mı ya da buna benzer örnek.
        İyi günler.

      2. yasirkula Avatar

        Yapmak istediğiniz şeyi tam anlamamış olabilirim. Biraz daha açar mısınız?

  17. user1 Avatar
    user1

    mrb Yasir hocam.unity deki free assetleri yayınlayacağımız oyunda kullanmamızın herhangi bir sakıncası olur mu. yoksa modellemeyi kendim yapsam daha mı iyi olur.zaman yönünden dezavantajı var ama

    1. yasirkula Avatar

      Asset Store’daki ücretsiz asset’leri kastediyorsanız, asset’in Asset Store açıklamasında veya beraberinde bir README/LICENSE dosyası geldiyse bu dosyanın içinde aksi söylenmediği taktirde asset’i oyununuzda kullanabilirsiniz.

  18. user1 Avatar
    user1

    yasir hocam mrb.unity de c# script te yazılan kod çalışmıyor.c# scriptteki debug menüsüde yok.sebebi nedir acaba

    1. yasirkula Avatar

      Window-Console’da bir hata mesajı var mı kontrol edip bu hata mesajını internette aratabilirsiniz.

      1. user1 Avatar
        user1

        hayır hocam hata msj ı yok.scriptte yazıyorum fakat metaryeli oynatmıyor.scriptin içindeki debug kısmıda boş

      2. yasirkula Avatar

        Script’in içindeki Debug’dan kastınız nedir, o kafamı karıştırdı.

      3. user1 Avatar
        user1

        hocam kusura bakmayın yeni başlıyorum.kod yazdığımız yerdeki debug yazan ve any cpu yazan kutucuk donuk ve boş

      4. yasirkula Avatar

        Anladım. Oraların boş olmasının oyuna bir etkisi olmaması lazım, bence oraya çok takılmayın. Ney kod yazdığınızı ve kodu nereye atıp değişkenlere Inspector’dan nasıl değer verdiğinizi bilmediğimden kodunuz niye çalışmıyor yorum yapamıyorum.

      5. user1 Avatar
        user1

        tskrler yasir hocam

  19. Hüseyin Çimşir Avatar
    Hüseyin Çimşir

    Merhaba, android üzerine çalışırken Proguard nedir, nasıl kullanılır hakkında bilgi verebilir misin? Özellikle firebase crashlytics ile entegre edip de symbols dosyası ile ne yapılır gibi detayları okudum okudum bir türlü anlayamadım. Crashlytics’de libil2cpp.0xafe180 şeklinde hatalar alıyorum. İnternette proguard’ı konfigüre etmem lazım gibi şeyler okudum

    1. yasirkula Avatar

      ProGuard’ın ne işe yaradığını ben de bilmiyorum ama Player Settings’te Minification’ı None’dan ProGuard’a çekince, uygulamada kullanılmayan kodu sildiğini biliyorum. Maalesef bazen aslında kullanılan bir kodu kullanılmıyor olarak düşünüp silebildiği için, native plugin’ler kullanırken ProGuard’ın ayarlarıyla oynamak gerekebiliyor.

      Aldığınız crash’i anlaşılır formata sokmaya symbolication deniyor, bunun ProGuard ile alakası var mı bilmiyorum. IL2CPP build alırken APK ile birlikte bir symbols.zip dosyası da oluşuyor, bu işlem esnasında onu kullanıyor(muş)sunuz. Daha fazla bilgi için: https://support.unity3d.com/hc/en-us/articles/115000292166-Symbolicate-Android-crash

  20. Saffet Avatar
    Saffet

    Merhabalar
    Oncelikle emekleriniz icin cok tesekkur ederim.
    Unity hakkinda bir
    sorumu cevapliyabilirseniz cok sevinirim..
    Unity kullanmaya yeni basladim, ve amacim sadece bir 3d viewer programi yamak ve icine yerlestirecegim objelerin Uv lerine ve objeyi 360 derece dondurebilme ozelligi gibi birkac scriptle bitirmek istiyorum.
    fakat import ettigim bir Obj yada Fbx objesine yazdigim kod hicbir reaksiyon vermiyor ama kendi icindeki Gameobject’lerde gayet iyi calisiyor bu sorunu nasil aşabilirim?

    1. yasirkula Avatar

      Yazdığınız script’i FBX asset’e atamamaktan bahsediyorsanız, modeli önce bir prefab’a çevirip script’i bu prefab’a atmanız lazım, direkt FBX veya OBJ asset’in GameObject’ini değiştirmek maalesef mümkün değil. Bahsettiğiniz sıkıntı, kodunuzun FBX’te çalışmazken Unity’nin Cube, Sphere gibi objelerinde çalışması ise, script’in ne iş yaptığını görmeden bir şey diyemeyeceğim.

      1. saffet Avatar
        saffet

        teşekkür ederim, çok sağolun..

  21. Ejder Avatar
    Ejder

    Merhaba hocam, kendi çapımda oyun geliştirmeye çalışıyorum fakat içinden çıkamadığım bi’ sorun var.Karakterim yön tuşlarına basıp hareket ettikten sonra yan yatıyor bir nesneye çarptığı zamanda yan yatıyor,ters dönüyor bu sorunu nasıl çözebilirim yardımcı olur musunuz ?

    1. yasirkula Avatar

      Rigidbody kullanıyorsanız, Constraints’ten Rotation’ın X ve Z değerlerini açmayı deneyin.

  22. berkay Avatar
    berkay

    Merhaba
    Sadece harita menü tabanlı bir oyun geliştirmek istiyorum.Menüdeki kartlar sürekli değişicek bunun için nasıl bir yapı kullanabilirim ?

    1. yasirkula Avatar

      Kartlar hakkında sorduysanız, ben ScriptableObject kullanmanızı öneririm: https://docs.unity3d.com/Manual/class-ScriptableObject.html

  23. Kartal Avatar
    Kartal

    Hocam benim bir sorum var yardımcı olursanız sevinirim. Unity de 2d tabanlı bir oyun yapmaya çalışıyorum ve karakter hareketiyle ilgili bir sorunum var.
    Ben, karakter sağa giderken sağa, sola giderken sola dönmesini istiyorum.Dönmesi için nasıl bir kod gerek.
    İf(Input. GetKey(KeyCode. RightArrow))
    {
    ??????
    }

    1. yasirkula Avatar

      Sprite Renderer kullanıyorsanız, bunun flipX değerini değiştirerek sprite’ın sağa sola dönmesini sağlayabilirsiniz. Aksi taktirde transform’un localScale’ini -1,1,1 ile 1,1,1 arasında değiştirmeyi deneyebilirsiniz.

  24. Erdinç Avatar
    Erdinç

    Merhaba hocam, benim bir sorum olacaktı Unity projemi başka bir bilgisayarda nasıl devam edebilirim veya unity projemin olduğu bir bilgisayara projemi tekrar kullanabileceğim şekilde nasıl format atarım?

    1. yasirkula Avatar

      Unity projenizin olduğu konumdaki Assets, Packages ve ProjectSettings klasörlerini kopyalamanız yeterli. Ardından yeni bilgisayardaki boş bir klasöre bu 3 klasörü yapıştırıp bu klasörü Unity ile açabilirsiniz.

  25. Neko Avatar
    Neko

    Unityde text tabanlı oyun yapmak istiyorum kod bilgim 0 unityi daha yeni indirdim yardım eder misiniz?

    1. yasirkula Avatar

      Eğer oyunu kendiniz ve arkadaşlarınız için yapıyorsanız benim önerim oyunu C# ile konsol tabanlı (cmd konsolu) yapın, Unity kullanmayın. Aksi taktirde şu iki yazıya göz atabilirsiniz:

      https://yasirkula.com/2014/09/05/unity-sikca-sorulan-sorular-s-s-s/
      https://yasirkula.com/2011/07/12/unity-3d-icin-ders-arayanlar-buraya-guncel/

      1. Neko Avatar
        Neko

        Anladım saolun ^^

  26. atayomer3078 Avatar

    Merhabalar hocam, bir oyun yapıyorum ve bir yerde takıldım kaldım. 5 image nesnesini bir spire’nin içine attım ve sprite nesnesini canvasın Childi olarak olusturmam gerekiyor, Nasıl bir yol izlemem gerek normal yöntemlerle yapamadım ?

    1. yasirkula Avatar

      Bir objeyi oyun esnasında başka bir objenin child’ı yapmak için transform.SetParent fonksiyonunu kullanabilirsiniz. Başka bir şey kastettiyseniz soruyu biraz daha açarsanız sevinirim.

  27. Yasin Avatar
    Yasin

    Hocam merhaba nasılsınız? 2D bir oyun yapıyorum. A objem ana karekterim ve tuşa bastığımda Y ekseninde zıplama yapıyor. B objeleri Y ekseninde bulunuyor ve kendi ekseninde dönüyor. Sorum su ben zıplama tuşuna bastığımda A objem B objeme temas ettiğinde ona yapışmasını ve onunla birlikte dönmesini istiyorum ta ki ben tekrar zıplama tuşuna basana kadar. Ben tekrar zıplama tuşuan bastığımda o B objesinden ayrılıp bir üsteki objeye yapışmasını istiyorum. Yardımcı olabilirseniz çok sevinirim şimdiden çok teşekkür ederim.

    1. yasirkula Avatar

      A objesini B objesinin child’ı yaparsanız A objesi B ile hareket eder veya döner. Tekrar zıplayınca A objesini child olmaktan çıkarırsanız da iki obje artık beraber hareket etmez.

      A’yı B’nin child’ı yapmak için: A.transform.SetParent(B.transform);
      A’yı child olmaktan çıkarmak için: A.transform.SetParent(null);

      1. Yasin Avatar
        Yasin

        hocam peki aynı komutla (zıplama komutu) bu dediğiniz 2 işlemi nasıl yaparım. Yani zıpladım B ojesine yapıştım sonra tekrar zıpladım B objesinden ayrıldım C objesine yapıştım.

      2. Yasin Avatar
        Yasin

        A objesi B objesine yapıştıktan sonra tekrar zıplamıyor.

      3. yasirkula Avatar

        Tekrar zıplama tuşuna basınca önce A’yı child olmaktan çıkarın. A’yı B’nin child’ı yapma kodunu ise OnCollisionEnter2D fonksiyonuna taşıyarak, A’yı çarpılan objenin child’ı yapabilirsiniz, bu şekilde C’ye veya D’ye çarpınca da child olma işlemi gerçekleşir.

      4. Yasin Avatar
        Yasin

        Dertlerim bi türlü bitmedi çok özür diliyorum hocam. Anlamıyorum istrigger yaptığım halde zıpladığımda A objesi B objesinin colliderine yapışmıyorda içine giriyor. ya da yarısı içine giriyor yarısı dışarda kalıyor. Collidere tam temas ettiği yüzeyde neden durmuyor ?

      5. Yasin Avatar
        Yasin

        Pardon hocam ben ontriggerenter ile işlem yapıyormuşum çok özür dilerim.

  28. Kadir Can Avatar
    Kadir Can

    Hocam multiplayer oyun yaptim. Oyunu oluşturdum fakat oyuna hesap girişleri eklemek istiyorum. Yani oyuna gmail hesabı ile bağlanma vesayre bunu nasıl yapabilirim ? Şimdiden teşekkürler.

    1. yasirkula Avatar

      Mobil oyun yapıyorsanız Gmail ile bağlanma işini şu plugin ile yapabilirsiniz: https://github.com/googlesamples/google-signin-unity. Kendim kullanmasam da, anladığım kadarıyla Firebase de bu tarz işler için kullanılabiliyor. Benim bu konuda tecrübem olmadığından daha fazla yardımcı olamıyorum.

  29. gökhan atman Avatar
    gökhan atman

    yasir hocam merhabalar. içinden çıkamadığım bir sorunum var. velocity ile default hareket eden karakter oluşturdum. ilk etapta karakter kayarak hareket ediyordu. daha sonra yürüme animasyonu oluşturdum ve yine start verdiğim gibi kendiliğinden animasyonlu bir şekilde hareketi gerçekleştirdi. daha sonra animatorden ölme animasyonu ekledim. fakat karakter yerinde yürüme animasyonunu yapmaya başladı. ve öldügünde ise ölme animasyonu çok başka bir konumda devreye girmeye başladı. animasyonları prefab üstünden unity editorde kendim yaptım. burda uzuvlara hareket verirken pozisyonlarından bir tutarsızlıga sebep olmuş olabilirim ancak ilk etapda yürüyüp sonrasında yürümemesi iyice kafamı karıştırdı. zira animator compennetini kapatırsam velocity etkisiyle karakter animasyonsuz hareket ediyor. umarım derdimi anlatabilmişimdir. yardım ederseniz sevinirim. iyi çalışmalar.

    1. marjii513 Avatar

      Sürekli yürüme eğer loop özelliği açıksa normaldir diğer problem hakkında bilgi sahibi değilim dostum

      1. Gokhan Atman Avatar
        Gokhan Atman

        benim durumda loopla alakası oldugnu düşünmüyorum. karakter konum değiştirmeden oldugu yerde yürüyor

    2. yasirkula Avatar

      Animasyonunuzda objenin Transform position değerini değiştiriyorsanız ve Root Motion kullanmıyorsanız (animasyonu kendiniz yaptığınız için Root Motion kullanabileceğinizi sanmıyorum), obje animasyonda position değerini birebir takip eder. Yani diyelim animasyonu oluştururken obje 100,100,100 koordinatlarında idiyse ve bu koordinatı animasyona keyframe olarak eklediyseniz, o zaman obje animasyon esnasında buraya ışınlanır. Bunu çözmenin bir yolu, şuna benzer bir hiyerarşi oluşturmak:

      Root obje: içinde Animator, Rigidbody, Collider vs. yer alır ama Mesh Renderer yer almaz, Animator’un animasyonları bu objenin Transform’unu ellememeli. Karakteri temsil eden ve velocity ile hareket eden obje budur
      └── Mesh obje(ler)i: içinde Mesh Renderer yer alır, Root obje’deki Animator’un animasyonları bu objelerin position, rotation vb. değerlerini değiştirir

      1. Gokhan Atman Avatar
        Gokhan Atman

        hocam çok teşekkür ederim. en sonunda istediğimi yapabildim. tam da dediğiniz gibiydi. tekrardan çok teşekkür ederim.

  30. marjii513 Avatar
    marjii513

    İyi günler Yasir hocam. Sitenizi yeni keşfettim ve ilgimi çekti. Unity dersi aldım. Şimdi de kendimi bu alanda geliştirmek istiyorum paylaşımlarınız hem türkçe hemde anlaşılır olması açısında gayet başırılı olduğu için değerli bir kaynak. Ancak sorun şu ki ben tam olarak nereden başlayacağımı kestiremiyorum. TPS tarzında başlayacağım bir süre rehberlik edebilir misiniz acaba?

    1. yasirkula Avatar

      Şurayı inceleyebilirsiniz: https://yasirkula.com/2014/09/05/unity-sikca-sorulan-sorular-s-s-s/. Orada verdiğim listenin en sonundaki oyun, C# ile TPS oyun yapımını gösteren bir çeviri ders.

  31. delamis Avatar

    Yasir hocam merhaba, oyunuma play services ekledim, leaderboard kullanmak için. Fakat giriş yapamıyor. IAP, one signal, admob, firebase servislerinin hepsi çalışıyor fakat bir türlü bunu çalıştıramadım. Birden fazla versiyonla bir çok kez denedim. Kimi zaman hiç bir hata vermeden giriş yapamadı, kimi zaman da sign in olduktan sonra yetkilendirme iptal edildi diyor. Şu anda bir türlü işin içinden çıkamadım. Yardımcı olabilir misiniz?

    1. yasirkula Avatar

      Play Services’ı yıllar önce kabaca kullanmıştım ve beraberinde başka plugin kullanmamıştım. Birden çok google plugin’i kullanınca çakışmalar olabildiğinden haberdarım, bu konuda internette yüzlerce başlık var çünkü maalesef. Ancak sorun nasıl çözülüyor bilmiyorum. Dilerseniz bir GitHub hesabı açıp ardından direkt Play Services’ın ekibinden teknik destek isteyebilirsiniz: https://github.com/playgameservices/play-games-plugin-for-unity/issues

  32. Bulent Levent Avatar
    Bulent Levent

    yasir bey
    Yaptığım oyunda duşman uçaklarını şehir uzerinde binalara çarptırmadan (binayı görunce yön değiştirmesini istiyorum) nasıl uçurabilirim . Hareket ettirme ve playerı takip ediyor ama bina ve diğer engelleri nasıl algılatabilirim çarpmaması için.

    1. yasirkula Avatar

      Pathfinding yapmak istiyorsunuz gibi duruyor. Bu konuda ücretsiz olarak Unity’nin NavMesh sistemini kullanabilirsiniz (bu konuda şu dersim mevcut). Eğer ilgilenirseniz Asset Store’da A* gibi daha gelişmiş ama ücretli asset’ler de var.

      1. Bulent Levent Avatar
        Bulent Levent

        Teşekkurler Yasir bey
        Bu dersinizi görmemişim .

  33. Bulent Levent Avatar
    Bulent Levent

    Yasir bey
    oyunumda colliderların bazılarını oyun objeleri algılamıyor . Bir raycast ışını aynı objede bir colliderı göruyor bir colliderı görmuyor . Bir objede 1 den çok collider kullanmam gerekiyor . Nasıl çözebilirim yardımcı olurmusunuz .
    iyi akşamlar .

    1. yasirkula Avatar

      Mesh Collider kullanıyorsanız “Is Convex”i işaretlemeyi deneyin. Eğer amacınız Raycast’in ilk dokunduğu objede durmaması ise, Raycast yerine RaycastAll fonksiyonunu kullanabilirsiniz.

      1. Bulent Levent Avatar
        Bulent Levent

        Yasir bey
        Teşekkur ederim .

  34. Selim Avatar
    Selim

    Merhaba. Unity türkiye camiasına katkılarınız için teşekkür ederim. 1 senedir çokca sizden yararlanıyorum. Çok şey öğrendim sayenizde. Ben oyunum için bir akıl isteyeceğim. Soru cevap oyunu yapıyorum. Level sistemli. İstediğim şey anamenu de bir liste oluşturup çözülen soruları ve doğru cevaplarını burada alt alta listemesini istiyorum. Aklıma gelen playerpref ile soru çözülünce soruyu ve doğru cevabı kaydedip o liste de de çekmek. Fakat bu şekilde her soru için playerpref oluşturmam lazım bu da tahminen oyunu şişirir.1000 soru eklemeyi düşünüyorum. Bahsettiğim listeyi en uygun nasıl oluşturabilirim. Aklıma ana sahnede bir prefab oluşturup. Level sahnesinde de bu prefabın değerlerini değiştirip anasahnede klonlamak. Bunu yapabilir miyim?

    1. yasirkula Avatar

      Bence PlayerPrefs kullanabilirsiniz. Şöyle ki, soru ve cevabı kaydetmek yerine sadece sorunun 1000 soruluk liste içinde hangi index’te olduğunu kaydedebilirsiniz. Diyelim ki kullanıcıya 3., 100. ve 500. index’teki sorular sorulduysa, PlayerPrefs’e “3,100,500” diye bir string kaydedebilirsiniz. Ardından bu string’teki elemanlara ana menüden erişmek için, “string[] degerler = playerPrefsDegeri.Split(‘,’);” fonksiyonunu kullanarak bu PlayerPrefs’i “3”, “100” ve “500” elemanlarını tutan bir string array’ine çevirebilir, bu değerleri de int.Parse ile int’e çevirebilirsiniz.

      1. Selim Avatar
        Selim

        Yasin bey ben liste sistemini alttaki gibi 2 script oluşturarak ypmıştım. 2. scripti level1 sahnesine attım ve mesela soru listesinde countu 30 yapmıştım. Diğer sahnelerde de 30 olarak ayarlayıp soruları yerleştirmeyi düşünüyordum. bir liste de 1000 değilde 2. scripti surukleyerek parça parça yapıcaktım. Kodları bu şekilde hazırladım.Hepsini 1 listede yazmıcaktım.Bu şekilde bu scriptleri parça parça kullanmaz mıyım ?(Hani level1 de 30 soru yaptım diye 2.levelde o 30dan devam mı ettirir yoksa baştan değişebilir mi ?) Böyle kullanabilirsem bu şekilde nasıl çekerim ?
        ———————————script1——————————————–
        [System.Serializable]
        public class ListeSoru {

        public string Soru,Cevap1,Cevap2,Cevap3,Cevap4,Aciklama;
        public int DogruCevap;
        public bool Cevap_Kontrol;

        public void Sorubolumu(string soru,string cevap1,string cevap2,string cevap3,string cevap4,string aciklama, int dogrucevap, bool cevap_kontrol){

        Soru = soru;
        Cevap1 = cevap1;
        Cevap2 = cevap2;
        Cevap3 = cevap3;
        Cevap4 = cevap4;
        Aciklama = aciklama;
        DogruCevap = dogrucevap;
        Cevap_Kontrol = cevap_kontrol;

        }

        }

        script2————————————————————————————–
        using System.Collections;
        using System.Collections.Generic;
        using UnityEngine;

        public class ListeSoruCogaltici : MonoBehaviour {

        public int bolumNo;
        public string text_Konu ;
        public List sorulistesi;
        }

      2. Selim Avatar
        Selim

        Birde ek bilgi olarak şunu kısaca anlatır mısın oluşturduğumuz yada hazır olan metotlarda () parantez kullanıyoruz ya bunun içine genelde değişken atıyorlar onun mantığı nedir? Mesela ben public void butonlar (int butondegeri) yaptım scripti butonlara atınca degerler geldi yazdım. bunun mantığı normalde mesela scriptin başında değişken oluşturuyoruz ya aynı şey mi ? Oncollider2d mesela bunun içinde de Collision diye tanımlıyoruz. O prantez içine yazılan değişkenlerin mantığı ne ?

      3. yasirkula Avatar

        Bilgi yarışması oyunu yaparken takıldığınız yerlerde yardımcı olması için “unity soru cevap oyunu” şeklinde arama yapıp kaynakları incelemenizi öneririm.

        Fonksiyonların aldıkları parametreler kafanızı karıştırdıysa adım adım ilerlemenizi öneririm, öncelikle Unity’den bağımsız bir şekilde basit anlamda C#’ta kendinizi geliştirirseniz Unity’de kod yazarken çok daha rahat edersiniz. C# konusunda yazılı/video çok fazla video ders vardır bu yüzden kaynak sıkıntısı yaşayacağınızı sanmıyorum.

  35. Yasin Avatar
    Yasin

    Hocam merhaba reklam kısmında yorum yapamadığım için burdan yazıyorum. Bu şekilde bir sorun alıyorum ne yapmalıyım?

    Coroutine couldn’t be started because the the game object ‘ReklamGecis’ is inactive!
    UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
    ReklamInterstitial:reklamıGöster() (at Assets/Scripts/ReklamInterstitial.cs:28)
    UnityEngine.EventSystems.EventSystem:Update()

    1. yasirkula Avatar

      ReklamGecis objesi inaktif diyor, objenin aktif olması lazım.

      1. Yasin Avatar
        Yasin

        Obje aktif zaten hocam. sahnede

      2. yasirkula Avatar

        Hata mesajı aktif değil diyor, On Click’e yanlış bir objeyi vermiş olabilirsiniz. Ayrıca objenin sahnede olmasına ilaveten hem objenin, hem objenin tüm parent’larının aktif olması lazım, yani Inspector’da ismin solundaki tikin işaretli olması lazım.

      3. Yasin Avatar
        Yasin

        objeyi silip aynısından tekrar oluşturdum düzeldi. Çok ilginiç gerçekten. Dediğiniz gibi objenin herşeyi aktif ismi tikliydi bug oldu heralde 🙂 Çok teşekkürler hocam.

  36. user Avatar
    user

    Hocam tekrardan merhaba bi konuda çok yardımınıza ihtiyacım var ben araba yarışı yapmak istiyorum kendi arabamın kodlamasını yaptım rakip arabayı da toplama kodlarla hareket ettirmeyi başardım zorlada olsa woypoint yöntemi ile ama şöyle bi sıkıntım var araba ile yolda giderken yoldan çıkarttığım zamn gidiyo duvara zorluyo yani kendini geri çekip yoluna geri girmiyo veya ters döndüğü zman alıyo başını ters yöne doğru gidiyo bir sonraki woypoint noktasına gitmiyo önünde ilk hangisi varsa ona gidiyo bu konuda çok araştırma yapıyorum bir haftadır nerdeyse uyku uyumuyorum sitresten kafayı taktım yabancı kaynakları çevirden bakabildim kadar baktım yok bi türlü yapamadım bu konuda bunu bana öğretebilecek bildiğiniz bi kaynak vsrmı veya bana yardımcı olabilirimisiniz? Bu arada unity 5 ile çalışmak zorundayım diğer sürümlerde bilgisayarlarım kasıyo o yüzden hazır assestlerden kaynak olarak yararlanamıyorum çoğu 2017 üstü sürüm istiyor 😀

    1. yasirkula Avatar

      Araba yapay zekası konusunda tecrübem yok gibi bir şey o yüzden bu konuda pek yardımım dokunamayacak. Ancak mesela arabanın transform.position değeri 1-2 saniye boyunca hemen hiç değişmediyse (duvara zorlamak) veya bu süre zarfında araç hedef waypoint’inden uzaklaştıysa (ters yönde gitmek)(uzaklığı kıyaslarken (hedefWaypoint.transform.position - transform.position).sqrMagnitude kullanabilirsiniz) arabayı en son başarıyla geçtiği waypoint’te ve doğru yönde respawn edebilirsiniz.

      1. user Avatar
        user

        Sağolun hocam çok teşekkür ederim

  37. Yasin Avatar
    Yasin

    Hocam merhaba,
    Menü ekranında bir satın alma sistemi oluşturdum. Yapmak İstediğim, “Menu ekranında” bulunan “satın alınan itemi aktif et butonu” ile “oyun sahnesinde” bulunan objemi aktif etmek istiyorum. Fakat “Oyun sahnesindeki” objeye “Menü Sahnesinden” ulaşamıyorum. Yardımcı olursanız çok sevinirim. İyi çalışmalar.

    1. yasirkula Avatar

      En basitinden, aktif edilebilecek objelerin hepsini oyun sahnenizdeki bir public GameObject[] değişkende tutup hangi index’teki objenin aktif edileceği bilgisini (yani bir int değerini) menü sahnesinden oyun sahnesine ulaştırabilirsiniz. Bunun için ise public static int değişkeniniz olsun ve oyun başlamadan hemen önce buna aktif edilecek objenin index değerini verin. Referans olması için şu yazıyı (özellikle “Değişkeni static yapmak” kısmını) inceleyebilirsiniz: https://yasirkula.com/2019/07/27/unity-bir-scriptten-baska-bir-scriptteki-degiskene-ulasmak/

      1. Yasin Avatar
        Yasin

        Çok teşekkür ederim. Her konuda hem tebrik, hem çokca teşekkür ediyorum hocam size. Emek verip hazırladığınız dökümanlar, bu site herşey için çok teşekkür ederim.

  38. user Avatar
    user

    Hocam merhaba android için UI lerle fps control yapıyorum joystick ile control kolay oluyo fakat panel ekleyip control etmeye çalıştığım da (paneli yarım veya tam ekranı kaplayıp görünürlüğü kapattım zamn) olmuyo yani control bi garip oluyor sizin tecrübeleriniz vardır zaten bu konuda sorum şu pubg gibi tam ekran fps karekter control yapmak istiyorum yani ordaki gibi düzgün bi control yapamadım yardımcı olurmusunuz lütfen?

    1. yasirkula Avatar

      PUBG oynamadım ama orada da joystick yok mu? Paneli ney için kullanıyorsunuz onu biraz daha açabilir misiniz?

      1. user Avatar
        user

        Merhaba hocam hemen açayım konuyu. Evet var joyistik sol altta olduğu gibi ileri geri sağa sola koşmak için joyistik var. Fps controller ve standart assestin içindeki joyistic.cs yi kullanıyorum hareket için. Fakat bu tarz oyunlar da silahı hareket ettirmek için yukarı aşağı saha sola karekterin bakış açısını değiştirmek için sağ baş parmağımızla kontrol ediyoruz yani birnevi bilgisayarada farenin yaptığı işi yaptırmya çalışıyoruz ya bunu tekrar hazır assesteki joyistic.cs ile aynı ileri gerideki gibi görünür bir joyistik yaptığım zamn ve vertical yerine horizontal yazıp yaptığım zamn herşey normal oluyo fakat benim istediğim onun orda görünmemesi bunun uçun o joyistiğin boyutunu büyütüp görünürlüğünü saydam yapıyorum ama bu sefer sapıtmalar oluyo joystiğin tam ortasına dokunup hareket ettirmedğim için yaptığını fark ettim bu sefer panele attım joyistik kodunu ama yine aynı şeyler yaşanıyo panelin tam ortasından tutup hareket ettirmeye çalıştığım zman normal oluyo fakat başka bi yerden tutarsam ilk önce karekter oraya dönüyo sonra istediğim yöne dönüyo. İstediğim şey karekterin bakış açısını değiştirirken görünmeyen bi joyistik ile tam ekranı kullanmak kocaman bi joyistik kontrolun(mouse kontrolu için olanın) görünmemesi zaten karektrin yürümesi ateş etmesi gibi ekranı dolduran şeyler var bide ekstradan o olmasın istiyorum şimdiden teşekkür ederim

      2. user Avatar
        user

        Küp oyununuzdaki küpü sağa sola aşağı yukarı hareket ettiriyoruz ya hocam aynı onun gibi bi kontrol istiyorum 😊

      3. yasirkula Avatar

        Ben küp oyununda joystick değil Input.GetTouch ile parmaktan input aldım. Bu konuda şu dersime bakabilirsiniz: https://yasirkula.com/2013/07/17/unity-ile-androide-uygulama-gelistirmek-1-dokunmatik-ekran-entegrasyonu/

        Joystick işinizi halihazırda görüyor ama sadece görünmez olmasını istiyorsanız da dinamik konumlandırmalı joystick’ler kullanabilirsiniz. Mesela şu dersime göz atabilirsiniz: https://yasirkula.com/2016/06/17/unity-ui-dokunmatik-ekran-joystick-kullanimi-multi-touch-destekli/

      4. user Avatar
        user

        Tekrardan merhaba hocam istedğim şey dinamik joyistikmiş denedim gördüm fakat standart assets ile gelen joystick.cs ile bir türlü entegre ede edemedim bu konuda yardımcı olurmusunuz?

      5. yasirkula Avatar

        Hem o asset’i kullanmadığımdan hem de diğer projelerimle uğraştığımdan bu konuda yardımcı olamayacağım.

      6. user Avatar
        user

        Yinede sağolun hocam

  39. Mail Maker Avatar

    Hocam Selamlar,
    Gerçekten bilgilendirici içerikler paylaşıyorsunuz. Fakat temanız çok göz yorucu yazı fontlarınız çok küçük. Daha flat bir tema kullanmanızı ve fontları biraz büyütmenizi öneririm.
    Ukalalık gibi algılamayın benimkisi nacizane bir tavsiye elbette tercih sizin.
    Bu arada paylaşımlar için çok teşekkürler.
    İyi günler.

    1. yasirkula Avatar

      Geribildiriminiz için teşekkür ederim. Yakın zamanda çeşitli temalara baktım ama gözüme hoş gelen bir tema bulamadım. Güzel bir tema bulursam dediğiniz gibi temayı değiştirebilirim.

  40. byrm Avatar
    byrm

    oyunumun admob da eBGBM değeri başlangıçta yüksekti ama sonradan çok düştü bunun sebebi nedir acaba şuan 0,75 tl bunu arttırma yöntemleri varmı

  41. Ahmet Avatar
    Ahmet

    Hocam merhabalar.. Unity3d ile bir oyun yapıyorum, yaptığım oyunda karakterimin yerçekimi yokmuş gibi duvara tırmanması lazım. Bir böcek gibi düşünebilirsiniz. Bunu nasıl yapabilirim? Collider’e girince karakter 270 derece dönsün dedim tırmanıyormuş gibi gözükmesi için fakat karakter collider’e girince uçmaya başladı. Ne önerirsiniz? Elinizde bunla ilgili paylaşabilecğeiniz bir kaynak var mı teşekkürler..

    1. yasirkula Avatar

      Physics.gravity‘nin değerini değiştirerek yerçekiminin yönünü değiştirebilirsiniz. Ancak bu tüm Rigidbody’leri etkiler. Veya sadece karakterin yerçekimini etkilemek için, Rigidbody’sinin “Use Gravity” değerini kapatıp karaktere verdiğiniz bir script’in FixedUpdate’inde AddForce fonksiyonunu kullanarak elle yerçekimi gücü uygulayabilirsiniz. Bu şekilde istediğiniz yönde yerçekimi uygulayabilirsiniz. Yerçekiminin yönünü yere değil de duvara doğru yapınca sorun düzelir mi dersiniz?

  42. H B Avatar
    H B

    Hocam oyunumda level sistemi mevcut. Her bölümde yerde altınlar var bunları toplayınca o anda yok oluyorlar ve toplam altın miktarınız kayıt oluyor onu da yaptım. Diğer bölüme geçtiğinizde altın miktarınız sıfırlanmıyor yani.
    Sorun şu ki oyuncu önceden oynadığı bölümlere girip tekrar aynı altınları toplayabiliyor. Ben istiyorum ki topladığı anda kaybolan altın bölümü yeniden açtığında geri gelmesin tamamen yok olsun yani. Teşekkürler.

    1. H B Avatar
      H B

      Bir beyin fırtınası ile hallettim hocam 😀 playerprefs bu kayıt işlerine yarıyordu bunu biliyordum ama sayılarla falan nasıl halledecem diye düşünürken buldum sonunda. Mevcut kullandığım level kilit sistemi gibi bir şey oldu.

    2. yasirkula Avatar

      Çözdüğünüze sevindim 🙂

      1. H B Avatar
        H B

        Hocam reklam koyarken OGURY firmasından yararlanmak istiyorum. Bünyesinde bir çok reklam ağı barındırıyormuş. googlenin servisi ve unity ads de dahil. Tek sdk ile hepsi çözülüyor. Ve yüksek ücret de veriyormuş. Sorun şu ki hiç bir türkçe anlatım yok sitesi de Türkçe değil ne yapacağım konusunda fikir oluşmadı. Siz anlatım yapabilir misiniz sitenize ekleseniz ? veya başka ne yapabilirim. Admob mu yapayım illa. Bir de oyunu playstoreye eklerken varsayılan dil olarak neyi seçmeliyim ?

      2. yasirkula Avatar

        OGURY nasıldır bilemiyorum ama şu an için OGURY veya Heyzap gibi servislerin entegrasyonunu anlatmayı planlamıyorum. Çünkü bu servislerin destekledikleri her bir reklam ağı için talimatları ayrı oluyor ve bu talimatlar sürekli güncelleniyor.

        Oyununuz birden çok dil destekliyorsa, kullandığı en popüler dili varsayılan dil seçin (eğer oyununuz İngilizce destekliyorsa İngilizce seçin). Oyununuz tek dil destekliyorsa o dili varsayılan dil seçin.

  43. yetkintmn Avatar
    yetkintmn

    Tekrardan Merhaba,
    İnternette yine yeterli sonuç bulamadığım için sizi rahatsız ediyorum. Canvas üzerinde UI ‘ lar ile oynan bir oyunumda bir şeyleri sürüklemek için aşağıdaki kodu kullanıyorum;

    int layerMask = 1 << 8;
    MousePosition = Input.mousePosition;
    hit = Physics2D.Raycast(MousePosition, Vector2.up, layerMask);
    if (hit.collider)
    {
    // Bu kod ile farenin hangi colliderın içine girdiğini görmek için kullanıyorum
    Debug.DrawLine(MousePosition, hit.collider.transform.position, Color.black);

    //Sürükleme kısmı
    …..
    }

    Anlamadığım bir sebepten ötürü Canvas içerisindeki CapsuleCollider2D'ye sahip objelerin collider sınırları dışında da hit.collider true oluyor ayrıca sadece objenin tam altından itibaren aşağıya doğru başka objeye çarpmadan çok altlardan bile if içerisine girebiliyor yani objeyi collider sınırları içerisinde ve tam altından sonsuza kadar ki kısmında yine o objeyi görmekte. Gerekirse durumun fotoğrafını mail yoluyla atabilirim. Yardımcı olabilirseniz çok sevinirim 🙂

    1. yetkintmn Avatar
      yetkintmn

      Problemi Vector2.zero olarak çözdüm buraya yazarken farkettim. Benzer problemi yaşayan olursa yardımcı olabilir. 🙂

    2. yasirkula Avatar

      Sorunu çözebildiğinize sevindim, elinize sağlık 🙂

  44. H B Avatar
    H B

    Merhaba hocam. pencere açılış animasyonları ile ilgili internetde ne arattıysam bir şey bulamadım. Mesele ana menümde butonlar var. Basınca asağıdan yukarıya kayar şekilde açılmasını istiyorum. Bunun gibi şeyler nasıl yapılıyor sizin anlatımınız var mı ? Unity 3d bu arada.
    Teşekkürler.

    1. yasirkula Avatar

      Animation veya Animator component’i kullanarak kolayca yapabilirsiniz. “unity ui animation” şeklinde aratarak video dersler bulabilirsiniz. Benim bu konuda anlatımım maalesef yok.

  45. Ömer Avatar
    Ömer

    Merhabalar. C# ile Unity’de multiplayer oyun yazmaya başladım. Bu ilk oyunum. UNET değil LLAPI ile yazıyorum. Şu ana kadar yaptıklarım:

    2 oyuncu bağlanıyor. İstedikleri heroyu seçiyorlar. Kendi kulelerinin önünde doğuyorlar. Kuleden çıkınca enerjileri azalıyor. Rakip kuleye girince kuleye hasar veriyorlar. Ve birbirlerine yaklaşınca enerjisi fazla olan, az olana hasar veriyor.

    Multiplayer oyun yazmayı şu tutorial’dan öğrendim: https://www.youtube.com/watch?v=iXxl2wRgsho&list=PLLH3mUGkfFCVXrGLRxfhst7pffE9o2SQO&index=8

    Ancak burada bağlanan iki oyuncudan biri host, diğeri client. Ben oyunu sonuna kadar götürmek istiyorum. Dolayısıyla sanırım benim oyunumda host oyuncu olmamalı. Host aynı zamanda bir client olmamalı yani. Doğru mu düşünüyorum ? Bu konuda yardımcı olabilir misiniz ?

    1. yasirkula Avatar

      Multiplayer konusunda sadece HLAPI ile ve sınırlı düzeyde tecrübem oldu o yüzden teknik konularda yardımcı olamam ama sorunuzda bahsettiğiniz oyunu sonuna kadar götürmeyi tam anlayamadım. İki kişilik oyunda oyunculardan biri çıkınca oyunun otomatik olarak bitmesini istemiyor musunuz? Her halükarda, host oyundan çıkınca başka bir oyuncunun host olmasını Host Migration ile sağlamak mümkün olmalı: https://docs.unity3d.com/Manual/UNetHostMigration.html. Server’ın oyunculardan bağımsız bir yerde çalışmasını istiyorsanız “unity unet dedicated server” şeklinde arama yapabilirsiniz.

      1. Ömer Avatar
        Ömer

        Oyunu sonuna kadar götürmek derken, pes edip bırakmayacağım demek istemiştim 😀
        Host olayına gelirsek, benim mesela oyunu hem editörden açıp hem build ediyorum. 2 buton çıkıyor Host ve Connect adında. Editörden host seçiyorum. Bir server ve bir client instantiate ediyor. Build’den Connect seçiyorum. Bir client daha instantiate ediyor.

        Normalde bir oyunu atıyorum 100 kişi oynuyor anlık. 1 tane host ve 100 tane client olması gerekmiyor mu ?

        Yani ben şu an yeni bir proje açıp server’ı orda yazayım. Oyunu hem editörden hem build’den açıp, server’a bağlayayım. Onlar oynarken, 2 tane daha build açayım onlar da oynasın.

        Böyle olur mu acaba ? Olursa da server satın aldığımda ne yapacağım onu da bilmiyorum. Benim şu an çok genel bilgiye ihtiyacım var. Photon veya Unet kullanmıyorum. Attığım videodaki gibi low level api.

      2. yasirkula Avatar

        Bence server’ı editörden başlatmak yerine, build aldığınız uygulama ile başlatmanız daha iyi olur. Diyelim build aldığınız uygulama “-server” argümanı ile çalıştırılırsa otomatik olarak kendini server (host) yapar. Bunun için uygulamanızın başında şu kodu çalıştırabilirsiniz:

        void Start()
        {
        if(System.Array.Exists(System.Environment.GetCommandLineArgs(), "-server"))
        // otomatik olarak Host moda geçiş yap
        }

        Artık uygulamanızı cmd’den şu komut ile çalıştırarak server’ı başlatabilirsiniz: "Uygulama Konumu.exe" -server -batchmode. Buradaki batchmode, uygulamayı penceresiz (headless) çalıştırmaya yarar.

        Multiplayer konusunda pek tecrübem olmadığını tekrarlamak istiyorum. Dediğiniz gibi 2 proje/build olayı belki daha mantıklı ama bilmeden bir şey diyemiyorum. Böyle bir durumda mesela server projesi, client projesindeki collider’ların yerlerinden vs. nasıl haberdar olacak da client’ın duvara çarpıp çarpmadığını bilecek gibi sorular aklıma geliyor. Mecburen iki proje arasında ortak bir takım veri olması gerekiyor gibi.

      3. Ömer Avatar
        Ömer

        İlgilendiğiniz için teşekkürler. Benim hatam böyle en low level’dan başlamak olmuş sanırım. Daha ilk multiplayer oyunum bir de. Arkadaş Photon ile yapmayı önerdi. Hem High level daha kolay hemde sunucuları ucuz. Ben onu deneyeyim en iyisi.

      4. yasirkula Avatar

        Photon’a tamamen geçiş yapmadan önce “unity low level networking solutions” şeklinde arama yaparak tüm multiplayer plugin’leri araştırmanızı öneririm, en azından piyasa hakkında bilginiz olur ve sonradan keşke demezsiniz.

      5. Ömer Avatar
        Ömer

        Baktım da hep böyle Photon, Mirror gibi birşeyler ekleyerek yapıyorlar. Benim izlediğim tutorial’da herhangi birşey eklemeden herşeyi kendi yazıyordu. Acaba bu da Unity’nin yeni network sistemi mi?

      6. Ömer Avatar
        Ömer

        Çok teşekkürler ilgilendiğiniz için 🙂

    2. Ömer Avatar
      Ömer

      Tamamdır öğrendim neyin ne olduğunu. Benim izlediğim tutorial’da adam modemde bir sunucu oluşturarak yapıyormuş. Yani LAN oluyor bu. Ama port yönlendirme yaparak normal bir online oyun gibi de oynanabilirmiş.

      Ama günümüzdeki oyunlar tabi ki böyle yapılmıyor. Dolayısıyla bende Photon gibi server desteği olan bir şey seçmeliyim.

  46. Enes Avatar
    Enes

    Unity de araba oyunuma lastik izi eklemek istiyorum ama internette gördüğüm bu konuyla alakalı scriptler Wheel Colliderla çalışıyor ben Wheel collider kullanmıyorum onun yerine Wheel scripti kullanıyorum nasıl uyarlayabilirim acaba veya nasıl bir şekilde lastik izi ekleyebilirim.

    1. yasirkula Avatar

      Arabanız hep yere yapışık mı yoksa zaman zaman tekerlerin yerden kalktığı oluyor mu?

  47. slymn Avatar
    slymn

    Selam hocam Prefab olan 2 nesnem var hiyerarşi bölümünde koddan dolayı panel ve text objesi ekliyorum tüm prefablara uygula diyorum ama uygulamıyor. Hiyerarşi bölümünde olunca bişey olmuyor ama prefaba koyunca panel ve text objeleri yok oluyor nedeni ne olabilir acaba prefab olunca farklı birşey yapıyormuyuz kodda ?

    1. yasirkula Avatar

      Asset’leriniz (mesela prefab’lar) sahnedeki objeleri değişkenlerinde tutamazlar. Eğer panel ve text objeleri prefab’ın child objeleri değilse, prefab’ın değil de sahnenin bir parçası olduklarından onları hangi değişkenlere koyarsanız koyun prefab’da o değişkenlerin değeri None olur.

      1. Slymn Avatar
        Slymn

        Çözümü ne hocam tam olarak ne yapmam gerekiyor?

      2. yasirkula Avatar

        Mecburen Start, OnEnable vs. gibi bir fonksiyonda kod vasıtası ile değişkenlere değerlerini vermeniz lazım.

  48. bayram elmadağı Avatar
    bayram elmadağı

    playersettings de ARM64 bit i seçiyorum ama buildsettings de ETC2 fallback de 64 bit çıkmıyor ne yapmalıyım

    1. yasirkula Avatar

      ETC2 Fallback, texture’ların sıkıştırılmasıyla alakalı bir ayar. Onu değiştirmeniz gerekmiyor.

  49. yetkintmn Avatar
    yetkintmn

    Merhaba,

    unity çerisinde text dosyalarından veri çekmem gerekiyor ancak unity üzerinde veri çekme işlemi çalışıyor ancak build edince veri çekme işi yapılamıyor. Text dosyaları unity içerisinde Asset/data konumundadır.

    Veri çekme kodum:
    string[] readText = File.ReadAllLines(“Asset/data/text.txt1”);

    Umarım yardımın dokunur bu konu hakkında internette yeterli bilgi yok. Şimdiden teşekkürler 🙂

    1. yasirkula Avatar

      text.txt1 asset’inin uzantısını .txt yapıp ardından bu asset’i script’inizdeki bir “public TextAsset textDosyasi;” değişkenine Inspector’dan değer olarak verin. Ardından şu kodu kullanabilirsiniz:

      string[] readText = textDosyasi.text.Split( new char[] { ‘\r’, ‘\n’ }, System.StringSplitOptions.RemoveEmptyEntries );

      1. yetkintmn Avatar
        yetkintmn

        “txt1” diye yanlış yazıp göndermişim size. Teşekkür ederim sayenizde sorun çözüldü. İyi çalışmalar 🙂

  50. slymn Avatar
    slymn

    Rigidbody rigid;
    public float hiz;
    public GameObject patlama;
    public AudioSource mavikup_ses;

    void Start()
    {
    rigid = GetComponent();
    }

    void FixedUpdate()
    {
    rigid.velocity = transform.forward * hiz;
    }
    void OnTriggerEnter(Collider other)
    {
    if (other.tag == “Player”)
    {
    Destroy(gameObject);
    Instantiate(patlama, transform.position, transform.rotation);
    mavikup_ses.Play();

    Objeyle etkileşince ses çıksın istiyorum ama etkileştiğinde şu uyarı çıkıyor

    -Can not play a disabled audio source –

    sorun nerde olabilir? etkileştiğinde ses çıkması için başka türlümü ses kodu yazaıyoruz acaba

    1. yasirkula Avatar

      AudioSource’a sahip olan obje aktif değil diyor. Ya o obje ya da onun bir parent’ı inaktif durumdadır.

  51. delamis Avatar

    Hocam merhaba,

    Bu app bundle olayı hakkında tam olarak bilgi bulamıyorum unity ile ilgili. Unity v2019.x ile birlikte build settings ana ekranında Build App Bundle ( Google Play ) şeklinde bir seçenek eklendi.

    Bu seçeneği seçtiğimd .aab uzantılı bir dosya veriyor. Google’a oyunu yüklerken uygulama dosyasının yanında geliştirme dosyası olarak bunu ekliyorum. Fakat yine de optimize edilmemiş apk diye uyarı veriyor.

    Neyi yanlış yapıyor olabilirim? Yardımcı olabilirseniz sevinirim.

    1. yasirkula Avatar

      App Bundle ile build alınca hem apk hem aab mi çıktı alıyor? Sadece aab çıktı alıyorsa sadece aab dosyasını Google Play’e yükleyin.

  52. süleyman Avatar
    süleyman

    Selam hocam iyi günler bir objem var sürekli sağa hareket ettirmek istiyorum otomatik ve parmağımla birlikte yukarı aşağı hareket edecek aynı zamanda parmağımı takip etmiyorken otomatik sağa hareket ederken üste yada alta sürükleyebilmek istiyorum bunun için en uygun hareket kodu ne olabilir ? Şimdiden teşekkürler

    1. yasirkula Avatar

      Parmağınızı takip etmiyorken üste ya da alta sürükleyebilmeyi telefonunuzun ivmeölçer sensörüyle mi yapmayı planlıyorsunuz?

      1. süleyman Avatar
        süleyman

        Aslında seçenekli düşünüyorum hocam hem ivmeölçerli hem de manuel parmağımı sürüklediğim tarafa gitsin istiyorum yukarı yada aşağıya

      2. yasirkula Avatar

        İvmeölçer için şu derse bakabilirsiniz: https://yasirkula.com/2013/07/22/unity-ile-androide-uygulama-gelistirmek-2-telefon-sensorunu-kullanmak/

        Parmak için ise direkt Input.GetMouseButton ve Input.mousePosition’dan faydalanabilirsiniz. Eğer Input.GetMouseButton(0) true ise ve EventSystem.current.IsPointerOverGameObject() false ise (yani imleç/parmak bir UI objesine tıklamıyorsa), Input.mousePosition ile objeyi hareket ettirin. Yoksa ivmeölçer ile objeyi hareket ettirin.

        Input.mousePosition’ı kullanırken “Main Camera” objenizi bir public değişkende tutun ve kameraObjesi.ScreenToWorlPoint ile piksel koordinatlarını 3D koordinata çevirerek parmağın tıkladığı noktayı tespit edin. Ardından objeyi bu koordinatlara doğru hareket ettirin.

  53. Sezgin Levent Avatar
    Sezgin Levent

    Merhabalar unity üzerinden android uygulaması yapıyorum fakat scriptli buttonlar çalışmıyor bunun nedeni ne olabilir acaba? Mesela giriş butonu unity üzerinden çalışıyor fakat kendi telefonumda sanki boş bir butonmuş gibi oluyor fakat bazı telefonlarda çalışıyor bu konuda yardımcı olabilir misiniz?

    1. yasirkula Avatar

      Bazı Android cihazlarda çalışıp bazılarında çalışmayan UI objelerini daha önce hiç duymadım, internette arattığımda da bir sonuç bulamadım açıkçası. Maalesef bu konuda bir fikrim yok.

  54. bayram elmadağı Avatar
    bayram elmadağı

    benim uı ekranında bir panele eklenecek ımage prefabım var bunu nasıl oraya ekleyebilirim intantiate komutu ile olmuyor canvasın dışına ekliyor o komutla bir türlü bulmadım çözümünü yardımcı olursanız sevinirim

    1. yasirkula Avatar

      Instantiate(prefabObjesi, panelObjesininTransformu, false); kodunu kullanabilirsiniz. Daha fazla bilgi için: https://docs.unity3d.com/ScriptReference/Object.Instantiate.html

      1. bayram elmadağı Avatar
        bayram elmadağı

        cevabınız için teşekkürler ama kesinlikle böyle olmuyor ben bir eğitim videosu buldum bunun için ihtiyacı olan olursa diye buraya atıyorum https://youtu.be/TAJCr3_kfEc

  55. Bayram elmadağı Avatar
    Bayram elmadağı

    play store a oyun atacağım ama güncelleme yapmak istediğim zaman kayıtlı verilerin silinmemesi için ne yapabilirim playerprefs ve json kayıtları için

    1. yasirkula Avatar

      PlayerPrefs oyun silinmediği sürece yok olmaz, yani güncellemeden sonra da onlara erişebilirsiniz (en azından ben öyle biliyorum). Json kayıtlarınızı nerede tuttuğunuzu bilmediğimden o konuda yorum yapamıyorum.

      1. bayram elmadağı Avatar
        bayram elmadağı

        json kayıtlarımı save.json diye bi dosyada tutuyorum bunumu soruyorsunuz

      2. yasirkula Avatar

        Bu dosyayı herhalde Application.persistentDataPath’te tutuyorsunuz diye kendim varsayımda bulunuyorum artık. PlayerPrefs gibi bunun da güncellemeden sonra otomatik olarak erişilebilir olması lazım, yani sizin bir eylem yapmanız gerekmiyor.

  56. bayram elmadağı Avatar
    bayram elmadağı

    merhaba kaynaklarınız gerçekten kaliteli çok işe yarıyor teşekkürler bir sorum olacaktı acaba 2 uı nesnesi arasında çizgi çizmenin bir yolu varmı kelime oyunu yapmayı deniyorumda sadece o kısmı kaldı bulamadım yardımcı olursanız sevinirim

    1. yasirkula Avatar

      Bence bunun en basit yolu, Height’ı küçük bir Image objesi oluşturup rengini çizginin olmasını istediğiniz renk vermek ve bu Image objesinin Rotation Z değeri ile oynayarak çizginin eğimini ayarlamak. Daha farklı çözüm yolları arayışındaysanız “unity ui line” şeklinde arama yapmanızı öneririm.

  57. Fatih GÜNEY Avatar
    Fatih GÜNEY

    33 Yaşındayım , bu yaştan sonra mobil oyun geliştirmeye merak sardım. İnternet alemini gezdim dolaştım yerli yabancı her şeyi inceledim. 1 numaraya sizi koyuyorum ve takdir ediyorum. Elinize emeğinize sağlık.

    1. yasirkula Avatar

      Teşekkür ederim siz de sağolun.

  58. Sercan Avatar
    Sercan

    Hocam Merhabalar. Oyun içi Debug konsolu package vermiştiniz. Bu package çok işime yaradı çok teşekkür ederim bunun için. Bununla bağlantılı olarak bir kayıt defteri oluşturmak istiyorum. Bu konsola yazılan tüm hataları bir dosyaya nasıl yazarız. Bununla ilgili bildiğiniz bir kaynak varsa önerebilir misiniz ?

    1. yasirkula Avatar

      Plugin’in son sürümünü projenize eklediyseniz, konsola save_logs yazarak tüm log’ları bir dosyaya kaydedebilirsiniz. Eğer sadece hata mesajları yazılsın isterseniz şu fonksiyonu ona göre düzenleyebilirsiniz: https://github.com/yasirkula/UnityIngameDebugConsole/blob/0b35e8eed172ad69674db11f2b856dde910664c6/Assets/Plugins/IngameDebugConsole/Scripts/DebugLogManager.cs#L671-L692

  59. gorkemalmaz Avatar

    İyi çalışmalar bina dikme oyunu yapmak üzereyim de levelli bir sıkıntı var binaları kare olarak düşünürsek bina 6-7 kare de bitirmeyi düşünüyorum ama binaları bir vinç kontrolüyle animasyonla bırakmasını istemiştim bir anda bina düşerse pek bir anlamı kalmaz diye düşünmüştüm oyundaki sorun küpleri dizmek ve küpler yamuk olursa düşmesini sağlamak istiyorum unityinin kendi içinde fizik motoru vardır ama nasıl kullanabilirim bilmiyorum yardımcı olur musunuz yine çok konuştum kusura bakmayın

    1. yasirkula Avatar

      Tower Bloxx gibi bir şey yapmayı düşünüyorsunuz anladığım kadarıyla. Dediğiniz gibi direkt Unity’nin fizik sistemini kullanabilirsiniz. Oyun 3D olacaksa her parçada Box Collider ve Rigidbody, 2D olacaksa her parçada Box Collider 2D ve Rigidbody 2D olmalı. Parçaların dengeli değilse devrilmesini artık fizik motoru kendisi halleder. Vinç için belki bir animasyon oluşturup vincin ucuna da yeni bina karesini child obje olarak verebilirsiniz. Vinç kareyi bırakacağı zaman karenin transform.SetParent(null,true); fonksiyonunu çağırmanız yeterli olmalı.

  60. Umut Avatar
    Umut

    Merhabalar. Hocam ufak bir şey soracağım. Ben şimdi bir tane projemde MySQL’den kullanıcıların skorlarını çekip bir panelde Leaderboard tarzında yazdırmak istiyorum. İşin MySQL kısmı tamam ama Unity’de dinamik olarak bir Text alanı nasıl yaratacağım bunu tam anlayamadım. Yani mesela ben her bir kullanıcı adı ve skor bilgisinden sonra +”\n” yapıp bir alt satıra geçiriyorum ama bu Text’in anchorunun büyüklüğü kadar oluyor. Devamında sahnede veya game ekranında o metin gözükmüyor. ScrollBar ve ScrollView yaptım ama yine elimle Scene’de Text’in Height’ini ne kadar yaparsam oraya kadar alıyor metni. Geri kalanını göremiyorum. Dinamik olarak ben her alt satıra geçtikçe o text kutusunu nasıl aşağı doğru uzatabilirim veya başka alternatif var mı?

    1. Umut Avatar
      Umut

      Aslında kod olarak işte bu text’in Height değerini her satır atladıkça belli bir miktar arttırabilirim ama bana pek sağlıklı bir işlem gibi gelmedi.

    2. yasirkula Avatar

      Text objenize Content Size Fitter ekleyip “Vertical Fit”ini “Preferred Size” yapabilirsiniz.

  61. kerimy Avatar
    kerimy

    Teşekkürler Yasir hocam. Bir sorunum daha var :
    Kullanıcılar mekanda bir kapıya tıkladığı zaman kapı açılıyor ama diğer kullanıcılar bunu görmüyor onlar tıkladığı zaman ise diğerleri görmüyor yani sadece oyuncu tıkladığında kendisi görüyor kapının animasyonunu. Ancak trigger lı kapılar da var bunlarda kapılar açıldığında bütün kullanıcılar bu açılma animasyonunu görüyor. nedendir ?

    1. yasirkula Avatar

      Kapıya tıklandığı bilgisini bir [Command] fonksiyon ile server’a bildirmeniz, ardından da bir [ClientRpc] fonksiyon ile server’dan tüm oyunculara aktarmanız lazım. Kapının açılması kodunuzu ise [ClientRpc] fonksiyona yazmanız yeterli olmalı.

  62. kerimy Avatar
    kerimy

    Yasir hocam selam Unity 3d ile ufak bir Fps gezinti modu yaptım. Network elemanterleriyle de bir güzel ilişkilendirdim Multiplayer hale getirdim. Bir de internette bir tutorial izledim.karakterlerimin tepesine text ile isim yerleştirdim. Bunları ekrandan değiştirilebilir yaptım. İzlediğim derste gayet güzel çalışıyor hatta ben sıfırdan o derstekileri yaptım oda çalıştı ama benim dosyamda bir türlü çalıştıramadım. Daha doğrusu çalışıyor ama mesela unity den host açıp çıktı aldığım exe den de oraya bağlandıysam. host olan isim değiştirdiği zaman diğer kullanıcı ekranında görünüyor. Ancak o kullanıcı isim değiştirdiği zaman host olanın ekranda görünmüyor. Nereden host açtığım farketmiyor. istern Unity içinden olsun ister exe programdan. Host olan isim değiştire biliyor hosta bağlanan değiştiremiyor. Bunun sebebi nedir acaba bir fikriniz var mı ? Teşekkürler şimdiden.

    1. yasirkula Avatar

      Host olmayan kişide yaptığınız değişikliğin diğer herkese yansıması için, [Command] attribute’una sahip bir fonksiyon çalıştırmanız lazım. Bu fonksiyon otomatik olarak host’ta çalıştırılacak. Ardından host [ClientRpc]’li fonksiyon çağırarak tüm oyuncular için o Text’in değerini değiştirmeli.

      Uzun zamandır network ile uğraşmıyorum ama hatırladığım kadarıyla kabaca süreç böyle işliyor. Eğer UNET kullanıyorsanız, ilerleyen Unity sürümlerinde bu sistemin kalkacağını bilmeniz lazım. Onun için başka bir sisteme (mesela Photon) geçiş yapmak isteyebilirsiniz.

  63. burak öcül Avatar
    burak öcül

    Merhaba kolay gelsin…Çok saçma bir hata içerisindeyim facebooktan size ulaşmaya çalıştım birde burdan yazayım.
    Unity 2017.3.1f1 versiyonunda google admobun 1.5 yıl önce indirdiğim apisini sıkıntısız kullanıyordum.Firebase eklemem gerekti ve ekleyince herşey patladı.Firebase hata verdi build alınmadı alınan apklar telefona yüklenip girilmeye çalıştıgında direk durduruldu hatası vermeye başladı.Firebase kaldırıp 0 proje üstünde aynı api aynı unity versiyonunda apk alıp reklamları denemeye kalktıgımda yine durduruldu ile karşılaştım ve sebebi reklamlar niye bilemiyorum. Sonrasında unitynin 2018 versiyonuna ve googleden en son sürüm admob api (359kb)indirerek denedim sorun hala aynı devam etti.Bilgisayarımı formatladım egri 2017.3.1f1 versiyonunu kurdum ve 1.5 yıl önceki admob apim (8.3mb) ile denedim buildimi sorunsuz aldım uygulamayı test reklamlarıyla sorunsuz açtım.Ancak bu seferde Uygulamayı şifrelediğimizde alias ve o oluşturdugumuz key ile şifreleyip aldığım apklrın hiç birini kullanamıyorum.Ne google kabul ediyor ne telefonlar. “Paket ayrıştırılamadı” gibi saçma bir hata almaya başladım. Android sdklarımdamı sıkıntı var diye baktım bütün api levellerinin hepsinin sdk platformlarını ve google apilerini indirdim.Tools bölümündeki herşeyide indirmiştim. Ancak google play api x86 arm7 vb yazanların hiç birini indirmedim.Çünkü her bir api leveli için indirdiğimizde 130gb+ bir indirilen şey oluyor ve buda aşırı uzun süren bir süreç malum günümüz internetleri. Jdk olarakda 8.0.161 ve 8.0.162 var bende. Zaten gradle buildde alamıyorum buda aşırı saçma birşey. Hiç bir unity versiyonunda gradle build alamıyorum. Hata veriyor ve çözümünü internette bulamadım. Ama windows defender ilk kurdugumda ilk gradle build almaya kalktıgımda gradle ile alakalı birşeyi virüs olarak algılayıp uyarı verdi,ya engelledi ya başka birşey oldu bilmiyoorum.Bulamadım ne halt yediğini o yüzden düzeltemedim.Terkardan herşeyi kurdum ama nafile artık gradle yok internal ile mecburi alıyorum herşeyi.
    Bu kadar uzun olduğu için kusura bakmayın nasıl derdimi tam anlatabilirim bilemedim…
    Yardımlar için şimdiden teşekkürler….

  64. gorkemalmaz Avatar

    Kolay gelsin hocam unityden açık dünya oyunu geliştirmeye başladım da aklımda kalan soru işaretleri var oyun açık dünya olacağından dükkanlara ve evlere sahne yüklemeden girmesini tercih ediyorum bende sadece binaların dış modelleri var dükkanların içine yada binaların iç kısmına modelleri nasıl yerleştirebilirim yerleşemez dersen hepsine sahne yapmak çok uğraştırıcı olmaz mı ?

    Bir sorum daha var unityde sinematiği oyuna nasıl yerleştirebilirim çünkü hikaye tabanlı bir oyun olacağından sinematik önemli bir yerde yardımcı olursan sevinirim hocam

    Bir sorum daha var kusura bakma şehirde kaldırımda yürüyecek yapay zekalar yapmaya çalıştım ama beceremedim şehirde normal yürüyecek ve silah sesi duyduğunda kaçıp bağıracaklar sesleri falan animasyonları bir şekilde halledebilirim ama kodlarını nasıl yazacağımı bulamadım şimdiden teşekkürler siteni çok beğeniyorum hocam her yazını dikkatle okuyorum iyi günler dilerim 🙂

    1. yasirkula Avatar

      Binaların içi için 2 önemli husus var: binaya açılabilir bir kapı vermek ve binanın içine duvar/zemin koymak. Açılabilir kapı için bina modelini Blender gibi bir programla düzenleyip kapıyı silmeli veya kapıyı hareket edebilen ayrı bir obje yapmalısınız. Duvar/zemin işini de Blender gibi bir 3D modelleme programı ile yapabilir veya direkt Unity’nin içerisinde küpler yerleştirerek de halledebilirsiniz (en sağlıklısı Blender gibi duruyor ama). Ardından bu zeminin üzerine mobilya vs. yerleştirmek işin en kolay kısmı. GTA gibi oyunlar bu sistemi nasıl optimize ediyorlar orası ayrı bir konu tabii, büyük ihtimalle bir binaya karakter çok yaklaşınca o binanın içi aktif oluyor, karakter uzaklaşınca deaktif oluyordur. Aksi taktirde uzaktaki binaların da içi render edileceğinden performans düşebilir.

      Sinematik için Unity’nin Timeline ve Cinemachine pencerelerinden faydalanabilirsiniz.

      Yayalar için hazır bir plugin kullanmanızı öneririm, böylesi daha hızlı olur. Bunun için “unity pedestrian system” şeklinde arama yapabilirsiniz.

      1. gorkemalmaz Avatar

        çok teşekkür ederim deniyeceğim bir şey daha sormak istiyorum sinematik hazırlamak istiyorum ama uygulamalara göz gezdirdim öğrenip yapmam çok uzun sürecek gibi görünüyor acaba böyle kolay bir uygulama var mı sinematik hazırlamak için

      2. yasirkula Avatar

        Unity içerisinde hazırlamayacaksanız bir bilgim yok, Blender gibi programlar kullanabilirsiniz ama bu programlar çok basit değil.

  65. Mehmet Uçar Avatar

    Merhaba,

    Çok harika bir Siteniz var. Öncelikle bu güzel Site ve olağanüstü emek için çok teşekkür ederim.

    Ben hem İnşaat Mühendisi hem de Bilgisayar Programcısıyım.

    Aktif olarak Mühendislik yaptım, Bilgisayar Programlamaya yıllar önce İnşaat Mühendisliğinde okurken başlamıştım. Kendi kullanımım için bir çok program yazdım ve kullandım.

    Ancak şimdi Programcı yönümü, Profesyonel anlamda da kullanmaya karar verdim.

    Özellikle mobil oyun konusunda kendimi geliştirmek için çalışıyorum.

    Unity hakkında, İnternette ne var ne yok hergün saatlerce bilgisayar başında kalarak, bilgimi artırmaya çalışıyorum. Kod yazıyorum, ders izliyorum, okuyorum, v.b. günler böyle geçiyor.

    Bu arada Sizin Sitenizle karşılaştım. Çok güzel, çok kapsamlı bir Site. Özellikle Türkçe olması bulunmaz nimet diyebilirim.

    Hazırlamış olduğunuz Assets’leri Unitiye yükledim, onlar için de çok teşekkür ederim.

    İnşallah bundan sonra da web sitelerinizi takip edeceğim.

    Selam ve Sevgilerimle.

    Mehmet Uçar

    http://www.mehmetucar.com
    https://mobiloyun.store

    1. yasirkula Avatar

      Ben teşekkür eder, başarılar dilerim 🙂

  66. Ertan Avatar

    Abi, acaba mailini kontrol edebilir misin?

    1. yasirkula Avatar

      Dönüş yaptım.

  67. cem Avatar
    cem

    Merhaba,

    Hocam öncelikle bu güzel site için teşekkürler. Bayagdır sitesini takip ediyorum.Ama ilk defa yazmak nasip oluyor 🙂 Bir oyun yapıyoruz. Hatta bitti diyebilirim. Menü asamasındayız. Lock unlock sitemi yaptım. Bu sorunsuz calisiyor. PlayerPref komutu ile. 1. level bitmeden 2, 2. level bitmeden 3 acilmiyor gibi.

    bayag sıkıntı yasadıgım sorun su. 5 lvl var elimde su an. bu levelları unlock ile aciyorum ama altinda oyundaki kosullara gore yıldızda vermem gerekiyor. bunu yapamadim.
    örnegin

    1-lvl ı bitirdigi için 1 yıldız
    2- lvl daki tüm altinları topladigi için 2. yıldız
    3- belli bir süreden once oyunu bitirdigi yada dusmanları oldurdugu için 3. yıldız gelmesini istiyorum.

    bu konuda bayag sıkıntı yasıyorum. kitlendim kaldım. yardimci olabilirseniz cok memnun kalırım.

    tesekkürler

    iyi calısmalar

    1. yasirkula Avatar

      PlayerPrefs.SetInt ile, o level’da kaç yıldız toplandığını level bitiminde kaydedebilirsiniz. Bu görevlerin tamamlanıp tamamlanmadığını tespit etmek ise PlayerPrefs’ten bağımsız, oyunun sonunda onu siz hesaplamalı ve ona göre PlayerPrefs.SetInt fonksiyonunu çağırmalısınız.

      Eğer hangi görevler yapılmış bunu PlayerPrefs ile tespit etmeye çalışıyorum diyorsanız, PlayerPrefs.SetInt(“Bolum1_Gorev2”, 1) gibi bir fonksiyonla 1. bölümün 2. görevinin yapıldığını kaydedebilirsiniz.

  68. murat Avatar
    murat

    void Update(){

    if (anim.GetCurrentAnimatorStateInfo(0).IsName(“idle”))
    {
    muzikcalar.Stop();
    }
    }

    public void samba(){
    muzikcalar.clip = muzikler [0];
    muzikcalar.loop = true;
    anim.Play (“samba”);
    muzikcalar.Play();
    }

    Merhaba yukarıdaki kodum çalışıyor. samba voidini butona aktardım. Butona tıkladığım zaman müzik çalıyor ve animasyon sambadan idleye geçtiğinde duruyor.Fakat Bu şekilde kullandığımda butona ilk tıkladığımda müzik çalmıyo.2. tıklamamda çalmaya başlıyo.Bunu nasıl düzeltebilirim?

    1. yasirkula Avatar

      muzikcalar.Play’den önce bir muzikcalar.Stop koymayı deneyin. Olmazsa bir olasılık, anim.Play fonksiyonu hemen “samba”ya geçiş yapmıyordur ve Update’teki koşul true olup muzikcalar.Stop fonksiyonunu çağırıyordur. Bunun için Update fonksiyonunu silip, StateMachineBehaviour’dan türeyen bir script oluşturmanızı, bu script’i Animator Controller’da samba’ya vermenizi ve bu script’in OnStateExit’inde muzikcalar’ı kapatmanızı öneririm (muzikcalar’a büyük olasılıkla animator.GetComponent<AudioSource>() koduyla erişebilirsiniz): https://docs.unity3d.com/ScriptReference/StateMachineBehaviour.html

  69. Sinem Kaya Avatar

    TOGED sitesinde bulunan CV’nizden buldum siteyi ve daha öncesinde görmemiştim. Gerçekten insanlara ulaştırılması için uğraşılması gereken bir yer olduğunu düşünüyorum. Çok başarılı! Teşekkürler emekleriniz için. Ek olarak yorum kısmını eğer başa tutturursanız çok daha kolay yorum alabilirsiniz bu sayfadan :’)

    1. yasirkula Avatar

      İlginiz ve öneriniz için teşekkür ederim 🙂

  70. Caner Avatar
    Caner

    Merhabalar,
    Paylaşımlarınız için teşekkürler , türkçe yeterli kaynakları sizin sitenizden buluyoruz.
    Benim bir sorunum var Facebook SDK yı kurduktan sonra apk olarak derlediğimde derleme işlemini gerçekleştirmiyor sürekli bir hata veriyor.

    1. yasirkula Avatar

      Aldığınız hatayı yasirkula@gmail.com‘a mail atabilirsiniz.

  71. 0hsyn1 Avatar

    Hocam öncelikle böyle içerikler ürettiğiniz için teşekkürler fazlasıyla yararlanıyoruz.

    Şöyle bir problem ile karşılaştım.
    Ana sahnemde 2 adet buton var oyun sahnesine geçme ve çıkış yapmamı sağlıyorlar.
    Ana sahnemde ki butona basıp oyun sahnesine geçtikten sonra Ana sahneme dönmemi sağlayan butona basıyorum ve Ana sahnem açıldığında herhangi bir butona tıklayamıyorum.

    Butonların İnteractable kısımları işaretli.

    Cevaplarsanız çok memnun olurum.

    1. yasirkula Avatar

      Ana sahneye geri döndüğünüzde sahnede bir Event System objesi var mı? Bu objeyi kapatıp açınca sorun düzeliyor mu? Butonların üzerini kaplayan görünmez bir UI objesi olabilir mi veya?

      1. 0hsyn1 Avatar

        Hocam, cevabınız için teşekkürler.Sorunu bir forumdaki arkadaş çözdü.Event System objesi mevcut.(Belki bende tam anlatamadım size sorunumu)
        Belki bu sorunu yaşayan arkadaşlar olur ise faydası olur diye paylaşıyorum.Butonların görevlerini çağırdığınız scripte bu kodları yazmanız yeterli.

        public void Start(){
        Time.timeScale=1f;
        Screen.lockCursor=false;
        Cursor.visible=true;
        }

  72. Sinan Avatar
    Sinan

    Merhaba bir oyun yapıyorum sonuna iyice yaklaştım . Sitenizden çokca faydalandım, Faydalanmaya da devam edicem.Cevap verirseniz 2 sorum var. 1.si oyunum 2d ve ortographic camera da ve size= 6.4 te . Bu şekilde çıktı aldığım zaman telde ekran ayarları tam oturmuyor.Farklı ekran çözünürlüklerinde oyunumun tam ekran gösterilmesi için ne yapabilirim?(unity3d editorundeki boyutu diğer tel çözünürlüklerindede yapmak istiyorum.)

    1. yasirkula Avatar

      Farklı çözünürlüklerde ekrandaki sprite’lar ekranın sağından/solundan dışarı mı kaçıyor, nasıl bir sıkıntı oluyor?

      1. Sinan Avatar
        Sinan

        evet sağa ve sola taşıyorlar. Bende alttaki kodu buldum internetten bundada tam bu şekilde iken sağ ve sol oturuyor fakat üst ve altta boşluk oluşuyor.

        // set the desired aspect ratio (the values in this example are
        // hard-coded for 16:9, but you could make them into public
        // variables instead so you can set them at design time)
        float targetaspect = 800f / 1280f;

        // determine the game window’s current aspect ratio
        float windowaspect = (float)Screen.width / (float)Screen.height;

        // current viewport height should be scaled by this amount
        float scaleheight = windowaspect / targetaspect;

        // obtain camera component so we can modify its viewport
        Camera camera = GetComponent();

        // if scaled height is less than current height, add letterbox
        if (scaleheight < 1.0f)
        {
        Rect rect = camera.rect;

        rect.width = 1.0f;
        rect.height = scaleheight;
        rect.x = 0;
        rect.y = (1.0f – scaleheight) / 2.0f;

        camera.rect = rect;
        }
        else // add pillarbox
        {
        float scalewidth = 1.0f / scaleheight;

        Rect rect = camera.rect;

        rect.width = scalewidth;
        rect.height = 1.0f;
        rect.x = (1.0f – scalewidth) / 2.0f;
        rect.y = 0;

        camera.rect = rect;
        }

      2. yasirkula Avatar

        Ekranların en/boy oranları farklı olduğu için (4:3, 16:9 vb.) hem genişliği hem yüksekliği her ekranda korumanız mümkün değil. Ekranın sağ, sol, üst ve alt kenarlarındaki bu objeler ne tarz şeyler de bunların yerleri hep aynı olmalı?

      3. Sinan Avatar
        Sinan

        hepsinin yeri aynı. üst ,alt sorun yok hiçbirşekilde.geri kalanların sağ ve solunda taşma var sadece onlarında x konumu hep sabit olarak ekrana geliyorlar.

      4. yasirkula Avatar

        Bu objeler kenarlık gibi bir şey mi? Eğer öyleyse, sprite objeleri yerine ekranın kenarlarına anchor’lanmış UI objeleri kullanmayı düşünebilirsiniz. Aksi taktirde büyük ihtimalle oyunun başında Camera.main.ViewportPointToRay fonksiyonu vasıtasıyla objelerin x konumunu hesaplamanız gerekir.

  73. Kübra Avatar
    Kübra

    Merhaba, google playde bir oyunum var. Bu oyuna Google Analytics eklemek istiyorum. Kayıt olduktan sonra bir kod veriyor sanırım. Projeye dahil etme noktasını açıklama imkanınız var mı?
    Bir de belki saçma gelecek ama oyun projemin linkini versem ilk oyunum olduğu için ne durumdayım ve de ışık var mı diye bir yorumunuzu almak isterim.Boşa mı kürek çekiyorum falan.Gerçek anlamda bilen birinden oyunun izlenimiyle alakalı bir şeyler duymak isterim. 🙂 Çünkü tanıdıklar dışında çok bir indirme olduğunu düşünmüyorum. Reklamda vermedim. Biraz moralim bozuldu bu duruma.

    Çok teşekkürler.

    1. yasirkula Avatar

      Oyununuzun linkini her zaman paylaşabilirsiniz, onda bir sıkıntı olmaz. Ama benim yorumuma çok güvenmeyin çünkü ben gerçek anlamda bildiğimi iddia etmiyorum. Faydalı geri bildirimler için oyununuzu Facebook’taki Türk oyun geliştirici gruplarında, oyun yapımı forumlarında ve oyunlarla alakalı diğer forumlarda paylaşmanızı öneririm.

      Google Analytics ile ilgili bilgim ise maalesef yok, ben sadece Unity Analytics kullandım.

      1. Kübra Avatar
        Kübra

        https://play.google.com/store/apps/details?id=com.KSVGame.ShadowBalls

        Olsun,yine de yorum yaparsanız oyunum hakkında mutlu olurum.İlk oyunum olduğu için ne durumdayım bilemiyorum. Benden bilgili ve tecrübeli olduğunuz kesin. 🙂 Bu konularda sizin vermiş olduğunuz bilgilerle birçok şey öğrendim çünkü.

        Unity analytics nasıl kullanılıyor peki? Sanırım sitenizde bu konuyla alakalı bir yazı yok aradım ancak bulamadım.

      2. yasirkula Avatar

        Benim önerim, oyunun arayüzünde başka bir font kullanın ve yazıları kalın yapmayın çünkü kalın yazı mobilde güzel durmuyor. Onun dışında oyunun ya ışıklandırması ya da arkaplanı bana biraz donuk geldi, Window-Lighting’den ışık şiddeti ile oynamayı deneyebilirsiniz. Oyunun Google Play’deki bazı görselleri de yanlardan uzatılmış gibi duruyor, onları isterseniz silin. Ve ikon için de biraz daha renkli ve ilgi çekici bir çalışma yapmayı deneyebilirsiniz. Tekrardan elinize sağlık.

      3. Efe Can Avatar
        Efe Can

        Yasir Hocam
        Cevaplarınız için bin teşekkür!

        Starting auto-resolution before scene build…
        UnityEngine.Debug:Log(Object)
        Google.Logger:Log(String, LogLevel)
        GooglePlayServices.PlayServicesResolver:Log(String, LogLevel)
        GooglePlayServices.PlayServicesResolver:OnPostProcessScene()
        UnityEditor.Build.BuildPipelineInterfaces:OnSceneProcess(Scene, Boolean)

        böyle bir sıkıntı yaşıyorum. Bu konuda bilginize ihtiyacım var.

        İyi çalışmalar. 🙂

      4. yasirkula Avatar

        Bu, Admob ile gelen bir editör script’inin düzgün çalıştığını belirten bir mesaj, yani bir sıkıntı yok.

      5. Kübra Avatar
        Kübra

        Çok teşekkürler fikirleriniz için. İlk oyun olduğu için ne nasıl yüklenir nasıl resim konulur hepsi öğrenme oldu benim için. Görsel anlamda sıkıntıların farkındayım en yakın zamanda halledeceğim. Ben bir konuda daha size danışmak istiyorum. Oyunumun son güncellemesini yayınladıktan sonra oyunda reklamlar çıkmamaya başladı. Unity de reklamın çıktığını isloaded ve showinterstitoal tarzında verdiği bilgilendirmelerle anlıyordum. Artık bub iki bilgilendirmeyi vermiyor. Sorunum ne olabilir bir fikriniz var mı bu konu hakkında?

      6. yasirkula Avatar

        Güncelleme esnasında reklam kodlarında herhangi bir değişiklik yaptınız mı? Ayrıca Google Play’den indirdiğiniz oyununuzu logcat kullanarak “adb logcat -s Ads” komutuyla debug edin ve bir hata kodu döndürülüyor mu kontrol edin.

      7. Kübra Avatar
        Kübra

        Hayır herhangi bir değişiklik yapmadım reklam kodlarımda. Sorunuda bulamıyorum. Sizin dediğiniz şeyi de deneyeyim teşekkür ederim.

  74. Muhammet Avatar
    Muhammet

    Merhaba.
    Öncelikle paylaşımlarınız için teşekkürler. Web sitenizden oldukça fazla faydalanıyorum.

    Vakit ayırırsanız bir sorum olacaktı.

    Sahnemde 2 den fazla, birbirinden farklı objeler var.
    Bir top-down main camera var.
    Animator ile yaptığım sroolling background var.

    Bu sahnedeki objeleri dokunmatik ekranda birbiri ile çarpıştırmak istiyorum. Collider ve rigidbody ekledim. Fakat addforce kullanarak objeleri itleme hareketini yapamıyorum.
    İstediğim şey, kullanıcının dokunduğu objeyi parmak hareketiyle aynı yöne doğru itlemesi ve diğer objeyle çarpıştırması. Addforce u bu şekilde nasıl kullanabilirim ?

    1. yasirkula Avatar

      Ekrana bir parmakla dokunulduğunda, Camera.ScreenPointToRay ve Physics.Raycast fonksiyonları vasıtasıyla o noktada bir obje var mı diye bakabilirsiniz. Eğer varsa, parmak ilk konumundan diyelim ki 5 piksel hareket ettikten sonra, parmak ekrandan kaldırılana veya aradan 0.5 saniye gibi kısa bir süre geçene kadar bekleyebilir ve bu sürenin ardından parmağın mevcut konumundan ilk konumunu çıkarabilirsiniz. Elde ettiğiniz vektörü kullanarak Physics.AddForce yapabilirsiniz. Dokunmatik ekran dersim için bkz: https://yasirkula.com/2013/07/17/unity-ile-androide-uygulama-gelistirmek-1-dokunmatik-ekran-entegrasyonu/

      1. muhammet Avatar
        muhammet

        böyle birşey çıkarttım. konsolda hata almıyorum fakat çalışmıyor.

        using System.Collections;
        using System.Collections.Generic;
        using UnityEngine;

        public class AstAddForce : MonoBehaviour
        {
        public Material hitMaterial;
        Vector2 startPos, endPos, direction;
        float touchTimeStart, touchTimeFinish, timeInterval;
        [SerializeField]
        float throwForceInXandY = 5f;

        [SerializeField]
        float throwForceInZ = 0f;

        Rigidbody rb;

        void Start()
        {
        rb = GetComponent();
        }

        void Update()
        {
        if (Input.GetMouseButtonDown(0)/*Input.touchCount > 0 && Input.GetTouch(0).phase == TouchPhase.Began*/)
        {
        var ray = Camera.main.ScreenPointToRay(Input.mousePosition);
        RaycastHit hitInfo;
        if (Physics.Raycast(ray, out hitInfo))
        {
        var rig = hitInfo.collider.GetComponent();
        if (rig != null)
        {

        if (Input.touchCount > 0 && Input.GetTouch(0).phase == TouchPhase.Began)
        {
        touchTimeStart = Time.time;
        startPos = Input.GetTouch(0).position;
        }
        }
        if (Input.touchCount > 0 && Input.GetTouch(0).phase == TouchPhase.Ended)
        {
        touchTimeFinish = Time.time;
        timeInterval = touchTimeFinish – touchTimeStart; // zaman hesap
        endPos = Input.GetTouch(0).position;
        direction = startPos – endPos; // hesap
        // rb.isKinematic = false;
        rb.AddForce(-direction.x * throwForceInXandY, -direction.y * throwForceInXandY, throwForceInZ / timeInterval);
        }
        }
        }
        }
        }

      2. yasirkula Avatar

        Şuna benzer bir şey yapmanız gerekebilir:

        using System.Collections;
        using System.Collections.Generic;
        using UnityEngine;
        
        public class AstAddForce : MonoBehaviour
        {
        	public Material hitMaterial;
        	Vector2 startPos; 
        	float touchTimeStart; 
        	[SerializeField]
        	float throwForceInXandY = 5f; 
        
        	[SerializeField]
        	float throwForceInZ = 0f; 
        
        	Rigidbody rb;
        	int fingerId = -999;
        	bool sayimaBasla = false;
        	
        	void Update()
        	{
        		for( int i = 0; i < Input.touchCount; i++ )
        		{
        			Touch parmak = Input.GetTouch( i );
        			if( parmak.phase == TouchPhase.Began )
        			{
        				RaycastHit hitInfo;
        				if( Physics.Raycast( Camera.main.ScreenPointToRay( parmak.position ), out hitInfo ) )
        				{
        					rb = hitInfo.collider.GetComponent<Rigidbody>();
        					if( rb != null )
        					{
        						fingerId = parmak.fingerId;
        						startPos = parmak.position;
        						sayimaBasla = false;
        					}
        				}
        			}
        			else if( parmak.fingerId == fingerId )
        			{
        				if( parmak.phase == TouchPhase.Ended || parmak.phase == TouchPhase.Canceled )
        				{
        					if( sayimaBasla )
        						GucVer( touch.position );
        					else
        						fingerId = -999;
        				}
        				else
        				{
        					if( !sayimaBasla )
        					{
        						if( ( parmak.position - startPos ).sqrMagnitude >= 25 ) // 25 = 5 pixel x 5 pixel
        						{
        							sayimaBasla = true;
        							touchTimeStart = Time.realtimeSinceStartup;
        						}
        					}
        					else
        					{
        						if( Time.realtimeSinceStartup - touchTimeStart >= 0.5f ) // 0.5 saniye max. bekleme süresi
        							GucVer( touch.position );
        					}
        				}
        			}
        		}
        	}
        	
        	void GucVer( Vector2 parmakKonum )
        	{
        		if( rb != null )
        		{
        			Vector2 yon = parmakKonum - startPos;
        			// rb.isKinematic = false;
        			rb.AddForce( yon.x * throwForceInXandY, 0, yon.y * throwForceInXandY, ForceMode.Impulse );
        		}
        		
        		fingerId = -999;
        	}
        }
        
      3. Alperen Demir Avatar
        Alperen Demir

        Yasir Bey iyi günler Unity javascript seçeneğini kaldırdımı acaba ? ben türkçe bir haber yada kaynak bulamadım sadece C# seçeneği var ?

      4. yasirkula Avatar

        Evet son sürümlerle birlikte Javascript desteği sona erdi.

      5. Efe Can Avatar
        Efe Can

        Hocam selamlar,
        umarım sağlıklı ve iyisinizdir 🙂

        Yasir hocam
        googletranslate bir metni ingilizce okunuşunu(sadece kelime olarak) mp3 olarak indirip bir oyunda ses dosyası olarak kullansak ve oyunun tanıtımı için youtube da oyunla ilgili video atsak ses kaydından dolayı telif yermiyiz ?

        Saygılarla

      6. yasirkula Avatar

        Bu konuyu araştırdım ama kimse kesin bir cevap veremiyor çünkü hiçbir yerde bununla ilgili Google’ın yazdığı kesin bir cevap yok gibi. Şahsen ses kaydının YouTube’da kullanılmasında sakınca olacağını sanmıyorum ama oyunda ses dosyası olarak kullanmak konusunda kararsızım.

  75. Ozan Aksoy Avatar
    Ozan Aksoy

    BENİM KÖYÜM

    Baharda şenlenir bağı, bahçesi
    Kokusu başkadır benim köyümün
    Unutturur adama gamı, kederi
    Havası başkadır benim köyümün
    XXX
    Akşam olur herkes döner evine
    Can kurban inan ki benim köyüme
    Gülabi’nin torunları derler bizlere
    Özü başkadır benim köyümün
    XXX
    Yeşil yeşil meşeleri var dağında
    Meyve ağaçları çiçek açar bağında
    Her çeşit otlar yeşerir toprağında
    Yeşili başkadır benim köyümün
    XXX
    Köyümün kenarından akar çayı
    Kıvrım kıvrım dolanır sular tarlayı
    Unuttum sanma orda olmayı
    Dostluğu başkadır benim köyümün
    XXX
    Yaz gelince çıkarlar yaylaya
    Gurbetçiler hasretle döner sılaya
    Benden selam olsun Aziz Ağa’ya
    Sevgisi başkadır benim köyümün

    İbrahim SEVİNDİK