2014年12月31日 星期三

Unity 2014總結,邁向2015

作者:VILMANTAS BALASEVICIUS 原文連結

在2014的最後一天,祝福所有Unity 的用戶新年快樂,羊年大吉!我們希望在2015到來之前與大家分享Unity對iOS 64-bit支援進度和Web開發的策略更新。

關於64位iOS應用

大概一個月前,我們宣布將在Unity5中對64位iOS的支援。最近蘋果針對64位iOS應用發表了另一項聲明 :

我們在10月宣布過,從2015年2月1日開始,新的AppStore的iOS App必須支援64位元系統,且必須使用iOS8 SDK編譯。而從2015年6月1日開始,更新的App也要滿足上述條件。為了使專案支持64位元系統,我們建議使用Xcode預設的發佈設定“Standard architectures”,編譯出可以同時支援32位和64位的二進制文檔。

那這對你有什麼影響呢,我們會如何解決這個問題呢?

立即升級你的專案

我們將在Unity4.6.x和Unity5中透過IL2CPP來支援64位元iOS系統。如果你要發佈新的App到Apple iOS App Store,或是更新已上線的App,那就必須將專案升級至Unity4.6.x或Unity5.0。如果你使用Unity4.x或3.x的版本開發的項目已經完成或是接近尾聲,請立即升級到Unity4.6.1並更新。當支援64位元iOS系統的Unity4.6.x版本發布後,就可以快速將你的遊戲轉為64位元iOS App。

然而如果你有Unity5.x Pro,你的遊戲又處於開發初期,或者你想使用一些進階的Unity 5功能,那就直接用Unity5版本來升級。已經使用Unity5開發專案的開發者可以繼續開發,不用擔心,我們會在Unity5.x的版本中積極改善支援64位iOS系統以及Metal渲染的問題。

Unity 5關於64位iOS系統支援的進展

我們已經構建了一個Unity5的alpha版本,交給Close Beta測試組進行測試,成立小組並收集了一些初步反饋。我們也製作了幾個可以在64位元iOS 8系統上執行的游戲。我們還與Prime31的開發者合作,將一些人氣插件升級支援IL2CPP及64位元系統。我們計劃在聖誕節後將這些改動合併到Unity5 beta,作為Unity 5 beta版的一部分來發表。這樣一來,所有預購Unity 5 pre-order的開發者都可以在2015年1月上旬開始使用新功能。

Unity 4.6x關於64位元iOS系統支援的進展

由於Unity4.x的超高人氣,成千上萬使用4.x製作的游戲處於開發後期,所以我們決定在Unity 4.6.x的版本中也加入對64位元iOS系統的支援。

就在今天,我們使用Unity4.6.1構建了第一個支援64位元iOS系統的測試專案並送到了Close Beta測試組。我們希望在2015年1月結束之前,可以發佈一個支援64位元iOS系統的Unity4.6版本。

Unity 4.6x中的Metal渲染

我們最初的計劃是只在Unity5中支援iOS系統的Metal渲染,但在收到了大家的擔憂及反饋後,我們了解它在Unity 4.x也是很重要的。所以我們開始在Unity4.6.x中反向移植Metal渲染,並準備成立對應的Close Beta測試組。我們計劃於2015年1月發佈支援Metal渲染的Unity4.6.x beta版,並另外發佈支援64位元iOS系統的正式版。

底層有什麼內容

我們致力於IL2CPP已經有很長時間了,IL2CPP可以幫助提高腳本性能(請查閱 WebGL平台的性能一文),同時也能更加靈活且有效地支援64位元iOS等多個平台。想了解關於該技術的完整內容,請查閱之前發布的文章《Unity腳本的未來》。

在Unity4.6.x及Unity 5中,我們會在底層支援兩種腳本:即Mono和IL2CPP。在iOS平台的PlayerSettings中有一個新的Scripting Backend選項:


Scripting Backend可以設置為Mono或IL2CPP。如果選擇Mono就是構建32位ARM v7專案。2015年1月前,都可以使用Mono選項來更新已上線App或是內部測試。如果選擇IL2CPP,則Architecture選項可以被設定為32-bit,64-bit或是Universal(如果設備包括高階及低階設備建議選此項)。

我們的目標是透過IL2CPP轉換到iOS的腳本與Mono完全一致,這樣在Player Settings中將Scripting Backend設為IL2CPP時感覺不到變化。但實際上有幾點不同:

•編譯時間變長,因為需要額外的步驟將IL碼轉換為C++,並編譯為Unity引擎庫。

•更大的iOS二進制文件,因為在Universal應用中,我們要同時保存32位元及64位元的iOS二進制編碼,以便游戲在32位元舊設備和64位元新設備上都能執行。

IL2CPP會一直啟用Code-Stripping來減小代碼尺寸,這代表可能需要手動增加不在編譯中的類型。短期內IL2CPP可能會有些缺陷,我們會在最快時間解決你發現的問題並發佈更新。

關於Unity 中的Web游戲開發

我們將推出在Unity5中一個振奮人心的新平台——WebGL,幾個月前我們已經移植了一款很酷的遊戲到WebGL平台上。我們堅信WebGL可以改變網頁遊戲的現狀,遊戲開發商無需安裝額外的插件就能擁有數十億的玩家。但目前瀏覽器廠商在各自的瀏覽器中提供了不同的WebGL支持水準,所以在2015年游戲開發商可能需要通過混合策略來獲取最大的成功。最近Chrome團隊宣布了關於NPAPI更新的末日計劃, 內容如下:

從2015年4月開始Chrome將預設不支持NPAPI,而且將下架Chrome Web Store中所有用到NPAPI的插件。盡管廠商都在很努力地找替代技術進行移植,還是存在小部分用戶使用沒有完全移植的插件。我們將為高階用戶(通過chrome://flags/#enable-npapi)以及企業用戶(通過企業用戶政策)提供接口,用來暫時啟用NPAPI直至相關的重要插件全部移植完成。

我們將在2015年2月移除接口,在那之後Chrome將不再支援NPAPI。已安裝的NPAPI插件擴展將不被允許再使用。

好消息是,Microsoft IE、Mozilla Firefox 和 Apple Safari瀏覽器團隊都還未宣布任何取消NPAPI支援的計劃。

至少在2015年我們會致力於在Unity 5中支持Unity Webplayer ,只要它是對開發者有用的。

網頁專案目前想獲得大量玩家最好的辦法就是將你的游戲同時移植到Unity 5 WebPlayer及WebGL兩個平台上。現在WebGL平台的游戲在功能和性能上都還有限制,所以如果要開發新專案,建議你將Unity 5 WebGL作為目標平台,並在之後將游戲移植到Webplayer平台,然後充分利用Webplayer特性來增加額外的功能。這樣一來玩家可以在Mozilla Firefox、Google Chrome, Apple Safari 8.x中體驗WebGL游戲,或是在Microsoft Internet Explorer及 Apple Safari 7.x中體驗Unity Webplayer 游戲。

2014年12月24日 星期三

Unity創始人David被評選為影響2014遊戲產業6人之一

2014-12-24 Unity大中華區平台

外國媒體 GamesIndustry International 評選出了2014年度游戲行業中舉足輕重的六位傑出人物,Unity 的創始人David Helgason 也名列其中。

在過去的一年裡,有六個人在游戲行業留下了濃墨重彩的一筆,讓我們為他們喝彩。

讀過本周《年度大事記》系列文章的人都可以證明,2014年的游戲產業可謂風起雲湧。PlayStation4和Xbox One上架的第一年,就雙雙突破預期。Oculus與Twitch今年的兼並收購創下紀錄,Kickstarter有所降溫,而Tempers異軍突起,Gamesindustry.biz的工作人員決定評選出與往年不同的年度傑出人物,來為這一年的波瀾壯闊劃上完美的句號。

本次年度傑出人物與往年相比略有不同。首先,這些人不只是上過頭條的人或是大公司的大人物。不單是為業界做出過傑出貢獻的人,也有專注於本質工作的人。再來,我們不排名次。這種新的形式無疑表明我們做這件事的真正原因,是挑選出六個人並表揚他們,不會妄加比較衡量,也不會排高低。以下就是我們的工作人員選出的2014年年度傑出人物。

PewDiePie, YouTube 直播客
一名擁有所有公司都羨慕粉絲數量的瘋狂遊戲直播客,直播過無數的經典遊戲和粉絲同樂,如果你常看直播你就了解這樣的人絕對有資格喊出"誰說打電動沒前途?"的話語,他是一個人,不是一個公司,平易近人也有趣,他獲得的關注更是所有直播客的極致。



Kate Edwards, IGDA執行董事
Kate Edwards在IGDA這兩年,致力於協助遊戲開發者之間的交流,協助包含授權的知識傳遞,往往是第一個站出來主持遊戲產業正義的人,即便在台灣,IGDA長年也辦了許多的遊戲開發者論壇或活動。算是遊戲界的慈善家。


Laila Shabir, Girls Make Games 創始人
Girls Make Games讓世人意識到做遊戲不在是男生的專利,對於女生也是一個可選擇的職業。
Laila Shabir因為專注於協助女生想要學習如何開發遊戲而聲名大噪,透過研討會或是參觀遊戲公司將所有的女生開發者串連起來。


Owen Mahoney, Nexon 營運長
很難找到像Owen Mahoney這樣大公司老闆對於遊戲創意保持著無比熱情的捍衛精神,有藝術的遠見又同時能夠把商務價值做到很好。不得不說把東方消費模式反推回西方式,他下了很大的功夫,也直接拉起公司的成長。他認為遊戲開發需要專注的應該是核心大於營收。


Unity 創始人 - David Helgason
David Helgason入選是因為他在Unity 的發展歷程中扮演重要角色,他大膽的決策決定了Unity的未來。

Unity至少在一定程度上完成了讓大家都能開發遊戲的使命。Unity 的用戶數量也達到350萬,整個開發行業幾乎有一半的手機開發者使用Unity,帶動旗下的Asset store和其他多元化的服務。

David Helgason辭去CEO一職的消息,提醒了我們Unity 在游戲行業的實力和發展的堅定信心。Unity 公司已經證明了其策略是有效的。那些幾年前甚至沒將Unity放在眼裡的競爭對手如今都將他視為頭號敵人,而現在的Xbox One和PlayStation 4開發者們,只要在電腦和手機平台准備就緒,就可以自由地將他們的產品使用Unity 在多平台發布。

Unity Technologies有如今的成就,Helgason的領導非常關鍵。難能可貴的是,他坦率地接受了如果公司想以現在的發展速度追逐當初的理想,那就應該有更專業的經理人來帶領公司。John Riccitiello就是最合適的人。David Helgason是當之無愧的“2014年度傑出人物”。


Andrew Wilson
在這個百家爭鳴的遊戲年代,EA一直以來都以一個老大哥姿態穩站一方但也備受爭議,Andrew Wilson在任CEO的這些時間,EA過了止跌回升的一年,主觀上來說雖然EA最近有像是Dragon Age:Inquisition這樣的好遊戲但整體的表現一直沒有甚麼令人印象深刻的地方,對於玩家來說,沒有壞消息就是好消息。這也是值得給Wilson一個鼓勵的地方,EA 加油好嗎?

本文並非翻譯文,點此看來源文章

2014年12月15日 星期一

【VR】谷歌 Cardboard出貨量達50萬,加入 Unity SDK 助力開發者

Unity大中華區官方平台 原文連結


Google Cardboard 是今年在 Google I/O 帶來的一個驚喜,谷歌在今天宣布這種極簡的虛擬實境設備已經出貨超過50萬台,並推出了一套Unity的專用SDK,讓Unity 的開發者可以簡單製作Cardboard 的虛擬實境產品。



Unity SDK 讓開發更專業便利
雖然這款開源的 Cardboard 裝置本身沒有進行任何改動,但是谷歌在今天為它加入了一套相容於Android 和 Unity 
遊戲引擎的 SDK,讓開發者可以更簡單地制作 Cardboard 專用的產品。Unity 遊戲的開發者現在可以透過 Cardboard 的 SDK 建立全新的3D產品,或將現有的3D 產品作成虛擬實境的版本。Android SDK 同時包含 Unity SDK。
谷歌 Cardboard 項目的產品經理安德魯·納特卡(Andrew Nartker)在今天的一份聲明中寫道,這些 SDK 是為了保證開發者們在制作 Cardboard 應用時無需擔心技術方面的細節。

“這些問題是非常重要的,但是它們又會耗費你大量的時間,這些時間本來是用來研究遊戲玩法或者製作圖像的,SDK 可以簡化開發工作,開發者就可以將精力集中在引人入勝的內容本身。而且加入了 Android 和 Unity 的支援之後,還是可以繼續使用自己熟悉和喜歡的工具。”
用Cardboard 呈現的一些虛擬現實產品


對於那些想要自行製作 Cardboard 裝置的個人或公司,谷歌還公布了一些關於 Cardboard 的參數,讓他們可以按照參數使用專門的裁剪工具進行製作。之前Cardboard 的 SDK 沒有為每個細節提供準確的參數,不過現在的 SDK 很快會加入一個校準工具,開發者可以用來微調裝置的底座和焦距等參數,讓 Cardboard 的應用可以調整配合不同的裝置。
谷歌顯然非常重視虛擬實境這一領域。Cardboard 只是谷歌邁出的第一步,他不僅僅只是一個有趣的嘗試,更是表現出谷歌對虛擬領域的態度。


關於Cardboard
谷歌這款虛擬現實解決方案非常“平易近人”,擁有Android手機的用戶都可使用。無需任何特殊的硬體,成本幾乎為零。只要把紙殼組成眼鏡的形狀,把Android設備放入然後戴上,便可開始一段虛擬之旅。

Cardboard所提供的虛擬體驗非常直覺,很意外的是結構超簡單。當然和雙1080p OLED屏幕的Oculus Rift相比之下,僅依賴一台手機螢幕的Cardboard顯得非常單薄。但通過兩片特殊的鏡片後也能提供3D的視覺效果了。此外,Cardboard並沒有頭部追蹤技術,因此你也不能透過轉頭來調整視角。

Cardboard是由一對凸鏡片(可防止圖像邊緣變形),以及一些常見的物品,包括磁鐵、魔術氈、橡膠帶和NFC標簽(可選)。磁環是Cardboard的關鍵之一,谷歌用一種巧妙的方式將他融入了機身外殼,用來在執行“點擊”,推一下會讓手機的磁力針感測到磁場變化產生互動。
Cardboard應用還會使用手機的傳感器讓你可以四處觀察。比如在Windy Day的展示,你可以像是置身於森林一樣對周圍環境進行觀察。或是播放YouTube時,谷歌將熱門視頻以圖塊的方式呈現在你的眼前,你可以拉動磁環來選擇。
與Oculus Rift、索尼Project Morpheus、以及三星Gear VR等昂貴產品相比,廉價的Google Cardboard似乎就是個小玩具。但是物美價廉的簡單設備,50萬的出貨量,加上有了Unity SDK的加入後簡單易用但是極其專業的虛擬現實應用開發,我們可以預見Cardboard的未來絕對會擁有讓世人矚目的成功!Unity,讓夢想變成現實!

如您對虛擬現實感興趣,請隨時聯系:solutions@unity3d.com
Unity 專業的VR團隊將竭誠為您服務!

2014年12月14日 星期日

APM 音樂-游戲音樂新天地

作者:CAITLYN 原文網址

首先讓我們來了解一下APM音樂!近十多年來,APM 音樂已經轉為能協助AAA級游戲發行和開發人員的音樂來源,它為開發者提供了容易理解,效率高且容易執行的特性。現在,在Asset Store 中也將會有一個全新的完整的區塊提供了大量的APM音樂資源來供開發者來下載,這真是很棒。

“許多備受矚目的游戲都得益於APM音樂。我可以自豪的說這些游戲在配樂方面都獲得極好的評價。此外,在APM 資源商店上有許多知名的游戲作曲家的音樂。”
Rob Cairns, APM音樂業務發展總監

滿足你對音樂的所有需求!

APM 音樂資源中擁有幾乎你所需要的全部音樂資源,幾乎所有的經典音樂片段,古典的/經典的/時代性的和世界性的音樂,包括當前流行音樂,原創音樂人制作的音樂,電子音樂,搖滾和重金屬音樂等等。

你可以在你游戲中的某些場景中去使用 APM 音樂作為音樂資源(來自於收音機、餐廳聽到的音樂等等),例如:BOSS關卡,過場動畫/動畫場景和其他更多的主題場景都可以使用 APM 音樂作為音樂資源。另外,你還可以使用好萊塢水準的音樂來讓你想要的效果得到巨大的提升!

簡單取得!

搜尋?試聽?購買?都十分容易!

當你聽到了你想要的音樂,點擊購物車圖示,然後選擇你的授權類型(看你公司的規模),隨後加到你的購物車,大功告成!接下來你可以繼續購物或者直接去結算了!

APM 是EMI音樂出版公司和Universal 音樂出版公司的合資企業,應該是目前全球領先的生產音樂庫和音樂服務公司了!還在等什麼?趕緊去 Asset Store 的目錄上找來感受一下APM 帶給你的驚喜吧!

APM音樂試聽下載地址:
https://www.assetstore.unity3d.com/en/#!/apmmusicstore


2014年12月11日 星期四

Unity 4.6精彩案例詳解-Fragments of Him

作者:Elwin 原文連結
翻譯:烈妖

Fragments of Him - 他的追憶


這是一個悲傷的故事,開發者使用Unity還原了男友生前的人生片段。在故事中,玩家要點亮每件物品來得到回憶和線索,雖然最終還是需要經歷失去摯愛的現實。


製作分享:
隨著Unity4.6和新UI系統的發表,作者詳細介紹他們如何使用Unity4.6來設計和建造《他的追憶》界面,目前他們正在探索使用Unity5 Beta版,絕大部分(也許不是全部)的UI系統功能和4.6版本內完全一樣。在這篇文章他們將介紹《他的追憶》UI系統中大部分使用的技巧。首先讓我們看一看遊戲界面:


UI的概述:
《他的追憶》UI系統相對簡單些,主要功能是讓玩家改變游戲、音頻和圖型設定。我們先以UI的流程圖來了解組織結構:



UI流程圖


選項開啟時,下面每個按鈕(例如,Gameplay)會打開各自對應的面板。


組織場景:
在Unity4.6編輯器中,你會看到如下的UI樣式:
編輯中的UI畫面


讓我們研究一下所看到的場景:

左側粗線顯示的白色方框(內部有《他的追憶》Logo),是覆蓋在整個遊戲螢幕上的界面。如果我們希望顯示UI,就把UI移到該區域。

像是開始、繼續、載入游戲、選項、退出等基本選項是一開始或暫停游戲後顯示的第一個面板。

位於白色方框外的是選項面板,該面板將在點擊選項按鈕後出現,主選單將滑出,功能選單將會滑入。

點擊一個選項,選項選單(OptionsContainer)會滑入,它包含所有的選項,如游戲、圖形、音頻和控制。相反的當你離開選項選單時,主選單會再次滑回。
Mecanim系統UI概述


場景視圖中的層級結構看起來是這樣的:


場景菜單層次結構


為了給玩家所需要的互動體驗,我們使用4.6的按鈕組件,讓我們能夠指定按鈕在各種狀況下的反應。所有按鈕都有相同的互動設定,如檢視面板所示:

按鈕Inspector視圖


我們使用Mecanim系統來處理按鈕狀態之間的轉換(下圖可以看到結構),這麼做美術團隊能在動畫中獲得更多控制。但畫面是Unity5.0的Mecanim界面,Unity4.6看上去可能會有點不同。左邊的列表是觸發動畫的觸發器,右邊你會看到這些狀態可以在任何情況下觸發。

按鈕Mecanim系統

連接起來
到目前為止都非常簡單和直接。為了讓玩家UX體驗更好,我們想讓這一切無縫關聯起來。實際上我們注意到整個UI無法只靠Mecanim驅動界面。代表我們還是要寫一點程式。


Mechanim
一開始,我們讓美術團隊使用Unity 4.6來製作整個UI界面。我們認為這樣可以有效控制界面外觀和感覺。然而我們沒有意識到Mecanim需要依賴時間表來執行其動畫。所以當我們設定Time.timeScale=0來暫停游戲時,UI也跟著停住了。

註:感謝大家在部落格上幫我解決這個問題,在Animator中有一個稱為“Update Mode”(見下圖)下拉選單。設定為“Unscaled Time”之後就能正常工作了!

Unity動畫組件


程式
當你進入選項介面,程式會接管並控制動畫腳本。這是用iTween來實現的(iTween有一個非常實用的“ignoretimescale”參數)。如果你好奇如何實現的,下面是介面滑入的程式碼:

iTween.ValueTo(gameObject,iTween.Hash( "from", 900,
"to", 0,
"time", 0.2f,
"onupdate","OptionsMoveTo",
"easetype",iTween.EaseType.easeInOutQuad,
"ignoretimescale", true
));

上面的程式處理介面的滑入與滑出,確保正確的反應。此外,我們也接了游戲控制器、滑鼠或鍵盤的控制。每一個裝置也會有一套反饋系統。

一步一步

編輯中的UI畫面

每當玩家按下按鈕,通常是鍵盤上的Esc,如果是手把則是Start,就會彈出選單。我們只用了GameObject.SetActive(True)來觸發選單1和2。如果玩家使用控制器,我們要確保1是選擇中的,所以我們使用EventSystem.SetSelectedGameObject(continuebutton,null)來檢查。並使用Animator.SetTrigger來觸發mecanim動畫。

當你在選單1按下選擇按鈕,我們使用Animator.SetTrigger向左移動選單1,並在同一時間向右移動選單2。在選單2按下選擇鈕,將呼叫一個腳本使選單3移動到視圖中。選單1和選單2的選項是不同的,包含了許多選項。點擊選單2任一按鈕,將會打開對應介面(用GameObject.SetActive(true);)。當玩家從選單中返回時,上述過程全部反轉。

下拉選單
規劃界面設計和功能時,我們想用下拉選單來處理像是設定解析度之類的功能。在設計階段時我們發現,新UI系統沒有我們想要的下拉選單設計。最後我們想出一個解決方法,善用Mecanim遮罩和按鈕來做出我們想要的下拉選單。看起來像這樣:



為了實現這感覺,我們先做了一個列表,包含在下拉選單中所需的全部選項。這些選項用按鈕按照我們想要的位置擺放在列表中。然後我們用Mask元件遮住所有我們不需要用的選項。所以要讓下拉選單滑動,只需改變Mask元件的邊界到需要遮蓋的位置即可。最後為了觸發這個下拉動畫,我們在第一個下拉選項的頂部放置一個按鈕,點擊後讓選單滑出。任意的選擇都會使選單再次滑入,也許並不優雅但可行。

Mecanim和OnClick事件

支援不同的解析度
在設計UI時我們沒有想到解析度的問題。這是Unity4.6真正方便的地方,我們使用Rect Transform組件錨定界面中各個面板和按鈕,結果是使用任何1024*768或更高的解析度,都能保持內容在框架內運作。


展望
雖然我們還沒有完成全部的介面,但除了一些小地方我們應該不會大幅改變。希望開發者對我們如何使用Unity4.6新功能有所了解,我們同樣想知道你會如何發揮。

2014年11月27日 星期四

Unity 4.6全球發布!UI系統開源!

作者:NA'TOSHA BARD 原文網址
翻譯:小七


今天是西方的感恩節,感謝Unity 的所有開發者長久以來堅定地選擇和陪伴!我們在這一天,將Unity 5 前最後的一個大版本回饋給用戶,很高興宣布讓大家期待已久的Unity 4.6今日發佈!

Unity 4.6有許多功能,包括作為主角推出的新 UI 系統 。我們知道讓大家久等了,因為我們需要時間來與大家合作測試UI系統,並收集反饋意見,最終發佈一個讓我們自豪也讓大家滿意的UI系統。

Unity 4.6還加入了對Andorid-x86系統的支持,現在你可以選擇構建目標平台為FAT、x86或ARMv7。這代表你將可以導出應用到Android-x86設備上,例如新的Google Nexus Player

開源計劃的下一步

我們已經將UI系統的源碼發放至 BitBucket。使用附帶的專案文件,你可以直接構建一個UI模組來替代Unity 自帶的UI系統。想了解如何開始構建你自己的UI模組,請查閱裡面的README文件。如同往常一樣,我們的開源組件和UI系統都是基於 MIT/X11許可協議發布的。

由於源碼已經開放了,你可以隨心所欲地按照你想要的方式來自定義和改善UI系統(同時也可以與他人分享你所做的改善)。我們非常樂意與社區成員合作,請查閱 版本庫中的README 文件 來了解有關提交請求的條款內容。

想了解更多關於我們的開源計劃和產品信息,請查閱早期發布的文章: Unity 更多的開源措施 以及為我們的開源項目貢獻你的一份力量

趕緊行動吧!創造別出心裁、令人驚艷的內容來吧!

對64位iOS ARM的支持即將就緒

我們已在這裡宣布,我們計劃於2015年1月在Unity 4.6.x的版本中,加入支援64位iOS ARM功能的測試Beta版本。

蘋果在10月20日宣佈,從2015年2月1日開始,新上傳至AppStore的iOS應用都必須加入對64位iOS系統的支持。我們了解很多開發者使用Unity 4.x的版本開發游戲的過程已接近尾聲,我們也正致力於為移植到Unity 4.6.x版本提供完美的解決方案。

由於存在大量的程式重用,在Unity 4.6.x系列中對64位iOS ARM的實行會與Unity 5中的一致。

2014年11月24日 星期一

Unity將支援Apple 64位元 iOS系統

作者:VILMANTAS BALASEVICIUS 原文連結

根據消息從2015年2月1日起,上傳到App Store的iOS App必須支援64位元系統,並且必須使用Xcode6或更高版本的iOS8 SDK編譯。為了讓你的專案支援64位元,我們建議使用Xcode預設的發佈設定“Standard architectures”,就能編譯出同時支援32位元和64位元的二進制檔案。

這對開發者來說代表著什麼呢?從明年二月開始,新發佈的游戲(或應用)必須使用iOS8 SDK及相容新iOS設備中的64位ARM晶片。

好消息是Unity 已經確定支援iOS8,過去的幾個月裡,我們也一直努力為64位元的iOS尋找解決方案。最終我們選擇了IL2CPP。

什麼是IL2CPP?

你可能知道我們一直開發IL2CPP已經有一段時間了,在Unity中它為開發者與系統之間的互動帶來了一定的靈活性。我們也期待能給玩家體驗帶來大幅的性能提升。

IL2CPP的出現是當我們正探索如何支援WebGL的時候,那時我們在研究一些能有效支援各種平台的新方法。它結合虛擬機的預先編譯,將程式集轉換為C++,同時利用C++編譯器產生二進位檔案。讓游戲和應用程式可以更有效率。這使我們可以同時為所有支援的平台增加新的核心功能,更新也更有效率。想完整了解這技術,請查閱文章-《Unity腳本的未來》。

我們看到了WebGL平台有很好的成果,同時也非常期待Unity支援的平台都能有大幅的性能提升,包括正在開發中的iOS平台。

IL2CPP什麼時候可以運用?

IL2CPP已用於WebGL平台發佈,查看Unity官方提供的WebGL範例就可以看到它的實際應用。繼WebGL之後的下一個平台就是iOS。在接下來的幾周,第一個透過Unity5使用IL2CPP建構的iOS ARM64位alpha版將送到我們的內測團隊。

通過測試後我們會有Beta版給預購的開發者,具體的時間取決於測試的進度。我們應該會在2015年1月開放測試。Unity5裡官方發步支援iOS ARM64位元的新功能Beta版還要看Unity5正式版的時間,所以暫時無法確定最終時間。

那關於Unity4.6呢?

Unity4.6已經進入收尾期,所以它很快可以和大家見面。目前的計劃是在2015年2月之前將iOS ARM64位的Beta版放入4.6.x系列中(指IL2CPP)。我們了解很多開發者已經使用Unity4.x的版本開發了完整的游戲,所以我們會為移植到Unity4.6版本提供完美的解決方案。由於存在大量的代碼重用,在Unity4.6.x系列中對IL2CPP的作法會參照Unity5來進行:所以腳本復雜程度不要太複雜都能正常運作。

那Unity4.6之前的版本呢?

我們不會為Unity4.6之前的版本加入64位iOS系統的支援。由於底層差異過大,放到Unity之前的版本提高了許多難度。為了儘快加入64位iOS系統的支援,我們決定只專注於4.x系列的最後一個版本-Unity4.6。如果你的游戲使用Unity4.6之前的版本開發,那麼為了將游戲順利上到AppStore,你需要將Unity升級到4.6.x或Unity5。請注意,已經發佈到AppStore的32位iOS App可以直接使用Unity4.x或Unity5進行更新。AppStore的iOS游戲在明年2月之前都不要求必須支援64位元。

能按時移植完我的游戲嗎?

我們的宗旨就是幫助你們成功,所以我們也在不停的努力爭取讓一切准備就緒。而最好的辦法就是盡早開始測試,因此我們鼓勵大家在明年1月盡快升級並獲取Beta版測試。

如果你的項目非常復雜,想完美的移植它可能需要更多的時間,如果你不趕在二月之前移植完成,例如多兩個月的時間,那就沒什麼好擔心的了。

我們非常欣慰IL2CPP完成它的任務!

這將不僅僅對遊戲性能帶來翻天覆地的變化,同時對我們的開發進度以及在社群中與你們分享新功能的速度也將產生巨大影響。

常見問題:

1. 這對我已發佈的App來說有什麼影響?

短期不會有影響。在2015年2月1日之前Apple不會移除已經上傳到AppStore的App,可以繼續賣,就算這些App不支援64bit。

2. 在那之後我需要更新我的App嗎?


目前Apple官方給出的說法是在2015年2月1日之前已經上線的游戲和應用不需要對64位元iOS系統支援。很重要的一點是,既然Apple官方是這麼說的,那麼不排除它會在之後的某個時候要求所有的應用都必改成64位元。

3. 如果我想在2月1日之後發布呢?

那你就必須按照Apple的要求了。新的App必須支援64位元iOS系統,才能更合理的利用新的iOS設備。想了解有關Apple開發者的訊息,請到https://developer.apple.com/contact/.

2014年11月23日 星期日

Unity 5移植案例 - 不為人知的RUST移植之旅

作者:CHRISTOPHER POPE 原文連結
翻譯:小七 、JC24

Rust是由Facepunch Studios公司用Unity開發的一款第一人稱生存遊戲,開發團隊最近忙於將Rust移植到Unity 5。成果如何?本篇將分享他們不為人知的轉移心得!

Unity一直在為Facepunch Studio的移植工作從背後提供支援,他們的經驗非常具有分享價值。所以我們對創始人Garry Newman進行了一個深入的採訪,希望對Unity的開發者有所幫助。

Q:Unity對Rust的成功發揮了多大的作用?

A:這樣說吧,除Unity外我們使用的另一個引擎就是Source Engine,它與Unity有著天壤之別。Unity會即時更新你改變的貼圖、材質或模型。你可以在另一台顯示器上打開3DS Max或Photoshop進行編輯,然後馬上可以在Unity中看到這些更改。每次操作都能節省約一分鐘的時間,在過去的6個月裡為我們省下的時間不計其數。而在SourceEngine中,每次更改之後都必須退出遊戲再重新進入才可以看到變化。 在Unity中進行微調的過程其實非常有趣,而且你可能更傾向於邊實驗邊探索不同的解決方式。

Q:將Rust移植到Unity5花費了多長時間?

A:其實真正花在移植上的時間並不多,大概就兩個小時。Unity自動更新了我們的所有程式,這是瞬間完成的。一些從AssetStore下載的插件還有些問題,沒有被正確更新。我們已經找了插件的開發者來幫我們更新插件,所以這個問題也解決了。

Unity5的新系統給了開發者更多控制插件和dll庫的自由。一開始,我們還有些吃驚,但很快我們就明白了,這只是代表我們不必再將插件和庫放進特定的文件夾而已。

當然,如果你要使用Shader之類的新特性,那你就得完整的檢查專案所有內容並更新材質和其它東西。如果你希望它和Unity4一樣,只需升級就好。

Q:使用新的標準著色器(Standard Shader)和Lighting系統,你們的感受如何?

A:美術們意識到這是一個全新的系統。事實上這是一種新的工作方式。他們使用了新工具Substance Painter,因為可以產生更準確的結果。當他們搞清楚弄明白,就能利用它們產生好的結果,而且制作漂亮場景也不用花費太大功夫。


Q:你最想通過Unity5對《腐蝕Rust》作出什麽樣的改變?

A:我們想了解材質看上去到底能有多惟妙惟肖,所以我們對動態反射之類的東西做了些研究,並且幾乎用到了新的著色器中的所有新功能。

現在我們仍然持續著不斷調整材質。如果我們覺得截圖中的材質看起來效果不理想就會修正它。

Q:你怎麽看待Unity 5中的其它工作流程?

A:說真的它們看起來都差不多,但還是遇到些小麻煩,例如幫動畫增加事件。但音效類的素材載入效率變好。而材質類的素材一開始載入可能會比較複雜,但是了解整個系統及工作原理後,過程就容易多了。新的著色系統在制作材質方面真的非常出色,因為你不用再選擇著色器了。如果你想使用法線貼圖,只要加入就可以直接用了。

Q:談到音頻相關內容,我們在這方面已經有了巨大的改進,能談談你的使用感受嗎?

A:說實話,我們才剛開始使用。現在我們只是用它來平衡特定音效的音量,例如腳步聲。但當我們開始增加特效一類的東西時,它會發揮巨大的作用。我喜歡在裡面將某些參數設為變量參數,這對控制音量來說很重要。例如位於洞穴中會產生回聲等。

其實我們團隊沒有真正搞音效的人,音效系統上有一半的術語我們都看不懂,但我們會去學的。

Q:目前為止Unity5中最具影響的功能是什麽?

A:我想應該是PhysX的升級。在Rust中我們常常會超出65000個碰撞器的數量限制,所以我們不得不想盡辦法將這些碰撞器合在一起,但會很慢。現在看來沒有這個限制了,很讚! 新的PhysX系統整體來看也比過去快很多。

在Unity 4中我們遇到了很多物理相關的問題,例如你必須為每個碰撞器添加rigidbody元件。如果你移動一個靜態碰撞器,可能會增加半秒左右的延遲。而現在你可以隨心所欲地移動任何物體而不延遲了。這對我們來說非常有幫助,因為我可沒興趣去改原始碼。



Q:所以新的PhysX不僅對開發流程有益,而且幫到了開發者?

A:是啊,開發者們可能意識不到這點,但這確實有差別的。例如在舊版的Rust中,當你從一個地方移動到別處,由於我們會重新產生物理碰撞器所以通常會有幾秒的延遲。現在不會發生這種狀況了,處理有了更多的自由度。

Q:關於Unity 4到5移植你最想與大家分享的三點是什麽?

A:有一個官方影片(英文)是關於新著色系統的,它講解了所有的輸入細節。你不僅僅需要觀看影片,還要從中學有所用。

檢查你的dll庫並確保所有的設定都是正確的。

仔細閱讀Unity 5試用版頁面的升級指南,因為其中列出了所有需要注意的所有要點。

Q:最後一問,Facepunch Studio的下一步計劃是什麽?

A:幾乎和現在正在做的一樣,Rust是一個長期專案。《Garry’s Mod》推出也將近十年了,而且我們對Rust也有同樣的使命。還有一些正在進行中的原創專案。

Q:關於Unity 5或Rust你還有其他和大家分享的嗎?

A:千言萬語終歸一句,謝謝你們創造出Unity,相比過去它真的讓我們的工作變得更容易且更有趣。

Rust是一款在Steam、PC、Mac和Linux平臺上非常熱門的遊戲。很高興能和Unity暢談Rust的故事,我也非常期待它在Unity 5中的後續開發。



同場加映

您還是不了解Rust在玩甚麼嗎?小編貼心的從Youtube找了一篇老皮的Rust直播精華篇給各位了解了解。

2014年11月19日 星期三

與開發者共同完善Unity文件

作者:ALEKSANDR原文連結

我們知道許多開發者都希望能簡單反映Unity文件的建議,所以我們做了個實驗來看看它是否可行。

為了讓我們能從社群得到回饋,我們八月的時候在官方手冊頁面增加了“Suggest a Change”功能。頁面如下:



我們想看看我們能收到一些什麼樣的反饋以及如何用最好的方式來解決它。整個八月期間我們收到了大約500條建議。下面是一些常見主題:

· C#範例及轉換錯誤(約30%)
· 建議、拼寫糾正以及開放的詢問如何改進文檔(約30%)
· 連結失效報告
· 功能需求
· 垃圾信息(約10%)

C#範例與解決轉換錯誤

我們收到的最常見的反饋就是腳本API文檔中缺少C#範例。你可以在 Unity語言這篇文中看到,我們一直在關心各語言的使用率。由於大多數的開發者都是使用C#語言,而我們為UnityScript提供的內部工具支援還缺少一些功能,所以我們對Unity 5的文檔作出了以下決定:

C#將作為文件中範例程式的預設語言

我們將會開發一款新的C#-to-UnityScript轉換工具,它將在轉換後保留原有程式的注釋(我們程式範例的另一個意見集中點),並且解決舊轉換器的其它問題。

你可能也注意到,我們的Learn Team在新的官方模組中使用的是C#語言,新的官方模組將在Unity 5中取代先前版本的Standard Packages。我們堅信轉向C#然後結合新轉換工具的支持,將為開發者提供更高品質的文件。我們所希望的就是為你們提供更有價值更實用的程式範例。

不在有失效連結

在Unity4.5的文件中,我們加入了自動連結驗證,但鑒於4.5版本中我們收到的失效連結數(約100條)回饋,我們發現它只回報了一些內部的失效連結。對於Unity 5,我們的目標是減少無效連結的數量甚至降至0,關於這點,我們已經制定了一個內部的流程以確保減少失效連結。

展望未來

我們從為期一個月的“Suggest a change”功能中得到的回饋非常有價值,我們也從中得知社區中存在大量有興趣幫助我們改善文件的開發者。目前我們正在討論未來如何執行它。我們很可能在隨後以某種方式重新推出“Suggest a change”功能。

2014年11月9日 星期日

持續強化的Unity Cloud Build - 開發者們想要的新功能

作者:NATHAN HANNERS
原文:http://blogs.unity3d.com/2014/11/06/unity-cloud-build-keeps-expanding-new-features-more-developers-wanted/



自從我們對Unity Pro的用戶提前開放了Unity官方的Continuous Build Distribution服務以來,我們一直忙於處理大家的反饋來創建最棒的雲服務。

你是否對Unity Cloud Build還一無所知?點擊查看官方網站(英文)瞭解其工作流程或觀看Unite2014的演講(英文語音無字幕):


在最近更新的版本中,Unity Cloud Build多了一些很酷的新功能,我們希望這些新功能可以幫助開發者們加快並簡化工作流程。

進階構建設定(Advanced Build Settings)

對於“Unity實驗室”系列文章裡的自訂發佈設定有興趣的開發者們,我們在Unity Cloud Build中提供了類似的功能,自動根據平臺預先處理和後製處理專案,並建立自訂腳本。也就是說,Unity Cloud Build可以執行一組用來發佈iOS平臺的指令,同時也可以執行用於發佈Android或Web平臺的指令集。


除錯 / 開發構建(Debug / Development Builds)

在開發者的強烈要求下我們增加了對.DSYM檔的支援,使用Unity Cloud Build時可以讀取.dsym來測試或除錯。


雲資料清單(Cloud Build Manifest)

Unity Cloud Build Manifest資料在建立時被植入你的專案,並提供執行時存取相關資料的金鑰。例如,為了除錯你可以在初始的畫面上顯示遊戲版本號碼。我們相信你們能善用這些資料。

外部XCODE框架支援(External Xcode Framework Support)

對於那些依賴於外部Xcode框架的開發者來說,我們建議使用Xcode Manipulation API,它能幫助你更容易整合外,它也與Unity Cloud Build能完美結合!

UNITY 4.6 測試版

我們已經在Unity 4.6 測試版加入了Cloud Build的支援。Unity 5發佈時也會支持Cloud Build。

XCODE 6

如果你使用Xcode6,Unity Build也已支援將專案發佈到iOS。

更多資訊

• 更穩定的結構
• 支援大專案
• 為專案依照平臺產生Bundle ID
• 產生.dSYM檔的下載連結(iOS)
• 可關閉郵件提醒

我們正在為Unity Cloud Build增加以上功能,Unity Cloud Build可以整合你的專案,並能很容易的將你的遊戲發佈到公司內部或外部的移動設備上。我們認為這樣的服務是非常方便且易用的。

從測試版回饋來看,開發者們也十分滿意!


想要試試嗎?

立即註冊(英文),測試期間完全免費,只要是Unity Pro的開發者並有Git、SVN或是Perforce版控的專案。

註冊之後,如果有任何經驗分享或是功能需求,都可以與我們聯繫。提出功能需求最合適的地方就是官方論壇(英文)了。如果在使用過程中遇到任何困難,也可以在技術支援(英文)頁面提出問題。

Unity Free版的用戶能使用Cloud Build工具嗎?

如果你是Unity Free版的用戶,請不要擔心。我們會在Unity Cloud Build測試結束後提供Free版本,我們正加緊趕工中。

我們非常感謝Unity所有用戶,而且我們也期待能聽到你們的想法和需求。由衷地謝謝你們!

我們也想聽聽要將你的專案建立並發佈到移動平臺,你考慮的點有哪些呢?雲構建有什麼功能會讓你願意使用呢?你又是怎麼看待未來Cloud Build與編輯器的整合呢?歡迎加入Unity 官方社群,給予我們寶貴的意見!

2014年11月4日 星期二

Unity5 中基於物理的著色器

作者:ROD LOPEZ
原文:http://blogs.unity3d.com/2014/10/29/physically-based-shading-in-unity-5-a-primer/

翻譯:“小七、子程”

什麼是基於物理的著色呢?基於物理的著色(簡稱PBS)就是以一種模擬現實中材質和光照的相互影響。直到最近PBS才能應用在即時圖形運算中。這種方法在有光源和材質接近真實的場合下優勢非常明顯。

物理著色是想建立一種友善的方式來實現不同的光照條件下的逼真效果。它模擬光線在現實中的行為,而非使用多個特定的演算模型來模擬,因為後者可能會在一些情況下失真。

為實現這種效果它必須遵循物理原理,包括能量守恆(也就是物體反射出去的光量不可能超過所接收的光量),菲涅耳反射
Fresnel reflections - 所有表面反射在掠射角處更加強烈),以及物體表面如何自我遮擋(Surfaces occlude)等。

