Unity 物理引擎

Paste_Image.png

一塔插、引言

物理引擎是一個很大的標(biāo)題,在這里拓哟,我只記錄一些我們較為常用的一些東西想许,其他的一些深入的東西,隨著我們的開發(fā)断序,會慢慢接觸到流纹,也會學(xué)習(xí)到,并且其中一些根本的東西也都是一樣的逢倍。

二捧颅、什么是物理引擎

物理引擎通過為剛性物體賦予真實的物理屬性的方式來計算運動、旋轉(zhuǎn)和碰撞反映较雕。
簡單地說碉哑,就像是什么是Unity引擎一樣,Unity是制作游戲的一款引擎亮蒋,而物理引擎則是用于制作物理效果的引擎扣典,也可以說是一種通用的方法。

三慎玖、碰撞器(Collider)

1.什么是碰撞器

碰撞器贮尖,根據(jù)名字我們就可以猜到,有了碰撞器趁怔,游戲物體就可以產(chǎn)生碰撞湿硝。沒錯薪前,碰撞器就是一個讓游戲物體可以產(chǎn)生碰撞效果的組件,它描述了物體可被碰撞的邊界关斜,以及碰撞過程中相互影響效果示括。我們可以在需要產(chǎn)生碰撞效果的游戲物體中添加碰撞器,使其能夠產(chǎn)生碰撞痢畜。


Paste_Image.png

2.分類

根據(jù)形狀和效果分類:

  • 盒碰撞器(Box Collider)?:
  • 球碰撞器(Sphere Collider)?:
  • 膠囊碰撞器(Capsule Collider)?:
  • 車輪碰撞器(Wheel Collider):專用于車輪
  • 網(wǎng)格碰撞器(Mesh Collider)
  • 地形碰撞器(Terrain Collider)
  • 復(fù)合碰撞器(Compound Colliders)

根據(jù)性能消耗分類(從低到高):

  • Sphere Collider
  • Capsure Collider
  • Box Collider
  • Mesh Collider

3.碰撞器主要參數(shù)

Paste_Image.png

IsTrigger 是否作為觸發(fā)器使用(勾選后則沒有碰撞效果)
Material 使用的物理材質(zhì)
Center 碰撞器的坐標(biāo)
Size 碰撞器的大小
Edit Collider 手動調(diào)整碰撞器的大小

這里主要要說明的是IsTrigger垛膝,這個表示碰撞器碰撞是否為觸發(fā),丁稀,簡單解釋就是吼拥,碰撞了之后是否產(chǎn)生物理效果,如果勾選线衫,則表現(xiàn)為觸發(fā)凿可,也就是不產(chǎn)生物理效果,關(guān)于物理效果的產(chǎn)生授账,我們在記錄剛體的時候會進(jìn)行記錄矿酵。

4.物體發(fā)生碰撞的必要條件

  1. 碰撞雙方必須具有碰撞器,且(IsTrigger 為false)
  2. 運動一方必須具有剛體或者角色控制器

5.處理碰撞和觸發(fā)

學(xué)習(xí)了碰撞器矗积,我們知道物理引擎中我們可以使用它來讓游戲物體之間產(chǎn)生碰撞,那么我們要怎么才能自己處理碰撞呢敞咧,這里Unity給了我們幾個回調(diào)函數(shù);

  • 當(dāng)碰撞發(fā)生時的回調(diào)函數(shù)
當(dāng)進(jìn)入碰撞
void OnCollisionEnter(Collision collision)
當(dāng)逗留碰撞
void OnCollisionStay(Collision collision)
當(dāng)退出碰撞
void OnCollisionExit(Collision collision)

Collision就是碰撞信息類棘捣,它可以獲取到是誰撞了我
回調(diào)函數(shù):就是你寫的一個函數(shù),放在那,不是由你寫的程序去調(diào)用而是系統(tǒng)自動調(diào)用你
的函數(shù),這就是回調(diào)函數(shù),回調(diào)函數(shù)即然是讓系統(tǒng)調(diào)用的,所以你就必須按系統(tǒng)給定的原
形來實現(xiàn)程序(簡單了解下就好了)

  • 觸發(fā)器觸發(fā)時產(chǎn)生的回調(diào)函數(shù)
進(jìn)入觸發(fā)器
void OnTriggerEnter(Collider other)
當(dāng)逗留觸發(fā)器
void OnTriggerStay(Collider other);
退出觸發(fā)器
void OnTriggerExit(Collider other);

Other就是碰撞到當(dāng)前對象的游戲物體的碰撞器

四休建、剛體(Rigidbody)

1.什么是剛體

物理引擎通過為剛性物體賦予真實的物理屬性的方式來計算運動乍恐、旋轉(zhuǎn)和碰撞反映。這是百度給出的物理引擎解釋测砂,那么其中的剛性物體茵烈,在Unity中的體現(xiàn)就是剛體組件啦。

