unity跑酷怎么添加金币_【Unity3D实战】零基础一步一步教你制作跑酷类游戏(填坑完整版)...

在两个月前曾写了一篇《【Unity3D实战】零基础一步一步教你制作跑酷类游戏(1)》,里面一步一步演示了制作跑酷类游戏,然而由于时间原因,只写到了让角色往前移动为止。这个坑一直没有时间去填,(虽然也没多少人看啦),今天刚好有时间完成了一个跑酷类游戏的Demo。放上来给有兴趣的朋友看看。

Demo源码及对应素材下载:链接:http://pan.baidu.com/s/1i4QkkuD 密码:p04w

游戏简要说明

游戏类型:跑酷类游戏(Demo,非完整游戏)

操作方式:左右方向键(可自己移植到手机端)

游戏要素:

1.游戏角色会自动向前跑,玩家可通过左右方向键让其左右移动

2.游戏中存在障碍物,玩家需避开这些障碍物,否则会因为被障碍物阻挡的原因无法前进

3.当游戏角色因为被阻挡而消失在视野中时,视为失败

4.当游戏角色因为被阻挡而处于偏后方时,会提高移动速度直到回到原本所处的屏幕位置

游戏场景搭建

使用准备好的素材(路面、人物、障碍物),将这些素材制作成Prefab,然后根据自己喜好搭建好场景。如下图:

3dc8d7ca01c89d79a08c9aca7f2738d5.png

游戏脚本编写

游戏角色控制器moveController:

新建一个C#文件,命名为moveController,然后将其打开。

由于角色需要向前、左、右三个方向移动,所以我们需要有其在前进方向上的速度与左右方向上的速度,分别命名为:moveVSpeed、moveHSpeed,

同时由于玩家在落后的情况下需要加速,所以我们声明两个变量:前进方向上的最小移动速度minVSpeed与前进方向上的最大移动速度maxVSpeed。

于是我们可以得到以下脚本:

// 前进移动速度

float moveVSpeed;

// 水平移动速度

public float moveHSpeed = 5.0f;

// 最大速度

public float maxVSpeed = 10.0f;

// 最小速度

public float minVSpeed = 5.0f;其中moveHSpeed、maxVSpeed、minVSpeed声明为public,方便在面板上修改。

接下来,在Start()函数中定义moveVSpeed的初始值:

moveVSpeed = minVSpeed;

在Update()中使人物能移动起来:

float h = Input.GetAxis("Horizontal");

Vector3 vSpeed = new Vector3(this.transform.forward.x, this.transform.forward.y, this.transform.forward.z) * moveVSpeed ;

Vector3 hSpeed = new Vector3(this.transform.right.x, this.transform.right.y, this.transform.right.z) * moveHSpeed * h;

Vector3 jumpSpeed = new Vector3(this.transform.up

  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值