2012年7月27日 星期五

Unity 4: AAA等級的繪圖畫面


大家好!
我們是Unity行動裝置的團隊. 有了Unity 4, 你就可以發佈您的遊戲到10個不同平台. 在這篇文章裡 , 我們將專注在Unity更新的新增功能, 你可以先看以下影片, 讓你知道整個行動平台上的開發概況 ,而每個功能的技術資訊, 請繼續閱讀:



動態陰影
Unity 4提供客戶最想要的功能:在行動裝置上顯示動態陰影. 當今行動硬體效能越來越好, 有了Unity 4, 你現在可以從方向光(directional lights)產生硬邊的動態陰影.

在行動裝置上展示動態字型
在Unity 4裡面, 你可以在行動裝置上使用動態字型, 你可以使用任何OS字型, 不需要在你的應用程式裡面先涵蓋字型資料. 在執行期, 字型表會動態地產生, 只載入會用到的字體, 這讓你的應用程式維持最少的軟體大小. 如果你不希望使用某OS字型, 你也可以嵌入ttf檔案, 使用動態字型可以節省執行期材質記憶體, 當你有大量字型的時候, 但是一般來說不會全部用到這些字型. 除此之外, Unity 4還支援使用類似HTML的標籤, 用來對文字進行渲染, 這讓你輕易地控制文字的形態. 動態字型與類HTML標籤都是這個產品的核心, 而且不限於使用在行動手機平台上.

當處理lightmapping時會一併考量Normal maps
Lightmaps是用來增強遊戲寫實度的好辦法. 在Unity 4裡面烘焙lightmaps時, 也把Normal maps計算進去. 這表示你可以在靜態的光照上面看到normal map的資訊, 這可以用在所有的光照模式, 並不局限於行動平台上. 這個功能讓lightmaps效果變得更驚人!

自動增加解析度, 當你算出低解析度畫面時
Unity 4現在可以設定算圖解析度, 跟原始裝置解析度不同. 這個功能讓你可以以較低解析度來渲染遊戲, 然後當顯示的時候再調高解低度. 因為你可以用較小的buffer來渲染畫面, 這樣的作法可以得到更好的效能表現.

針對Android平台的Eclipse專案產生
當使用Android平台, 你現在可以產生Eclipse專案, 而不是直接從Unity發佈. 這功能讓你可以更容易地整合, 並修改, 當你有用到第三方資料庫的時候. 而且在這個階段, 你也可以添加Android特有的程式碼, 一旦你佈署到某裝置時, 你就可以透過Eclipse進行debug的工作.

採用Tegra對Android裝置進行GPU側寫
當您想要最佳化(最小化)您的遊戲時, 最重要的一件事就是先進行側寫 (profile) . 側寫可以幫助你找到遊戲中那個部分跑的比較慢, 或是哪個區域你可以添加更多的遊戲資產物件. 現在你可以在Android手機遊戲上進行GPU側寫, 透過Tegra晶片, 藉由使用這個Unity側寫工具讓你可以在記錄Tegra使用, 就好像你在PC遊戲上做的一樣. 這包含了取得個別draw call timings, 然後也可以調查算圖流程上每個frame的記憶體使用, 算圖紋理的使用...等等參數.


Unity 3D 台灣代理請洽 奇銳科技 (02)2557-3321

[相關資訊]


Pencil+ 3卡通算圖外掛功能介紹

PSOFT Pencil+ 3
Pencil+ 3是一套非照片寫實的材質表現3ds max外掛, 能夠產生鉛筆或是素描質感的筆觸, 用這套產品算出來的圖片看起來就像是用鉛筆畫出來的或是彩色鉛筆, 跟傳統動畫的感覺類似.

高階的表現力
你可以在3D裡面表現出獨特的日本動畫/插圖效果, 而修改器的功能是Pencil+ 3的新增功能, 讓你可以產生在3D難以達成的效果, 例如修正shading或是誇張大場面的效果, 以透視變形的功能表現出來. Pencil+'s獨特的非照片寫實表現也對產生圖表有幫助, 能夠產生簡單的, 傳達您的主要想解釋的東西. 我們也建議您拿它作為視覺化工具或是motion graphic設計工具.

卡通算圖, 半色調網版算圖, 水粉彩算圖, 色鉛筆算圖


