動(dòng)態(tài)避障在Unity中的實(shí)現(xiàn)
- 首先需要添加一個(gè)obstacle(障礙物的layer)砸讳,這里為第九層
Paste_Image.png
- 接著為我們需要避障的物體添加CollisionAvoidance腳本
Paste_Image.png
- 腳本代碼
- 這里使用恒力來實(shí)現(xiàn)避障氧映,而不是距離越近力越大的方式
Paste_Image.png
- 通過transform.position 和速度方向上探針的長(zhǎng)度來得到ahead
Paste_Image.png
- 將Seek AI 封裝成一個(gè)方法嫩与,并且指定操控力的y為0,避免脫離平面
Paste_Image.png
- 接著在update中進(jìn)行調(diào)用
Paste_Image.png
- 第一種避障的實(shí)現(xiàn)演示:
1.gif
- 第二種避障置谦,直接找出與物體運(yùn)動(dòng)速度垂直的向量來作為操控力使物體避障伏恐。
Paste_Image.png
- 演示:
2.gif