2016-03-29 34 views
1

Böylece bir bloğu taşıyabileceğiniz basit bir 2B ayar yaptım. Fakat başka bir hareketli grafiğe (duvar) tamamen yapışamam.Nesneler arasındaki boşluğu giderin

Ekran Görüntüsü: enter image description here

Müfettiş ayarları duvar:

enter image description here

Müfettiş ayarları oyuncu:

enter image description here

PlayerMovement Senaryo:

using UnityEngine; 
using System.Collections; 

public class PlayerMovement : MonoBehaviour { 

    public KeyCode moveUp; 
    public KeyCode moveDown; 
    public KeyCode moveLeft; 
    public KeyCode moveRight; 

    public float speed = 10f; 

    // Use this for initialization 
    void Start() { 

    } 

    // Update is called once per frame 
    void FixedUpdate() { 

     Vector2 v = rigidbody2D.velocity; 

     if (Input.GetKey (moveUp)) { 
      v.y = speed; 
      v.x = 0; 
      rigidbody2D.velocity = v; 
     } else if (Input.GetKey (moveDown)) { 
      v.y = speed * -1; 
      v.x = 0; 
      rigidbody2D.velocity = v; 
     } else if (Input.GetKey (moveRight)) { 
      v.x = speed; 
      v.y = 0; 
      rigidbody2D.velocity = v; 
     } else if (Input.GetKey (moveLeft)) { 
      v.x = speed * -1; 
      v.y = 0; 
      rigidbody2D.velocity = v; 
     } 
     else 
     { 
      v.x = 0; 
      v.y = 0; 
      rigidbody2D.velocity = v; 
     } 
    } 
} 

Ben bu benim ilk birlik oyunu olduğu için bu alanı oluşturabilirsiniz hiçbir fikrim yok.

cevap

0

Bunun nedeni, grafiğinizin bu boş kenarlığa sahip olmasından kaynaklandığından emindim. Bunu düzeltmek için, 'oynatıcı' hareketli grafiğinin tam beyaz piksellerle ve/veya 'duvar' hareketli grafiğinizle dolu olduğundan emin olun. Temel olarak görüntüleri iki kez kontrol edin.

Ayrıca bunu düzeltmek için, görüntü sınırlarına sığacak şekilde çarpıştırıcıyı biraz daha küçük hale getirebilirsiniz.

Son olarak, çarpıştırıcının bir gövdesi düşündüğünüz piksellere karşılık geldiğinden emin olun.

+0

İki kez kontrol ettim ve boş alan bulamadım. Bunlar benim dosyalarım: https://onedrive.live.com/redir?resid=451ADC2A2ED2D0E7!108&authkey=!AAimm1ss1vE_ZfA&v=3&ithint=photo%2cpng, https://onedrive.live.com/redir?resid=451ADC2A2ED2D0E7!109&authkey= AAxqJwKjBiS2n8A & v = 3 & ithint = fotoğraf% 2cpng – Gewoo

+0

Görüyorum, o zaman yanılmışım. Ama yine de çarpışanlarla oynayabilirsiniz. Ama bu senin için bir seçenek değilse bana bildirin. Unity2d'de büyük bir tecrübem yok ama çözümün Fizik 2D altında proje ayarlarında olduğunu düşünüyorum. Bununla birlikte penetrasyon cezası ve diğer ayarlarla oynamaya çalışın. –

+0

Üzgünüm adamım ama çarpışanları değiştirmek benim için bir seçenek değil: – Gewoo