為什麼做電影不做遊戲? - PS

Daniel avatar
By Daniel
at 2017-07-17T11:22

Table of Contents

就我想得到的部分發表點淺見

最直接的答案就是電影跟遊戲相比
可以使用的運算資源和時間根本不是同一個數量級的
電影的一個frame可以用幾千幾百台的電腦組成的render farm
運算個幾個小時幾天幾個禮拜,只要最後有把frame算出來,就可以上架沒有問題

遊戲在遊戲主機或PC上,只有一組CPU
一個frame要在33毫秒(30fps)或者16毫秒(60fps)以內運算完
光是模型面數,就不可能用得跟電影模型面數一樣高

更何況算圖只是一個frame的一部份,不要忘了遊戲邏輯本身
舉例來說,這個TLoU:R引擎投影片上秀出的例子(p.62)
該場景的一個frame只有約40%的時間可以拿來算圖
http://bit.ly/2uttjSH

[補充]
的確,現在有可以將高面數模型降低面數的自動化工具
對於簡化背景物體很有幫助,像是石頭、樹木等
但是自動簡化生出來的低面數人物模型,往往佈線不甚理想
佈線不佳的模型,在骨骼複雜的地方運動時容易產生破圖
叫模型師手動修正不良佈線,不如從頭自己做低面數模型來得划算
[/補充]

所以回答這個問題

: 推 tkigood: 最簡單的原因就是面數太多跑不動 07/16 21:42
: 所以是可以做的吧?只是家機不給力?

沒錯,"理論上"有極其強大的硬體可以做到
但是以現在的硬體效能水準和經濟考量,基本上不可能也不實際
說"只是"家機不給力有點過度簡化問題

接下來針對頭髮的問題

: 記得之前哪個動畫一個頭髮插了幾百萬根 … 啊遊戲的可能只給你一個髮片

非即時算圖(又稱離線算圖)與即時算圖,兩者適用的模型定義方式不盡相同

離線運算適用的模型定義方式包含(但不僅限於)
傳統的網線模型(mesh)和隱晦面(implicit surface)
網線模型就是用網線明確定義很多三角形,建構出模型
隱晦面則是用數學函式定義出模型的形狀

不管是用哪個方式定義模型
在算圖的時候就是在每個像素的位置模擬從攝影機位置射出的射線
撞到模型表面的時候計算反彈、穿透與折射的射線,繼續模擬直到事先設定好的限制為止
接下來反推所有碰撞點應該會反彈的光色與強度,算出各像素的最終顏色
這個方法叫做光跡追蹤(raytracing)

針對網線模型的光跡追蹤很直覺
基本上就是解高中數甲的"求線段與三角形的交點"這個問題
隱晦面的光跡追蹤比較麻煩
針對不同的數學函式,要自己推導出適合的射線交點解法
有時候使用的隱晦面甚至沒有辦法用數學算式表達出來(沒有"閉型解")
這個時候就要用數值方法,片段地在射線上面取樣,反覆逼近隱晦面與射線的交點
可以比喻成用十分逼近法求平方根近似值的感覺,反覆朝更準確地答案邁進
這個方法叫做光跡邁進(raymarching),因為有種一步一步前進的感覺

用個球體模型來舉例
網線模型的定義方式就是用一堆三角形拼出個球型
優點包含與其他傳統模型的定義方式一致,且要做形狀微調的話可以直接改變頂點位置
缺點之一是鏡頭放大就會看到稜角
隱晦面定義方式則是使用球心與半徑表達球體
優點是光跡追蹤的時候可以明確算出正確球面,放大不會有形狀上的瑕疵
缺點之一是不方便做形狀微調

雖然說球射線與三角形的交點v.s.射線球體的交點,兩者所需的計算資源量級差不多
但是很多隱晦面定義的模型,與射線交點的計算就複雜許多

頭髮一般就是用隱晦面的方式定義(e.g. 密度、髮流、粗細等)
而且一次幾百萬根,計算量相當可觀
用網線模型表達幾百萬根毛髮,還要看不出稜角,資料量會太大

接下來看看即時運算
現行GPU的硬體架構,適合拿來在螢幕上面繪製三角形
所以幾乎所有的遊戲工作室,自然使用網線的方式定義模型,也就是你說的髮片
主流的算圖方式,是先算出三角形在畫面上佔到的像素
每個像素再執行一小段程式,算出該像素的顏色,這個程式叫做pixel shader

其實這種運算模式還是可以拿來算光跡追蹤啦
方法就是叫GPU繪製一個全螢幕長方形(由兩個三角形組成)
然後每個像素對應的pixel shader,實作光跡追蹤的運算

現行GPU一般來說不夠力執行真正的光跡追蹤運算
所以通常是用光跡邁進來逼近光跡追蹤的結果,並且將邁進步數限制得很低
邁進的步數不夠高的結果,就是會看到"取樣斷層"瑕疵