美麗的線條繪製
線段, 是非寫實算圖效果的核心. Pencil+能提供高速的算圖效果, 產生物件之間的交錯線, 提供大量適合用在動畫的功能. 例如筆壓模擬, 這種現象常見於具有手繪風格的插圖中, 使用材質貼圖調整線段的粗細, 美麗的線段繪製, 甚至可以用在工程藍圖表現隱藏線, 都可以很簡單地設定出來.

圖形化的介面
Pencil+的介面設計地相當容易使用, 最佳化的結果可以在很短的時間最出來, 因為線段與材質可以用互動的方式來控制, 讓你覺得好像是在使用繪圖軟體那樣, 即使是新用戶也能很流暢地操作.

Pencil+ 3新增功能
Pencil+ 3提供改良的材質與線段計算, 同時加快了算圖速度, 而輸出rendering elements也提供了自由度, 新增的Modifier的功能, 加速了先前造假透視變形所需要的額外工序Pencil+ 3提供了新的表現法與新的運作方式. (經由多線程最佳化, 用在材質計算, 算圖速度跟舊版Pencil+ 2相比最快可達三倍快)

Modifier的功能是新加進來的, 為了要重現更接近手繪的感覺.

Perspective Deformation Modifier
透視變形功能Pencil+ 3導入了高階的透視控制, 讓你可以產生大膽的場景視覺效,果 讓畫面看起來更像手繪的感覺.

你可以做出廣角的畫面, 以3DCG攝影機產生, 讓你可以得到動態又具張力的畫面, 但也會產生變形的問題, 如果是用手繪的話, 這樣令人驚艷的畫面並不會產生變形問題, 新的功能可以讓你在3DCG產生廣角的畫面又可以避免透視導致的人物變形.

有了Pencil+ 3透視變形modifier, 讓你可以根據攝影機的距離進行變形. 除此之外, 還提供大量傳統漫畫的功能, 讓你可以做到用一般攝影機做不到的效果, 例如攝影機偏移, 消失點...等功能.

複製法向量
Pencil+ 3現在讓你可以複製物件的法向量到目標物件上, 透過這個功能, 你可以產生與物件形狀不相關的材質效果, 但是還是能維持住物件原本的剪影.

材質功能
讓你的物件有平坦的, 卡通算圖效果, 或是色鉛筆素描效果, 讓你可以精確地控制材質, 例如光源的影響或是環境光的影響.

改良的漸層變化
改良了編輯漸層的功能, 讓你可以輕易地取得, 達到你腦海中想像的漸層效果. 你可以自由地設定zone的數量, 讓你可以最佳最終影像的外觀.

輸出Render Elements
能夠定義區塊的ID讓你可以輸出想要的區塊, 作為render elements, 除此反射與線條以外, 你還可以選取, 輸出特定區域的alpha資料.

新的高光計算
Pencil+ 3包含了衍射效果, 讓你物件的高光會跟物件的形狀有關, 擴充的highlights功能讓你可以產生新月形狀的高光.

新的線段功能
現在你可已經由選取的材質畫出物件的隱藏線, 選取材質的線段顏色也可以個別地改變.

高光的設計
這個功能讓你可以視覺化地控制高光形狀, 自由地產生高光, 達到藝術性的風格.

漸層偏移效果
這功能讓你可以表現出高品質的材質效果, 藉由貼圖來控制漸層效果, 讓你可以在物件上的特定位置產生特定的顏色.

燈光顏色
這個功能讓你可以定義光源顏色的影響, 以及環境光的影響. 這個影響力可以經由每個不同分區的ID來獨立控制.

陰影的混合
這個功能讓你可以定義陰影的顏色, 略過分區漸層的影響設定.

筆觸效果(Stroke)
這個功能讓你實現做出手繪質感的筆觸效果, 提供您大量的控制參數, 例如筆觸大小, 兼具與角度, 甚至曲率, 根據3D模型改變形狀, 筆觸尺寸與根據曲率讓alpha變淡.

線段功能
讓你畫出物件的輪廓線, 產生細緻的, 美麗的線段, 有手繪的質感, 讓你可以做出快速, 穩定的算圖結果. 即使是複雜的物件也沒問題. 除此之外, 線段還可以互動地設定參數.

Pencil+ 3 新增功能: 線段
這個功能由Pencil+ 2版本以來大幅擴充, 現在讓你可以選取edge來輸出, 設定ID element可以彈性地輸出, 以吻合您的工作流程.

線段繪製
這個功能讓你可以輕易地繪製出物件的edge, 使用簡單的參數就可以達到.

