博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Unity 中动态修改碰撞框(位置,大小,方向)
阅读量:7218 次
发布时间:2019-06-29

本文共 806 字,大约阅读时间需要 2 分钟。

 在Unity中,玩家处于不同的状态,要求的碰撞框的 位置/大小/方向 会有所改变,怎么动态的修改碰撞框呢?

下面是Capsure Collider(胶囊体)的修改:

CapsuleCollider.direction=0,1 or 2;

这里0,1,2,分别对应X,Y,Z方向

怎么将中心/半径/高度/方向一起修改呢?这里我设置了一个方法

///     /// 改变碰撞框的大小和位置    ///     /// 中心    /// 半径    /// 高度    /// 方向    private void ChangeRunColliderEvent(Vector3 center, float radius,float hight,int direction)    {        capsuleCollider.center = center;        capsuleCollider.radius = radius;        capsuleCollider.height = hight;        capsuleCollider.direction = direction;    }

好了,方法设置完之后,只需要根据玩家所要求的状态就可以调用这个方法来修改碰撞框了

if (ani.IsPlaying("slide"))
{
ChangeRunColliderEvent(new Vector3(0.11f, -6.19f, -2.11f), 3.08f, 13.09f,2);
}
else
{
ChangeRunColliderEvent(new Vector3(0.69f, -2.50f, -2.81f), 4.05f, 13.69f,1);
}

程序运行结果显示:

 

 

 

转载于:https://www.cnblogs.com/lk95/p/10302876.html

你可能感兴趣的文章
在仿真器中运行时跳过Windows Azure Startup任务
查看>>
android 获取路径目录方法以及判断目录是否存在,创建目录
查看>>
数列问题[HAOI2004模拟]
查看>>
2012各大IT公司校招笔试题整理
查看>>
phpcms 后台分页
查看>>
《需求工程》阅读笔记之六
查看>>
架构阅读笔记5
查看>>
IIS5.1使用虚拟目录部署网站
查看>>
Git 深度学习填坑之旅三(分支branch、远程操作)
查看>>
括号匹配问题
查看>>
UVA 10766 Organising the Organisation
查看>>
「美团 CodeM 复赛」城市网络
查看>>
python 将Excel表格中的一列数据转化成多行数据
查看>>
Go多线程与channel通信
查看>>
找水王
查看>>
多个线程之间共享数据的方式(卖票问题,存取款问题)
查看>>
观察者模式
查看>>
Bzoj2882 工艺 [线性算法]
查看>>
Bzoj2251 [2010Beijing Wc]外星联络
查看>>
python 发送邮件
查看>>