相信以下這類的毛髮和植披的取樣斷層瑕疵,很多玩家都有注意到
http://imgur.com/a/KFY9v


嗯...目前想到這樣,而且寫得有點累了XD
如果有可以補充的,就幫忙接力一下吧

--

Web http://AllenChou.net
Twitter http://twitter.com/TheAllenChou
LinkedIn http://linkedin.com/in/MingLunChou

--
Tags: PS

All Comments

Anonymous avatar
By Anonymous
at 2017-07-17T21:59
先推 免得被發現看不懂
Daph Bay avatar
By Daph Bay
at 2017-07-20T12:23
推 XD
Audriana avatar
By Audriana
at 2017-07-22T07:48
cj貓只能推
Anthony avatar
By Anthony
at 2017-07-25T18:20
推專業
Joseph avatar
By Joseph
at 2017-07-26T04:14
哇 釣到大咖
Hedda avatar
By Hedda
at 2017-07-26T19:28
專業的來了
Skylar DavisLinda avatar
By Skylar DavisLinda
at 2017-07-31T03:18
推專業 更推這麼有耐心仔細解釋!
Dinah avatar
By Dinah
at 2017-07-31T14:32
推專業,看完文真心佩服!
David avatar
By David
at 2017-08-01T22:46
.....釣到這麼大的
Sandy avatar
By Sandy
at 2017-08-02T05:27
推專業 !
Tracy avatar
By Tracy
at 2017-08-04T18:32
每次看cj貓的文都以為我看的不是中文…
Hedwig avatar
By Hedwig
at 2017-08-09T15:56
先推 免得被發現看不懂
Connor avatar
By Connor
at 2017-08-09T18:58
第一段 有哪部電影一個frame會用幾百台電腦運算幾個禮拜?
Iris avatar
By Iris
at 2017-08-12T16:12
專業推
Skylar DavisLinda avatar
By Skylar DavisLinda
at 2017-08-16T19:52
嗯嗯 跟我想得一樣呢
Daniel avatar
By Daniel
at 2017-08-18T11:54
未看先推,竟然釣到本板神獸
Jack avatar
By Jack
at 2017-08-20T00:03
那個只是比喻而已 如果時間成本無上限是可以這麼做...
Faithe avatar
By Faithe
at 2017-08-23T11:41
師爺你給翻譯翻譯
Agatha avatar
By Agatha
at 2017-08-24T16:07
呼 好險看得懂
Emily avatar
By Emily
at 2017-08-28T06:44
簡單的說,就是遊戲機又要畫圖又要控制NPC還沒薪水(?);
電影可以全力專注畫圖這樣?
Zenobia avatar
By Zenobia
at 2017-09-01T13:56
數學系表示:我只看得懂10%(X
Hardy avatar
By Hardy
at 2017-09-02T19:23
看來我是87 推推
Suhail Hany avatar
By Suhail Hany
at 2017-09-05T01:31
專業推
Todd Johnson avatar
By Todd Johnson
at 2017-09-08T22:41
cj貓大專業來了!!
Selena avatar
By Selena
at 2017-09-12T18:25
趕快推不然人家會以為我看不懂
Kelly avatar
By Kelly
at 2017-09-16T18:38
frozen中Elsa建城堡的場景,一個frame要算130小時,用了
Vanessa avatar
By Vanessa
at 2017-09-20T09:16
26000 cores。
Ina avatar
By Ina
at 2017-09-21T10:39
快推 不然別人以為我不懂XD
Audriana avatar
By Audriana
at 2017-09-26T03:53
Jack avatar
By Jack
at 2017-09-27T06:03
變形金鋼2有提過大力神的合體動畫曾把ILM好幾台電腦都
給燒壞掉
Quintina avatar
By Quintina
at 2017-09-28T00:47
不不不,PTT發文不需要開關([][/])呀XDDD
Tristan Cohan avatar
By Tristan Cohan
at 2017-09-28T12:55
推 我也是相關產業 寫得很好
Jessica avatar
By Jessica
at 2017-10-01T03:25
那些動畫電影算圖時間都是以近「年」來算的
Heather avatar
By Heather
at 2017-10-01T10:40
而且他們的算圖機器給我們一般人用是會飛天的xd
更不用說他們是用「農場」不是只有一台
Franklin avatar
By Franklin
at 2017-10-05T07:23
不過我也是菜鳥 一下子看這些也得消化一下xd
公司要出圖一張一個小時我都快抓狂了勒
Charlie avatar
By Charlie
at 2017-10-07T05:44
真的看不懂,但覺得好厲害~
Freda avatar
By Freda
at 2017-10-07T08:01
雖然都是中文 但我看不懂 跪著推一個
Robert avatar
By Robert
at 2017-10-08T05:08
簡單說 人家電影一張畫面 用幾千幾百台比PS4還強的
Lily avatar
By Lily
at 2017-10-08T18:54
電腦算個5.6天 才算好 你一台PS4 還是洗洗睡吧
Caroline avatar
By Caroline
at 2017-10-09T18:55
推!
Robert avatar
By Robert
at 2017-10-12T04:42
推這篇!!!
Odelette avatar
By Odelette
at 2017-10-13T02:56
我看不懂可以推嗎╮( ̄▽ ̄"")╭
Hardy avatar
By Hardy
at 2017-10-13T09:59
推!!
Harry avatar
By Harry
at 2017-10-15T20:42
總之推
Mia avatar
By Mia
at 2017-10-17T01:36
推看不懂的中文
Hazel avatar
By Hazel
at 2017-10-21T07:42
不懂也推
Margaret avatar
By Margaret
at 2017-10-21T14:40
推,感覺看完,有長知識= =a
Edith avatar
By Edith
at 2017-10-23T09:57
必須推0口0
William avatar
By William
at 2017-10-26T15:31
嗯嗯對,我也是這樣想,被你先Po了
Leila avatar
By Leila
at 2017-10-31T09:54
推專業 好厲害
Andy avatar
By Andy
at 2017-10-31T20:43
瑕疵OK的 TXAA一上去就消失了(誤
Bennie avatar
By Bennie
at 2017-11-05T10:35
不過TXAA要看企劃目標 有些企劃的導演跟美術很痛恨他XD
William avatar
By William
at 2017-11-07T14:52
Zanna avatar
By Zanna
at 2017-11-10T01:00
推力夠大 門板都能飛上天
Edwina avatar
By Edwina
at 2017-11-10T23:57
快推不然會被笑看不懂
Christine avatar
By Christine
at 2017-11-12T04:45
有一個公司只做海水特效 就可以賣給一堆大公司
Skylar Davis avatar
By Skylar Davis
at 2017-11-15T14:23
推推推 完全看不懂 教授對不起
Anonymous avatar
By Anonymous
at 2017-11-16T04:47
看完文章才發現是cj貓大大,謝謝分享
Genevieve avatar
By Genevieve
at 2017-11-17T23:24
看不懂
Irma avatar
By Irma
at 2017-11-22T04:41
認真看還是多少可以理解啦 不然辛苦寫的東西一堆人說看不
懂不是很那個嗎
Faithe avatar
By Faithe
at 2017-11-24T12:42
回13樓 其實你看到大型特效電影都需要這麼久....變形金
剛就是其一

填「戰國無雙~真田丸~」問卷,抽獎品

Lucy avatar
By Lucy
at 2017-07-17T09:16
大家好,又來推播抽獎資訊了:) https://goo.gl/5sxVxT ------------- 【KT快報】填問卷,抽《戰國無雙 ~真田丸~》特典獎品! 各位粉絲好,我們又開始要抽獎了啦!! 《戰國無雙 ~真田丸~》的問卷調查開跑了,本問卷針對已購買 《戰國無雙 ~真田丸~》的玩家,以及尚 ...

BLAZBLUE CROSS TAG BATTLE

Kelly avatar
By Kelly
at 2017-07-17T08:32
https://youtu.be/a2Qw-ztFrK4 BB UNI P4U RWBY 2VS2亂鬥 之前就有情報arc要作RWBY格game 沒想到是以這種形式出現 可惜GG是3d模組所以沒參戰 另外P4U可以拜託來偷渡個P5 JOKER參戰嗎XD ----- Sent from JPTT on m ...

七龍珠Fighters 特南克斯影片

Isla avatar
By Isla
at 2017-07-17T07:35
https://www.youtube.com/watch?v=xdJcJ_zjB5E 只有短短45秒看不過癮啊 -- 凄 狂 哀 絕 亡 死 滅 顫 悸 怵 怯 瞠 懾 恛 ...

吉斯加入鐵拳7啦!!!!!

Genevieve avatar
By Genevieve
at 2017-07-17T06:31
※ [本文轉錄自 KOF 看板 #1PQ-VOyC ] 作者: kimisawa (楊) 看板: KOF 標題: [情報] 吉斯加入鐵拳7啦!!!!! 時間: Mon Jul 17 06:25:24 2017 剛剛公佈的 https://www.youtube.com/watch?v=6MK2TKFFtQ ...

為什麼做電影不做遊戲?

Ingrid avatar
By Ingrid
at 2017-07-17T05:03
※ 引述《DwayneBacon (Bacon for breakfast)》之銘言: : 現在流行的卡通電影機會都已經3D模組化,像是迪士尼皮克斯系列都是,今天釋出王國之 : 心的預告我就在想,做一部動畫電影,一樣是要先建模組,然後在套進動畫裡面,啊反過 : 來看,遊戲也不是一樣要先建模組套程式嗎?問題來了 ...