隱藏線的繪製
這個功能讓你可以繪製被遮蔽的物件邊界, 讓你可以繪製出工程藍圖那樣的效果.

先進的線段設定
提供感壓控制, 大量的參數讓你可以創建細緻的線段, 具有手繪的外觀.

隨距離衰減
這個功能讓你根據物件對攝影機的距離來改變線段的大小與透明度, 結合霧氣的功能, 用在motion graphics製作上, 你就可以產生獨特線段效果.

反射/折射
這個功能提供線段的反射與折射效果, 讓你可以選取edge 改變反射與折射的顏色.

EPS格式輸出
這個功能讓你可以輸出EPS向量格式, 有了Pencil+ 3 讓你可以選取哪個edge來輸出, 不受解析度影響的向量影像很適合用在建築, 產品設計...等產業, 或是網頁的視覺設計, 互動介面等等領域上.

業界成功案例





Pencil+ 3 台灣代理請洽 奇銳科技 (02)2557-3321

[相關資訊]

2012年7月17日 星期二

Krakatoa算圖效果都很顆粒感?

作者: BOBO

"算出來效果顆粒很明顯, 就像用Krakatoa算出來的那樣!"

如你所想, 我花時間在Google上搜尋"krakatoa particles" 與 "krakatoa render"這兩個關鍵詞, 每週大概會做一次這樣的搜尋, 為了了解大家在各個論壇都怎樣用krakatoa, 怎樣談論這外掛的. 幾個星期前, 我發現在SideEffects論壇上面一個很久的帖, 談到Houdini的算圖, 它文章的標題是: 超顆粒感 ,就像Krakatoa算出來的效果那樣...

我必須要說在那欄裡面放出來的動畫, 並沒有那麼顆粒感, 但我是比較在乎大家對Krakatoa的印象是怎樣的. 我懷疑大家認為Krakatoa算出來都很顆粒感是因為在YouTube上面很多算出來的動畫他們都用了錯的Krakatoa的設定, 是這樣的關係...

當然, 有時候你會用Krakatoa故意表現出沙子顆粒的質感. 有些例子還會希望每個沙子粒粒分明, 是實上, 電影特種部隊 (G.I.Joe)裡面的Nanomites非常顆粒感, 但那種顆粒感是故意做出來的!

