unity小球弹跳跑酷游戏

之前玩过一款物理弹球的游戏覺得很有意思,也萌发了做一款类似的游戏这里讲讲如何做到碰撞后无损反弹。

作为一个业余游戏开发者而且知道Unity自带的物理引擎功能很完善,所以一开始就没打算自己写相关代码首先我自己这个项目是2D,所以里面用到都是2D组件或者材质

先创建一个3dunity小球弹跳,删掉3d碰撞盒加上2d碰撞盒。

我们在unity小球弹跳上加一个物理组件3D项目可以用Rigidbody这个组件,参数略有差别

墙壁就比较简单,创建四个cube围成个围牆,同理删掉3d碰撞盒加入2d碰撞盒(墙是方形,球是圆形组件不一样),其他都不需要设置我们只需要这个碰撞盒,都不需要加组件Rigidbody因为墙是不动,这样也比较省资源

给这个物理材质命名后,点击这个材质我们看到有两个属性

第一个是摩擦力系数,第二个是反弹系数想要无损碰撞反弹,反弹系数则填1

这样,一个无损的封闭的碰撞系统就完成

unity小球弹跳的发射比较简单,这里就不细说了

四、速度过慢导致碰撞后速度消失

在运行中,发现如果unity小球弹跳的水平分速度太小碰撞后就变成0,这个问题困扰我很久找不到原因,甚至讓我想自己写这个碰撞机制查阅资料后才发现,这个物理材质还有一些参数设置具体看下图

红框就是罪魁祸首,默认值是1表示低于這个数值的速度将认为不是碰撞,速度也就消失

关于unity小球弹跳碰撞反弹就先写到这里后面继续研究,欢迎讨论!!!

}

unity3d跑酷游戏DEMO源码可以用来入门学習。 有障碍物可以跳跃。

}

我要回帖

更多关于 unity小球弹跳 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信