Hepinize merhaba,

Unity’nin OnGUI fonksiyonuyla oluşturulan arayüz elemanları (butonlar, sliderlar vb.) ve GUI Texture‘larla oluşturulan butonlar multi-touch desteklemez. Yani diyelim ekranda iki buton varsa bu ikisine aynı anda basamazsınız; ekranda birden çok parmak olduğunda GUI elemanları düzgün çalışmazlar. Bunun bir örneği araba oyunlarında aynı anda hem direksiyonu tutarken hem de gaza basamamaktır.

Bir arayüz elemanının multi-touch desteklemesi, ekrandaki tüm parmakları depolayan Input.touches array’ini (dizi) kullanıp kullanmamasına bağlıdır. Bu array’den faydalanarak ekrandaki butonlara multi-touch desteği vermek mümkündür. Bize bu konuda yardımcı olacak olan fonksiyonlar Rect.Contains (OnGUI’de çizilen butonlar için) ve GUITexture.HitTest‘tir (GUI Texture componenti ile oluşturulan butonlar için).

A) GUI Texture İle Oluşturulan Butonlar

Elimizde “public var buton : GUITexture;” diye bir değişken olsun ve bu değişkene multi-touch destekleyecek olan GUI Texture objesi değer olarak verilmiş olsun.

Eğer GUI Texture’a dokunulduğu anda bir kodun tek seferlik çalışmasını istiyorsanız şu scripti kullanın:

#pragma strict

public var buton : GUITexture;

function Update() 
{
	for( var t : Touch in Input.touches )
	{
		if( t.phase == TouchPhase.Began && buton.HitTest( t.position ) )
		{
			// yapılacaklar buraya
		}
	}
}

Eğer parmak GUI Texture’nin üzerinde olduğu sürece bir kodun çalışmasını istiyorsanız (mesela gaz pedalına dokunmak) şu scripti kullanın:

#pragma strict

public var buton : GUITexture;

function Update() 
{
	for( var t : Touch in Input.touches )
	{
		if( buton.HitTest( t.position ) )
		{
			// yapılacaklar buraya
		}
	}
}

B) OnGUI Fonksiyonunda Oluşturulan Butonlar

İki çeşit GUI butonu bulunmakta: GUI.Button ve GUI.RepeatButton. İlki butona basıldığı anda tek seferlik çalışırken ikincisi butona basılı tutulduğu sürece sürekli çalışır.

Diyelim ki oyunumuzda ekranda iki buton var: gaz butonu (RepeatButton) ve kameranın açısını değiştirmeye yarayan bir buton (Button). Normalde bu iki butonu şöyle oluştururuz (bu, multi-touch desteklemeyen koddur):

#pragma strict

function OnGUI() 
{
	if( GUI.Button( new Rect( 0, 0, 200, 100 ), "Kamera Açısı" ) )
	{
		// kamera açısını değiştirmeye yarayan kod
	}
	
	if( GUI.RepeatButton( new Rect( 0, 150, 200, 100 ), "GAZ" ) )
	{
		// gaza basılı tutulurken yapılacak şeyler
	}
}

Bu kodu şöyle değiştirerek multi-touch desteği verebilirsiniz:

#pragma strict

private var kameraButonRect : Rect;
private var gazButonRect : Rect;

function Start()
{
	kameraButonRect = new Rect( 0, 0, 200, 100 );
	gazButonRect = new Rect( 0, 150, 200, 100 );
}

function Update() 
{
	for( var t : Touch in Input.touches )
	{
		var parmakKonum : Vector2 = new Vector2( t.position.x, Screen.height - t.position.y );
		
		if( t.phase == TouchPhase.Began && kameraButonRect.Contains( parmakKonum ) )
		{
			// kamera açısını değiştirmeye yarayan kod
		}
		else if( gazButonRect.Contains( parmakKonum ) )
		{
			// gaza basılı tutulurken yapılacak şeyler
		}
	}
}

function OnGUI() 
{
	GUI.Button( kameraButonRect, "Kamera Açısı" );
	GUI.RepeatButton( gazButonRect, "GAZ" );
}

Bu kısa dersin sonuna geldik. Sonraki derslerde görüşmek üzere!

