U3D-亡命时速游戏制作(三)

本博客是亡命时速游戏制作的第三部分,介绍了在亡命时速游戏2基础上的制作步骤。包括新建文件夹存放脚本、添加车辆到游戏场景、创建空物体并改名、添加c#脚本、编写代码控制小车移动和旋转、添加碰撞器以及调整小车位置等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

亡命时速游戏制作3

1.在亡命时速游戏2的基础上,我们在Project中新建一个Scripts的文件夹,用于存放之后我们要写的脚本。
在这里插入图片描述
2.我们打开在mmmm文件下的子文件夹Vehicles,选择车辆1即veh-car1,将其拖到上方的GameScene中,此时,我们可以在游戏窗口中看到一辆小车。
在这里插入图片描述
3.在GameScene中创建一个空物体,为GameObject,在其右边的面板中,将它的数据进行重置。
在这里插入图片描述
4.将GameObject在右边将其名字改为car1,并按以下回车键,原来GameScene中的GameObject的名字也改为了car1,再将veh-car1拖到car1中。
在这里插入图片描述
5.在Scripts文件夹下建立c#脚本(右键单击create,选择c#即可),并将其添加到上方GameScene中的car1上,若成功添加,在car1的右边面板中会有所显示。
在这里插入图片描述
6.双击c#脚本PlayerController,在Visual Studio中打开它(本人用的是Visual Studio 2017)
然后在其中编写代码(我在代码后面加了注释,应该能够更好理解)

代码:

using System.collections;
using System.collections.Generic;
using UnityEngine;
public class PlayerController : MonoBehaviour{
	[SerializeField]	//创建一个新的序列化字段
	private float speed;	//速度将应用于车子的移动
	[SerializeField]	//创造另一个文明的球形角度
	private float angle	//角速度将被用于旋转
/*
接下来,
我们要考虑到刚体的结构,
所以我们要创建一个私有类型的刚体
*/
	private Rigidbody myBody; 	//将刚体命名为myBody
	private int currentAngle; 	//然后输入输入私有类型的整数型参数currentAngle,这将用于存储我们的游戏对象的当前角度
	//Use this for initialization
	void Start(){
		myBody = GetCompontent<Rigidbody>();
	}
	//Update is called once per frame
	void FixedUpdate(){	//我们想让我们的玩家在固定更新中改变他的位置,所以我们把Update改为FixedUpdate
	transform.Translate(Vector3.forward * speed * Time.deltaTime);
	}
}

保存完代码后,我们回到U3D中,将car1中的Speed和Angle Speed的值分别置为5和15.
在这里插入图片描述
点击运行按钮后,我们可以看到小车再向前前进

7.在PlayerController原来的代码基础上,添加我下面图中框出的代码。
在这里插入图片描述
在这里插入图片描述
再回到Unity中,将car1的角速度改为90度。
在这里插入图片描述
这时,当我们点击运行按钮时,如果我们的鼠标点击在小车的左边区域,小车会向左旋转(顺时针),点击右边区域,小车会向右旋转(逆时针)。

8.双击car1,我们在Scene就可以清晰的看到小车,然后点击原先在现在(图中)Z的位置,进入2D模式,我们要给小车加一个碰撞器。
在这里插入图片描述
给小车添加碰撞器:
在这里插入图片描述
再点击Edit Collider,在场景中修改碰撞器的大小,使之能将小车囊括其中。

在这里插入图片描述
9.将car1中最下层的veh-car1中的position的x和z值都改为0,这样小车就位于屏幕的中央了。
在这里插入图片描述
敬请期待:亡命时速游戏制作(四)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值