2012-04-27 53 views
0

我決定爲我的iPod遊戲設置2組圖像。一個用320x480,另一個用於視網膜。我可以在它們之間愉快地切換,但這迫使我添加額外的代碼來處理分辨率的變化。我的遊戲在網格上的屏幕空間中播放,因此,如果我有32個像素圖塊,我將不得不在低分辨率和64視網膜中使用32個偏移量(因爲分辨率加倍)。對於一個簡單的遊戲來說,這可不是問題,但其他更復雜的遊戲呢?如何根據目標分辨率對硬件進行硬編碼處理。如何處理分辨率變化320x480 => 640x960與遊戲相關

當然,一個簡單的方法來繞過這只是釋放一個320x480版本,讓硬件高檔,但這不是我想要的,因爲模糊的圖像。我在這裏有點失落。

回答

2

如果必須,可以做從點到像素(反之亦然)的轉化率,容易地通過任一乘或除與視圖的contentScaleFactor像素/點的位置。但是,通常這是由你自動完成的,如果你只是保持使用點而不是像素。

+0

我認爲這是行不通的,因爲寬高比的變化,在ipad上執行iphone應用程序。我對嗎? – Notbad 2012-04-27 10:35:57

+0

呃,可能。我會假設你可以「簡單地」表達自己的UI在%(例如,從左上角的20%),然後觸摸做相同,從而得到你的結果。但IDK的,這在很大程度上取決於你在做你正在做什麼,以及它如何與我怕,我是一個總的Unity3d小白。 – JustSid 2012-04-29 17:47:46

+0

無論如何,謝謝。 – Notbad 2012-04-30 22:33:57

2

這是自動的。你只需要添加後綴的圖像文件「@ 2X」的視網膜分辨率。 關於像素,在您的程序中,您的工作點將由系統轉換爲像素。 iPhone視網膜和非視網膜屏幕尺寸爲320x480點。

相關問題