Unity 5包含了一些Shader,像是標準著色器(Standard Shader),它們組成了一個易用又完整的PBS光照明模組。標準著色器主要是針對硬質表面(也就是建築材質)設計的,可以處理大多數現實世界的材質,例如石頭、陶瓷、銅器、銀器或橡膠等。但它也可以非常出色地處理一些非硬質表面的材質,例如皮膚、頭髮或布料等。

跟"我的"遊戲內容有何關聯?

基於物理的著色器並不代表“真實”,單純加入功能也不一定就能完全決定遊戲表現。它適合多種不同的美術風格和美學效果,例如從精確掃描(Accurately Scanned),到傳統拍照(Traditionally Photographed),再到手工繪製(Hand-painted)的各類貼圖。

對於製作沒有特殊光照表現的2D遊戲開發者來說,PBS不是必需的選項。但是如果你想玩玩PBS來創建出酷炫的效果,這裡我們將提供一些有用的使用經驗。

一窺究竟

當我們談及Unity5中的光照時,不妨引入兩個概念,即Context和Content:Context是指Unity原生的一些內容,而Content則是使用者創造的內容(類似於UGC)。

關於CONTEXT

當給一個物件加入光照時,該物件周邊的環境是非常重要的。Unity先前的版本中已經提供了一些經典的輔助工具,例如光照探頭(Light Probes),它能夠對某個位置上的漫反射光照進行採樣。而在Unity 5中我們將提供描述周圍環境資訊更加有效的方式。