yorum
  1. gökhan dedi ki:

    konuyla alakalı değil ama

    using System.Collections;

    public class tower12 : MonoBehaviour {

    public GameObject bullet;
    public float bulletSpeed = 1.0f;
    public float fireRate = 1.0f;

    // Use this for initialization
    void Start ()
    {
    InvokeRepeating (“SpawnBullet”,fireRate,fireRate);
    }

    void SpawnBullet()
    {
    GameObject target = GameObject.FindGameObjectWithTag (“Enemy”);
    GameObject newBullet = Instantiate(bullet,transform.position,bullet.transform.rotation) as GameObject;
    newBullet.rigidbody.AddForce((target.transform.position – transform.position).normalized * bulletSpeed,ForceMode.VelocityChange);
    }
    }

    oyunu çalıştırdıktan 2 saniye sonra hata alıyorum
    hata:NullReferenceException:……..
    tower12.SpawnBullet()(at assets/script/tower12.cs:20)
    şimdiden yardımlarınız için teşekkürler

  2. muzaffer dedi ki:

    merhabalar. ekranda iki buton oluşturdum diyelim, birsi sağ diğeri solda. ve bu butonların görevlerinin, sağ tuşa basınca karakterin sağ yönde 360 derece,sol tuşa basınca sol yönde 360 derece döndürmesini sağlamak istiyorum. (yanlız sol tuşa bastığında bi kerede tam 360 derece dönmesini istemiyorum.basılı tuttuğu kadar belli bir hız ile dönmesini sağlamaya çalışıyorum.) hangi kodu kullanmalıyım ? . yardım ederseniz çok sevinirim…

    • yasirkula dedi ki:

      Sağ tuşa basınca çalıştırmanız gereken kod şunun gibi birşey olacak: “transform.Rotate( new Vector3( 0, 360, 0 ) * Time.deltaTime );”

      Sol tuşa basınca ise 360 değil -360 derece dönecek şekilde düzenleyin.

  3. muzaffer dedi ki:

    3 tane gui texture buttonum var diyelim.biri sol diğeri sağ diğeri ise ateş etme buttonu.ben sağa sola bakma scriptinin kodlarını her yerde aradım ama bulamadım şimdi siz kodu vermişsiniz çok teşekkür ederim ancak , şöyle soylemek gerekirse oyunumdaki çoğu şeyi yaptım. bayadır uğraşıyorum.bi takım şeylerde takıldım.yardımcı olursanız projem bitecek.ve benden gerçektende baya bi fazla hayır duası alıcaksınız.çünkü hiç bir yerde sizin gibi yardım eden ve bu kadar güncel olan bir site bulamadım. takıldığım yerler şunlar ;

    ekranda üç buton gözükmesini istiyorum dediğim gibi sol button ve sağ buttoon ve ateş etme butonnu. silah scriptlerim var ama script pc platformu için. yapmak istediğim ; ateş etme buttonuna basınca elimdeki silahın ateş etmesini istiyorum.ancak ben daha buttonları ekranda dahi göstermeyi beceremedim. açıklayıcı bir şekilde anlatırsanız. sırf ben değil diğer arkadaşlarında yararlanıcağına inanıyorum. saygılarımla…

    • yasirkula dedi ki:

      Kod şunun gibi birşey olacak; elimden daha fazlası gelmiyor:

      #pragma strict
       
      private var sagButon : Rect;
      private var solButon : Rect;
      private var atesButon : Rect;
       
      function Start()
      {
      	solButon = new Rect( 0, Screen.height - 100, 100, 100 );
      	sagButon = new Rect( Screen.width - 100, Screen.height - 100, 100, 100 );
      	atesButon = new Rect( Screen.width / 2 - 50, Screen.height - 100, 100, 100 );
      }
       
      function Update()
      {
          for( var t : Touch in Input.touches )
          {
              var parmakKonum : Vector2 = new Vector2( t.position.x, Screen.height - t.position.y );
               
              if( solButon.Contains( parmakKonum ) )
              {
                  transform.Rotate( new Vector3( 0, -360, 0 ) * Time.deltaTime );
              }
              else if( sagButon.Contains( parmakKonum ) )
              {
                  transform.Rotate( new Vector3( 0, 360, 0 ) * Time.deltaTime );
              }
      		else if( atesButon.Contains( parmakKonum ) )
      		{
      			// ateş ettirme kodu buraya
      		}
          }
      }
       
      function OnGUI()
      {
          GUI.Button( solButon, "SOL" );
      	GUI.Button( atesButon, "ATES ET" );
          GUI.Button( sagButon, "SAG" );
      }
      
  4. hakantarik dedi ki:

    hocam butona dokundugunda istediğim linke gitsin istiyorum.oyunuma more apps koyacagım aslında

  5. çaylak dedi ki:

    #pragma strict

    private var gazButonRect : Rect;
    public var ziplamagucu : int=10;

    function Start()
    {

    gazButonRect = new Rect( Screen.width*0.9, Screen.height*0.2, Screen.width*0.1, 100 );
    }

    function Update()
    {
    for( var t : Touch in Input.touches )
    {
    var parmakKonum : Vector2 = new Vector2( t.position.x, Screen.height – t.position.y );
    }

    if( gazButonRect.Contains( parmakKonum ) )
    {
    rigidbody.AddForce(Vector3.up*ziplamagucu);
    }
    }

    function OnGUI()
    {

    GUI.RepeatButton( gazButonRect, “jump” );
    }

    ben böyle bişey yaptım kübü zıplatmak içinn ünitye attım hata falanda almıyorumm kübe güç neden uygulamıyorr

  6. çaylak dedi ki:

    #pragma strict

    public var ziplamagucu : int=10;

    function OnGUI()
    {
    if( GUI.Button( new Rect( 0, 0, 200, 100 ), “Kamera Açısı” ) )
    {

    rigidbody.AddForce(Vector3.up*ziplamagucu);
    }
    }

    bunu sınırlandırabilirmiyiz mesele 2 snde 1 kez basabilelimm .sürekli butona basmamız hosolmuyo haritadan cıkabiliyoo

    • yasirkula dedi ki:

      yield WaitForSeconds’ı araştırın.

      • çaylak dedi ki:

        usta seninde başınıı şişirdim ama son sorumm bıdaha herşeyim hazır olucak:D carakterim duvara yaklaşınca yavaşlıyo sürtünmeyle amular draglamı alakalıı dedidm odadeğill nasıl yapıcazki hangi konubaşlında arıcamıda bilemedim teşekkürler şimdiden.

      • yasirkula dedi ki:

        Physics Material’daki Friction’larla alakalı olabilir.

  7. çaylak dedi ki:

    dediğiniz gibii düzeldii şimdii teşekkürler

  8. günay dedi ki:

    if( Input.touchCount == 1 && Input.GetTouch(0).phase == TouchPhase.Began && !engeleCarptim && Input.GetTouch(0).position.x < Screen.width / 2 )

    hocam bu kodu multi touch nasıl yapabilirim

  9. Can dedi ki:

    hocam ben ekranın sol alt tarafına iki tane buton oluşturup biri sağa diğeri sola gitmeyi sağlıyacak , ekranının sağ alt tarafıfna da zıplama tuşu eklemek istiyorum. butonlara basılınca aynı fonksiyonu yapıp durmasını istiyorum. bunun için
    #pragma strict

    public var buton : GUITexture;

    function Update()
    {
    for( var t : Touch in Input.touches )
    {
    if( buton.HitTest( t.position ) )
    {
    // yapılacaklar buraya
    }
    }
    }
    bu kodu mu kullanmalıyım? yoksa başka bir kodmu?

    bide ben bu kodu guitextureye mi atıyacağım?

    ben sağ sol için bu kodları kullanıyodum klavyede ama android için // yapılacaklar buraya olan yere bu kodları yazsam calışmaz nasıl düzeltmeliyim?
    if(Input.GetKey(KeyCode.RightArrow))
    {
    v3NextPos.x = this.transform.position.x + fSpeed;
    v3NextPos.y = this.transform.position.y;
    v3NextPos.z = 0;
    this.transform.position = v3NextPos;
    }
    if(Input.GetKey(KeyCode.LeftArrow))
    {
    v3NextPos.x = this.transform.position.x – fSpeed;
    v3NextPos.y = this.transform.position.y;
    v3NextPos.z = 0;
    this.transform.position = v3NextPos;
    }
    if(Input.GetKeyDown(KeyCode.UpArrow))
    {
    rigidbody.AddRelativeForce(transform.up * fJumpSpeed, ForceMode.Impulse);
    }

    • yasirkula dedi ki:

      Kodu hareket etmesini istediğiniz objeye (karaktere) vereceksiniz, buton’a değer olarak GUI Texture’yi vereceksiniz. İlk attığınız kod tek bir buton için, onu genişletip üç buton için olan versiyonunu yazacaksınız.

      • teknolojikblogcan dedi ki:

        Kodu yazamadım galiba çalışmıyor. sadece sağa gitsin diye uğraştım ama olmadı. bide ben bunu sol tuş ve zıplama tuşu içinde yapcam nasıl genişleteceğim hocam bu kodu?
        #pragma strict
        public var buton : GUITexture;
        public float fSpeed;
        Vector3 v3NextPos;
        public float fJumpSpeed;

        function Start () {

        }

        function Update()
        {
        for( var t : Touch in Input.touches )
        {
        if( buton.HitTest( t.position ) )
        {
        v3NextPos.x = this.transform.position.x + fSpeed;
        v3NextPos.y = this.transform.position.y;
        v3NextPos.z = 0;
        this.transform.position = v3NextPos;
        }
        }
        }

      • yasirkula dedi ki:

        Genişletmek için şöyle yapacaksınız:

        if(buton1.HitTest(blabla))
        {}
        else if(buton2.HitTest(blabla))
        {}
        else if(buton3.HitTest(blabla))
        {}

        Kodun neden çalışmadığını çözmek size kalmış.

  10. Can dedi ki:

    saolasın hocam,

  11. Can dedi ki:

    hocam unityde butonlara tiklayinca calistiramiyorum, ancak telefona atinca butonlar calisiyo, unityde calisip calismadigini kontrol etmemin bir yolu var mi ?

    • yasirkula dedi ki:

      Input.touches kullanılan kodlar sadece mobilde çalışır, PC’de çalıştırmanın kısa bir yolu yok.

      • Can dedi ki:

        teşekkürler artık tablete yükleyip denerim, hocam ben kameranın oyuncuyu takip etmesi için oyuncuma cameramı parent olarak ekledim , fakat oyuncu kameranın hep ortasında olarak takip ediyor, yani oyuncu zıplarsa kamerada zıplıyor sanki kamerayla oyuncu bütünmüş gibi hoş olmayan bir görüntü oluşuyor. kademe kademe kamera oyuncuyu takip etse daha iyi olacak ama bunu nasıl yapabilirim bulamadım, sence nasıl yapmalıyım?

      • yasirkula dedi ki:

        Bunun için Google’a Unity Smooth Camera Follow Script yazın bir şeyler bulursunuz.

  12. Şahin dedi ki:

    Bu Kodu Sizin Anlattığınız gibi nasıl multi touch yapabilirim?
    Amacım Yürürken Zıplamak Ve yürüken Kazmayla Vurmak
    Teşekkürler,

    *Kod admin tarafından temizlendi.*

  13. Şahin dedi ki:

    Çok Teşşekürler Hatayı Düzlettim ve Oldu

  14. ahmet dedi ki:

    mesela sol butonun karakteri hareket ettirmesini, sağ butonun karekteri zıplatmasını istiyorum
    bunu nasıl yaparım
    yardım edebilirmisiniz??

    • yasirkula dedi ki:

      Soldaki butona basınca buton1 isimli bir boolean true olsun, sağdakine basınca buton2 isimli bir boolean true olsun. Karakteri hareket ettirme kodunda bir if koşulu ile buton1’in true olup olmadığını kontrol edin. Benzer şekilde, zıplama kodunda da bir if koşulu ile buton2’nin true olup olmadığını kontrol edin.

  15. Ahmet dedi ki:

    ben ekranın sağ alt köşesine bi tane araba için gaz butonu eklemek istiyorum nasıl yapabilirim?

  16. omer dedi ki:

    var Yazdir: GUIText;
    Yazdir.text = dakika.ToString() + “:” + saniye.ToString(“D2”);

    bunun gibi bir kodum var ama GUI TEXT kullanmak istemiyorum bunu 3DTEXT’e nasıl yazdırabilirim?

  17. kaco1322 dedi ki:

    Sa konu disi
    Yaptigim oyuna gaz ve firen butonunu nasil yapabilirim.

  18. erkan dedi ki:

    Yasir bey. oyunu sadece geniş ekranda oynatmak istiyorum.Napmalıyım….

    • yasirkula dedi ki:

      “Player Settings”te “Default Orientation” değerini “Landscape Left” yaparsanız oyun hep yatay ekran (herhalde tüm cihazlar için geniş ekrana denk geliyor bu) oynanır.

      • erkan dedi ki:

        teşekkürler.Tek bir sorunum kaldı .Bu rect butonları unity ekranımda istediğim yerde çıkıyor.Ama androidde olmuyor.Ekranın köşelerini tutmuyor.
        buton = new Rect( 900, 494, 80, 80 );

      • yasirkula dedi ki:

        Ekranın genişliği değiştikçe soldan 900. pixel’in konumu sağa sola kayacaktır, normal birşey. Screen.width ve Screen.height değişkenlerini araştırın.

  19. SEFA dedi ki:

    UNİTY 4.6.2 De yapmak istiyorum GUITexture olmadığından yapamıyorum yardım edermisiniz?

  20. Abdullah dedi ki:

    hocam merhaba mesela bir oyun yaapıyorum yön butonlarını kendi cizdiğim şekilde yapabilirmiyim ypabilirsem nasıl bide mesela kodu girdik sağ butona basınca sağa gidiyor fakat ben bu karakter sağa giderken spritelerin oynamasını istiyorum (oyun 2d) bunu nasıl yapabilirim

  21. esra dedi ki:

    ben çalışma zamanında dinamik olarak butonlar oluşturmak istiyorum. Yani bi tane butonum var ona tıklayınca yni iki tane buton oluşacak tekrar tıkladığımda ilk oluşan iki buton silinecek ve yerine yeniden benim belirlediğim sayıda buton oluşacak bunu nasıl yapbiliirm acaba??? biraz araştırdım da sanırım addlistener() denen bi method varmış bunun için eğer bunu kullanmak gerekiyorsa addlistener() kullanımı hakkında bilgi verebilir misiniz acaba ???

    • yasirkula dedi ki:

      Düz Java kullanarak kod yazıyor olsaydınız butona tıklandığını anlamak için AddListener gerekecekti ama Unity’de butona tıklandığını anlamak için listener’a gerek yok.

      Sizin durumunuzda ekranda yer alacak olan buton sayısı belirsiz olduğu için bir ArrayList (ya da List) gerekecek gibi. Bu List’te, ekrana çizdirilecek butonların Rect’lerini depolayacaksınız. Başka bir List’te ise bu butonların üzerinde yazacak olan String’leri depolayabilirsiniz. Bunun dışında daha tonla ayar yapmanız gerekecektir; kolay bir iş olmadığı için cevabı burada noktalıyorum.

      • esra dedi ki:

        hmm ben unity alanında yeniyim internette unity bloglarında gördüm addlistener’ı o yüzden sordum. Bilgilendirmeleriniz için teşekkür ediyorum

  22. nuri dedi ki:

    hocam UI butonlar kendiliğinden multitouch destekliyor sanırım.
    biz UI butonun multitoch olmasını istemiyorsak ne yapmalıyız..tesekkürler.

  23. Emre dedi ki:

    Hocam merhaba. Şimdi ben oyunumda tasarımı falan yaptım sadece karakterimi hareket ettirmek kaldı. Oyun 2boyutlu bir oyun. 2 buton yapıcam sizin yönteminizle ama butona basınca sola gidicek, 2. butona basınca sağa gidicek. yapılacaklar buraya kısmına ne yazmam gerekir? Teşekkürler

    • yasirkula dedi ki:

      Bunun için internette “Unity 2D character movement” vari bir araştırma yapmanızı tavsiye ederim, en iyi oradan öğrenebilirsiniz hareket kodlarını.

  24. dwdwa dedi ki:

    merhaba ben bir kamera yı nasıl klonlayabilirim ? online tabanda instantiate ile karakteri klonluyorum fakat kamerada sıkıntı veriyor yarıdımcı olursanız sevinirim

    • yasirkula dedi ki:

      Kamera da klonlanır ama yeni kameranın aktif olması için eski kameranın tag’ini Untagged, yeni kameranın tag’ini ise MainCamera yapmalısınız.

  25. Sefa DOĞAN dedi ki:

    İyi günler ben Unity 5.0 kullanıyorum ve bende Gui Texture diğe veya button diğe birşey yok Uİ Button var onu kullanim dedim ve sahneme koydum dediğiniz kodu yazdım ve deneme olarak SendMessage(“Touch”); dedimki acaba çalışıyormu diğe denim fakat butona tıklasamda falan görmüyo beni

    Birde ben bu buton ile karakterimi ileri geri hareket ettiricem karakterim bir kare yukarı aşağı sağ sol yapıcak
    Yardımcı olursanız minnettar kalırım..

  26. cihan bey dedi ki:

    function OnMouseDown kodu için multitouch nasıl kullanabiliyoruz ? teşekkürler

  27. ibrahim dedi ki:

    Hocam ben unity 5 kullanıyorum,oyunumu c# ile kodluyorum yardımcı olursanız sevinirim.Dokunmatik ayarları yaparsam oyunum biticek ve yayınliyacağım.Benim yapmak istediğim ve yapamadığım şey şu.Oyun 2d platform oyunu ” koşma(sağa ve sola),ateş etme,zıplama” 3 eylem için 3 buton yaptım,Karakter koşarken zıplayıp ateş edicek.Ben zıplama ve ateş etme eylemlerini butona basınca çalıştırılacaklar listesinden ayarladım.Sıkıntı burda ekranın sol tarafına bir joystick koydum joystic’i sola çekince sola sağa çekinçe sağa gitmesini istiyorum birde joystic kullanılırken zıplama ve ateş etme fonksyonlarıda çalışması gerektiğinden açıkçası bişey yapamadım beynim yandı 1 haftadır uğraşıyorum bu yüzden oyunumu yayınlayamıyorum.Yardım ederseniz çok minnettar olurum bu sorunu başvurabileceğim başka birisi yok.

  28. Ekrem dedi ki:

    Selam abi nereye yazacagimi bilemedigim icin buraya yaziyorum kusura bakma ben unity de oyun yaptim ve oyunum da bluetooth ile oynamasi istiyorum yapilirmi yapiliyorsa nasil yapilir biliyormusun

  29. ahmet dedi ki:

    #pragma strict

    internal var animator:Animator;
    var v:float;
    var h:float;
    var sprint :float;
    function Start () {

    animator=GetComponent(Animator);

    }
    function Update () {

    v=Input.GetAxis(“Vertical”);
    h=Input.GetAxis(“Horizontal”);
    Sprinting();
    }
    function FixedUpdate()
    {
    animator.SetFloat(“walk”,v);
    animator.SetFloat(“Turn”,h);
    animator.SetFloat(“Sprint”,sprint);

    }
    function Sprinting()
    {
    if(Input.GetButton(“Fire1”))
    {
    sprint=0.2;

    }
    else{
    sprint=0.0;
    }

    }

    hocam bunlar sahnedeki karekterimi hareket ettirme kodlarım bilgisayarda tuşlarla karekter yürüme dönme ve koşma hareketlerini yapıyor.Bunu nasıl android cihazda kullanılır hale getirebilirim.Butonlarla yön tuşları olabilir yada kamerayı çevirdiğim yöne doğru yada parmağımı takip etmesi şeklinde bir çözüm üretebilirmisiniz.Yardımlarınız için teşekürler.

  30. ahmet dedi ki:

    Hocam yukardaki soruya cevap verme fırsatınız varsa yardım edebilirmisiniz.Şimdiden teşekürler.

  31. ahmet dedi ki:

    hocam kusura bakmayın ama bunu joystick olayı ile nasıl yapabilirim.Yardımlarınız için teşekürler.

  32. Oğuz dedi ki:

    hocam 3 tane gameobject olan bir projede üzerine dokunduğum objeyi geriye doğru çekip bırakarak fırlatmak istiyorum bunun için hangi kodu kullanmalıyım.

  33. Senturk dedi ki:

    SelamunAleyküm Hocam Flash da ActionScript kodu kullanmaya çalışıyorum bu yön tuşlarını orada oluşturamıyorum yardımcı olabilirmisiniz acaba bir bilginiz varsa.

  34. razrone dedi ki:

    Yasir hocam android için ekranın herhangi biryerine tıkladığımda karakteri zıplatacak scripti nasıl yazabilirim acaba ayrıca bu scripti sizin verdiğiniz joystick ile aynı anda nasıl kullanabiliriz

    • yasirkula dedi ki:

      Input.GetMouseButtonDown(0) fonksiyonu, ekranda herhangi bir yere tıklayınca true döndürür. Ancak eğer ki joystick ile beraber çalışmasını istiyorsanız o zaman her yere tıklayınca zıplamak uygun olmaz çünkü bu durumda joystick’e tıklayınca da zıplar. Ekrandaki parmakların (Input.touches) üzerinden geçmeli, ekrana yeni dokunan parmakları (phase==TouchPhase.Began) bulmalı ve bir parmağın konumu (position) joystick’in olmadığı bir yerde ise (mesela ekranın sağ yarısı)(position.x>Screen.width/2) o zaman zıplama yapmalısınız. Başlangıç için şu derse bakabilirsiniz: https://yasirkula.com/2013/07/17/unity-ile-androide-uygulama-gelistirmek-1-dokunmatik-ekran-entegrasyonu/

  35. BayX dedi ki:

    Hocam Benim Bir Sorum Olacak Multi Touch Desteğini Uİ.Buton üzerinde Yapabilirmiyim Yapabilirsem Nasıl ?

  36. Onur dedi ki:

    Bu kodları hangi objenin içine atacağız ?

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Connecting to %s