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

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

CapsuleCollider.direction=0,1 or 2;

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

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

    /// <summary>
/// 改变碰撞框的大小和位置
/// </summary>
/// <param name="center">中心</param>
/// <param name="radius">半径</param>
/// <param name="hight">高度</param>
/// <param name="direction">方向</param>
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);
}

程序运行结果显示:

Unity 中动态修改碰撞框(位置,大小,方向)的更多相关文章

  1. Unity 3D动态修改Shader状态,使物体透明等等

    Unity动态改Shader状态透明 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- ...

  2. springboot中动态修改logback日志级别

    springboot中动态修改logback日志级别 在spring boot中使用logback日志时,项目运行中,想要修改日志级别. 代码如下: import org.slf4j.Logger; ...

  3. springboot中动态修改log4j2日志级别

    springboot中动态修改log4j2日志级别 在spring boot中使用log4j2日志时,项目运行中,想要修改日志级别. 1.pom.xml依赖: <dependency> & ...

  4. Wordpress编辑器(Tinymce)在Chrome中动态修改图片大小

    Chrome不支持tinymce中图片动态修改大小,可以在theme的functions.php中加入下面代码在Tinymce中模拟这一功能: function tinymce_editor_sett ...

  5. Unity中动态创建Mesh

    什么是Mesh? Mesh是指的模型的网格,3D模型是由多边形拼接而成,而多边形实际上又是由多个三角形拼接而成的.即一个3D模型的表面其实是由多个彼此相连的三角面构成.三维空间中,构成这些三角形的点和 ...

  6. Android中动态改变控件的大小的一种方法

    在Android中有时候我们需要动态改变控件的大小.有几种办法可以实现  一是在onMeasure中修改尺寸,二是在onLayout中修改位置和尺寸.这个是可以进行位置修改的,onMeasure不行. ...

  7. ASP.NET MVC程序中动态修改form的Action值

    在练习ASP.NET MVC时,为了实现一个小功能,POST数据至服务器执行时,需要动态修改form的action值. 下面Insus.NET列举一个例子来演示它.让它简单,明白易了解. 你可以在控制 ...

  8. 在WCF程序中动态修改app.config配置文件

    今天在个WCF程序中加入了修改配置文件的功能.我是直接通过IO操作修改的app.config文件内容,修改后发现发现其并不生效,用Google搜了一下,在园子里的文章动态修改App.Config 和w ...

  9. android中动态修改ImageView控件的宽高度

    本例实现了动态修改ImageView控件的宽高度,有两个按钮,一个按钮实现放大image,一个按钮实现缩小image activity_main.xml <?xml version=" ...

随机推荐

  1. castle windsor学习----- CastleComponentAttribute 特性注册

    [CastleComponent("GenericRepository", typeof(IRepository<>), Lifestyle = LifestyleTy ...

  2. Oracle数据库操作语言(DML)

    --insert添加语句 insert into table_name(column_name,column_name,...) values (data1,data2,...); --通过表添加数据 ...

  3. php设计模式课程---7、装饰器模式如何使用

    php设计模式课程---7.装饰器模式如何使用 一.总结 一句话总结: 装饰器的核心是获取了文章类整个类,而不是获取了文章内容,有了这个文章类,我想给你加多少装饰就给你加多少装饰(将文章这个类封装进去 ...

  4. Linux课程---2、Linux下最常用命令(查看帮助命令)

    Linux课程---2.Linux下最常用命令(查看帮助命令) 一.总结 一句话总结: man 1.显示文件? ls:ls带其它参数详情可以man ls man ls:比如 ls -a显示隐藏文件,l ...

  5. 关于数组的初始化memset函数

    关于数组的初始化memset函数 其实memset复制时按bit8个8个的赋值,有兴趣的可以自己百度.

  6. C#返回Json,js解析Json,并添加到select标签中

    后台: List<Student> list=GetAll();//id name string json = new JavaScriptSerializer().Serialize(l ...

  7. L99

    You're not obligated to win. You're obligated to keep trying.你不一定要获胜,但你必须不断尝试.He announced an expans ...

  8. loj516dp一般看规律

    STL 这...我只能说是...考得是... STL的正确用法? #include<iostream> #include<cstdio> #include<cstdlib ...

  9. DOM基础知识整理

    --<JavaScript高级程序设计>Chapter10学习笔记 一.节点层次 1.Node类型 1)(Node).nodeType属性 节点nodeType属性有12种. 检测node ...

  10. IP 地址漂移

    1.概念 应用访问虚拟ip,当主服务器正常工作时,虚拟ip指向主服务器,当主服务器宕掉后,虚拟ip自动指向从服务器,当主服务器被人修好后,再自动指向主服务器, 这种虚拟ip的指向方式称为ip地址漂移. ...