縱覽全域

HDR資訊是PBS中一個非常重要的元素。它能夠更加有效地描述環境資訊,例如太陽的明亮度可能會超過藍天10倍。Unity5中提供了一個原生的通道來處理HDR格式檔案,你可以直接匯入副檔名為.hdr和.exr的圖片。

加入發光效果

反射探頭(Reflection Probe)紀錄了某個確定位置的反射情況。Unity5的場景中會預設包含一個反射探頭(你可以從Edit->Scene Render Settings->Default Reflection來查看它)。你可以修改設定或者採用天空盒(Skybox),不設置具體位置。

當然,你也可以建立自己的反射探頭。可以從GameObject->Light->Create Reflection probe找到這個功能。

然後就可以進行以下的操作:

將反射探頭拖到場景中的任意位置,它就會開始主動獲取周圍環境的光照資訊了。

每個反射探頭都有作用區域(就是探頭周圍顯示的黃色區域)。裡面的物體會從反射探頭上獲取反射資訊。

更多的圖元著色:

由於Unity5的動態全域光照(dynamic GI),光照探針也包含了間接的光線反射資訊,並透過標準著色器作用於每個圖元。這樣不管光線是直接或間接地作用於法線貼圖,它的效果看起來都會很棒。

這張圖只用了一個往下照明的光源,桶子旁邊和底部並沒有受到直接光源

