admin管理员组

文章数量:1536802

2024年2月28日发(作者:)

[图文教程]Unity3D—强大的跨平台3D游戏开发工具众所周知,Unity3D是一个能够实现轻松创作的多平台的游戏开发工具,是一个全面整合的专业游戏引擎。在现有的版本中,其强大的游戏制作功能已经达到让人瞠目结舌的地步。尤其是它在3.0版本里面制作的那款第一人称战争游戏,画质效果丝毫不逊色于当下十分流行的《穿越火线》、《战地之王》等主流第一人称射击游戏。下图为Demo中的显示效果:看到如此绚丽的效果,让我马上走进精彩的Unity3D世界吧!首先要下载Unity3D,在官网上就可以完成。Unity3D的官方网站:ty3D的下载地址:/unity/download/下载好之后,必须要到官方网站上注册一个邮箱,才能获得30天的试用时间。试用后如果您对这款软件满意,还可以在购买后继续使用。当然,如果您购买了Pro版本的Unity3D,将会获得更多的功能。第一章Unity3D的基本界面介绍Unity3D的基本界面非常简单,几个窗口就可以实现几乎全部的编辑功能。主界面如图1.1所示:

场景面板:该面板为Unity3D的编辑面板;您可以将您所有的模型、灯光、以及其他材质对象拖放到当前场景中。构建游戏中所能呈现的景象。动画面板:与场景面板不同,该面板是用来渲染场景面板中的景象的。该面板不能用作编辑,但却可以呈现完整的动画效果。显示的内容取决于场景摄像机的设置。层次清单栏:该面板主要功能是显示放在场景面板中的所有的物体对象。项目文件栏:该面板主要功能是显示该项目文件中的所有资源列表。除了模型、材质、字体等,还包括该项目的各个场景文件。对象属性栏:该面板栏会呈现出任何对象的固有属性,包括三维坐标、旋转量、缩放大小、脚本的变量和对象等等。

场景调整工具:可以改变您在编辑过程中的场景视角、物体世界坐标和本地坐标的更换、物体的法线中心的位置,以及物体在场景中的坐标位置,缩放大小等等。菜单栏:接下来我重点介绍一下菜单栏。菜单栏中包含有八个菜单选项:分别是File【文件】、Edit【编辑】、Assets【资源】、GameObject【游戏对象】、Component【组件】、Terrain【地形】、Window【窗口】、Help【帮助】。每个菜单选项又有自己的子菜单,总结如下:1、File【文件】名称说明

NewScene创建新的场景。就像是游戏中的一个一个的场景一样,Unity3D为用户提供了方便的场景管理,用户可以随心所欲的创建出自己想要的场景。然后再把每个场景链接起来组成一个完成的游戏。打开一个已经创建的场景OpenScene保存当前场景SaveScene当前场景另存为SaveSceneas新建一个新的项目工程。用户想要制作出自己的游戏,第一步就是创建一个属于这个游戏的工程,这个工程是所有元素的基础。有了工程之后,用户就可以在NewProject这个工程里面添加自己的场景。打开一个已经创建的工程OpenProject保存当前项目SaveProject

BuildSetting项目的编译设置。在编译设置选项里面,用户可以选择游戏所在的平台及对工程中的各个场景之间的管理。可以添加当前的场景加入到工程的编译队列当中。其中的PlayerSettings选项中可以设置程序的图标,分辨率,启动画面等。编译并运行项目Build&RunExit退出Unity3D2、Edit【编辑】

名称说明撤销上一步操作Undo重复上一步动作Redo剪切Cut复制Copy粘贴Paste复制并粘贴DuplicateDelete删除

FrameSelected选择一个物体后,使用此功能可以把视角调到观察这个选中的物体上在资源区可以按资源的名称来查找Find可以选中所有资源SelectAll选项设置。对Unity3D的一些基本设置,如:选用外部的脚本编辑,皮肤,各种颜Preferences色的设置。以及一些用户基本的快捷键的设置。编译并在Unity3D中运行程序Play停止程序Pause单步执行程序StepLoad载入所选

