【unity2D横板】【sunnyland】角色的跳跃

简介: 【unity2D横板】【sunnyland】角色的跳跃

这两天在做一个2D横板的小游戏,不过有点打不起精神,果然还是得写博客才能又学习的动力嘛哈哈哈

请看代码咯

这里是有长跳和短跳系统

public float jumpForce;
public float jumpAddForce;
public float jumpTime;
public float jumpStartTime;
public bool  isjump;//是否在跳跃  
private void jump()
    {
        if (Input.GetKeyDown(KeyCode.Space))//按下按钮的时候开始检测
        {
            isjump = true;
            rb2d.velocity = Vector2.up * jumpForce;//Vectors.up是一种简写形式,单看这个单词也能明白意思吧,本来我也设想过用改变坐标的形式来进行跳跃但是很违和,所以我找到了添加力的方式来进行跳跃,看起来很自然,舒服。
            jumpTime = jumpStartTime;
        }
        if(Input.GetKey(KeyCode.Space)&&isjump == true)//这里是长按跳跃键时最多上升到什么时候
        {
            if(jumpTime > 0)
            {
                rb2d.velocity = Vector2.up * jumpForce;
                jumpTime -= Time.deltaTime;
            }
        }
        else
        {
            isjump = false;//跳跃时间到,停止
        }
        if (Input.GetKeyUp(KeyCode.Space))//放下跳跃键也停止跳跃
        {
            isjump = false;
        }
    }

这一套模式还挺自然的,无论是跳跃还是落地都遵循物理系统,方便得很,修改坐标的模式就显得很蹩脚了,十分不推荐。

效果如下,由于跳跃时间等等都可以设置,所以还是很好用的




3eea2787133e47e3b06bcd9f952b8074.gif











相关文章
|
4月前
|
图形学 C#
超实用!深度解析Unity引擎,手把手教你从零开始构建精美的2D平面冒险游戏,涵盖资源导入、角色控制与动画、碰撞检测等核心技巧,打造沉浸式游戏体验完全指南
【8月更文挑战第31天】本文是 Unity 2D 游戏开发的全面指南,手把手教你从零开始构建精美的平面冒险游戏。首先,通过 Unity Hub 创建 2D 项目并导入游戏资源。接着,编写 `PlayerController` 脚本来实现角色移动,并添加动画以增强视觉效果。最后,通过 Collider 2D 组件实现碰撞检测等游戏机制。每一步均展示 Unity 在 2D 游戏开发中的强大功能。
224 6
|
4月前
|
图形学 机器学习/深度学习 人工智能
颠覆传统游戏开发,解锁未来娱乐新纪元:深度解析如何运用Unity引擎结合机器学习技术,打造具备自我进化能力的智能游戏角色,彻底改变你的游戏体验——从基础设置到高级应用全面指南
【8月更文挑战第31天】本文探讨了如何在Unity中利用机器学习增强游戏智能。作为领先的游戏开发引擎,Unity通过ML-Agents Toolkit等工具支持AI代理的强化学习训练,使游戏角色能自主学习完成任务。文章提供了一个迷宫游戏示例及其C#脚本,展示了环境观察、动作响应及奖励机制的设计,并介绍了如何设置训练流程。此外,还提到了Unity与其他机器学习框架(如TensorFlow和PyTorch)的集成,以实现更复杂的游戏玩法。通过这些技术,游戏的智能化程度得以显著提升,为玩家带来更丰富的体验。
70 1
|
4月前
|
开发者 图形学 C#
深度解密:Unity游戏开发中的动画艺术——Mecanim状态机如何让游戏角色栩栩如生:从基础设置到高级状态切换的全面指南,助你打造流畅自然的游戏动画体验
【8月更文挑战第31天】Unity动画系统是游戏开发的关键部分,尤其适用于复杂角色动画。本文通过具体案例讲解Mecanim动画状态机的使用方法及原理。我们创建一个游戏角色并设计行走、奔跑和攻击动画,详细介绍动画状态机设置及脚本控制。首先导入动画资源并添加Animator组件,然后创建Animator Controller并设置状态间的转换条件。通过编写C#脚本(如PlayerMovement)控制动画状态切换,实现基于玩家输入的动画过渡。此方法不仅适用于游戏角色,还可用于任何需动态动画响应的对象,增强游戏的真实感与互动性。
116 0
|
6月前
|
Go 图形学
【Unity小技巧】3D人物移动脚步和跳跃下落音效控制
【Unity小技巧】3D人物移动脚步和跳跃下落音效控制
76 1
|
6月前
|
图形学
【推荐100个unity插件之9】分享几个完全免费的2D角色动画生成器(推荐收藏)
【推荐100个unity插件之9】分享几个完全免费的2D角色动画生成器(推荐收藏)
341 0
|
6月前
|
图形学
【unity小技巧】unity最完美的CharacterController 3d角色控制器,实现移动、跳跃、下蹲、奔跑、上下坡、物理碰撞效果,复制粘贴即用
【unity小技巧】unity最完美的CharacterController 3d角色控制器,实现移动、跳跃、下蹲、奔跑、上下坡、物理碰撞效果,复制粘贴即用
565 0
|
编译器 图形学 开发者
Unity例子——第一人称视角的角色控制器
Unity例子——第一人称视角的角色控制器
215 0
【unity2D横板】【sunnyland】敌人巡逻追击主角以及返回原点
【unity2D横板】【sunnyland】敌人巡逻追击主角以及返回原点
|
机器人 图形学 Ruby
【unity learn】【Ruby 2D】角色发射飞弹
【unity learn】【Ruby 2D】角色发射飞弹