没有合适的资源?快使用搜索试试~ 我知道了~
untiy 3D游戏开发教程
4星 · 超过85%的资源 需积分: 14 63 下载量 189 浏览量
2010-07-16
13:39:57
上传
评论 3
收藏 1.9MB DOC 举报
温馨提示
试读
21页
该教程是翻译过来的,里面有详细的说明。只要按照说明去操作,就会成为一个高级untiy开发者
资源推荐
资源详情
资源评论
FPS 游戏教程
Setting up the game environment 安装游戏环境
一旦资源被导入,你将注意到项目面板上有许多目录
Objects/mainLevelMesh/
mainLevelMesh
在项目面板上,从Objects/mainLevelMesh/mainLevelMesh中选择
mainLevelMesh
!"
#$
%#&''((
')*
在检查面板上,有一个FBXImporter选项,你将找到“产生碰撞器”选项,勾选它,如果我们
不这样做,游戏者落下时将穿过层面
+'
拖拽 mainLevelMesh 到场景中
&''
&
'''((,
(
1
这里不需要给场景增加灯光,这个层面上已经提供了充分的光影,这个导入层使用了允许我们
使用prebakedShadows灯光的光影
''(
-''
光影执行起来非常好,尤其是你想建立一个复杂的灯光设置的时候
.(
你现在准备要给环境中增加一个特性
Adding the Main Character 增加主要的特性
/(''0
""&
12
我们现在将给游戏者增加一个用来控制的特性,Unity有一个内建在特定预控制物体中的第一
人称控制器,它能在项目面板的Standard Assets>Prefabs下面
&%,(1
(
,(.(
+'(
为了增加第一人称控制器,单击项目面板上的Standard Assets,所有的资源将被列出,发
现有许多可被调用的预制物体,单击预制物体左手边的箭头,你将看到第一人称控制器资源,
拖拽它到场景面板中
.'3'(
'
3+)3(
4/,*(((()(
,'*&%('
'($5(.
2
%
'
你能看到一个代表游戏者的圆柱体对象,3个大的箭头用来改变对象在3维空间中的位置(如果
你不明白三个箭头,也可以按“W”键),并且有一个白色的网格(mesh)显示在对象的视窗
中(就是当前看到的),FPS控制器现在是个缺省的照相机,当你在游戏视窗中改变当前的视
窗时会随着这个对象移动,你也能注意到FPS控制器顶部有一个照相机图标,它的移动特性是
用来在环境中环绕场地的。
1('%
因为主照相机我们不再需要它了,所以你可以删除它
('
,),/1+*
按下“Play” ,你可以使用鼠标和键盘围绕场地移动(鼠标键移动和按
“W”、“A”、“S”、“D”)
.('(
你现在建立了一个非常简单的FPS,让我们给游戏者一把武器
Adding a weapon 增加一把武器
/(''''(
&60
(
我们现在将给游戏者一个能在环境中扔的手榴弹类型的对象,为了做到这一点,你将需要建立
一些Javascript脚本告诉Unity这个武器的特征
(((7/(((
'8(",'(
''"((
3
"((
(&(
''(
(((&
"
那么我们该怎么做呢?我们想让游戏者射击,无论照相机被定位到哪个点上了,然而,让我们
首先想到的是游戏的特点和他们的武器。我们游戏的特点是第一人称视角,照相机被定为在游
戏者的眼睛处。如果游戏者手里有个武器,那么武器是可以被发射的,无论它们是否被握在手
里,不是从眼睛处发射。这意味着我们要增加一个游戏对象以描绘一个扔手榴弹者并且当他们
手里握着武器的时候要定位他的位置,这些能确保对象朝正确的目标开火。
Create the weapon launcher 建立一个武器发射者
''1'
3+()*
'&'
首先,让我们增加一个游戏对象以表示扔手榴弹者。一个游戏对象是3D世界中的任何一个事项
(游戏者、层面、声音),组件式游戏对象的属性。因此,你可以在游戏对象上应用组件。
GameObject >Create Empty
##89
(
从主菜单上选择GameObject >Create Empty,并且在层次面板上重命名对象为
“Launcher”(发射者),注意,这些对象作为空对象是不可见的,然而它恰好为我们的投射
物体发射者提供一个站位符。
9('((
(
现在让我们关闭FPS控制器以便我们能看到武器发射者的位置
8'
5(4)*&)
*
在层次面板上选择FPS控制器并且确保你的光标在场景视窗中,按下“F”(视窗框被选中的情
况下),这时焦点会移到当前选择的项上
9(8$
2(9((
%/(
-(
现在在层次面板上选择发射者并且选择Game Object >Move to view from the main
menu,注意发射者对象是怎么被定为到靠近FPS控制器的。我们现在能使用手柄大概定位发
射者到手柄使用的地方。
9&:.,';'
4
'
注意 注意你可以通过改变这个对象的向左或向右的特性以改变对象的定位而没有必要改变任何
代码。
,0((<3)Window >Layouts >2
by 3*,8
5((('5(.
()
''(*
确保你的Unity窗口布局是2 by 3模式(Window >Layouts >2 by 3),并且按下运行按
钮。确保发射者在层次面板被选择并且在场景视窗中能被观察到,在周围使用移动特性。你能
注意到我们的发射者对象不恩能够随我们移动(你能在运行时按下运行按钮停止游戏运行)
&'%
'%8,,
9(''(5(
((/
'(3-)*
为了解决这个问题拖拽发射者对象到主照相机对象上,主照相机属于层次面板上的FPS控制器。
它也可能正好打断预制物体的连接。
Create the Missile object 建立一个投射物体对象
((,"
(('%(
,'Assets >Create >Prefab 0
眼下我们将使用一些简单物体,一个球(sphere),建立一个预制物体对象在Unity菜单条
上单击Assets >Create >Prefab,并且重命名它为Missile
9()GameObject >Create Other >Sphere*
现在建立一个球(GameObject >Create Other >Sphere)
9(''8
&(('.
85(
现在从层次面板上拖拽球游戏对象到项目面板上的missile预制物体(prefab)中,预制物
体的图标将被改变。你可以从层次面板上删除球对象。
TIP1'(,(
'
提示 任何你知道的游戏物体在作为与预制物体时在运行时你都需要初始化它
Write the Missile Launcher code 写投射物体发射者代码
&%''
&%;
5
剩余20页未读,继续阅读
yh_java
- 粉丝: 1
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- AIS2024 valid
- 最入门的爬虫代码 python.docx
- 爬虫零基础入门-爬取天气预报.pdf
- 最通俗易懂的 MongoDB 非结构化文档存储数据库教程.zip
- 以mongodb为数据库的订单物流小项目.zip
- 腾讯云-mongodb数据库, 项目部署.zip
- 腾讯 APIJSON 的 MongoDB 数据库插件.zip
- 理解非关系型数据库和关系型数据库的区别.zip
- 操作简单的Mongodb网页web管理工具,基于Spring Boot2.0支持mongodb集群.zip
- tms-mongodb-web,提供访问mongodb数据的REST API和可灵活扩展的mongodb web 客户端.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页