SelectionSaveSelection保存所选项目设置。其中包括输入设置,标签设置(对场景中的元素设置不同类型的标签,方便场景的管理),音频设置,运行的时间的设置,用户设置,物理设置(包括重力,弹Project力,摩擦力等),品质设置(这个比较重要,用户在这个选项里面可以设置工程默认的渲Settings染品质),网络管理,编辑器管理等RenderSettings渲染设置。如果觉得整体画面的色彩质量不尽如人意,可在此处进行调节GraphicsEmulation图形仿真。主要是配合一些图形加速器的处理NetworkEmulation网络仿真。可以选择相应的网络类型进行仿真项目设置。其中包括输入设置,标签设置,音频设置,运行的时间的设置,用户设Project置,物理设置,品质设置,网络管理,编辑器管理等。SettingsSnap临时环境,或理解为快照设置。

Settings3、Assets【资源】名称说明重新导入资源Reimport创建功能。可以用来创建各种脚本,动画,材质,字体,贴图,物理材质,GUICreate皮肤等ShowInExplorer打开资源所在的目录位置

打开选中文件Open删除选中的资源文件Delete导入新的资源ImportNewAsset刷新,用于导入资源包之后Refresh导入资源包。当创建项目工程的时候,有些资源包没有导入进来,在开发过程ImportPackage中有需要使用,这时可以用到导入资源包的功能到处资源包ExportPackageSelectDependencies选择依赖项Reimport全部重新导入

SyncMonoDevelopProject同步开发项目4、GameObject【游戏对象】名称说明创建一个空的游戏对象。可以对这个空的对象添加各种组件,即各种属性。在CreateEmptyComponent里面会讲到创建其他类型的游戏对象。这里面包括了很多内容,基本上囊括了Unity3D所支持的所有对象。其中有粒子系统,摄像机,界面文字,界面贴图,3D的文字效果,点CreateOther光源,聚光灯,平行光,长方体,球,包囊,圆柱体,平面,表面,音频混音区域,树,玩偶,风域等CenterOnChildren这个功能是作用在父节点上的,即把父节点的位置移动到子节点的中心位置MakeParent选中多个物体后,点击这个功能可以把选中的物体组成父子关系,其中在层级视图中最上面的那个为父节点,其他为这个节点的子节点

ApplyChangeToPrefab应用变更为预置这个功能经常用到,把选中的物体移动到当前编辑视角的中心位置,这样就可以MoveToView快速定位把选中的物体移动到当前编辑视角的中心位置,深度为0,即移动到和视角同一AlignWithView个平面上AlignViewToSelected把编辑视角移动到选中物体的中心位置5、Component【组件】

名称说明添加网格属性Mesh粒子系统。能够造出很棒的流体效果Particles物理系统。可以使物体带有对应的物理属性Physics音频。可以创建声音源和声音的听者Audio渲染RenderingMiscellaneous杂项脚本。Unity内置的一些功能很强大的脚本Scripts

Camera-Control摄像机控制6、Terrain【地形】名称说明创建地形CreatTerrain导入高度图ImportHeightmap-Raw到处高度图ExportHeightmap-Raw

设置分辨率SetResolution创建光影图CreateLightmap批量种植树MassPlaceTrees展平高度图FlattenHeightmap刷新树及预置RefreshTreeAndDetail细节Prototypes7、Window【窗口】

名称说明下个窗口NextWindowPreviousWindow前一个窗口布局LayoutsScene场景窗口

游戏窗口Game检视窗口,主要指各个对象的属性,也可称为属性面板Inspector层次窗口Hierarchy工程窗口Project动画窗口。用于创建时间动画的面板Animation探查窗口Profiler源服务器AssetServer控制台Console

8、Help【帮助】名称说明关于AboutUnityUnity输入序EnterSerial列号NumberUnityManual手册Unity

参考手ReferenceManual册脚本手ScriptingManual册UnityUnityForum论坛欢迎窗WelcomeScreen口发行说ReleaseNotes明问题反ReportaProblem馈

