Unity C#反弹墙

时间:2016-09-15 18:58:23

标签: c# unity3d

所以我正在制作一个3D池游戏。基本上我有一个主摄像头,当你按下一个按钮时,它会根据摄像头的位置为母球增加力量,这样可以正常工作。

但是当主球撞到桌子的墙上时,它就会停止。我希望它像一个真正的台球球一样顺利地从墙上反弹。

母球只是一个基本的球体游戏对象。墙壁是带有碰撞器的基本立方体。

我尝试Vector3.Reflect但没有成功。它似乎反弹了一点但后来立即停止了。

任何帮助都会很棒!

3 个答案:

答案 0 :(得分:3)

您应创建一个摩擦较小或没有摩擦的PhysicMaterialdynamicstatic),bounciness = 1Bounce Combine = Maximum,然后应用{{1} }}到你球体的PhysicMaterial

答案 1 :(得分:0)

你可以做一件事。

当球撞击墙壁时存储球速,通过Vector3.Reflect计算反射方向,并以反射方向将存储的速度提供给球。

希望这会对你有帮助......

最佳,  Hardik。

答案 2 :(得分:0)

要在墙上弹跳,我们需要创建物理材质,之后我们需要更改动态摩擦 = 0.3和静摩擦 =的值 0.3和 bounciness = 0.8和 frictionCombine 从下拉列表中选择平均值跳出组合选择平均值 。 因此,球通过使用上部属性开始在墙上弹跳。