- 騰訊游戲開發(fā)精粹
- 騰訊游戲編著
- 20字
- 2019-08-30 16:20:49
第4章 船的物理模擬及同步設(shè)計(jì)
摘要
船只模擬在游戲中比較常見,無論是帆船、汽艇還是游艇,在模擬上都可以簡化成動(dòng)力、浮力和水的阻力的疊加。如果是勻速行駛在平靜海面上的大船,則可以進(jìn)一步忽略水的阻力。如何近似地計(jì)算這些力,從而在物理引擎的模擬下有逼真的表現(xiàn),是一個(gè)難點(diǎn)。
最常見的方法是將船底離散化成若干采樣點(diǎn),分別采樣水面高度,然后積分入水高度,得到浮力。這種方法忽略了水中其他力的存在,得到的結(jié)果不夠真實(shí)。另一種方法是利用流體力學(xué)公式,計(jì)算船在水中受的力。這種方法則過于復(fù)雜,不適合應(yīng)用于對(duì)實(shí)時(shí)性要求高的地方,比如游戲。本章從一個(gè)全新的視角,將物體在水中受到的力分解成與入水體積相關(guān)的浮力、與速度相關(guān)的升力、與入水體積變化相關(guān)的阻力,兼顧了高效與真實(shí)度,非常適合在游戲中使用。
本章的算法在《無限法則》中使用,能適應(yīng)各種天氣的水面,也能充分發(fā)揮各種類型船只的特點(diǎn)。
本章的第一節(jié)介紹了浮力系統(tǒng),包括物體入水后受到的浮力、移動(dòng)中產(chǎn)生的升力以及水的兩種阻力:拉力和拍擊力;第二節(jié)介紹了引擎系統(tǒng),包括如何模擬船只的動(dòng)力和向心力;第三節(jié)介紹了如何將前兩節(jié)的內(nèi)容應(yīng)用到實(shí)際工程中,包括類的設(shè)計(jì)思路以及為什么要這樣設(shè)計(jì);第四節(jié)介紹了怎樣更新浮力,使得在多人游戲中第一方(本地玩家)和第三方(非本地玩家)都能有自然、合理的表現(xiàn);最后一節(jié)則對(duì)本章內(nèi)容進(jìn)行了總結(jié)。
- 精通Unreal游戲引擎
- 微信小游戲開發(fā):后端篇
- 網(wǎng)絡(luò)游戲角色設(shè)計(jì)與制作實(shí)戰(zhàn)(第二版)
- Android游戲開發(fā)實(shí)踐指南
- 游戲編程模式
- Minecraft我的世界:建筑教程大全
- 游戲開發(fā)實(shí)戰(zhàn)寶典
- Cocos Creator 3.x 游戲開發(fā)入門與實(shí)戰(zhàn)
- 3ds max+Photoshop游戲場景設(shè)計(jì)(第4版)
- 實(shí)例妙解Cocos2D-X游戲開發(fā)
- 游戲開發(fā)者訪談錄
- 電子游戲與多元智能培養(yǎng)
- 血戰(zhàn)到底:成都麻將實(shí)戰(zhàn)妙訣
- Unity 3D虛擬現(xiàn)實(shí)游戲開發(fā)
- OGRE 3D游戲開發(fā)框架指南