第二章Unity3D的简单预览每个Unity3D版本都会自带一个Demo源文件。在3.0的正式版中,自带的Demo就是网上展示的那款强大的射击游戏。在一般情况下,您只要第一次打开Unity3Dv3.0就会看见自带的那个Demo项目文件了。但如果Unity3D并没有打开这个项目文件,你也可以在Unity3D里面的“File”菜单下点击“OpenProject”选项,在“C:DocumentsandSettingsAllUsersDocumentsUnityProjects”这个路径下找到项目文件夹“BootcampDemo”,选择并打开它。打开项目之后,在舞台场景面板中依然什么都没有显示的话,请在Project【项目文件栏】双击场景文件。稍等片刻之后,该舞台场景的所有对象就可以导入到舞台场景之中。导入成功之后效果如图2.1所示:点击一下中间的播放按钮做一下测试(如果您的机器配置不是很高,可能等待的时间会稍长)。稍等片刻,您就可以在Game【动画面板】中看到一个正在运行的射击游戏了。在这个游戏场景中,您会看到比其他主流游戏还要细腻逼真的画面效果,例如各个物体的实时阴影。如图2.2所示:当然如果您的机器配置较高,您还可以点击“Esc”键来将游戏画质进一步调高。调节界面如图2.3所示:

下面我们来看下调整画面效果前后的游戏画面对比,如图2.4.1和图2.4.2所示:

我们很明显的就可以感觉到河水的效果以及场景阴影的效果都真实了许多。第三章在Unity3D中创建一个山势地形图前面两章我们比较细致的对Unity3D的界面和表现效果等进行了说明与讲解。相信很多朋友在看过Unity3D如此强大的画面效果后都已经按耐不住想要自己动手操作了,接下来我们就尝试在Unity3D中创建一个山势地形图。第一步:创建一个新项目。打开Unity3D软件,它会自动载入上一次我们打开过的“BootcampDemo”项目文件。不用管它,在软件打开之后点击对话框中找到者点击后面的——>,在弹出的输入创建项目的文件夹地址,或选择一个文件夹地址(注:已创建Unity3D项目的文件夹,不能再当作新创建项目的文件夹来使用,否则会因无法找到文件而报错),然后在中选择要导入的项目文件包,每个文件包都带有一些插件功能,由于我们第一次创建项目文件,所以我们将所有的复选框都打上勾。但这样会致使Unity3D在开始加载的时候速度偏慢,等以后我们大家对各个插件包的作用都熟悉了,在创建Unity3D项目文件的时候,我们只需要勾选需要使用到的插件包就可以了。选项面板如图3.1所示:全部设置完成后,我们点击创建项目。

第二步:创建地形。在创建一个新项目后,我们会看见新项目的各个面板中,只有Project【项目文件栏】包含了和两个文件夹,这两个文件夹里面装的就是在创建项目时导入项目文件包里的所有文件。除此之外,其他版面都是空空如也。不要着急,万丈高楼平地起,我们马上就利用文件包和系统功能来丰富各个版面的内容。首先我们点击菜单栏上的图3.2所示:——>,创建一个带有地形属性的平面,如第三步:添加摄像机。创建好地形后,我们会发现Game【动画面板】中依然没有任何画面。其实道理很简单,就像演唱会的实况直播一样。场景都搭建好了,演员也在舞台上表演,却没有架上摄像机,电视机前的观众怎么能够看到现场的画面呢?接下来我们就创建一个摄像机。点击——>——>,这样场景中就会创建一个摄像机,这是您就可以在Game【动画面板】中观看到摄像机所观察到的星象了。如图3.3所示:第四步:调整地形大小。系统创建的地形默认大小是2000*2000的面积,实际编辑的时候会显得很大,不方便操作,所以我们对创建的地形面积进行调整,以便我们后续的编辑。点击菜单栏上的——>,弹出面板来

