unity 实现按的越久跳跃更高的跳跃优化

这是通过在不同情况下对物体施加向下的加速度来实现的。在物体向上的速度大于0并且按着跳跃键向下不断加更小的重力加速度。在物体下落时也就时向下的速度小于0时不断加更大的重力加速度。

private void BetterJump()
{
    if (player_2d.velocity.y < 0)
    {
        player_2d.velocity += Vector2.up * Physics2D.gravity.y * (falling_gravity - 1) * Time.deltaTime;
    }
    else if (player_2d.velocity.y > 0 && !Input.GetKey(KeyCode.K))
    {
        player_2d.velocity += Vector2.up * Physics2D.gravity.y * (not_loosened_gravity - 1) * Time.deltaTime;
    }
}

只需要在update方法中调用写好的这个方法。其中两个变量在类下面声明就好,数值可以在挂这个脚本的物体上手动调整。变量上面的时c#中的特性,作用是让变量有滑动条和序列化。

[Range(0f, 5f)]
[SerializeField]
private float falling_gravity;//下落时重力倍数(自行调整)
[Range(0f, 5f)]
[SerializeField]
private float not_loosened_gravity;//没松开时的重力倍数(自行调整)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: Unity2d是一款流行的游戏引擎,可以用于设计各种类型的游戏。平台跳跃类游戏是一种简单有趣的游戏类型,适合使用Unity2d进行开发。 在这个游戏中,玩家需要控制一个角色跳跃在不同的平台上,避开敌人和障碍物,收集道具和金币来得分。玩家可以通过屏幕上的控制按钮或者触屏来控制跳跃高度和方向。游戏可以设置多个关卡和难度级别,让玩家在游戏中不断挑战自己并获得成就感。 在游戏设计方面,需要考虑如何设计具有挑战性的关卡和障碍物,如何设置游戏的物理引擎,让角色的跳跃和落地过程加自然,如何设计各种不同的角色和道具,让游戏有趣。 在游戏制作过程中,可以使用Unity2d提供的编辑器和组件实现各种功能,比如动画制作,音乐和音效的添加,游戏UI等。同时,也可以借助Unity2d社区的资源和教程,快速学习和开发。 总之,基于Unity2d的平台跳跃类游戏设计是一项有趣的挑战,需要开发者运用创造力和技术能力来完成。 ### 回答2: 这款基于unity2d的平台跳跃游戏设计,主要目的是通过控制角色在不同的平台之间跳跃,到达目的地,过关挑战。 游戏中的角色可以是各种不同的形象,比如小人、动物等。通过操作脚下的跳跃按钮,来进行跳跃。要注意跳跃的时机和距离,避免跳跃不到或跳跃过度坠落下来。在游戏中还会遇到各种道具,比如能够增加生命值,增加跳跃力度等等。当然也会遇到敌人,如果不小心碰到了会扣除生命值。掌握好跳跃和使用道具的技巧,是通关游戏的关键。 游戏可以分为多个关卡,每个关卡都有不同的地图、难度和道具。当角色到达终点时,就可以顺利过关,进入下一个关卡。随着游戏的进行,关卡难度逐渐增加,不同的地图和场景也会带来新的挑战和体验。 这款游戏可以在手机、电脑等设备上进行游戏,通过触控或键盘控制,体验起来非常简单易上手。同时,游戏的画面和音效也可以锦上添花,让玩家感受到身临其境的游戏体验。 总的来说,这款基于unity2d的平台跳跃游戏设计,是一款非常有趣和具有挑战性的休闲游戏,既可以消磨时间,又可以锻炼游戏技巧。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值