推 Kamikiri:最近的看門狗室內景也有用到騙術 但不知道是不是同種類 06/16 10:18
→ Kamikiri:感覺騙術是未來趨勢(?) 06/16 10:18
不不不
打從一開始,遊戲使用的就是騙術
只要讓玩家看起來覺得"對",就好了
早期還沒有可自由使用的render target的時候
有些遊戲需要反射的效果(像是一大片冰或是鏡子)
常見的做法是把整個場景所有的物件複製一次
放到反射面的另外一邊,然後反轉方向
之後才對整個場景做渲染
簡單來說如果你可以從鏡子中看到主角
其實遊戲是放了兩個主角在場景上,一個放在鏡子的另外一邊
遊戲物理也是一樣的道理,只要看起來不會怪就好了
一般的遊戲物理是用效率高、但是誤差值也高的
半隱晦尤拉積分 (Semi-Implicit Euler Integration)
簡單來說就是 v += a * dt; x += v * dt;
大部分的遊戲這樣就夠用了,但是這畢竟是離散積分
高速移動的物件會有穿隧效應
Blizzard的物理程式設計師Erin Catto
(同時也是Box2D引擎的作者,Box2D為廣為2D遊戲使用的物理引擎,如憤怒鳥)
當時也花了一些心思解決D3的穿隧效應
因為爆炸而飛出的敵人屍體,會因為部分肢體發生穿隧效應,而卡在牆壁上
針對這個問題,他提出了一種處理連續碰撞偵測的方式
(詳情請見Erin大師於GDC 2013的continuous collision講座)
但是他完全忽略沒有穿隧效應、兩影格之間理論上會因旋轉而碰撞的情形
原因是 "反正玩家又不會注意到"
再重申一次
打從一開始,遊戲使用的就是騙術
只要玩家不會覺得怪就好 >:)
痾,一不小心又brain dump了...
--
Ming-Lun "Allen" Chou
Physics / Graphics / Procedural Animation / Visuals
Web http://AllenChou.net
Twitter http://twitter.com/TheAllenChou
LinkedIn http://www.linkedin.com/in/MingLunChou
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 172.248.143.89
※ 文章網址: http://www.ptt.cc/bbs/PlayStation/M.1402886293.A.F2E.html
※ 發信站: 批踢踢實業坊(ptt.cc)
※ 轉錄者: cjcat2266 (172.248.143.89), 06/16/2014 10:38:30
推 entersoal:這個觀念在企畫面也是相同的 06/16 11:16
※ 編輯: cjcat2266 (172.248.143.89), 06/16/2014 15:28:25
[以下複製自本文之後的推文和編輯]
推 Kamikiri:說到這個 以當年Portal的呈現方式來看06/16 23:04
→ Kamikiri:真的是蠻經典的一種騙術 XD06/16 23:04
→ Kamikiri:導演講評模式裡面有說到這部分 不過內容忘光了 XD 06/16 23:13
Portal的做法是
在每一個傳送門後面,把整個場景複製一次,跟上一個場景做銜接
被複製和銜接的場景,本身需要利用兩個傳送門的變形矩陣調整位置和方向
同樣的步驟重複幾次,就可以做出無限空間的感覺
當然還是有上限,PC版的視覺設定就可以調整最高複製次數
被複製的場景也不是整個被送去GPU做渲染
而是結合空間分割(spatial partitioning)和portal culling兩個技術
把透過傳送門以外看不到的場景部分剔除掉,減少實際渲染的負載量
Portal衍伸自一款學生作品Narbacular Drop
https://www.youtube.com/watch?v=nKCmHTrxt5c