2.分類

  1. 普通剛體(影響自己也影響其他物體)
  2. 運動學(xué)剛體(Is Kinematic為 true, 自己不受物理引擎的驅(qū)動砌些,但是會影響其他剛體)

3.主要參數(shù)

Paste_Image.png

Mass 質(zhì)量
Drag 位移阻力
Angular Drag 角阻力
Use Gravity 是否受重力影響
Is Kinematic 是否為運動學(xué)剛體
Interpolate 平滑物理運行的插值類型(枚舉)
Collision Detection 碰撞檢測方式(枚舉)
Constraits 凍結(jié)位置和旋轉(zhuǎn)

4.如何使剛體運動

判斷游戲物體是否產(chǎn)生位移呜投,只要看他的Transform組件的position是否變化即可(注意:但游戲物體為子類時,要看其最上層父類對象的Transform組件的position)存璃,所以都可以強(qiáng)制改變其Transform.position來改變仑荐,但我們這里講的是物理引擎,所以不記錄該方法纵东,只記錄使用剛體組件的方法粘招。

對于運動學(xué)剛體(Is Kinematic為True):
此類剛體不受物理引擎的印象,所以只能用剛體中的MovePosition(Vector3 v)來使其移動偎球。

對于非運動學(xué)剛體:
我們可以給剛體添加力洒扎,使用AddForce方法辑甜,或者給其一個速度來使其位移,賦值給velocity屬性袍冷。

這里記錄的是改變物體position的方法磷醋,還有一些改變物體rotation的方法,在這里就不進(jìn)行講解了难裆。

五子檀、結(jié)束語

寫了幾篇博客,發(fā)現(xiàn)有些東西乃戈,寫出來褂痰,理解更加深刻了,也讓自己的學(xué)習(xí)和記憶更加深刻症虑,以后要繼續(xù)堅持缩歪, 為了成為一個大牛。文章寫得比較粗糙谍憔,如有錯誤匪蝙,歡迎指正,也歡迎各路英雄互相研究學(xué)習(xí)习贫。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末逛球,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子苫昌,更是在濱河造成了極大的恐慌颤绕,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,968評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件祟身,死亡現(xiàn)場離奇詭異奥务,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)袜硫,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,601評論 2 382
  • 文/潘曉璐 我一進(jìn)店門氯葬,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人婉陷,你說我怎么就攤上這事帚称。” “怎么了秽澳?”我有些...
    開封第一講書人閱讀 153,220評論 0 344
  • 文/不壞的土叔 我叫張陵世杀,是天一觀的道長。 經(jīng)常有香客問我肝集,道長瞻坝,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,416評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮所刀,結(jié)果婚禮上衙荐,老公的妹妹穿的比我還像新娘。我一直安慰自己浮创,他們只是感情好忧吟,可當(dāng)我...
    茶點故事閱讀 64,425評論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著斩披,像睡著了一般溜族。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上垦沉,一...
    開封第一講書人閱讀 49,144評論 1 285
  • 那天煌抒,我揣著相機(jī)與錄音,去河邊找鬼厕倍。 笑死寡壮,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的讹弯。 我是一名探鬼主播况既,決...
    沈念sama閱讀 38,432評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼组民!你這毒婦竟也來了棒仍?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,088評論 0 261
  • 序言:老撾萬榮一對情侶失蹤臭胜,失蹤者是張志新(化名)和其女友劉穎降狠,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體庇楞,經(jīng)...
    沈念sama閱讀 43,586評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,028評論 2 325
  • 正文 我和宋清朗相戀三年否纬,在試婚紗的時候發(fā)現(xiàn)自己被綠了吕晌。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,137評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡临燃,死狀恐怖睛驳,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情膜廊,我是刑警寧澤乏沸,帶...
    沈念sama閱讀 33,783評論 4 324
  • 正文 年R本政府宣布,位于F島的核電站爪瓜,受9級特大地震影響蹬跃,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜铆铆,卻給世界環(huán)境...
    茶點故事閱讀 39,343評論 3 307
  • 文/蒙蒙 一蝶缀、第九天 我趴在偏房一處隱蔽的房頂上張望丹喻。 院中可真熱鬧,春花似錦翁都、人聲如沸碍论。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,333評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽鳍悠。三九已至,卻和暖如春坐搔,著一層夾襖步出監(jiān)牢的瞬間藏研,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,559評論 1 262
  • 我被黑心中介騙來泰國打工薯蝎, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留遥倦,地道東北人。 一個月前我還...
    沈念sama閱讀 45,595評論 2 355
  • 正文 我出身青樓占锯,卻偏偏與公主長得像袒哥,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子消略,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,901評論 2 345

推薦閱讀更多精彩內(nèi)容