Creating RTS Game With Unity3d(Chinese Edition) Part I 使用Unity3d制作即时战略游戏
2013-09-03 21:38
691 查看
(以下为原著翻译版)
我将会开始连载一个关于在Unity3d中创建即时战略类型游戏的教程。我将在Windows操作系统中使用Unity3d免费版进行演示,并且使用C#脚本语言。文章中很大一部分会是程序,因此你最好了解C#基本语法,以及其他的语言基础。我会重点介绍我这样做的目的,但不会用大量的篇幅去介绍关于语法的细节。还有就是因为我们要使用Unity3d,你应该对Unity3d有一定的了解,这篇教程对于一个初学者可能会有些难度。
同时,我也将分享这片教程的项目源码:https://github.com/stormtek/unity-rts-demo
我们的目标是制作一个现代的实时战争策略游戏(Real-Time Strategy Game)。文章将会实现到这些:
多个队伍(其中一个是由玩家控制)
选择每个单位,例如选择某个建筑,步兵,还有资源!
玩家将控制每一个单位(例如步兵)和建筑物。
玩家可以在一些特殊的建筑中创建新的步兵(例如兵营)
创建一些特殊的单位,他们会建筑新的建筑物。
创建一些可以采集资源的单位,让他们来维持经济!!
创建界面来显示一些关于玩家的信息:
玩家现在拥有的资源。
玩家选择的单位(建筑)。
当前选择的单位(建筑)的选项。
一个非常棒且实用的菜单!
保存和载入游戏。
好吧,这看上去似乎并不简单,但这完全可以实现。 那么,是时候开始了!
准备:
首先,我们要做的是下载并安装Unity3d,如果你早已完成这一步(我相信你早已完成,你可以在www.unity3d.com/download 下载),请继续往下看。
我不认为如果我们的开发平台不同会对这个教程有着很大的影响(我使用的Windows7)。当你进入了Unity3d引擎后,你将会看见这样的界面:
(此处括号内内容为翻译时添加)
Project(项目)视图
Hierarchy (层级) 视图
Inspector (检索工具) 视图
Scene (场景) 视图
Game (游戏预览) 视图
还有就是Console(控制台),虽然我们在这个教程中将几乎不会用到它,但在开发过程中会经常使用Log输出来调试。
现在你已经准备好使用Unity3d了(至少你的电脑准备好了!),是时候来创建一个新的项目(File -> New Project ...) ,我将会叫它RTS Tutorial(即时战略教程)。但是这个名字你可以随意起。通常,Unity3d(在Windows操作系统中)将会把新建的项目文件放在MyDocuments(我的文档)中,当项目已经创建后修改项目的路径也非常简单,因此你不用担心你需要把项目文件放到哪。
当我们创建了这个项目后,我们应该先创建一个空的场景。新的场景已经包含了一个主摄像机。现在我们要做的是保存这个场景(File->Save Scene)。我打算叫这个场景为“Map(地图)”,当你选择保存后,你将会看见你的场景已经被保存在项目文件中的Asset文件夹。
第一个对象:
现在我们要做的事会让你很清晰的看见你做了什么,现在让我们来做一些东西来代表地面。我会用一个Plane来制作地面。
首先我们要创建一个Plane(Game Object-> Create Other -> Plane),将它放置在坐标原点(0,0,0),并将缩放调至(100,1,100),这样做将会让它的长和宽都变成100个单位,这会看起来更像一个地面,为了让它更像,我要将它改名为Ground(地面)。注意我并没有调整Y轴的缩放,因为我们并不需要调成地面的高度。
Ground 设置
现在来创建一个Cube,放置于(0,2,0),缩放调整为(10,4,10),这个盒子将会在整个地面的中间,且拥有高度,因此它必须要比地面高(坐标Y轴),同样需要有高度(缩放Y轴)。
Cube 设置
到此,我们的场景一直在使用着默认包含的环境照明,这就是说这看起来并不是黑色的,但是不会很亮,因此我们需要添加一个灯,这里我使用点光源(Point Light),并把它改名为Sun(太阳)。我们模拟一个太阳,首先要模拟它的位置,把“太阳”放置在(100,400,100),这看上去很高。之后将点光源太阳的范围(Range)设置为1000,这会让它照射的地面。
Sun 设置
最后,我们要移动摄像机,来让我们能够看见刚才做的这一切, 将主摄像机(Main Camera)放置在(20,10,-20),并且将旋转角度设置为(15,-45,0)
Camera 设置
好,这就是在第一张我们需要做的,首先我们创建了一个Plane作为地面,和一个Cube,我们又加上了一个点光源作为太阳。最后,我们又移动了摄像机,让我们可以看见我们做的这些。
最后,你的场景看上去应该是这样
这一章就这些内容了,非常简单,不是吗? 下一章,我们将会开始创建整个游戏的架构,并且让我们可以控制摄像机移动。
第一章完,更多内容,尽情期待。
最后一次编辑:Wed 4 Sep,2013
By Spinach HaoYan QI
我将会开始连载一个关于在Unity3d中创建即时战略类型游戏的教程。我将在Windows操作系统中使用Unity3d免费版进行演示,并且使用C#脚本语言。文章中很大一部分会是程序,因此你最好了解C#基本语法,以及其他的语言基础。我会重点介绍我这样做的目的,但不会用大量的篇幅去介绍关于语法的细节。还有就是因为我们要使用Unity3d,你应该对Unity3d有一定的了解,这篇教程对于一个初学者可能会有些难度。
同时,我也将分享这片教程的项目源码:https://github.com/stormtek/unity-rts-demo
目标:
我们的目标是制作一个现代的实时战争策略游戏(Real-Time Strategy Game)。文章将会实现到这些:
多个队伍(其中一个是由玩家控制)
选择每个单位,例如选择某个建筑,步兵,还有资源!
玩家将控制每一个单位(例如步兵)和建筑物。
玩家可以在一些特殊的建筑中创建新的步兵(例如兵营)
创建一些特殊的单位,他们会建筑新的建筑物。
创建一些可以采集资源的单位,让他们来维持经济!!
创建界面来显示一些关于玩家的信息:
玩家现在拥有的资源。
玩家选择的单位(建筑)。
当前选择的单位(建筑)的选项。
一个非常棒且实用的菜单!
保存和载入游戏。
好吧,这看上去似乎并不简单,但这完全可以实现。 那么,是时候开始了!
准备:
首先,我们要做的是下载并安装Unity3d,如果你早已完成这一步(我相信你早已完成,你可以在www.unity3d.com/download 下载),请继续往下看。
我不认为如果我们的开发平台不同会对这个教程有着很大的影响(我使用的Windows7)。当你进入了Unity3d引擎后,你将会看见这样的界面:
(此处括号内内容为翻译时添加)
Project(项目)视图
Hierarchy (层级) 视图
Inspector (检索工具) 视图
Scene (场景) 视图
Game (游戏预览) 视图
还有就是Console(控制台),虽然我们在这个教程中将几乎不会用到它,但在开发过程中会经常使用Log输出来调试。
现在你已经准备好使用Unity3d了(至少你的电脑准备好了!),是时候来创建一个新的项目(File -> New Project ...) ,我将会叫它RTS Tutorial(即时战略教程)。但是这个名字你可以随意起。通常,Unity3d(在Windows操作系统中)将会把新建的项目文件放在MyDocuments(我的文档)中,当项目已经创建后修改项目的路径也非常简单,因此你不用担心你需要把项目文件放到哪。
当我们创建了这个项目后,我们应该先创建一个空的场景。新的场景已经包含了一个主摄像机。现在我们要做的是保存这个场景(File->Save Scene)。我打算叫这个场景为“Map(地图)”,当你选择保存后,你将会看见你的场景已经被保存在项目文件中的Asset文件夹。
第一个对象:
现在我们要做的事会让你很清晰的看见你做了什么,现在让我们来做一些东西来代表地面。我会用一个Plane来制作地面。
首先我们要创建一个Plane(Game Object-> Create Other -> Plane),将它放置在坐标原点(0,0,0),并将缩放调至(100,1,100),这样做将会让它的长和宽都变成100个单位,这会看起来更像一个地面,为了让它更像,我要将它改名为Ground(地面)。注意我并没有调整Y轴的缩放,因为我们并不需要调成地面的高度。
Ground 设置
现在来创建一个Cube,放置于(0,2,0),缩放调整为(10,4,10),这个盒子将会在整个地面的中间,且拥有高度,因此它必须要比地面高(坐标Y轴),同样需要有高度(缩放Y轴)。
Cube 设置
到此,我们的场景一直在使用着默认包含的环境照明,这就是说这看起来并不是黑色的,但是不会很亮,因此我们需要添加一个灯,这里我使用点光源(Point Light),并把它改名为Sun(太阳)。我们模拟一个太阳,首先要模拟它的位置,把“太阳”放置在(100,400,100),这看上去很高。之后将点光源太阳的范围(Range)设置为1000,这会让它照射的地面。
Sun 设置
最后,我们要移动摄像机,来让我们能够看见刚才做的这一切, 将主摄像机(Main Camera)放置在(20,10,-20),并且将旋转角度设置为(15,-45,0)
Camera 设置
好,这就是在第一张我们需要做的,首先我们创建了一个Plane作为地面,和一个Cube,我们又加上了一个点光源作为太阳。最后,我们又移动了摄像机,让我们可以看见我们做的这些。
最后,你的场景看上去应该是这样
这一章就这些内容了,非常简单,不是吗? 下一章,我们将会开始创建整个游戏的架构,并且让我们可以控制摄像机移动。
第一章完,更多内容,尽情期待。
最后一次编辑:Wed 4 Sep,2013
By Spinach HaoYan QI
相关文章推荐
- Creating RTS Game With Unity3d(Chinese Edition) Part II 使用Unity3d制作即时战略游戏
- 使用Unity3D 自主实战开发的赛车游戏实例,关键点记录 (二)之地形场景漫游导览制作
- 使用Unity3D制作一个转盘游戏
- 使用Unity3D制作游戏加载效果(协程)
- 使用Unity3D 自主实战开发的赛车游戏实例,关键点记录 (三)之UI菜单制作
- (译)如何使用GameCenter制作一个简单的多人游戏教程:第一部分
- [Unity3D]手机3D游戏开发:如何实现最高分的存储与显示(二)----使用GUI.Box显示文字
- 如何使用cocos2d制作基于tiled地图的游戏
- 使用spine骨骼动画制作的libgdx游戏
- 图文并茂使用CocosBuilder制作Cocos2D游戏
- 使用SpriteBuilder制作Cocos2D游戏完全中文教程(七)
- Tiled使用教程(游戏地图制作)
- iOS-Cocos2d游戏开发】使用plist文件制作简单精灵
- 使用Cocos2d-x 3.0和物理引擎制作简单的platformer游戏
- 使用Unity3D 5.3.4 模仿2D游戏 FlappyBird(三)
- 如何使用Box2D和Cocos2D制作一款像Fruit Ninja一样的游戏-第2部分
- 使用javascript制作俄罗斯方块游戏(2)
- Unity3d制作简单拼图游戏
- 【Unity3D入门教程】游戏开发利器UGUI的基本使用方法
- (译)如何使用cocos2d制作一个塔防游戏:引子