Unity de bir objenin diğer objeye çarpmasını anlamak için Collision veya Trigger kullanılır.Bu ikisinin temel farkı Triggerde objemizin objelerin içinden geçebilmesidir.

  • Collision

Collisionun çalışması için Colider componentinin ve rigidbody  ekli olması gerekir.3 tür fonksionu vardır.

             OnCollisionEnter
    OnCollisionEnter bir objenin çarpma durumunda 1 kere çalışır.

    void OnCollisionEnter(Collision col) {
     //her hangi bir objeye çarptığında çalışır
     if (col.gameObject.tag == "Cupe") {
     //tagı Cupe olan bir objeye çarptığında çalışır
     }
     if (col.gameObject.name == "Cupe") {
     //ismi Cupe olan bir objeye çarptığında çalışır
     }
     }

                OnCollisionStay
    OnCollisionStay bir objenin çarpma durumu sürdüğü sürece çalışır.

    void OnCollisionStay(Collision col) {
     //her hangi bir  objeye çarptığında çalışır
     if (col.gameObject.tag == "Cupe") {
     //tagı Cupe olan bir nesneye çarptığında çalışır
     }
     if (col.gameObject.name == "Cupe"){
      //ismi Cupe olan bir objeye çarptığında çalışır
     }
     }
                OnCollisionExit
    OnCollisionExit bir objenin çarpma durumu bittiğinde 1 kere çalışır.

    void OnCollisionExit(Collision col) {
     //her hangi bir objeye çarpmayı bıraktığında çalışır
     if (col.gameObject.tag == "Cupe") {
     //tagı Cupe olan bir objeye çarpmayı bıraktığında çalışır
     }
     if (col.gameObject.name == "Cupe")  {
     //ismi Cupe olan bir objeye çarpmayı bıraktığında çalışır
     }
     }


    • Trigger

    Trigger çalışması için Colider componentinin ve rigidbody  ekli olması gerekir.Ayrıca Colider componentinin içindeki Is triggerin işaretli olması gerekir .3 tür fonksionu vardır.

                 OnCollisionEnter
      OnTriggerEnter bir objenin çarpma durumunda 1 kere çalışır.

       void OnTriggerEnter(Collider col)
          {
              //herhangi bir objeye çarptığında çalışır

              if (col.gameObject.tag == "Cupe")
              {
                //tagı Cupe olan bir objeye çarptığında çalışır
              }
              if (col.gameObject.name == "Cupe")
              {
                  //ismi Cupe olan bir objeye çarptığında çalışır
              }
          }

                  OnCollisionStay
      OnTriggerStay bir objenin çarpma durumu sürdüğü sürece çalışır.

      void OnTriggerStay(Collider col) {
       //her hangi bir objeye çarptığında çalışır
       if (col.gameObject.tag == "Cupe") {
       //tagı Cupe olan bir objeye çarptığında çalışır
       }
       if (col.gameObject.name == "Cupe") {
       //ismi Cupe olan bir objeye çarptığında çalışır
       }
       }
                  OnCollisionExit
      OnTriggerExit bir objenin çarpma durumu bittiğinde 1 kere çalışır.

      void OnTriggerExit(Collider col) {
       //her hangi bir objeye çarpmayı bıraktığında çalışır
       if (col.gameObject.tag == "Cupe") {
       //tagı Cupe olan bir objeye çarpmayı bıraktığında çalışır
       }
       if (col.gameObject.name == "Cupe") {
       //ismi Cupe olan bir objeye çarpmayı bıraktığında çalışır
       }
       }
      Axact

      İslevselBilgi

      Emre Oy Tarafından Tasarlanmıstır

      Post A Comment:

      0 comments: