• 21-05-2022, 20:13:53
    #1
    Üyeliği durduruldu
    selam arkadaşlar javascript ile oyun yapıyorum fakat iki kutu birbirine değdiği zaman pencerede alert açılcak yani uyarı vercek onu yapamadım iki kutunun birbirine temas anını yakalanmasını nasıl yaparız bir bilgisi olan varmı ??
  • 21-05-2022, 20:22:44
    #2
    AABB collision algoritması ile basitçe halledilebilir.

    https://developer.mozilla.org/en-US/...sion_detection
  • 21-05-2022, 20:24:55
    #3
    Üyeliği durduruldu
    RaSGooL adlı üyeden alıntı: mesajı görüntüle
    AABB collision algoritması ile basitçe halledilebilir.

    https://developer.mozilla.org/en-US/...sion_detection
    hocam ben bu koddan bişi anlamadımki bu kodu kopyalayıp yapıştırcazmı şimdi ?
  • 21-05-2022, 20:30:11
    #4
    Betmen35 adlı üyeden alıntı: mesajı görüntüle
    hocam ben bu koddan bişi anlamadımki bu kodu kopyalayıp yapıştırcazmı şimdi ?
    JavaScript bildiğini düşünerek attım. Kodda anlaşılmayan bir kısım yok bence.
    Senin için basite indirgiyorum.

    /*
    Rect = {x, y, w (width), h(height)}
    */
    function intersect(rect1, rect2) {
      if (rect1.x < rect2.x + rect2.w &&
        rect1.x + rect1.w > rect2.x &&
        rect1.y < rect2.y + rect2.h &&
        rect1.h + rect1.y > rect2.y) {
        // collision detected!
      } else {
        // no collision
      }
    }
  • 21-05-2022, 20:33:38
    #5
    Üyeliği durduruldu
    RaSGooL adlı üyeden alıntı: mesajı görüntüle
    JavaScript bildiğini düşünerek attım. Kodda anlaşılmayan bir kısım yok bence.
    Senin için basite indirgiyorum.

    /*
    Rect = {x, y, w (width), h(height)}
    */
    function intersect(rect1, rect2) {
      if (rect1.x < rect2.x + rect2.w &&
        rect1.x + rect1.w > rect2.x &&
        rect1.y < rect2.y + rect2.h &&
        rect1.h + rect1.y > rect2.y) {
        // collision detected!
      } else {
        // no collision
      }
    }
    hocam bunun javascript bilip bilmemekle alakası yok burda rect.x yazılmış bu ne anlama geliyor??
  • 21-05-2022, 20:37:44
    #6
    Betmen35 adlı üyeden alıntı: mesajı görüntüle
    hocam bunun javascript bilip bilmemekle alakası yok burda rect.x yazılmış bu ne anlama geliyor??
    Bunu düşünerek verdiğim kod blogun en üstüne Rect nasıl bir veri olduğunu yazdım.
    Rect bir Object. x, y değerleri pozisyonu tutuyor. w ve h ise width ve height değerleri.
    2D oyun yaptığını düşünüyorum. 3D ise durum değişir.
  • 21-05-2022, 20:39:41
    #7
    Üyeliği durduruldu
    RaSGooL adlı üyeden alıntı: mesajı görüntüle
    Bunu düşünerek verdiğim kod blogun en üstüne Rect nasıl bir veri olduğunu yazdım.
    Rect bir Object. x, y değerleri pozisyonu tutuyor. w ve h ise width ve height değerleri.
    2D oyun yaptığını düşünüyorum. 3D ise durum değişir.
    evet 2d ama bunu canvas ilemi yapmış?canvas ücretli biliyorum peki biz oyun motoru kullanmadan javascript ile bir oyun yapamazmıyız? sizin bu rect dediğiniz şey react.js mi ?
  • 21-05-2022, 20:45:26
    #8
    Betmen35 adlı üyeden alıntı: mesajı görüntüle
    evet 2d ama bunu canvas ilemi yapmış?canvas ücretli biliyorum peki biz oyun motoru kullanmadan javascript ile bir oyun yapamazmıyız? sizin bu rect dediğiniz şey react.js mi ?
    Rect, Rectangle kısaltması. Grafik alanında genellikle Rect olarak adlandırılıyor. Belli bir konumu, genişliği ve yüksekliği olan bir nesne. Yani kısaca Dikdörtgen.

    Canvas ücretli değil. HTML5 Canvas olarak aratabilirsin.
    Sen nasıl bir oyun yapıyorsun? Umarım div felan uğraşmıyorsundur.
    Canvas kullan. Gerekirse WebGL de kullanabilirsin. Programlaması zevklidir.
  • 21-05-2022, 20:46:30
    #9
    Üyeliği durduruldu
    RaSGooL adlı üyeden alıntı: mesajı görüntüle
    Rect, Rectangle kısaltması. Grafik alanında genellikle Rect olarak adlandırılıyor. Belli bir konumu, genişliği ve yüksekliği olan bir nesne. Yani kısaca Dikdörtgen.

    Canvas ücretli değil. HTML5 Canvas olarak aratabilirsin.
    Sen nasıl bir oyun yapıyorsun? Umarım div felan uğraşmıyorsundur.
    Canvas kullan. Gerekirse WebGL de kullanabilirsin. Programlaması zevklidir.
    valla divlerle falan uğraşıyorum hocam