Unity3D--学习太空射击游戏制作(一)
近期买了本书在学习一些Unity3D的东西,在了解了Unity3D工具的基本面板后开始学习一个太空射击游戏的开发过程。
首先下载一个关于本游戏的资源文件,(百度云下载地址:http://pan.baidu.com/s/1mg7xGNY 密码:pg7e) 下面会用到这个资源文件
步骤一:导入美术资源
01:在资源文件目录\rawdata下复制airplane文件夹,这个文件夹内包含所有游戏需要的模型和贴图文件,如图:
02:新建一个Unity工程(File-New Project)取名为AIrShotGame2,在Project窗口选择Assets,然后右键选择Show in Explorer,将前面复制的airplane文件夹粘贴到Asset文件夹内,返回Unity,看到模型和贴图已经倒入到了当前的Unity工程中,如图:
步骤二:创建场景
游戏是在一个太空背景下发生,一个星球和后面的星空
01:在菜单栏选择File-New Scene创建一个新的场景,存为level.unity,如图:
02:在菜单栏选择GameObject->3D Object->Plane创建一个平面体作为火星的背景模型,如图:
03:在Project窗口右键选择Create->Material创建一个材质球,命名为Background,选择Select指定mars.png为贴图,如图:
04: 在Scene窗口选择火星背景模型,在Inspector窗口找到Materials下面的Element0,选择右边的小圆圈按钮,指定Background材质球,如图:
05:这时候我们看到火星周围的黑色边框挺难看,选择Background材质球,将Shader设为Transparent->Cutout->Diffuse,消除了边框,然后调整下坐标,得到一个火星模型如图:
06:下面为火星添加一个星空背景,创建一个平面体GameObject->3D Object->Plane,将其置于火星下面,为其创建一个材质球,指定star.png为贴图,如图:
07: 设置摄像机和灯光,首先你需要调整视图的角度(鼠标右键和中间组合使用),需要注意的是星空的贴图可能在火星模型的上面,这时候只需要调整下y坐标的值为-1即可,然后在Hierarchy窗口中选择Main Camera,这是场景中的默认的摄像机,在菜单栏选择GameObject->Align With View使得摄像机视角和当前视图一致,如图:
08:这时候运行游戏的时候发现在Game窗口中的画面亮度很暗,这时候需要添加光源,首先在Scene窗口上方点击“太阳”按钮,Scene窗口展示的是真实的灯光信息。在菜单栏选择Edit->RenderSetting,然后在Inspector窗口选择Ambient Light,改变他的颜色,增加场景的亮度,然后再菜单栏选择GameObject->Light->Point Light创建一个点光源,将其置于火星的模型上方,然后调节其Range的值改变灯光的范围,调节Intensity的值改变其灯光的强度,如图:
下面是创建主角
Unity3D--学习太空射击游戏制作(一)的更多相关文章
- Unity3D--学习太空射击游戏制作(二)
步骤三:创建主角 游戏的主角是一艘太空飞船,我们将使用一个飞船模型作为游戏的主角,并赋予他一个脚本,控制他的运动,游戏体的组件必须依赖于脚本才能运行. 01:在Project窗口找到Player.fb ...
- Unity3D--学习太空射击游戏制作(四)
步骤七:添加声音和特效(射击声音和爆炸效果) 01:在Project窗口单机右键,选择Import Package->Custome Package,然后到资源文件目录packages浏览uni ...
- Unity3D--学习太空射击游戏制作(三)
步骤四:创建敌人 创建敌人的方式与创建主角类似,不过敌人的行为需要由计算机来控制,它将从上方迎着主角缓慢飞出来,并左右来回移动: 01:创建Enemy.cs脚本,添加代码: using UnityEn ...
- 用canvas制作酷炫射击游戏--part1
好久没写博客了,因为过年后一直在学游戏制作方面的知识.学得差不多后又花了3个月时间做了个作品出来,现在正拿着这个作品找工作. 作品地址:https://betasu.github.io/Crimonl ...
- 少儿编程Scratch第四讲:射击游戏的制作,克隆的奥秘
上周的宇宙大战射击游戏中,我们只完成了宇宙飞船发射子弹的部分.还未制作敌对方.这周制作了敌方-飞龙,飞龙随机在屏幕上方出现,如果被子弹打中,则得分,飞龙和子弹都消失. 敌方:飞龙:计分. 目的 目的: ...
- cocos2d-x学习日志(10) --射击游戏(喵星战争)
转载请标明:转载自[小枫栏目],博文链接:http://blog.csdn.net/rexuefengye/article/details/10553487 一.纵版射击游戏的特点 纵版射击游戏是一种 ...
- 《Genesis-3D开源游戏引擎完整实例教程-2D射击游戏篇:简介及目录》(附上完整工程文件)
G-3D引擎2D射击类游戏制作教程 游戏类型: 打飞机游戏属于射击类游戏中的一种,可以划分为卷轴射击类游戏. 视觉表现类型为:2D 框架简介: Genesis-3D引擎不仅为开发者提供一个3D游戏制作 ...
- 《Genesis-3D开源游戏引擎--横版格斗游戏制作教程:简介及目录》(附上完整工程文件)
介绍:讲述如何使用Genesis-3D来制作一个横版格斗游戏,涉及如何制作连招系统,如何使用包围盒实现碰撞检测,软键盘的制作,场景切换,技能读表,简单怪物AI等等,并为您提供这个框架的全套资源,源码以 ...
- Unity3D系列教程--使用免费工具在Unity3D中开发2D游戏 第一节
声明: 本博客文章翻译类别的均为个人翻译,版权全部.出处: http://blog.csdn.net/ml3947,个人博客:http://www.wjfxgame.com. 译者说明:这是一个系 ...
随机推荐
- materialish-progress
https://github.com/pnikosis/materialish-progress materialish-progress-master.zip
- Qt界面设计1
最近刚接触Qt 对于QML做界面感觉已经很轻松了,但是想尝试一下GUI..准备做一个理财的小软件 ....慢慢记录我的一点一滴的学习经历. 自己封装界面UI 遇到了好多新手级别的问题=_=!!! 1. ...
- iOS开发——高级技术&摇一摇功能的实现
摇一摇功能的实现 在AppStore中多样化功能越来越多的被使用了,所以今天就开始介绍一些iOS开发的比较实用,但是我们接触的比较少的功能,我们先从摇一摇功能开始 在 UIResponder中存在这么 ...
- log_slave_updates在线修改
http://planet.mysql.com/entry/?id=20450 mysql> show variables like 'log_slave_updates'; +-------- ...
- js中一些容易混淆的方法
JavaScript中有一些名字十分冗长的函数名称,导致使用时会混乱,特此整理一番,加深印象. ①Object.getOwnPropertyDescriptor --读取某个对象特定属性的属性 ...
- Android_baseComponentExample
xml布局文件: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns ...
- 随便写写,当作了解--Css
Css,Cascading Style Sheets,层叠样式表.用于控制HTML页面样式.他的基本格式由两部分组成: 选择器 声明块 一.使用 css的注释用 /* 注释内容 */ 1.导入外部样式 ...
- Flume连接Kafka的broker出错
在启动Flume的时候,出现下面的异常,但是程序照样能运行,Kafka也能够收到数据,只是偶尔会断点. 2016-08-25 15:32:54,561 (SinkRunner-PollingRunne ...
- Java中处理Linux信号量
为了防止无良网站的爬虫抓取文章,特此标识,转载请注明文章出处.LaplaceDemon/ShiJiaqi. http://www.cnblogs.com/shijiaqi1066/p/5976361. ...
- 关于JSP异常的处理
jsp中错误处理页面-isErrorPage="true" 举例说明:mustBeError.jsp <%@ page contentType="text/html ...