unity基础知识

最近在学习unity相关知识,这里记录一下学习的记录,以作笔记。

1、设置build setting

build setting里面的player setting中有个run in background选项,表示unity运行game时,当有其他应用位于顶层时,游戏暂停。

unity基础知识_第1张图片

game窗口下的maximize表示,下一次运行将全屏显示;

gizmos:控制游戏内是否显示各种标记,比如光源、音源、相机等

2、Hierarchy窗口

在unity中,所有场景内的物品都以列表的方式展现在Hierarchy窗口下;

双击某个物体,镜头将自动锁定到物体处。

unity基础知识_第2张图片

点击搜索,定位都的物体将彩色显示,而背景则是白色显示

3、project项目资源窗口

unity项目中的所有资源都可以通过资源窗口查看找到。

unity基础知识_第3张图片

同时可以通过资源下的show in Explorer来打开资源文件夹所在的位置。

unity基础知识_第4张图片

打开的文件夹下,会看到所有的资源都会有一个对应的.meta文件。这是unity生成的映射文件。尽量不要动。所以建议想要移动某个文件的时候,尽量不要在文件夹下面移动,否则可能会报错。要移动就在unity里面进行移动操作。

在Favorites下,可以查找特定类型的资源,编辑器已经默认给出了材质(material)、模型(models)

unity基础知识_第5张图片

4、Inspector属性编辑窗口

unity中,任何场景中的物体已经项目列表中的资源,都可以在inspector窗口中显示选中的物体或者资源属性并且可以在属性参数里面进行编辑。同时,不同类型的物体或者资源,属性参数会不一样。如下图:

unity基础知识_第6张图片

在输出窗口中如果显示的是场景组件的属性,那么一些基础的参数是共有的,比如位置信息,layer信息。

layer参数可以修改物体是否在场景中显示。

unity基础知识_第7张图片

============================================================================

动画系统

  1. timeline(时间轴)

timeline可以说是导演,可以创建模型动作序列、粒子效果序列、音频序列等内容,在同一序列中为许多不同的游戏对象设置动画,从而到达视频效果。timeline有多种类型的轨道,比如有导演时间轨、模型动作轨、音频播放轨、粒子效果轨等。下图是添加一个timeline模型动画的小栗子:

如上面动图所示,timeline中可以添加 相机、模型、特效、音频等对象内容,然后在右侧的时间轨道里面添加布置模型动作,特效播放、音频的播放或者停止等设置,这样就形成了一个富有情感的视频了。这里timeline就相当于可视化编程的一个工具,能以视频的方式完成某些游戏内容。

2.Animation(动画编辑)

动画编辑与timeline有所不一样,动画编辑使用的是Animation窗口进行编辑。unity支持导入外部软件制作的动画,比如3D max、Maya制作的模型动画,然后在unity中也支持创建动画的剪辑操作。

动画编辑可以设置游戏对象的位置、旋转、缩放、颜色、光照全度、音量等属性。

动画编辑有两种,一个是对模型单个动作动画的查看与编辑(animation),一个是对模型多个动作间的查看与编辑(animator)

对于测试而言,我们只需要知道怎么使用animation来查看游戏对象上的动画即可。如下图:点击window-animation-animation可以查看选中模型的单个动作给跟骨骼的动作情况。

点击window-animation-animator可以查看选中模型的多个动作衔接情况。

animator是动作状态机,连接模型多个动作的切换的一个状态机。如动图animator窗口下的连接节点图所示,每个节点间用矢量线连接,方向表示上一个动作可以切换到下一个动作,但是下一个动作不可以切换到上一个动作,如果想要两个动作可以相互切换,那么需要双向矢量连接线。比如A—>B表示A动作可以切到B动作。其中,动作状态机连接图中,entry是绿色的,表示模型,橙色节点表示初始动作状态。

3.碰撞体

碰撞体有有六种,分别是盒子碰撞体、球体碰撞体、车轮碰撞体、地形碰撞体、网格碰撞体和盒型碰撞体。unity中,同一个物品,可以挂接多个碰撞体。网格碰撞体是利用网格资源并基于该网格构建碰撞体的形式,盒型碰撞体是利用模型的体积构建碰撞体。碰撞体主要应用在地板可走区域、场景模型与模型的碰撞等情况下。

(1)盒子碰撞体

盒子碰撞体是一个长方体原型的碰撞组件,可以调整成不同大小的方体,一般情况下,该碰撞体比较适合在比较规则的的物体上,比如门、柜子、桌子等物体。合理的使用碰撞体,可以减少物理计算,提高性能。

(2)网格碰撞体