调节地面的大小。将字也改成500,设置好之后点击后面的数字改成500.然后将后面的数按钮将原来的地形改成500*500大小的面积。第五步:给场景编辑材质。在场景面板中选中刚才创建的地面对象,如果您觉得场景中不是很方便选择所需要的对象,那么您还可以在Hierarchy【层次清单栏】选中您所需的对象,该栏中包含了所有场景面板中的物体对象。选中地面对象之后,我们会在Inspector【属性面板】中马上发现与之对应的属性,包含有:Position【坐标】、Rotation【旋转量】、Scale【缩放尺寸】,以及地面对象固有的和。如图3.4所示:其中的。我们点击它之后,可以在下面找到来到这个像画笔一样的按钮,是用来改变地面材质按钮,点击——>界面,如图3.5所示:

然后我们单击选好之后点击后面的圆圈,就可以为地面添加您所喜欢的材质了。按钮来填入新材质。添加材质之后的地面如图3.6所示:如果您觉得这个地形的材质过于简单,那么您可以继续点击,来添加第二个材质,然后在所示:——>中选择您想要的笔刷形状,如图3.7

接着就可以在场景面板中刷出新材质的区域范围了。如图3.8所示:第六步:制作山峰。完成了地面材质的制作,接下来就可以制作山峰了。点击这三个按钮其中的一个,选择合适的笔刷,在地形图中可以刷出高山的形状,如图3.9所示:

如果觉得现在刷出来的山峰太高了,活着觉得某处的山有些多余,可以按住Shift键不放,用刚才选择的笔刷进行反向平刷即可。第七步:种植草和树木。接下来就可以给地形种植一些草和树木了。具体的种草按钮是,种树的按钮是。草和树木的设置方法与地形材质的设置方法十分雷同,都是先点击按钮来添加您所需要的花草和树木,然后在场景面板中刷出您所需要的区域即可。如图3.10所示:

这里大家需要注意一点,Unity3D在编辑模式下为了节约资源,采取了资源剔除的方法。如果您在利用笔刷“种草”的过程中,没有看到您所“种”上去的草,这是您只需将画面拉近即可观察到草的效果了。如图3.11所示:第八步:设置地形上的风速、阴影效果。

种上了草和树木,如果在游戏中运行时静止不动,会让人感觉很不自然,所以我们在地形中添加上风和阴影的效果,让草随风摆动,这样会变得更加逼真。点击按钮,来设置地形上的风速、阴影等效果。如图3.12所示:第九步:添加光照效果。地形相关的所有效果已经设置完毕了,但是我们发现在Game【动画面板】中的画面很暗,这是由于没有加入灯光的缘故。点击图3.13所示:——>——>,来创建一个太阳光效果。如

太阳光和太阳自身的位置关系并不大,只与自身的角度有关,这一点和我们日常生活中的太阳光是一致的。所以为了让场景变得更亮,我们就需要用到场景调整工具中的旋转按钮来对太阳光进行旋转。当然您也可以在属性面板中对它进行调节。根据我们生活的常识,当太阳光直射地面的时候,光线最强。调整之后的效果如图3.14所示:

怎么样,这时的Game【动画面板】中的画面是不是亮了许多?第十步:摄像机观察设置。为了让摄像机全方位的观察我们刚才所创建的场景,您可以在Project【项目文件栏】中找到、、这三个脚本文件,并将它们依次拖放到场景中的摄像机上面。如图3.15所示:

如果您觉得在Project【项目文件栏】中的文件过多,不便于寻找,您还可以在Project【项目文件栏】上方的搜索框输入他们的名字来进行搜索。这样很快就能找到对应的文件了。放置完成后,点击测试按钮,您就可以身临其境的在您刚才创建的Game【动画面板】中进行漫游了。用鼠标控制视角,用键盘的方向键控制行走。在漫游的过程中,您可以清晰的看到刚才创建的草随微风轻轻摆动。效果如图3.16所示:第十一步:添加天空效果。这时我们从Game【动画面板】中看到的天空是没有任何效果的,接下来我们给场景添加一个天空盒,使场景具有蓝天的效果。选中场景中的摄像机对象,然后点选菜单栏中的——>——>,为摄像机添加一个天空盒。添加成功之后,我们就能够在摄像机的属性面板中找

