关于Roll A Ball实例练习记录
学习中不段进步!
游戏思路:通过键盘控制白色小球,让它“捡起”柠黄色方块,捡起一个加1分,全部捡起游戏胜利!

游戏对象:
Ground:绿色地面
player: 小球
Obstacle:围墙
PickUps:小方块
脚本
- 键盘控制小球移动
- 摄像机跟随小球移动
- 小球捡起方块(也就是消除方块)
- 得分以及胜利
- 小方块自己在不停的旋转
1、键盘控制小球移动
这个需要先给小球添加Rigidbody(刚体)组件,想要让小球移动就需要给小球施加一个力(下面红线是控制在这操作的代码)
private(私有化)一个叫做rd的Rigidbody; //private可百度
public force=5;
void Start(){ //初始化
rd=GetComponent<Rigidbody> //获取这个组件赋给rd
}
void Update(){ //每一帧都调用,一一般1S=60
float h=Input.GetAxis("Horizontal"); //Input.GetAxis("Horizontal");键盘控制运动,在X轴移动, float因为它返回的是-1—1的数
float v=Input.GetAxis("Vertical"); //Input.GetAxis("Vertical");键盘控制运动,在Z轴移动
rd.Addforce(new Vector3(h,0,v)*force); //在rd上施加一个力,力的方向是 newVector(h,0.v) 力的大小后面乘force,在最上面定义
}
2、摄像机跟随小球移动

摄像机跟随小球可以说是(摄像机相对于小球的位置不变) //这个脚本绑定在摄像机上
public Transform playertransform; //transform暂可理解为获取本脚本所对应的游戏对象的位置信息
Transform则可用来获取其他尤其对象位置信息来作用于本脚本
offset=transform.postiton-playertransform.position ; //向量差=相机的坐标-小球的坐标
transform.position=offset+playertransform.position; //再将向量差值加上现在小球所在位置的向量赋给摄像机
3、小球捡起方块(也就是消除方块)
- 碰撞检测(停顿一下,有碰撞感)
- 触发检测(没有碰撞感)

将所有方块的Tag设置为PickUp
void OnCollisionEnter(Collision collision){ //可查API,当碰撞时i
if(collision.collider.tag=="PickUp"){ //当标签为PickUp;
Destory(collision.collider.gameObject) //摧毁这个游戏对象
}
}
触发同理 可查OnTriggerEnter的API 需要勾选消除的 Is Tigger
4、小方块自己在不停的旋转
创建方块的实例perfabs
ttransform.Rotate(new Vectors(0,1,0)) //沿着轴旋转,在这里面一帧时间沿着Y轴旋转1°,并且在 Update函数下
5、得分以及胜利
创建两个UI.tex

t