動態全域光照(Dynamic GI)

全域光照是PBS模組中Context層面重要的成員。為了對Unity5中的全域光照有一個全面的理解,最好的方法是看看我們發表的有關動態全域光照的文章

顏色空間(Color Space)

PBS和標準著色器都工作在線性和Gamma模式。HDR編碼、反射探針的資料以及其他Content都會與你選擇的顏色空間相呼應。但為了達到最佳(最舒服)的視覺效果,你應該盡可能保持在線性顏色空間。

內容(The Content)

內容是你直接建立的資料,標準著色器確實對Unity傳統的材質工作流程進行了一些改進,希望你會滿意。

材質編輯器(The Material Editor)

標準著色器還引入了一個新的材質編輯器,它使PBS的材質編輯工作比以前的非PBS材質更簡單。

新編輯器更精簡,但卻提供了材質所有可能選項。在新編輯器中我們不需要選不同的著色器來改變貼圖通道,不會再出現“texture unused, please choose another shader” 這樣的錯誤,不再需要切換著色器來改變混合模式。

你會有一些備選的貼圖通道,任何一個沒用到的通道都會在編譯時被優化掉,因此不用擔心效率問題。Unity會根據你輸入到編輯器中的資料來產生正確的程式,使它用最高的效率執行。

小技巧:你可以用ctrl+點擊貼圖來預覽大圖,還可以分別查看顏色和Alpha通道。

