欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

让人物在地形上站稳上斜坡视角角度不变不摔倒又简单又新的方法

程序员文章站 2022-06-28 19:14:49
1,首先就是给人物加上碰撞器,人物一般用capsule collider胶囊状的,网格碰撞器在人物少的时候也可以用。2,单纯一个capsule可能会让人物在稍微有点斜坡的地方都会倒下,所以可以用capsule 加 box 组合,box做基底(相当于搭房子一样)上图3,然后这样可以简单的解决一些地形,接下来是实现在斜坡上只在y轴上移动,而不会倒下(就是平常玩的fps游戏上斜坡人物视角角度不变)下面展示一些 内联代码片。// 这句写在start里面rg=GetComponent

1,首先就是给人物加上碰撞器,人物一般用capsule collider胶囊状的,网格碰撞器在人物少的时候也可以用。
2,单纯一个capsule可能会让人物在稍微有点斜坡的地方都会倒下,所以可以用capsule 加 box 组合,box做基底(相当于搭房子一样)上图
让人物在地形上站稳上斜坡视角角度不变不摔倒又简单又新的方法

3,然后这样可以简单的解决一些地形,接下来是实现在斜坡上只在y轴上移动,而不会倒下(就是平常玩的fps游戏上斜坡人物视角角度不变)
效果图
让人物在地形上站稳上斜坡视角角度不变不摔倒又简单又新的方法

下面展示一些 内联代码片

// 这句写在start里面
rg=GetComponent<Rigidbody>();

// 这两个方法写在与Update同一级的地方
void OnCollisionStay(Collision other)
{
if(other.gameObject.tag=="ground")
{
rg.useGravity=false;
}
}

void OnCollisionExit(Collision other)

{

rg.useGravity=true;

rg.velocity=new Vector3(0,rg.velocity.y,0);//这样处理是为了一旦悬空可以使得物体在y轴以外的方向禁止

}

//这两个方法一次知道怎么用了,就可以用到所有类似的控制脚本里面

本文地址:https://blog.csdn.net/joker4o/article/details/107483133

相关标签: unity3d 游戏