2013年12月1日 星期日

開發日誌-0026 從iOS到amazon kindle & android跨平台


amazon kindle版今日送審,
android版已上架,
這次來分享一下這次製作amazon跟android跨平台時的心得.



要跨平台移植到android上,
最大的問題就是那另人頭痛的各種混亂的解析度,

目前為止我看到最多人用的做法就是,
不管它...

是的,
一般的跨平台開發工具,
在發佈到android的時候會給你兩個選擇,
通常會叫做
letterbox跟
overscan
中文我不知道該怎麼翻比較適合,
letterbox大致上的意思就是保持原始的比例,
然後在只填滿高度或寬度的情形下對無法填滿的部份留下周圍黑邊,
overscan的意思則是填滿(放大or縮小)完全塞滿全部的畫面.
蠻多作品所謂的跨平台移植android,
都是採用letterbox,
也就是完全不用做修改,
直接留黑邊,

其實如果要做到最佳化的體驗,
是要使用overscan的
但是這樣一來,
因為畫面有經過放大才會填滿,
會導致物件超出畫面,以及尺寸被放大
所以要再一個一個手動設定物件的座標以及尺寸,
並且反覆測試是否在它應該待的位置,
這個過程費時費工且痛苦.

我這次花費了許多的時間,
一個一個把android主流的解析度都使用overscan的製作方式測試過,
確定沒問題,
最後要發佈之前,
實機測試,
卻仍然發生問題,
因為有的機種不能隱藏電池bar,
(剛好是我手上唯一擁有的這台)
在某些機型這樣會擋住操作的UI跟地板,
所以我當初花費的時間去測試各個解析度來最佳化,
等於是做白工了,
所以最後為了東西不要被電池bar擋住,
我還是忍痛放棄花了許多時間製作的overscan最佳化的解析度版本,
用回最多人選擇的最安全的lettbox留黑邊的方式,
雖然可能根本沒幾個android的用戶會去花錢下載,
但我還是想盡自己的能力所及,
盡量做到能做的事情...
為了避免萬一有人下載下來用它的裝置一看有東西被切掉,
那就不好了.

雖然真的有點失落,
我花了這麼多的力氣,
最後卻還是沒辦法做到各解析度最佳化,
但是這次也知道了
以後如果還要跨平台出android的話,
直接偷懶給它letterbox用下去就對了^^"

-------------

amazon kindle.
原本以為amazon kindle也是基於android的標準,
所以一定會亂七八糟,
今天實際完成之後,
發現它比起android,
針對商城跟開發者的後台的規劃,
完成度真的是相當高,
相當的貼近apple itunes的後台跟規劃,
並且kindle fire的解析度跟比例也單純且固定,
可以用製作iOS unversal的方式去overscan製作各個解析度.
審查制度以及iap,成就,排行榜的欄位也都清楚易懂,
在iOS叫Game Center,
amazon叫GameCircle,
而且由於也要經過amazon團隊的審查才能上架的緣故,
上面的垃圾app少很多,
整體的app數量雖然不多,
但是個人相當看好它會成為另一個優質的平台.
對它的好感度上升很多,

唯一的遺憾是因為要審查的關係,
來不及趕上gamesalad上架amazon送pro版license的活動.
早知道應該早點先製作amazon kindle的版本,

經過這次的經驗,
個人未來新遊戲的製作應該會以iOS跟amazon Kindle的平台為優先,
android的順位排在後面.

另外順便偷渡商工文一下,
android版已經偷偷上架,
https://play.google.com/store/apps/details?id=com.kirafugames.flyPenguin&hl=zh_TW
因為沒做到overscan各解析度最佳化,
加上我自己其實並沒有多台android的裝置,
所以有緣看到此篇文章的朋友,
如果你對"飛吧!企鵝!"的android版本有興趣,
下載之後發現在你的裝置上運行有任何問題,
請務必讓我知道^^"


2 則留言:

  1. 我沒有接觸過android,也沒有玩過安卓手機,,它解析度的問題也常常聽到,只是純討論一下,,這會不會是gamesalad的局限性,其他的跨平台開發工具其實可輕鬆解決此問題?

    回覆刪除
    回覆
    1. 跟gameslaad無關,
      不管你用任何開發工具,
      只要是做android就會遇到解析度的問題.

      刪除