按照你想的方式點亮一切!

PBS當然和Unity5的動態全域光照(GI)是相容的,全域光照系統完全瞭解標準著色器的工作方式,並在產生場景時將其考慮在內。

PBS和GI合體使開發者可以快速改變整個場景的光照條件,把不可能變成可能,效果也更逼真。

下圖中的小鎮你會注意到它和文章開頭那幅有不同的光照設定。靜態物體看起來更有質感和層次,整個場景遠近分明。這正是PBS的魔力所在。一旦材質加入PBS構建,它就會變得和光照條件完全獨立,大大減少工作量!

這就是我們喜歡它的理由,也是我們認為你也會喜歡它的理由!

好康分享,這個維京人的村莊我們打算在Unity5.0發佈的同時也在Asset Store上發佈。讚喔!

2014年11月3日 星期一

介紹Unity 5.0中的幀除錯器(Frame Debugger)

作者:ARAS PRANCKEVIČIUS
原文:http://blogs.unity3d.com/2014/07/29/frame-debugger-in-unity-5-0/



當你看到遊戲裡面有破圖時,是否曾今疑慮:“如何能一步一步地看到畫面如何產生的呢?“

如果在Windows的話,你可以透過一些擴展工具來做。輸出一個Winows版本的遊戲,透過Visual Studio 圖像除錯器, Intel GPA, RenderDoc, NVIDIA NSight或者 AMD GPU PerfStudio執行 ,然後擷取其中一幀的著色,並逐步觀察繪製呼叫和著色事件中看看到底發生了哪些事。
上面這些方式固然很好,因為這些工具提供非常底層的詳細資訊,但是也複雜,而且你得創建一個Windows 版本的遊戲並且執行那些工具。

