遊戲使用的物理引擎是如何能夠模擬出現實的情景變化?

時間 2021-06-03 00:03:48

1樓:Janisa

上面那位說的有點詳細了,我就通俗概況說下:遊戲某個物體在遊戲開始了,遊戲物理場景會建立針對這個物體乙個物理物件引用指向它(根據該物體形狀和剛體物理屬性建立),該物理物件實時模擬物理計算,最終算出位置和朝向交給渲染程序實時改變該物體的位置和朝向。

2樓:鄧明華

搜尋「物理引擎」的關鍵字的時候發現的問題,最近一直在看這方面的東西,主動答。

首先物理引擎是不能夠「確實」地模擬現實的物理情景變化,物理引擎只是對現實的物理情景進行非常粗略的「近似」模擬。

同時物理引擎和實際做出來的遊戲還是有不小的差距的,可以理解為用3D工具製作出來的模型以及骨骼是木偶,物理引擎是就是拉動他們按照「近似」於現實的物理規律進行運動的線。

以2D物理引擎2DBox的命名為例,大部分的物理引擎都會包含這些基本的概念

World(模擬世界)

World可以理解為乙個舞台,在這個舞台的邊界範圍內,你可以設定各種各樣的物理引數,也只有在這個舞台內物理引擎才會生效。

Fixture(定製器)

Fixture定義了物體的碰撞邊界,密度,摩擦係數,恢復係數等等的內容,你可以理解為乙個標籤,貼在了模型上,賦予了他們在World中的物理屬性。

其中Sensor(感測器)算是一種特殊的Fixture,因為它本身不帶有碰撞或者密度等物理特性,但對於進入它的邊界中的物體可以施加作用。

Constraint(約束)

Constraint的名字其實就很好的說明了它的性質,它可以是施加在乙個物體上,限制這個物體的轉動角度,速度等等物理特性的(或者說是移除了一定的自由度)。

也可以是連線多個物體,並同時限制與多個物體相關的物理特性的,這的Constraint稱為Joint(關節)Joint有很多不同的型別,比如Joint limit,Joint motor,都有各自不同的功能。

Solver(求解器)

Solver是進行物理模擬的關鍵,它會按照一定幀率來推進時間,並且根據時間分步求解物體之間的碰撞以及約束,Solver的效率將決定乙個物理引擎的效率,比如2DBox用的是乙個自己寫的迭代求解器,而現在大型遊戲中的那些能夠處理極多粒子碰撞的物理引擎必然也是有乙個非常非常精緻的Solver的。

我也是剛剛在學習物理引擎,希望來知乎找一些資料的,有什麼說得不對的求補充求拍磚~:)

遊戲引擎是如何掙錢的呢?

ID有效 有限經驗回答一發。遊戲掙錢主要靠授權合法使用遊戲引擎開發遊戲,並提供相關支援 外掛程式等是要單獨收費的 引擎授權方式有兩種,一種是一次性支付授權金,一種是支付授權金 後續遊戲流水分成。據我有限的所知,目前引擎開發公司授權都在由第一種授權方式變為第二種授權方式。收入並不少,恩恩。 網易下面的...

幀同步遊戲如何處理物理引擎BOX2D的浮點數

馬遙 做聯機高頻率同步的小遊戲,目前還是乙個大坑。題目描述所說的 修正所有浮點數 基本不可能。先說可能的解決方案 1 避免使用BOX2D這種物理引擎,把物體之間的互動簡化,角色自己寫控制器,場景物體也寫成互動運動的邏輯,避免物理引擎的計算。2 幀同步 狀態同步。定期方式 幀同步不變,在此基礎上,1 ...

3dmax 如何能夠讓自己製作的遊戲模型更加逼真?

無賴de熊貓 按我的理解,戰斧不應該是帶弧度的嗎?你也不發布線圖我也看不得到佈線究竟合不合理呀。另外現在進入次世代遊戲了,3Dmax做不了完整流程的遊戲模型了。借用之前的回答,substance painter了解一下吧。大體上先做出中模 儘量減少佈線,保證外輪廓準確就行 然後再以中模為原型改出低模...