首页 > 学院 > 开发设计 > 正文

U3D -- 自学之路

2019-11-09 17:17:13
字体:
来源:转载
供稿:网友

1. 场景与工程

 PRoject(工程)与Scene(场景)是不同的概念,一个项目工程可包含多个场景,而每个场景是唯一的。例如通关游戏,项目就是整个游戏,场景就是游戏中的各个关卡。

2. 图层的个数

    图层的上限是32个,前8个是系统默认的图层,不可更改。

3. U3D编辑器的视图

 基本视图,包括Project视图、Hierarchy视图、Inspector视图、Game视图和Scene视图。

     Project视图是整个工程的资源汇总,会显示项目所包含的全部资源文件。

     Hierarchy视图只显示了当前场景中用到的对象,并按照父子化关系组织对象,并以命名的字母顺序来排序,方便管理和查找资源。

  Inspector视图用于选择游戏场景中当前所选对象的详细参数信息。

  Game视图是游戏的预览窗口,不可编辑,用于呈现效果,可播放。

  Scene视图是Unity最常用的视图,场景中所有的模型、光源、摄像机、材质、音效等都在此窗口显示,Scene视图提供了一个可视化的游戏对象编辑环境。

 还包括Profiler(分析器)视图、Console(控制台)视图。

  Profiler视图,按F7可弹出该窗口,用于监视CPU、GPU、渲染、内存、声音、物理引擎等统计信息。

  Console视图,Ctrl + shift + C打开该视图,控制台输出一般用于调试。

4. U3D支持的三维文件格式

 Maya : .mb或.ma1

 3D Studio Max: .max1

 Cheetah3D : .jas1

 Cinema4D : .c4d1

 Blender : .blend1

    AutoDesk FBX: .FBX

    ....

 使用相应的3D文件之前,需要下载相应的插件。

5. U3D与常见三维动画软件的单位比例关系

 U3D的单位默认是“米”,在三维软件中应尽量用米制单位来配合U3D。

6.U3D中图片文件尺寸和格式建议

 建议图片尺寸是2的n次幂,最小像素大于等于32,最大像素尺寸小于或等于4096。若图片不是2的n次幂,可在导入设置中使用NonPower2 Size Up来调整。

 出于性能考虑,模型贴图尽量用Mip Maps。

 对于项目制作而言,图片类型设定非常重要,如普通纹理、法线贴图、GUI、反射贴图等,应设置为对应的格式。Unity支持的纹理类型有:Texture、Normal map(法线贴图)、GUI、Cursor(图标文件)、Reflection(反射)、Cookie(作用于光源的Cookie)、Lightmap(光照贴图)、Advanced(高级)等8种类型。

 ps: 法线贴图就是在原物体的凹凸表面的每个点上均作法线,通过RGB颜色通道来标记法线的方向,你可以把它理解成与原凹凸表面平行的另一个不同的表面,但实际上它又只是一个光滑的平面。对于视觉效果而言,它的效率比原有的凹凸表面更高,若在特定位置上应用光源,可以让细节程度较低的表面生成高细节程度的精确光照方向和反射效果。

7.Prefab的概念

 Prefab意为预设体,可理解为有个游戏对象及其组件的集合,相似于类与对象实例化。可以将一个游戏对象构造为Prefab以方便重复使用。

8.Unity中的Material和Physic Material

 Material可理解为对象的视觉质感,如表面反射、高光、纹理、颜色等属性。

 Physic Material:模拟对象的物理特性,如弹性、硬度、光滑度等。

9.组件(component)的概念

 组件就是游戏对象实现其用途的功能件,例如同一个空对象,添加了摄像机组件,它就是一架摄像机;添加了网格过滤组件,它就是一个模型;添加了灯光组件,它就是一盏灯光。Unity脚本也是一种组件。

  一个空的对象,会自动包含一个Transform(几何变换)组件,所有对象都包含该组件,不可删除也无手动指定。

  组件是Unity中的重点内容。

10.Unity脚本

 Unity中脚本也是一种组件,添加到对象上实现各种交互操作和其他功能。Unity支持javaScript、C#和Boo三种脚本语言。

11.摄像机

 Unity摄像机用于将游戏世界呈现给玩家,游戏场景中至少有一个摄像机,也可以有多台,多台摄像机用于双人分屏效果或者高级的自定义效果。Unity支持Persperctive(透视)和Orthogra-phic(正交)摄像机。

12.地形编辑(Terrain)

 地形的Transform组件只支持Position变换,Rotation和Scale无效。可在地形对象上创建高地图,绘制纹理,种树,种草等。

13.粒子系统

    粒子是在三维空间中渲染出来的二维图像,主要用来表现烟、火、水滴、落叶等。

    一个粒子系统由粒子发射器、粒子动画器、粒子渲染器组成。

    粒子系统是作为组件添加到游戏对象上的。

    粒子效果耗费硬件资源较多,应尝试用尽量少的粒子数来达到需求的效果。

14.天空盒

    Unity中的天空盒是一种使用了特殊类型Shader的材质,该材质笼罩在整个游戏场景之外,并根据材质中指定的纹理模拟出类似远景、天空等效果,使游戏场景看起来更加完整。

    添加天空盒有两种方式:一种是在Unity的Render Setting中指定,这种方式是针对游戏场景的,这种方式无论哪个摄像机对象,天空盒子保持不变。二是对摄像机对象添加天空盒组件,这种方式只针对摄像机,如果在一个场景中变换摄像机对象,天空盒也会变。摄像机天空盒优先级高于场景天空盒。

    除了使用系统自带的天空盒资源,也可以自己制作,一般需要六张图。

15.雾效

    开启fog将会在场景中渲染出雾的效果,开启雾效可以用来优化性能(远处物体被雾遮挡,可以不渲染)。

    雾效的设置是针对场景的。

16.音效

    在Unity中,要实现正常的音效,必须具备两个条件:

    1.Audio Listener : 音频监听组件,该组件用于接收音效,相当于人耳朵,一般应用在摄像机对象上,在创建摄像机对象时,Unity会自动添加该组件。

    2.Audio Source: 声源组件,该组件用于播放音频,一般用于发出声音的游戏对象上。

17.Shuriken粒子编辑

     Shuriken是unity提供的一个粒子编辑器(particle system),以模块的方式管理粒子属性,用户可自定义粒子的各种属性,完成丰富的粒子效果。

18.Mecanim动画系统

     Mecanim是Unity提供的一个丰富的动画系统,一般用于人形角色的动画创建。创建动画的一个基本流程就是建立一个从Mecanim系统的简化人形骨骼结构到用户实际提供的骨骼架构的映射,这个映射称为Avatar。

19.


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表