到刚才添加的天空盒了。接着我们去Project【项目文件栏】找到“StandardAssets”文件夹下的“Skyboxes”文件夹。这里面摆放了许多关于天空的材质球,您只需要选中一个您喜欢的天空材质球,并拖放给摄像机离的天空盒【Skybox】的材质属性【CustomSkybox】,就可以让场景的天空布满这种材质效果。如图3.17和图3.18所示:

选中场景中的光照对象,然后在他的属性面板中找到“Flare”,并点选它后面的圆圈在它弹出的对话框中选中双击。这种光照效果,这样就可以使得您在动画模式中清楚的看见太阳所在的位置。再运行一下动画,看看效果。第十二步:添加光照阴影效果。细心的朋友一定会发现,现在场景中的树木等物体是没有阴影的,这很不自然。所以为了让场景更加的逼真,我们还可以为场景添加光照阴影效果。具体做法如下:选中光照对象,在它的属性面板中找到,它默认的是(没有阴影),您可以将它改成“SoftShadows”【软渲染阴影】或者是“HardShadows”【硬件渲染阴影】。“SoftShadows”【软渲染阴影】以消耗CPU的计算为代价来产生阴影效果,这种模式运行速度较慢,但对于机器配置比较落后的使用者是唯一的选择。“HardShadows”【硬件渲染阴影】可利用新一代GPU的显卡加速功能来为游戏进行阴影效果的渲染处理,其运行速度比较快,渲染效果也比较理想。但无论您选择哪一个选项,动画场景的物体都会相对于阳光长生阴影效果。如图3.19所示:

第十三步:保存项目。所有的场景效果已经调试完毕后,按下Ctrl+S来保存场景文件,取名叫做“text”以便日后调用。如果保存成功,您会在您项目的Project【项目文件栏】中看到一个这样的文件第四章为地形添加水源、水流以及水下的模糊效果制作好了地形的各种效果,接下来我们给场景添加一些水效果,使场景更加丰富。第一步:添加水面由于我在上一次的地形创作中就已经在山峰之间制作了一块洼地,它就可以作为一个放置湖水的地方。如果您上次的创作并没有这样的地形,那么请您重新创建一个山势地形图,就当作自己的一次练习吧。在场景面板中点击Y方向的绿色箭头快的找到洼地所在的地方。如图4.1所示:,切换到顶视图,这样可以便于我们很图4.1然后用鼠标滚轮迅速的推进观测距离。如图4.2所示:

图4.2接着再到Project【项目文件栏】找到“StandardAssets”文件夹下的限专业版使用,如果您使用的版本是非专业版本,请转到拖拽一个景调整工具中的缩放工具(仅)文件夹中,【白天光照效果的水模型】到洼地的中央,并利用场,将水模型调整到合适的大小。如图4.3所示:图4.3紧接着我们再点击场景面板中右上角的白色小方块然后利用场景调整工具,将视角切换到透视图。,将水模型调整到合适的高度。如图4.4所示:

图4.4这时您只需要在播放时,将摄像机移动到洼地这个地方就可以看见湖水的效果了。第二步:添加瀑布。现在看来效果略显单调,既然是山中泉水我们还得有一些瀑布和溅起的水花。为了节约查找的时间,我们直接在Project【项目文件栏】上方的搜索框输入字符“waterf”,这样就可以查处如图所示的材质和模型。如图4.5所示:图4.5在这里面,飞溅模型,是一个喷泉模型,是一个瀑布模型。我们先拖入一个是一个水面的到洼地,然后利用场景调整工具来调整它的位置和角度。如图4.6所示:

图4.6这时的瀑布略显小了一些,我们可以先选中它,然后到它的属性面板里面去调整成您想要的效果。如图4.7所示:图4.7

第三步:添加水面飞溅模型。接下来我们会看到瀑布落到水面是没有水花飞溅的效果的,这不合常理。于是我们在瀑布下的水面上方放置一个水面飞溅模型。由于它的噶偶一定要和水面高度一致,所以我们先点选水平面,看看它的Y轴坐标,然后复制到属性面板中同样的位置,以确保它是伏在水面上的。紧接着再到它的属性面板中调整它的属性,让模型效果调整成您想要得到的效果。如图4.8所示:图4.8第四步:添加水下模糊效果。我们运行一下游戏,然后将镜头移动到泉水的水面下。如图4.9所示:

图4.9大家会发现,水下的视觉和在地面上的视觉效果是完全一样的。这和我们平时的生活现状是不相符的,所以我们还得做一下相应的调整。首先点击——>——>,创建一个立方体,并运用场景调整工具将它调整到整个水洼的实体部分。(注:运用其他形体也可以,其主要是用来覆盖水洼的实体部分,以用来和摄像机做碰撞检测,让摄像机的镜头变得模糊。)如图4.10所示:

图4.10接着,确保您创建的这个cube是被选中状态,到它的属性面板中,将“BoxCollider”卷展栏中的“IsTrigger”复选框打上勾(如果这里不打勾,这个cube将作为一个实物,当摄像机撞上它时,就像撞上墙一样,无法穿过。)如图4.11所示:图4.11然后再将“MeshRenderer”卷展栏下的所有复选框全部勾掉,使这个立方体只作为一个形体存在,而不让它在场景中作出任何的显示渲染。如图4.12所示:图4.12接着在属性面板的最上方将它的名字由“Cube”改为“WaterColler”选中,再的下拉框中新添加一个“WaterColler”的标签分类。然后将这个“WaterColler”水洼碰撞体的Tag也改成“WaterColler”。然后我们在菜单栏中选中——>——>,新添加一个JS脚本。到,按下F2键更改它Project【项目文件栏】找到刚才新建的JS脚本的名字为“UnderWatereffect”,并双击编辑它,输入代码如图4.13所示:

图4.13输入完毕,按Ctrl+S保存代码并关闭退出。然后将代码拖拽给摄像机使用。重新运行一下游戏,将摄像机移动到水下,就可以看到一片模糊的景象了。如图4.14所示:图4.14第五章Unity3D中脚本的简单概述和其他的3D软件一样,Unity3D作为一个类播放器的3D集成软件,具有良好的时间层级关系。比如Start()里面的语言,总是在播放器初始化时执行一次,而后就不再执行。例

如下面用JS写的一个例子。在菜单栏上选中——>——>,将下面这段代码拖拽给Hierarchy【层次清单栏】中任意一个对象。您就会在播放器刚开始播放的时候,在左下角的控制台面板中看到话,证明您的Game播放器已经开始工作了。如图5.1所示:这句图5.1(注:这个控制台买那般以后在大家使用的时候会经常用到它,因为它可以用作您代码片段的调试,以及您程序出错了的提示框,详细的提示您出错的原因所在。)当然有了初始化函数,就一定会有刷帧函数Update(),该函数内所有的代码会在播放器每播放一帧时执行。例如下面用JS写的一个例子,在菜单栏上选中——>,输入如下代码:——>该代码会在播放器每播放一帧的时候,显示游戏开始到现在所消耗的时间值。Unity3D中有着非常强大的接口处理功能,您可以在代码中为对象制定任意一个空接口用于

和对应类型的对象进行交互,例如下面用JS写的一个例子,在菜单栏上选中——>,输入如下代码:——>该代码为对象添加了一个在Z轴方向上的初始速度,如果在没有其他外力的作用下,物体将一直沿着Z轴方向以5的速度运动。并且当您将这段代码拖拽给一个物体对象后,它的这个初始速度可以作为一个接口在它的属性面板中进行修改。如图5.2所示:图5.2除了数字作为接口外,接口还可以是对象,例如下面用JS写的一个例子,在菜单栏上选中——>——>,输入如下代码:您可以将这段代码拖拽给Hierarchy【层次清单栏】中任意一个对象,因为它在这里定义了一个Transform类接口对象cubeGO,所以它几乎与拖拽的对象无关。拖拽成功之后来到该物体的属性面板中,您可以看到这样一个属性卷展栏,cubeGO的后面有个很明显未定义对象填写栏,然后我们把想要使之运动的物体拖拽到这个上面来,当我们运行游戏时,只要按下“G”键就可以看到被拖拽的物体作为“cubeGO”的指代对象,朝着Z轴方向运动了。第六章Unity3D中的C#Script编程的注意事项也许您在学习Unity3D之前,已经是一位C#的编程高手了。但在Unity3D中的C#并不像真正的C#那般强大,在Unity3D的C#中必须全部继承自MonoBehaviour。下面为一段C#Script的完整代码:

除此之外它不支持空间命名,但官方说他们很有可能会在以后的版本中支持这一功能。在Unity3D中,JavaScript和C#Script的编程效果近乎一样。只是为了不同程序爱好者设立了不同的编程模式。并且JavaScript所编写的代码对象可以和C#Script编写的代码对象交叉使用,并不发生任何冲突。第七章修改MonoDevelop编辑器为Unity3D的默认编辑器通常情况下Unity3D默认的编辑器都是“UniSciTE”,它用起来十分轻巧快捷,就像记事本一样。但如果要开发一些大型的项目,显然“UniSciTE”简单的功能就不足以支撑它的工作了。但如果您每次在编辑脚本的时候,都去用“MonoDevelop”一个个的打开,又会显得很麻烦。所以我们就要在Unity3D中做一些设置,让“MonoDevelop”成为默认的脚本编辑器。具体的步骤是:在菜单栏中找到到——>,在弹出的对话框中找,浏览到我们并将它后面的下拉框选中为“MonoDevelop”可执行文件存放的地方。这个路径一般都和您的Unity3D文件夹在一起。设置好之后,重新再Unity3D中点选脚本文件,就会发现已经能用“MonoDevelop”软件打开了,但一次打开的时候会稍显慢一点,因为“MonoDevelop”需要加载很多东西。当然,如果您是一个C#和VisualStudio忠实的编程爱好者,您也可以用同样的方法来设置VisualStudio软件的路径,让VisualStudio成为您Unity3D脚本的默认编辑器。第八章向Unity3D中导入外部模型Unity3D支持多种外部导入的模型格式,但它并不是对每一种外部模型的属性都支持。具体的支持参数,您可以对照如下列表:网种类络质材画动骼骨Maya的.mb和.mal格式√√√√

√3DStudioMax的.maxl格式√√√√Cheetah3D的.jasl格式√√√√Cinema4D的.c4dl2格式√√√√Blender的.blendl格式√√√√Carraral√√√√COLLADA√√√

Lightwavel√√√√√AutodeskFBX的.dae格式√√√√XSI5的.xl格式√√√√SketchUpProl√√Wings3Dl√√3DStudio的.3ds格式Wavefront的.obj格式√

DrawingInterchangeFiles的.dxf格式√在下面的实例中,我们利用3DMAX来制作一个完整的动画,并导出FBX的格式给Unity3D使用。第一步:创建新的工程文件。创建一个名为“Turret”的项目文件夹。然后打开Unity3D软件,选择创建一个新工程项目,在项目路径中点击夹,并点选我们需要导入的包文件,然后点击——>,找到我们刚才创建的“Turret”文件来创建一个新的工程文件。需要注意的是,以上步骤千万不能乱,因为Unity3D是无法以非空的文件夹作为工程文件夹来创建项目的。在此为了节省时间,笔者直接使用刚才创建好的场景来进行示范。第二步:制作一个炮塔模型。打开3DMAX软件制作一个炮塔模型,并将制作好的模型保存在“Assets”【资源】文件夹下面。3DMAX中的模型样图如图8.1所示:图8.1第三步:将炮塔模型放入场景。

重新来到Unity3D的软件环境中,这时大家已经能在Project【项目文件栏】看到我们刚才用3DMAX导出的模型文件和材质贴图文件了。接着我们在地形场景中找到一个合适的位置,将我们的炮塔拖拽进去。如图8.2所示:图8.2但是我们发现,这样似乎太小了一点。在改变外部模型尺寸的时候,有一个技巧,您不必在场景中修改它。儿科一道该模型的属性面板中去修改它的“ScaleFactor”大小。如图8.3所示:

本文标签: 场景效果设置创建面板