所以我們一直在想:"是否可以在Unity中做個簡單易用的工具來完成這個目的呢?",因此我們在Unity5.0中開發了幀除錯器來解決這個問題。

進入幀除錯器(Enter Frame Debugger)


執行Unity,在Window功能表中找到Frame Debugger,你就可以看到整個Frame裡面draw call產生的列表。可以一步一步查看哪個點上著色了什麼。檢查陰影貼圖、著色材質、延遲G暫存或類似的東西。

幀除錯器的介面相當的簡單。在右邊會有一個draw call的樹狀結構以及一些挺有趣的事件,在左邊會顯示事件的細節。在Hierarchy預覽視窗中也會提醒你那些網格使用最多的draw call。

下圖是用gif動畫顯示一步一步查閱深度貼圖建立所耗用的draw call:


然後是光源處理的陰影貼圖:


然後,圖像的後期處理效果開始。你可以從小圖看到泛光和眩光的效果,模糊然後恢復。隨後是一個紋理的閃光:



著色目標顯示選項(Render target display options)

對於某些效果,如果能夠看到著色目標單獨的通道會很方便。這裡是一個透過Unity方向性光源陰影產生的螢幕空間暫存:

或只顯示紅色通道:


顯示的顏色範圍可以用工具來調整。這對HDR著色特別有用:




當一次著色到多個目標時,你可以選擇在遊戲視圖中要顯示哪一個。下面展示的是在5.0中延遲陰影模式中漫反射,鏡面反射,常規以及輻射/光源暫存。














執行注意事項(Implementation notes)

目前的幀除錯器的運作原理可說是一個玩具(我們還不確定它是否能解決開發者問題),因為沒有幀擷取(Frame capture)功能,所以通常我們是drew call到達一定程度之後停止著色。所以如果你的畫面中有100個物件,但你只想看10個物件的著色效能,那我們只是跳過其他90個物體的著色。如果在這個點上正好著色到了一個貼圖,那我們就會把它顯示在螢幕上。

這代表運作原理很簡單,我們花了幾天的工作天完成了基本雛形(然後花了幾個星期來調整介面)。這方法的缺點是只能在編輯器中執行。所以如果你在用這個工具的改變了著色設定(例如禁止物體,或者改變遊戲視圖的尺寸),那麼你會突然看到一個不同的drew call列表。

雖然有這些限制,但我們認為它是一個追蹤你遊戲中圖像效能強有力的工具。

那麼,祝使用幀除錯器愉快喔!

著作人

網誌存檔