看板 PlayStation 關於我們 聯絡資訊
※ [本文轉錄自 GameDesign 看板 #1N2K8JNh ] 作者: cjcat2266 (CJ Cat) 看板: GameDesign 標題: [心得] FFXV Platinum Demo 的攝影機操作 時間: Sun Apr 10 01:55:27 2016 我在過去的幾個遊戲專案上負責過攝影機操作,算是有些經驗 在此我就針對這demo的攝影機操作分享一些技術方面的淺見 至於畫面和遊戲性,網路上已有充分的討論,而且我的文筆也不算很好,就略過囉 因為之後可能會轉貼到非技術板 我盡量把pseudo-code用中文表示,但仍無法完全避免使用工程用語 我個人很注重的兩點 就是遊戲的"視覺連續性(visual continuity)"和"視覺流暢性(visual smoothness)" 兩個frame之間突然發生的視覺變化,除非刻意,都算是視覺上的不連續 像是攝影機位置突然跳個兩公尺、物件突然出現或消失 在業界,這種視覺瑕疵有個專有名詞,叫做"突跳(pop)" 就算沒有pop,只要讓玩家覺得"視覺上卡卡的、不順暢、不自然",就是缺乏視覺流暢性 我在開發每個大學遊戲專案的最後兩三個月,都專注在消除pop和加強視覺流暢性 我覺得platinum demo的視覺連續性和流暢性,都有失專業水準 不,更正確地說,我覺得連專業遊戲最低該有的水平都沒有達到,讓我玩起來很不舒服 我非常希望FFXV可以成功,所以期望製作團隊可以做出改善 以下列出三點我覺得不合格的項目 (設Y軸指向正上方,XZ平面為水平面) 1. 攝影機Y軸位移緊密鎖定角色Y軸位移 這是遊戲中攝影機給我的感覺 (攝影機Y軸位移) = (角色Y軸位移) + (固定Y軸差異) 攝影機的Y軸位移與角色的Y軸位移呈100%正相關 這算是犯了遊戲攝影機操控的大忌 除非刻意畫面切換,不然不應該如此緊密隨著單一變數做位移改變 玩家可能會突然踏上一個階梯、跳起、落下 也有可能因為抓地邏輯沒有處理好,造成角色Y軸位移上的pop 這個pop就赤裸裸地被複製到攝影機的Y軸位移,造成視覺不連續 如果攝影機位移沒有pop,就算角色位移產生pop,產生的視覺瑕疵相對小很多 一般做法是讓攝影機的位移變數"綁上一個彈簧",跟隨目標位移滑順地移動 我之前有寫過一系列的"數值彈簧"技術文,有興趣的人可以參考看看 http://wp.me/p4mzke-LD 2. 攝影機位移並非二次圓滑 為方便解釋,我從圓座標的角度來看攝影機XZ軸位移 設R為角色與攝影機之間的距離,T為角色至攝影機的線段與+X軸之間的夾角 這是遊戲中攝影機給我的感覺 根據目前情況設定(目標R) 根據玩家R3輸入更新(目標T) (差異R) = (目標R) - (攝影機R) (差異T) = (目標T) - (攝影機T) (攝影機R) = (攝影機R) + (彈簧常數) * (差異R) (攝影機T) = (攝影機T) + (彈簧常數) * (差異T) 讓某個數值圓滑地追蹤目標數值,這是很常見的作法 用在一般物件上是沒什麼問題,但是用在攝影機上就還是有些瑕疵 把目標變數vs時間畫成圖表 y = 目標變數(t) 可以看到一條連續的曲線 把目標變數的變化vs時間畫成圖表 y' = 目標變數的變化(t) 也就是目標變數的"速度圖表(一次微分)" 看到的是一條連續的線段波折圖 把上述圖表的變化vs時間再畫成圖表 y'' = 目標變數的變化的變化(t) 也就是目標變數的"加速度圖表(二次微分)" 看到的是不連續、一堆斷開的線段 對一個變數而言 如果y 圖表是連續的,則稱此變數有C0連續性 如果y' 圖表是連續的,則稱此變數有C1連續性 如果y''圖表是連續的,則稱此變數有C2連續性 上述的攝影機變數更新邏輯,僅達到C1連續性 但是生活中的加速度是連續變動的,不會瞬間變化 就算雲霄飛車,加速度仍然是連續變動,位移量至少保持C2連續性 所以如果攝影機的位移沒有達到C2連續性,便會讓人覺得顛頗、不順暢 使用至少有C2連續性的攝影機位移 會讓玩家看起來比較自然舒暢,亦可改善一些玩家動態暈眩的情況 上一點提到的數值彈簧,也可以提供變數C2連續性 3. 過度劇烈與頻繁地改變角色與攝影機之間的距離 遊戲中為了避免有物體跑到角色和攝影機之間 造成角色和攝影機間的"視線(line of sight, LOS)"被截斷 會縮減角色和攝影機之間的距離(攝影機R)以避免障礙物 這個想法是正確的,但是這demo卻過度使用,使得(攝影機R)變化太劇烈與頻繁 不但會讓耐受度低的玩家感到不適,也會影響遊玩上的舒適程度 避免攝影機切入場景是必須的 所以為了避免切入場景而改變(攝影機R)在可接受範圍內 至於場景上瑣碎的裝飾品(燈柱、柵欄、碎石),就沒有避開的必要 另外,攝影機也不需要避開敵人 相信不少人有經歷過,在戰鬥中敵人突然跑到主角和攝影機中間 結果為了要讓玩家可以清楚看到主角,攝影機就突然pop到敵人和主角之間 不避開障礙物的話,勢必會產生攝影機切入物件的視覺瑕疵 有個不是很吃效能的解法,叫做"混色淡出(dither-out)" https://en.wikipedia.org/wiki/Dither Uncharted的2014年PSX demo中有秀出混色淡出的應用 請仔細看以下影片,攝影機沒有避開草叢 草叢在快要切到攝影機的時候混色淡出 這種處理方式可以有效地消除攝影機切入物體的視覺不連續性 https://youtu.be/Ow2cL-pp6p8?t=12m
以上是我的一些淺見 如果對攝影機操縱的技術層面有興趣 可以參考來自thatgamecompany(風之旅人的開發團隊)的John Nesky的演說 https://www.youtube.com/watch?v=C7307qRmlMI
這是他在GDC(遊戲開發者高峰會)的演說 三年前,我有去參加他在西雅圖PAX Dev的類似演說,算是這場演說的前身 他當時提到,之所以會花這麼多心力研究遊戲攝影機操作 是因為他的女友非常容易動態暈眩,很多遊戲都不能玩 他下定決心,要讓他的女友能夠很投入地玩他做的遊戲 於是Journey才有如此自然又令人舒暢的攝影機操作 -- Web http://AllenChou.net Twitter http://twitter.com/TheAllenChou LinkedIn http://linkedin.com/in/MingLunChou -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 172.91.156.131 ※ 文章網址: https://www.ptt.cc/bbs/GameDesign/M.1460224531.A.5EB.html ※ 發信站: 批踢踢實業坊(ptt.cc) ※ 轉錄者: cjcat2266 (172.91.156.131), 04/10/2016 01:55:39
panic2012: 推cj cat 04/10 02:00
※ 編輯: cjcat2266 (172.91.156.131), 04/10/2016 02:00:31
xxtuoo: 強..FFXV真的要加油了w 04/10 02:00
zz9257: 今年E3 SQEX會放FFXV的試玩 到時候就知道了 04/10 02:09
sugizo0: 這種技術性文章,真的是純推不下,感謝分享 04/10 02:13
sugizo0: 只有看懂最後一個混色淡出 XD 04/10 02:13
SNGoMMX: 第2點看不懂,但1.3點講的簡單明瞭,感覺得出問題所在 04/10 02:15
YenOrange: 推!! 04/10 02:18
kuninaka: 推 04/10 02:33
a83a83cjcj: 推 04/10 02:37
zerosaviour: 只能說SE經驗不足吧......不過這文章真的有專業到, 04/10 02:43
zerosaviour: 專業的我都懶得看了XD 04/10 02:43
Kamikiri: 我覺得SE不是經驗不足 而是這次的鏡頭好像採用了新系統 04/10 02:48
Kamikiri: 如ATR7.0所述 鏡頭會趨於自動化而非手動 04/10 02:49
Kamikiri: 可能這點也有影響到FFXV的運鏡也說不定 04/10 02:50
e04su3no: 雖然寫的很簡單的樣子 但我還是看不懂 04/10 06:50
frfreedom: 反正fps都是30,有的順暢無比,有的卡成狗,最近有兩 04/10 07:19
frfreedom: 個遊戲正是最佳對比 04/10 07:19
zorroptt: 不推會被發現看不懂 04/10 07:48
x12118: 推專業文! 04/10 07:49
NiGHTsC: 哦哦,就攝影機位移操作嘛,不會很難懂嘛 04/10 08:02
NiGHTsC: (放屁XDDD 04/10 08:03
OROCHI97: 明明寫中文怎麼還是看不懂XDDD 04/10 08:14
toy9986619: 沒有要再放試玩版了吧? 印象中訪談說過這段期間要全力 04/10 08:14
toy9986619: 衝刺,不會再弄試玩版了 04/10 08:14
remainder: 看不懂Q_Q 04/10 08:24
Searook: 難怪玩demo時有種說不出的不舒服感,恍然大悟,專業給推 04/10 08:41
Searook: ! 04/10 08:41
bowiee: 看到微分頭就好痛XD 04/10 08:46
bill22413: 原來是這樣啊。 像我玩秘境3和最後生還者都好暈 04/10 08:53
allensheng: 雖然沒有玩體驗版 但攝影機不好真的讓人很煩躁 04/10 09:47
humanfly: 所以第三人稱比第一人稱會暈? 04/10 09:57
starforest: 有技術有推 04/10 10:10
llwopp: 祕境的運鏡一直做得很棒 04/10 10:12
llwopp: https://youtu.be/pUC1VFkma7k?t=2m59s 04/10 10:12
llwopp: 這段很經典 而且某些遊戲後來也有使用類似的手法 04/10 10:13
dklassic: 簡單的說鏡頭移動需要仿防手震,以免玩家感到暈眩? 04/10 10:21
auron2714: 每次你分享的文章都讓我對遊戲製作有進一步的了解! 04/10 10:37
auron2714: 雖然專業不是遊戲相關 但是你的文章都讓我看得津津有味 04/10 10:38
j9145: 推 04/10 10:41
JingYi09: cjcat必推~ 04/10 10:45
cjcat2266: 嗯,簡單來說就是要防震,這點demo處理得不是很好 04/10 10:47
kashin: 有神快拜 04/10 10:47
reDQ6: 推,受教了 04/10 10:56
balaking: 專業推 04/10 11:22
RKain: FF零HD,還有這次的DEMO玩一陣子會噁心想吐不知道和攝影機. 04/10 11:33
RKain: 有沒有關係,本來還以為我是3D遊戲耐受度算高的.... 04/10 11:33
SansSouci: 不明覺厲 04/10 12:24
Kamikiri: FF0HD我印象中動態模糊弄很大...當時玩起來很不舒服 04/10 12:53
energyandpig: 最後生還者ps4版60fps讓我吐了兩次,以前 04/10 12:57
energyandpig: 從來沒有3D暈... 04/10 12:57
kotenka: 看不懂推XDD 04/10 14:11
xxtuoo: 最後生還者..用手電筒照的場景也讓我躺平了.fov太小關係?w 04/10 14:13
imret: 原來我一直以為Journey的視角不會暈是因為畫面相對不寫實 04/10 14:55
imret: 原來是有下過苦功的 04/10 14:56
unorthodoxy: 對於頑皮狗來說 是基本功啊XD SE就...用了很多新運 04/10 15:10
unorthodoxy: 算 但遊戲不是給工程師玩的.. 04/10 15:10
unorthodoxy: 視覺的舒適也很重要 04/10 15:12
zerosaviour: 我會說SE經驗值不多,是因為現在RPG要做的像動作遊 04/10 16:22
zerosaviour: 戲 04/10 16:22
yoseii: 我覺得跟暈車的感覺很像,都是視野太注意在某點上面才會暈 04/10 17:29
yoseii: 把視野發散一點去看,反而比較不會暈 04/10 17:30
yoseii: 我玩 FPS 一直快轉都不會暈,除非顏色太鮮艷才可能不舒服 04/10 17:30
dixieland999: 第三人稱遊戲比較容易暈吧...尤其要自己操縱視角的 04/10 19:32
dixieland999: 那種...因為人物移動方向跟視野轉動不一致...再加上 04/10 19:33
dixieland999: 背景也在移動的話就很容易暈 04/10 19:33
Gaogaigar: 以前還在台灣遊戲業時寄相關的資料給製作人說想做 04/10 22:39
Gaogaigar: 被主管訓話說不該多事,科科 04/10 22:39
pirrysal: 好專業,完全不懂XD 04/11 04:06
aster515: 3的部份去撞積木就很有感覺 所以也有人會說積木特別會掉 04/11 11:10
aster515: fps 04/11 11:10
alfread: 業內人的寶貴經驗分享 GJ! 04/11 13:57
unorthodoxy: Sense這種東西 台灣真的還差很遠 講了很多資方應該也 04/11 18:15
unorthodoxy: 聽不懂XD 04/11 18:15
lolipopo: 沒錯跟我想的都一樣(假 04/12 18:58