网格碰撞体是在物体网格上组建的碰撞体,用于对复杂网状模型物体的检测。网格碰撞体比较精准,但是级算时比较耗资源。

(3)车轮碰撞体

如下图所示的是网格碰撞体,有四个参数,convex表示凸起,如果勾选则表示该网格碰撞体会与其他网格碰撞体碰撞,并且网格碰撞体限制为255个三角形。mesh表示用于参与碰撞的网格的引用。material表示该碰撞体与其他碰撞体的交互方式的物理材质。is Trigger表示碰撞体用于作为事件触发体,物理引擎会忽略它。

unity基础知识_第8张图片

UI

UI元素是游戏中的一个必不可少的部分,游戏很多都是靠UI来实现与游戏内容交互的。UI的行为表现通常有静态UI、动态UI;静态UI大多用来展示文本、标签、标识这一类的内容,动态UI大多用于与玩家进行交互,布局通常符合双手操作排版。UI的问题通常有位置布局问题、文本显示问题,多UI的层级显示问题、单UI的交互问题、多UI的多点触碰问题、UI的刷新问题、UI的动作问题等,这些测试需要了解。

UI绘制元素的顺序

UI元素是按照它们在Hierarchy中显示的顺序绘制的。首先绘制第一个子元素,然后绘制第二个子元素,以此类推。如果两个UI元素重叠,则后一个元素将显示在前一个元素之上。

如果要更改元素的显示顺序,只需在Hierarchy中重新排序即可。也可以通过在变换组件上脚本控制顺序,它们是:SetAsFirstSibling、SetAsLastSibling,SetSiblingIndex。

渲染模式

UI画布有个渲染模式设置(render mode),这个设置用于在屏幕空间或者世界空间中进行UI渲染。渲染模式有三种,分别是Screen Space-Overlay、Screen Space-Camera、World Space。我们测试的时候,需要大概了解UI是属于哪种类型的,那种类型的渲染会表现出什么样的效果即可。下面随着三种模式继续讲解一下。

unity基础知识_第9张图片

Screen Space-Overlay:如果游戏中的UI画布选择了该种模式,表明该UI将在场景的顶层上固定被渲染到屏幕上,而场景中的模型、特效等将在UI的下层;如果屏幕大小或者分辨率有被调整,则画布将自动更改大小来适应变化,此种变化多在兼容性测试过程遇到的比较多。

Screen Space-Camera:如果游戏中的UI画布选择了该种模式,表明该UI将放置在指定的相机前面的某个距离处。该UI元素由此相机渲染,所有相机本身的属性设置将会影响到UI的外观。比如说假设相机视图设置为正交视图,那么UI元素将以透明视图来进行渲染,它的透视失真量由相机的视野来控制了。如果调整屏幕大小、分辨率、改变相机视椎体,那么UI画布也会自动改变大小来适应。

如下图,此模式下时,可设置UI画布绑定在哪个相机下,与相机的距离是多少。

unity基础知识_第10张图片

World Space:如果游戏中的UI画布选择了该种模式,表明UI元素的行为和场景中的所有其他对象相同,画布的大小可以用矩形变换进行手动设置,UI元素将以3D位置在场景中的其他游戏对象前面或者后面渲染,类似LOL英雄、小兵、怪物、防御塔等的血条、场景中的求救、警告等信息符号、技能UI等。这类模式的UI使用的非常多,测试过程需要多加留意。

如下动图所示,world Space模式下的UI可以通过矩形变换设置UI的形状、旋转、方向等设置。注意操作过程中右边inspector窗口的属性数值变化情况。

锚点

矩形变换设置中包含了锚点这个属性,锚点在scene视图中显示的是四个白色线条小三角形控制柄,移动锚点时,它的位置信息也会在inspector属性窗口里面看到变化。如果在unity的scene场景下没有显示这个个小UI出来的话,可能是我们的Gizmos设置关闭了scene场景控件的,点击开一下就有了。

unity基础知识_第11张图片

在inspector里面,Rect Transform属性下的左上角有个Anchor Preset按钮,点击这个按钮会弹出如下图所示的菜单,从菜单里面可以选择各种类型的父UI锚定方式,锚定后,子UI会随着父UI一起改变大小或拉伸。

unity基础知识_第12张图片

UI有父UI与子UI,锚点可以将子UI锚定到父UI上,此时子UI的大小、位置变换会随着父UI的改变而改变,锚点也有多种方式,可以锚定到父UI的中心或者边角。如下动图,锚点可以选定后,随便移动,根据实际的需求进行设置即可。我们在测试时,当发现UI的表现有异常的时候,查看UI锚点是一种排查方式之一。

 

你可能感兴趣的:(unity,测试,unity,游戏)