Soru & Cevap

Unity Random Objeler Alan Dışına Düşüyor

22.10.2020 - 11:01

Merhabalar,

Unity ile yılan oyunu yapmaya çalışıyorum. Backgroundda random yiyecekler oluşturmaya çalışıyorum. Ama backgroundun dışına düşüyor. Sebebini anlayamadım.
 

public class FoodHandler 
{
    private Vector2Int foodPosition ;
    private int width;
    private int height;

    public FoodHandler(int width, int height)
    {
        this.width = width;
        this.height = height;

        SpawnFood();
        FunctionPeriodic.Create(SpawnFood, 1f);

    }


    private void SpawnFood()
    {
        foodPosition = new Vector2Int(Random.Range(0, width), Random.Range(0, height));
        GameObject foodGameObject = new GameObject("Snake'sFood", typeof(SpriteRenderer));
        foodGameObject.GetComponent<SpriteRenderer>().sprite = GameAssets.i.foodSprite;
        foodGameObject.transform.position = new Vector3(foodPosition.x, foodPosition.y);
        
    }

}
public class GameHandler : MonoBehaviour {

    private FoodHandler foodHandler;

    private void Start() {

        foodHandler = new FoodHandler(20, 20);
    }

    private void Update()
    {
       
        
    }

}

Bu da görüntüsü :

 

Görsel kaldırıldı.

50 Görüntülenme

1 Cevap

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.

picture-101623-1571923812.png
savasosmnglu
20.12.2020 - 12:13
Merhaba, Genişlik ve yükseklik değerini kendi giriyorsun muhtemelen ordan kaynaklı bir sorun. Onun yerine Screen.width ve Screen.height kullanarak direk ekran verisini alabilirsin. Ek olarak bence food objesini prefab haline getirerek Instantiate metodunu kullanarak yiyecek oluşturmak daha mantıklı duruyor.