fish的小屋

fish的小屋

导航

2008年3月1日

胶囊和凸多边形的动态碰撞检测

摘要: 在使用广义碰撞阶段迅速排除了大量物体以后,将会使用精确到多边形级别的精确碰撞,比如两个凸包之间的碰撞,凸包和面片之间的碰撞,以及2次曲面和多边形面片的碰撞,在游戏中常用的两次曲面有,椭圆体,圆柱体,胶囊,球体等等。对于两个凸包之间的碰撞算法目前比较流行的是SAT,分离轴测试算法可以静态和动态的计算出两个凸包之间的碰撞时间法向量等等。但是对于面数较多的凸包以及2次曲面却不大适合,此时一般使用GJK算... 阅读全文

posted @ 2008-03-01 22:35 fish.shadow song(若愚.影歌) 阅读(943) 评论(1) 推荐(0) 编辑

人物控制,沿墙滑动跳跃的实现

摘要: 网游中人物的碰撞后反应控制 人物移动控制是单机和网游中比较重要的部分,但前单机游戏使用动力学以及IK动画等已经达到了非常逼真的地步,在大型网络游戏中这样的物理模拟同步是很实现的,因此在目前多数网游中仍旧是采取使用一个包围体(盒子或者胶囊)来模拟人物。一个好的移动系统是很重要的,平滑的贴墙滑动以及下滑,跳跃等会带给玩家顺畅的手感否则则会有种奇怪的感觉,本文具体介绍了一下碰撞反应,包括贴墙滑动等的具体... 阅读全文

posted @ 2008-03-01 22:34 fish.shadow song(若愚.影歌) 阅读(1634) 评论(9) 推荐(0) 编辑

人物控制,沿墙滑动跳跃的实现

摘要: 完成了包围体(我用的是胶囊)和三角形的碰撞,胶囊和Bsp,地形的碰撞检测之后,终于开始进入正题,人物在场景中的移动控制,包括跳跃,沿墙滑动等。需要做到这些碰撞检测需要提供给控制器至少3条信息,1。碰撞时间。2。碰撞法向量。3。碰撞点。 先看沿墙滑动,目前很多文章都有对其进行解决的方法,有的通过物理,有的通过pick4条射线获取地面信息等等,这些都不好,其实方法最好的只有一条原则,记住这点一... 阅读全文

posted @ 2008-03-01 11:50 fish.shadow song(若愚.影歌) 阅读(229) 评论(0) 推荐(0) 编辑

胶囊和凸多边形的动态碰撞检测

摘要: 在使用广义碰撞阶段迅速排除了大量物体以后,将会使用精确到多边形级别的精确碰撞,比如两个凸包之间的碰撞,凸包和面片之间的碰撞,以及2次曲面和多边形面片的碰撞,在游戏中常用的两次曲面有,椭圆体,圆柱体,胶囊,球体等等。对于两个凸包之间的碰撞算法目前比较流行的是SAT,分离轴测试算法可以静态和动态的计算出两个凸包之间的碰撞时间法向量等等。但是对于面数较多的凸包以及2次曲面却不大适合,此时一般使用GJK算... 阅读全文

posted @ 2008-03-01 11:29 fish.shadow song(若愚.影歌) 阅读(403) 评论(0) 推荐(0) 编辑