Unity学习之路(一)太空大战类游戏制作1

2016-1-16

1.设置游戏窗口分辨率 File->Build Setting->Player Setting   Inspector面板里Resolution..里设置


2.调整摄像机,选中Main Camera,设置Size : 2。 Clipping Planes,近裁剪面Near:0.3,远裁剪面Far:10。在远近裁剪面之间的椎体才是可以渲染出来的。

把投影方式Projection改为正交投影,Orthographic 。


3.把Prefab中的sprite拖到层次面板上,把预置的飞机图片拖到上边,并改名为player。将位置改为0,-0.5,0


4.保存场景 文件-场景另存为


5.在Script里创建脚本PlayerController(JavaScript)


6.在Update函数里添加如下代码:

function Update () {

    transform.Translate(Input.GetAxis("Horizontal")*Time.deltaTime,0,0);
    
}

transform.Translate实现移动物体的效果,三个参数分别代表在XYZ轴移动的方向。Input输入管理器,GetAxis获得轴,Horizontal水平轴,左方向键返回-1,右+1.同时检测键盘上的A和D键。 Time.deltaTime为每帧之间的间隔时间,一般为0.2秒。


7.把脚本文件拖拽到player上,即可控制飞机左右移动。


8.提高player的移动速度。在脚本中修改代码,顶部加var speed:float=2.0f;申请变量。


9.控制飞机左右循环移动:打开脚本代码修改Update中的内容:

    if(transform.position.x>-3.1 && transform.position.x<3.1){
        transform.Translate(speed*Input.GetAxis("Horizontal")*Time.deltaTime,0,0);}
    else if(transform.position.x<-3.1){transform.position.x=3.0;}
    else if(transform.position.x>3.1){transform.position.x=-3.0;}


10.添加炮弹,改名->添加Material(不要拖图片,拖Material)调整缩放比例,Scale分别为0.2,0.5,1


11.给炮弹添加运动的代码,创建脚本文件,如下

#pragma strict
var speed:float = 5.0;

function Update () {
    transform.Translate(0,speed*Time.deltaTime,0);
    
}

同时添加炮弹发射的声音。


12.销毁炮弹:

在炮弹控制脚本Update中添加:

if(transform.position.y>3.3){Destroy(gameObject);}


13.将炮弹拖到预设文件夹里,同时删除场景中的炮弹,以备之后按空格键发射出炮弹。


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值