精華區beta C_Chat 關於我們 聯絡資訊
作者: OochunoO (遙控器推廣協會) 看板: C_Chat 標題: Re: [問題] Unity 3D是什麼??(談鬼武者魂) 時間: Sun Sep 21 15:47:17 2014 : Unity 3D是近年來很火紅的3D遊戲引擎 : 主打的就是簡單上手、高擴充性以及可跨平台 : (不過實際上比較趨近於射擊遊戲的關卡制, : 要做到RPG那種可以走動換地圖的類型就要導入很多程式了) : 在台灣的話,軒轅劍六與穹之扉都是用這個引擎 : 至於為什麼會慢,可能有很多原因,不完全是引擎本身的問題 就是個開發工具 就像你畫圖可以用小畫家慢慢點 也可以用photoshop配上繪圖版一樣 越方便的工具 現成可用的東西越多 開發起來也就越快 優點就像前面回文說的上手容易 高擴充性及可跨平台 把遊戲寫好以後 可以直接做成各平台可執行的遊戲 PC有win、MAC、linux、網頁 手機有iOS、Android console有xbox360、wii、ps3、psv ... ps4跟xone忘了 沒注意看 總之目前你看得到能玩遊戲的平台幾乎都能跨 優點說完了 來說說缺點 ------------------------------------- 1.效能真的有問題 雖然遊戲效能跟使用者的功力有關 但是Unity為了跨平台的特性絕對多少犧牲了效能 只要開發的時候稍微不注意效能就會狂降 看Unity3D主打是3D引擎 但是開發商用來開發的遊戲大多是2D網頁跟手機遊戲就知道了(笑 再不信的可以用iPad iPad2 newiPad玩玩看爐石 bz的工程師能力夠強了吧(笑 -------------------------------------- 2.跨平台沒有真的方便到轉換平台以後100%能正常執行 首先可能是各平台處理器不同的關係 很多程式的執行順序在開發時沒注意的話可能會在不同平台產生不同結果 比如說我遊戲一開始讓兩件事同時做 (1) 產生一塊草地 (2) 產生一個主角,讓他站在草地上 可能我開發的時候沒有想得很仔細,讓(1)跟(2)同時運作 然後遊戲放到Android上,執行得很順利 但是轉換到iOS上時,主角已經產生出來要站在草地上了,但是草地還沒生出來 主角找不到草地,因此遊戲當掉 所以我轉換平台發現這個問題以後,必須回頭修改把程式改得更嚴謹 "主角出生以後如果發現草地還不存在,就發呆幾秒以後再回來看草地長好了沒" 或是 "主角不主動出生,先讓草地生長,然後要求草地生長完以後 去 通 知主角叫他出生" 這只是舉個例子,實際上你真的做塊草地跟主角來放不一定會發生上述情況 --------------------------------------- 3.使用別人提供的工具(俗稱第三方SDK)以及使用裝置上特殊的功能,需要另外開發 比如說我要讓遊戲能使用facebook的帳號功能、Google play及app store的信用卡付費 我必須針對每個平台各開發一次 facebook還好,fb官方有提供一個Unity的外掛可以使用 但是比如我要做收費,就要開發一份收費功能給google play用 再開發一份功能給app store用 可能還要再多寫幾套用paypal、中華電信的簡訊付費、遠傳電信的簡訊付費... 總之遊戲外的附加功能,一份功能會需要開發好幾次 使用裝置上的特殊功能同理 我要用手機上的手電筒、G-Sensor、剪貼簿、推播通知(會從畫面上方叮咚跳出來那個) 等等功能都是要各個平台各寫一次功能 Unity能幫你處理的,只有遊戲本體 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 49.159.33.106 ※ 文章網址: http://www.ptt.cc/bbs/C_Chat/M.1411285639.A.F61.html ※ 編輯: OochunoO (49.159.33.106), 09/21/2014 15:49:31
hoyunxian: 效能的問題也可能要看是不是場景物件太多 09/21 15:50
ian90911: 推專業 09/21 15:50
hoyunxian: 把不會動的背景物件全部結合成一個物件效能多少會提升 09/21 15:51
hoyunxian: 另外那個SDK其實就跟RPG製作大師差不多 09/21 15:51
hoyunxian: 基本的功能都給你了,但是追加功能要自己寫程式開發 09/21 15:51
其實會提是因為我一直想強調跨平台開發絕對不是按個鈕就幫你轉好平台了 ※ 編輯: OochunoO (49.159.33.106), 09/21/2014 15:53:26
dlevel: 感謝說明文。 09/21 16:04