近期买了本书在学习一些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--学习太空射击游戏制作(一)的更多相关文章

  1. Unity3D--学习太空射击游戏制作(二)

    步骤三:创建主角 游戏的主角是一艘太空飞船,我们将使用一个飞船模型作为游戏的主角,并赋予他一个脚本,控制他的运动,游戏体的组件必须依赖于脚本才能运行. 01:在Project窗口找到Player.fb ...

  2. Unity3D--学习太空射击游戏制作(四)

    步骤七:添加声音和特效(射击声音和爆炸效果) 01:在Project窗口单机右键,选择Import Package->Custome Package,然后到资源文件目录packages浏览uni ...

  3. Unity3D--学习太空射击游戏制作(三)

    步骤四:创建敌人 创建敌人的方式与创建主角类似,不过敌人的行为需要由计算机来控制,它将从上方迎着主角缓慢飞出来,并左右来回移动: 01:创建Enemy.cs脚本,添加代码: using UnityEn ...

  4. 用canvas制作酷炫射击游戏--part1

    好久没写博客了,因为过年后一直在学游戏制作方面的知识.学得差不多后又花了3个月时间做了个作品出来,现在正拿着这个作品找工作. 作品地址:https://betasu.github.io/Crimonl ...

  5. 少儿编程Scratch第四讲:射击游戏的制作,克隆的奥秘

    上周的宇宙大战射击游戏中,我们只完成了宇宙飞船发射子弹的部分.还未制作敌对方.这周制作了敌方-飞龙,飞龙随机在屏幕上方出现,如果被子弹打中,则得分,飞龙和子弹都消失. 敌方:飞龙:计分. 目的 目的: ...

  6. cocos2d-x学习日志(10) --射击游戏(喵星战争)

    转载请标明:转载自[小枫栏目],博文链接:http://blog.csdn.net/rexuefengye/article/details/10553487 一.纵版射击游戏的特点 纵版射击游戏是一种 ...

  7. 《Genesis-3D开源游戏引擎完整实例教程-2D射击游戏篇:简介及目录》(附上完整工程文件)

    G-3D引擎2D射击类游戏制作教程 游戏类型: 打飞机游戏属于射击类游戏中的一种,可以划分为卷轴射击类游戏. 视觉表现类型为:2D 框架简介: Genesis-3D引擎不仅为开发者提供一个3D游戏制作 ...

  8. 《Genesis-3D开源游戏引擎--横版格斗游戏制作教程:简介及目录》(附上完整工程文件)

    介绍:讲述如何使用Genesis-3D来制作一个横版格斗游戏,涉及如何制作连招系统,如何使用包围盒实现碰撞检测,软键盘的制作,场景切换,技能读表,简单怪物AI等等,并为您提供这个框架的全套资源,源码以 ...

  9. Unity3D系列教程--使用免费工具在Unity3D中开发2D游戏 第一节

    声明:   本博客文章翻译类别的均为个人翻译,版权全部.出处: http://blog.csdn.net/ml3947,个人博客:http://www.wjfxgame.com. 译者说明:这是一个系 ...

随机推荐

  1. android学习日记11--音频播放类

    一.android 音频播放类 MediaPlayer和SoundPool都可以用来播放音频.区别是MediaPlayer占用资源高,延迟时间高,播放长音乐的,并且不能同时播放多个音乐,而SoundP ...

  2. JQuery Mobile navbar动态刷新创建

    今天突然用到须要动态改变tab页, 布局代码例如以下: <div data-role="navbar" id='divtab'> <ul id='divtabul ...

  3. UpdatePanel的用法

    UpdatePanel控件也是Ajax里用得最多的控件之中的一个,UpdatePanel控件是用来局部更新网页上的内容,网页上要局部更新的内容必须放在UpdatePanel控件里,他必须和上一次说的S ...

  4. 未打开Ad Hoc Distributed Queries

    SSAS访问ORACLE数据仓库读取数据创建CUBE的时候报如下错误: SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT 'Open ...

  5. Authentication

    Authentication Introduction Configuration Storing Passwords Authenticating Users Basic Usage Introdu ...

  6. 程序员谈学习:我为什么要学习Linux?

    http://kb.cnblogs.com/page/196876/ 好长时间没好好写点东西了,前段时间由于项目的需要出差了一个多月,期间各种加班,每天晚上加班到十点,回到宾馆实现是没什么精力再写博客 ...

  7. ajax的一部分知识

    jquery中的ajax方法参数总是记不住,这里记录一下. 1.url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. 2.type: 要求为String类型的参数,请求方式(p ...

  8. 【二分答案+贪心】解决“最小值最大”问题(UVa 12124 - Assemble)

    Problem A - Assemble Time limit: 2 seconds Recently your team noticed that the computer you use to p ...

  9. 在重命名SqlServer数据库是,报5030错误的解决办法

    数据库不能重名名5030的错误,其实很简单原因就是有应用程序正在占用这个连接,使用这样一行命令就可以查询出正在占用的连接 use master select spid from master.dbo. ...

  10. HTTP层 —— 请求

    1.访问请求实例 要通过依赖注入获取当前 HTTP 请求实例,需要在控制器的构造函数或方法中对 Illuminate\Http\Request 类进行类型提示,这样当前请求实例会被服务容器自动注入: ...