自一兩個月前開始使用Unity3D製作遊戲。我已經完成了我的第一款Android遊戲,它在我的手機(Samsung Galaxy S6)和仿真器上(Genymotion用不同的虛擬設備)完美地工作,但是當我在父親的手機上試用時(Nexus 5,Xperia Z1 & Z3 )我意識到它工作不好。各種設備的屏幕尺寸/比率災難
該遊戲是一個2D汽車交通賽車手,所以你必須躲避該產卵者在X軸上隨機位置創建的所有汽車。我不知道Unity3d太多,所以我不能更好地解釋它,對不起... :(
問題是,在我的手機上,敵方汽車從上到下產卵正確,但在我父親的手機上從sceen至底部中間產卵而當你移動你的車向左或向右,它看起來像切斜的另一個問題是
這是敵人的產卵的代碼:。
public class SpawnerEnemigos : MonoBehaviour {
public GameObject[] cochesEnemigos;
int cocheEnemigoID;
public float maxPos = 2f;
public float delayTimer = 0.5f;
private float timer;
// Use this for initialization
void Start() {
timer = delayTimer;
}
// Update is called once per frame
void Update() {
timer -= Time.deltaTime;
if (timer <= 0) {
Vector2 enemigoRandomPos = new Vector2 (Random.Range(-maxPos, maxPos), transform.position.y);
cocheEnemigoID = Random.Range(0,7);
Instantiate (cochesEnemigos[cocheEnemigoID], enemigoRandomPos, transform.rotation);
timer = delayTimer;
}
}
}
請記住,遊戲不應該依賴手機屏幕尺寸。您可能硬編碼了一些適合您S6的屏幕分辨率的值,但不適用於其他手機。沒有附加代碼,人們不可能爲你提供更大的幫助。 – pleft
除了上面提到的@elefasGR(這很可能是問題)之外,您的資產也可能無法正確確定其他屏幕密度的大小,導致它們在各種屏幕尺寸上的位置偏離。我要做的第一件事就是嘗試模仿你父親的手機,並匹配他們的確切屏幕尺寸和密度,然後從那裏開始使用你的代碼。 – NoChinDeluxe
顯示你的代碼,你選擇隨機產生的位置。 – Buddy