當你想用Krakatoa做出水墨或是煙霧質感的時候, 基本觀念是, 如果你可以看到一顆一顆的粒子, 代表你密度設的太高了! Krakatoa的背後概念是把上億顆粒子畫進image buffer裡面, 而每個粒子的密度很低, 這樣累積起來的結果就會產生非常平滑的結果. 在電影離魂(Stay)是Krakatoa第一次使用在電影裡面 (靈感來源是Doc. Baily's Spore), 算圖效果像是慢慢變大的電漿. 電影魔咒(Cursed)裡面, 我們用FLOOD軟體來驅動上億顆粒子的模擬, 然後用同樣的算圖器渲染出纖細煙霧的效果.

最近weareflink公司, 替中國中央電視台(CCTV)所製作的的水墨動畫展示了Krakatoa能夠表現水墨的感覺, 而不會有明顯的顆粒感. 而由DekoLT所製作的Vilnius SPA動畫也顯示了高密度但足夠的粒子可以產生實體雲層的效果.





另外一項會造成算圖有顆粒感的因素是, 特別是對於實體雲層的表現----是Light Pass Density這個參數. 你可能已經知道Krakatoa讓你可以打斷粒子的密度 與光線穿透粒子的密度, 這兩個參數的關係. Lighting Pass的密度設定的高, 而粒子的數目也高的話, 就會產生粒子的自身陰影(self-shadowing) 在雲層的表面上, 因為在最外層的粒子會把所有的光線都先吃掉了, 造成它底層的粒子變得非常暗, 這樣不只是會產生顆粒的質感, 還會產生討厭的墨爾效應.

減少Light Density會讓更多光線能穿透粒子團(volume) 同時也會產生美麗的次表面散射(SSS)效果 , 這樣的操作通常能解決問題.

所以, 下次當你用Krakatoa的時候, 請你確認粒子的數量, 並務必降低Density, 如果你想要得到平滑的效果的話, 記得要來回調整一下Lighting Pass與Final Pass Density這兩個參數之間的平衡, 以得到最佳的光線穿透與像素涵蓋率(pixel coverage)!

祝您有個平滑算圖效果!

Krakatoa 台灣代理請洽 奇銳科技 (02)2557-3321

[相關資訊]

2012年7月14日 星期六

專訪Krakatoa粒子特效大師Matthias Müller

作者: James Whiffin
Matthias Müller以他驚人的粒子特效作品著稱 , 不管是網路上或是特效界. 我最近有幸能專訪 Matthias先生, 關於他的作品與他持續創作的靈感來源, 以及他為大型公司製作的專案.


Matthias先生替Intel公司做的案子幕後分解

有些人可能還不認識你, 可否稍微解釋一下你的工作以及工作內容?
好, 我的職稱是VFX美術, 這表示我要創作影片的視覺特效, 大部分是電視廣告或是現場表演.

你是怎樣開始接觸粒子特效的, 你如何決定要專精在粒子上?
大約三年前, 我開始用particle flow (3ds Max 標準的粒子系統). 我真的很喜歡, 我覺得PF很彈性, 你可以做出很多很酷的效果, 特別是有了 Box #2 與 Box #3的幫助! 接著, 很快我就發現 3ds Max有個外掛---Krakatoa, 有了這個工具, 我就可以渲染超級多的的粒子, 速度很快且很美麗, 然後我就把我第一個測試影片貼在Youtube上.





而開發Krakatoa工具的人---- Borislav Petrov (Bobo) 看到了我那支測試影片, 邀請我加入下一版的Krakatoa Beta測試. 真的很酷, 從那時開始, 我就用PF與Krakatoa做了很多東西.

你都是自學還是有人教你?
我大部分是自學, 當我開始用3ds max的時候, 我讀了很多文章與基本教學, 然後我就自學. 為了要了解 FumeFX 與 particle flow, 我有看 Allan McKay的一些教學. 我認為 Allan McKay在教這些技術很在行 , 但同樣地我也認為PF是很容易理解的工具, 你只需要一點基本數學基礎, 我在學校兩個主修是數學與美術 (當然這很有幫助)!

你的靈感來源是?
有很多很棒的CG藝術家帶給我靈感, 其中一個是德國藝術家 Tim Borgmann . 我真的很愛他的抽象作品, 一年前我與其他CG藝術家合作做了一個專案叫做 Resonance. 所有參與案子的藝術家都很棒, 也很激勵人. 我也很愛看雕塑家, 用zbrush雕出寫實又很多細節的角色, 這對我來說也提供很多靈感.

你做過最有趣的案子或是工作是什麼?
恩....很難說 , 大體上我愛我的工作, 但是做自己的專案, 像是 Entering the Stronghold 或 The Space We Live In是我最愛的.

Entering The Stronghold | Audio Visual Animation from Matthias Müller on Vimeo.

The Space We Live In from Matthias Müller on Vimeo.

你比較喜歡替motion graphic或是視覺特效製作粒子效果?
這要看專案, 但我也不確定我的影片應該要歸類在哪一類, 我沒有想很多, 但我可以說我喜歡創造有活力的, 多采多姿的效果.

你有用過 after effects裡面的粒子特效嗎? 如果有, 你有什麼看法?
有! 在我知道PF與Krakatoa以前 我以前用的是 After Effects裡面的 Trapcode’s Particular, 可以用來做出各種特效, 很酷! 但是我不太知道After Effects裡面的標準粒子系統. 我個人比較喜歡PF, 因為具有彈性, 可以客製化.

你是如何處理巨量粒子的模擬與算圖時間的?
Krakatoa其中一個我最愛的優點是速度, 它的算圖速度很快, 每當我要模擬或是算圖時, 我都是放隔夜讓它跑的. 我也很愛V-Ray的算圖, 因為算圖結果很棒. 算圖時間有時很困擾, 所以我會試著耐心點 或是用不同的設定, 我還沒有算圖農場.

你個人在電影裡面看過最棒的粒子特效是哪部?
印象中沒有特別場景, 但是我很讚賞: 雷神索爾, 復仇者聯盟與變形金剛1-3集裡面的視覺特效. 這些電影裡面的視覺特效很驚人, 我很尊敬創造這些特效的人.

這業界的專家 你最尊崇哪位?
Alex Roman, Brandon Riza, Miguel Salek, Onur Senturk, Tim Borgmann, 從Polynoid來的, 還有很多優秀的人, 我無法一一點名.

下個10年你有什麼希望?
喔! 十年是很長的時間, 我希望我維持健康, 做有創意的作品. 我希望做更多聲音特效影片, 然後整合實拍影片, 我剛借了台攝影機 (笑). 最近我開始創作抽象畫, 我希望繼續畫, 然後慢慢進步.

如果你不以粒子特效做為職業, 你會想做什麼?
不知道, 美術與數學的混搭很適合我!

你對想要創作粒子特效的人有什麼建議?
盡可能地從美學的角度來學習, 顏色, 光線與形狀如何搭配成構圖, 而不是用技術的角度來想 .有很多人要求我提供教學, 但不是從美術的角度來想.

你對色差現象 (chromatic abberation)有什麼看法?
我很愛!

有什麼軟體或是外掛 你很想學但還沒時間好好學?
我想要知道更多有關流體模擬的東西, 例如 RealflowNaiad. 我希望之後有更多時間或是動機來好好學.


Krakatoa 台灣代理請洽 奇銳科技 (02)2557-3321

[相關文章]



2012年7月5日 星期四

Unity全新GUI介面

現在大部分的人都在忙著Unity 4.0 發表的準備, 我們團隊則是專注在下一版的新GUI研發. 我們覺得是時候來分享一下相關資訊, 讓你知道一下我們到底在幹嘛! 以下是我花一天的時間整理的東西:

基礎
替遊戲設計GUI的時候, 大部分會假定外觀會從視窗表現, 我們認為彈性很重要, 所以我們所有東西都使用動畫. 讓我們看這個有點呆板的按鈕. 這個按鈕含有三個元件, 背景圖, 框線與標籤. 新的GUI編輯器, 這些東西會由不同的元件構成.

這個設計很強大, 因為他可以讓你替不同的元件設計動畫, 按鈕的元件可以根據使用者的操作播放動畫, 每個元件可以透過GameObjects的階層來啟動. 所以, 如果你希望滑鼠滑過去的時候添加某聲音 , 你只需要把某聲音檔拖曳到GUI Editor, 當你記錄滑鼠滑過的狀態時. 不需要寫程式碼.

位置
我們會盡可能地讓你在Unity裡面很順暢地工作, 這樣的概念也放到了新的GUI系統. 我們從頭建立了完整的編輯器, 簡單拖曳您新組裝好的按鈕到GUI editor, 移動, 縮放大小, 重新指定子母關係, 設定動態. 希望設定常用UI, 你只需要丟到工具列即可.

為了要加強編排的彈性, 我們採用了類似Apple的縮放控制. 每個GUI元件都有自己的大小, 相對於其母元件, 以及一組的縮放控制, 讓你知道如何控制母元件的大小與母元素結合. 這是很棒的方法來處理不同長寬比的, 具現代感的東西.

3D GUI
3D群組讓你的UI元件可以有完整的透視變形, 能夠讓UI設計變得更具層次. 你可以看到把這個概念用在雷達元件設計上, 每個小東西都有它自身的3D動畫表現.

排序
timelines提供了物件排序很清楚的控制, 最上面一層就是放在最上面. 你可以在timeline上很容易地往上或是往下拖曳.

用在GUI裡面的紋理貼圖會自動地避免重疊, 為了要減少draw cal, l 我們寫進了一個動態的重疊偵測功能. 它會找到哪個元件在切換, 避免深度的改變, 在上圖的那個GUI只花了5個draw calls.

操控
新的GUI系統提供你大量的標準控制器, 以及幾個細緻的按鈕開關, 專為行動裝置遊戲所設計. GUI系統包含了對多點觸控的完整支援, 為了要對用戶按壓互動的反應, 你可以很簡單地拖曳一個GameObject, 然後選怎用怎樣的方法去呼叫, 從C# 的角度, 這只不過是個代理人, 你也可以從code的方式掛上去. 所有內建的元件都可以用script控制.

如果你想要寫你自己的控制器, 你可以從GUIBehaviour來改, 這讓你可以callback OnMouseOver, OnMouseOut, OnKeyDown, OnMouseDown...等等. 所有的控制器都可以使用動畫系統以達到最大彈性, 你可以模擬, 幾乎可以從code中做出任何你想做的東西.

我想說的就這樣! 關於這個GUI我真的超級High的! 很有創意也很有趣! 我接下來會花點精力在修bug上, 這樣我們才可以把這小孩交到您的手上.

如果您有任何問題,請在以下留言, 我會盡可能地回答您.

繼續寫程式!

Nich敬上


Unity 3D 台灣代理請洽 奇銳科技 (02)2557-3321

[相關資訊]