在Player里创建2个public,一个 public text text //需要里面的text属性
一个 public GameObject Wintext 直接使用游戏对象
score++; 得分自加
text.text=score.Tostring(); //将整数型的score转化为字符串并赋值给text
if(score==10){ //当捡钱的方块为10个时
Wintext.SetActive(ture); //激活Wintext游戏对象,之前取消激活

|
关于Roll A Ball实例练习记录的更多相关文章
- 《JAVA程序设计与实例》记录与归纳--继承与多态
继承与多态 概念贴士: 1. 继承,即是在已经存在的类的基础上再进行扩展,从而产生新的类.已经存在的类成为父类.超类和基类,而新产生的类成为子类或派生类. 2. Java继承是使用已存在的类的定义作为 ...
- Roll A Ball
GameObject的添加就不细说了,地面,小球和碰撞小物体. 刚体组件(Rigidbody): 使物体能够模拟物理效果,比如重力,碰撞,推力等: 控制小球移动的脚本(Script,Ball的脚本): ...
- shell脚本实例-命令记录
http://bbs.51cto.com/thread-594667-1.html script使用注意事项输入1: [root@-shiyan rec]# cat record1 #!/bin/ba ...
- 《JAVA程序设计与实例》记录与归纳--类与对象
类与对象 概念贴士: 1. 类必须先定义了才能使用.类是创建对象的模板,创建对象也叫类的实例化. 2. 在Java中,使用new关键字来创建对象,一般有一下3个步骤: 1)声 明:声明一个对象,包 ...
- mysql一机多实例安装记录
因为想研究mycat,所以需要安装多个mysql实例进行研究.限于没有多于计算机,只能在本机安装了.通过mysql文档,自己琢磨着安装成功! 目录结构如下: 其中one和two文件夹用来模拟数据库分库 ...
- 微信jsapi开发应用实例并记录下错误信息
虽然大家已经有实例,但还是要根据自己的项目更改 在这里需要注意的几点 也是常常报错的 1.页面必须是UTF8(已经json不认gbk,所以会提醒 -1调用支付JSAPI缺少参数APPID 这是编码引起 ...
- Linux下MySQL多实例部署记录
什么是MySQL多实例 简单地说,Mysql多实例就是在一台服务器上同时开启多个不同的服务端口(3306.3307),同时运行多个Mysql服务进程,这些服务进程通过不同的socket监听不同的服务端 ...
- 学习unity的第一个小游戏(Roll the ball)的笔记
1.摄像机的跟随运动,逻辑就是保持摄像机跟主角的距离不变(Undate()函数). offset=trandform.position-player.position. Undate() { tran ...
- ORACLE 从一个实例迁移到另外一个实例实战记录
.schema1到schema2的迁移 Oracle 从一个用户expdp导出再impdp导入到还有一个用户,能够使用REMAP_SCHEMA=user1:user2来实现: 假设想导入的用户已经存在 ...
随机推荐
- 硬件能力与智能AI-Zoomla!逐浪CMS2 x3.9.2正式发布
北京时间2017年9月10日,领先的CMS网站内容管理系统与生产力软件研发厂商-Zoomla!逐浪CMS团队发布其年度重要产品:Zoomla!逐浪CMS2 x3.9.2,引领国内门户.移动.微商以及生 ...
- 浙江省赛 C What Kind of Friends Are You?
思路:一开始考虑n个朋友可以有c种可能,根据回答的问题,如果是yes那么可以确定一些朋友的范围,将原本不在这个范围内的删除即可:如果是"no",说明这些朋友都应该被删除,那么最后看 ...
- HDU - 3533 bfs [kuangbin带你飞]专题二
看了好久的样例才看懂. 题意:有一个人要从(0,0)走到(n,m),图中有k个碉堡,每个碉堡可以向某个固定的方向每隔t秒放一次炮,炮弹不能穿越另一个碉堡,会被阻挡.人在移动的过程中不会被炮弹打到,也就 ...
- 搬砖的也能学Python----if - elif 语句
引入:如果平时执行的过程超过两个分支,则使用if-elif语句 if-elif 语句结构 if 判断条件: 要执行的代码 elif 判断条件: 要执行的代码 -- else: 要执行的代码 判断条件: ...
- 相位噪声 dBc/Hz
相位噪声和抖动是对同一种现象的两种不同的定量方式.在理想情况下,一个频率固定的完美的脉冲信号(以1 MHz为例)的持续时间应该恰好是1微秒,每500ns有一个跳变沿.但不幸的是,这种信号并不存在.如图 ...
- 网络请求的Cookie组成
Cookie是由变量名和值对组成(key,value).其属性里既有标准的Cookie变量,也有用户自己创建的变量,属性中变量是用"变量=值"形式来保存.根据Netscape公司的 ...
- Hi3531添加16GByte(128Gbit) NAND Flash支持
0.板子上已有Nor Flash了,添加的Nand Flash型号为MT29F128G08CJABAWP,进系统挂接NAND作为一个分区 1.修改uboot u-boot-2010.06/driver ...
- python3.4 UnicodeDecodeError: 'gbk' codec can't decode byte 0xff in position
python3.4 UnicodeDecodeError: 'gbk' codec can't decode byte 0xff in position 实用python的时候 打开一个csv的文件出 ...
- 【html5】html5学习笔记2--表单
html5 新增输入类型 html5新增了 email.number.Date pickers (date, month, week, time, datetime, datetime-local) ...
- 【linux】 LINUX FTP搭建
1.安装ftp服务 yum install vsftpd 2.编辑配置文件 vsftpd的配置文件有三个,分别是:/etc/vsftpd/vsftpd.conf/etc/vsftpd/ftpusers ...