有沒有雙精度的遊戲?
有沒有在渲染管線內都是雙精度表示的遊戲?比如說坐標點,法線,投影矩陣,裁剪空間都是按雙精度計算的。
暫時可能沒有,不排除你可以做這樣的遊戲/遊戲引擎,但一般來說沒有這種需求。
對於非常大型的遊戲世界,用分區及/或定點數來表示坐標會比雙精度浮點數有用。
法線是單位矢量,理論上定點數更好(通常每通道16位已很足夠),單精度浮點數比較省事。
一般浮點精度不夠用了就開始用局部坐標系。因為固定管線的部分幾乎沒有支持double的。
沒有,因為沒意義。
主要原因是因為硬體對雙精度支持得不好,無論是x86還是ppc的寄存器,要麼就是32bits,要麼就是128bits。
至於gpu,也是128bits和32bits,有一些指令可以處理16bits。
這種情況下不是不想用,是沒法用。。。
你大概需要空間分塊和局部坐標系這套東西。。。
另外還有一些誤差控制的技巧,比如先手工算完translate,對消掉一些誤差。
雙精度的遊戲,不知道有沒有。像很多大牛說的,遊戲真的沒必要雙精度,意義不大。
但我知道一款引擎是雙精度的,UNIGINE引擎是一個64位雙精度引擎,當然你拿過來做出來的遊戲可以稱為雙精度的遊戲,但這個引擎主要是做模擬的,雙精度其實是用來做真實地景(全球的經緯度坐標、高程、法線等)的。
但這個引擎很貴,且不開源,SO
N卡已經把GTX系列的雙精度運算能力閹了(用不到),此帖終結_(:з」∠)_
除非你有24K純氪金眼,能夠分辨7位有效數字以下的圖像差別。
不過如果你有這本事,那麼顯示器在你看來早就應該是滿屏狗牙了——現在的8K顯示器解析度才7680x4320而已,你的肉眼解析度比它單個像素還要高1000多倍……
這個回答下面我見到了常看到的幾個遊戲開發大神,是跪著膜拜的那種
一般位置信息是要雙精度保存的。投影時轉到局部坐標系投影,真的不需要雙精度。
其實超過1000米的地圖就要轉局部坐標系了,不然z-fighting。
有部分太空遊戲是用雙精度表示坐標的,但在渲染前也會用分區技術轉換為單精度的。其它數據則都是單精度的。
有同事給我說,現在的顯卡,特別是遊戲顯卡對雙精度處理器都是閹割的。性能是單精度的1/30以下
推薦閱讀:
※魔獸日記:說說你對魔獸的記憶吧,好的壞的都行?
※國外有哪些知名的遊戲公司和團隊?他們的資料在哪裡可以看到?
※有哪些關於遊戲策劃的書可推薦?
※怎麼避免遊戲設計中出現嚴重失誤?
※製作3D遊戲時如何避免或減輕玩家的暈3D現象?