![Unity 3D特效设计必修课](https://wfqqreader-1252317822.image.myqcloud.com/cover/765/26542765/b_26542765.jpg)
1.2.22 Unity 3D使用技巧集合
在使用Unity时常常会发现一些实用的小技巧,其中部分已经在书中各章节内标注了,在本节中将做总结归纳。
小技巧
如果脚本出现错误,Unity编辑器会因为检查出错而无法进入运行模式,如图1-145所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P65_2.jpg?sign=1739228240-lKbI52cgnzIwtgjNvALKXmSOyu5trtIH-0-ff875ba794daf77baf7c6a22c25456fd)
图1-145
这时可以在Unity工程视图中新建一个文件夹,重命名为WebplayerTemplates,然后将出错的脚本拖入此文件夹内,如图1-146所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P65_3.jpg?sign=1739228240-o9G745KzTcEYCcyTqBbY2EXpAcZyfjh0-0-be672021e333bc76394a37d8a2429d82)
图1-146
最后再次运行游戏就不会发生报错了。
注意
所有位于该文件夹下的文件都会被Unity标识为普通资源从而不会被当作脚本编译(与删除作用相同)。
小技巧
可以尝试在Unity检测视图中直接输入数学表达式。Unity支持简单的公式计算,如果需要在计算后输入数值,则可以直接在对应位置输入表达式,如图1-147所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P66_1.jpg?sign=1739228240-dDV7vqwHxLW8AtksbUU5FoJMBwDNBjrv-0-3fd1b789d306d073c76cdd14f540b234)
图1-147
数值键盘中+、-、*、/分别代表加、减、乘、除,如图1-147中的1+5*2/2+3=9。
小技巧
运行状态下修改参数后,退出运行模式数值被还原了怎么办?除了之前教学中提到过的可以直接将其拖曳保存为Prefab(预设体)外,还可以在运行状态下单击对象组件右上角齿轮图标中的Copy Component(复制组件信息),接着在退出运行模式后,再次单击齿轮图标在弹出界面中选择Paste Component Values(粘贴组件信息)即可,如图1-148所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P66_2.jpg?sign=1739228240-TtzLL2EI4NWFhppnFV6ft4xMIxtJcuwy-0-6d71472ff367bf00e8dfc16cb03f2b67)
图1-148
小技巧
通过按Q、W、E、R、T键可以依次切换界面上的小工具。除此之外,按数字键2还可以切换场景为2D模式或3D模式,如图1-149所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P66_3.jpg?sign=1739228240-yNMTHfFcOwiKdCGYi6w5YwAZFOhZhCIy-0-722a1461f0d6654852f0f71424322b95)
图1-149
小技巧
锁定Inspector(检测视图)可同时查看两个物体的组件信息。
首先单击对象右上角的“锁头”图标,锁定对象的Inspector(检测视图)。然后单击对象右上角图标(如图1-150所示的红框位置)添加新的Inspector(检测视图),再选择其他对象即可同时查看两个对象的组件参数信息。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P66_4.jpg?sign=1739228240-dtti0FPTTqwJmm826LPxkXPF6Xhp1tZf-0-502c4515841d0a434ea5beb5b071226c)
图1-150
建议将新建的检测视图拖曳出,与锁定的检测视图并列,以便同时查看两个对象的参数。如图1-151所示,为Particle System_001与Particle System_002两个粒子系统的参数对比。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P67_1.jpg?sign=1739228240-luX0M5c6K7AvCWP4wStC2um9Jj5E4ZUk-0-b655694a13caf820ae334820748a3e9a)
图1-151
小技巧
在层级视图的搜索框中输入完整的“对象名称”“脚本名称”或“组件名称”,即可找到所有绑定了该脚本或组件的对象。
例如,在层级视图中搜索“Collider(碰撞器)”(如图1-152所示),即可找到当前场景中所有含有碰撞组件的对象。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P67_2.jpg?sign=1739228240-VB4pBomtvLm2UTeGW6eOFDVXfeXCBXwn-0-7524813699c722b959481b69c44a1bdd)
图1-152
除了可以输入名称来进行快速搜索外,还可以直接使用类型搜索。例如,单击Search(搜索)图标并在下拉栏中选择Type(类型)或者也可以直接输入“t:type”“t:texture”“t:material”等(操作如图1-153所示)。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P67_3.jpg?sign=1739228240-dfCNfAn7OShtRLsjtZMkCX662eK5YrNV-0-ebb08236420783000fa40753b3611d21)
图1-153
小技巧
如果希望游戏运行第一帧后暂停,可以先单击“暂停”按钮,然后单击“播放”按钮,顺序如图1-154所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P67_4.jpg?sign=1739228240-AI9zHPhowejZiXzJpQrDt3U1W1L3z2kV-0-36748fc86464f716f8650f335efc055e)
图1-154
使用该方法同样也可以避免首次运行时卡顿的现象。
小技巧
在工程视图或层级视图中,按住Alt键同时单击父对象前的三角符号,就可以同时展开或收起该对象所有的子节点,包括嵌套子节点。首次单击全部展开,再次单击全部收起,如图1-155所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P68_1.jpg?sign=1739228240-UlbMCz26MGNseVFctzi9DVhsCmrmmS7e-0-973a11571e088a527b8d57d2a5f1fb58)
图1-155
小技巧
如果同一文件夹下的所有图片是一个序列帧动画,可以将整个文件夹拖曳到工程目录,选中所有图片后将纹理格式改为Sprite(精灵粒子)并单击Apply(应用)按钮,然后将所有图片一起拖曳到层级视图或场景中,Unity会自动询问是否创建动画并弹出对话框询问动画文件保存位置。单击“保存”后会自动在层级视图中生成包含该动画文件的游戏对象,运行即可看到序列帧动画,如图1-156所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P68_2.jpg?sign=1739228240-HwkGeNHLX5Tn3x3iIlxVhVZLY1uN0bVs-0-e9913031d85d1c88169bbbb61310f543)
图1-156
小技巧
制作UI特效时,经常会使用粒子系统让其旋转作为背景光效。但是在一些效果中光效并不是等半径的(如扁形、椭圆形等),那么就需要使用到另一个小技巧了。示例如图1-157所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P68_3.jpg?sign=1739228240-u17AtITszYbNwShCqHSoCWj0ZwDjVDaR-0-4a4ad64d74e021e8110873d97ac100e0)
图1-157
Step 01首先创建一个粒子系统,发射一颗粒子,Start Speed(初始速度)设置为0,开启Rotation over Lifetime(粒子围绕自身中心转),设置如图1-158所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P69_1.jpg?sign=1739228240-jAvmVy4JChb3BGhoBdN1lwtZXUbf9UEO-0-4f84c4439004d744cb396544ad7c612b)
图1-158
Step 02然后将Render Mode(渲染模式)设置为Billboard(布告板)始终朝向摄像机方向,旋转方向如图1-159所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P69_2.jpg?sign=1739228240-yGi5qGFXrCqRthFEVJAkzcMYJVYOJ3DV-0-0a5e33cec70a29487b7d882c422a268d)
图1-159
Step 03接下来开启3D Start Rotation(3D旋转)设置,如图1-160所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P69_3.jpg?sign=1739228240-yaTkWR70otTPZw5SYb4bQFXTHZ5mdw9H-0-dd5d73395f0f240aa0b5dd7d97fbf7fe)
图1-160
Step 04再次播放,观察发现已经产生倾斜的旋转效果了,任意调节摄像机视角也不会影响到其倾斜程度,通过该方法可以实现3D倾斜的布告板效果。
小技巧
模型体上两种不同材质间的渐变切换。
当模型体同时包含两种材质,通过动画系统对其透明度K帧时会发现两种材质的透明度同步变化,无法单独调节时,那么应该怎么办呢?
Step 01可以使用新版Standard(标准着色器)材质来实现,首先设置模型体Materials Size(材质尺寸)为2,然后分别赋予两个材质球“Material_001”“Material_ 002”,接着将材质类型设置为Standard(标准着色器),如图1-161所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P69_4.jpg?sign=1739228240-qPKi8VGi6eruQGcPTS4IzUqWhB86sPMr-0-dc73adae667d9a4a856f6aa06db4c280)
图1-161
Step 02将Material_001的Rendering Mode(渲染模式)设置为Opaque(不透明),如图1-162所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P69_5.jpg?sign=1739228240-pdQRGTApqpghChq6JOUrPie3zZqKUfC5-0-5cbe6ef5362fd3e45b29e13b06a43e52)
图1-162
Step 03将Material_002的Rendering Mode(渲染模式)设置为Fade(褪色),如图1-163所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P69_6.jpg?sign=1739228240-zhZa91wCj3wrVBHTyC0lDKw9umLApJXy-0-967f170edfd5e7c87861c795d0633605)
图1-163
Step 04最后对Material_002中的Albedo(反照率)透明度K帧即可,位置如图1-164所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P69_7.jpg?sign=1739228240-xkPNp7KSrWmOqXrMhcYEhMipbOnlXQzd-0-803b3f84d48a113b398d6a27b6023520)
图1-164
注意
由于在Opaque(不透明)模式下材质不受透明度的影响,所以K透明度动画时仅影响Material_002,从而实现材质间的渐变效果。
小技巧
如果觉得在场景视图中调整对象视角不太方便,可以按住鼠标右键结合键盘上的A、S、W、D、Q、E键切换为飞行视角,像走路一样调整到合适的角度。
角度调节完成后,选择Main Camera(主摄像机)再单击GameObject(游戏对象)菜单下的Align With View(视图对齐)即可将游戏视图的视角与场景视图同步。
小技巧
检视面板中的所有Constant(数值常量)、Color(颜色)、Curve(曲线)都是支持复制和粘贴的,只需右键单击字段/颜色/曲线即可选择Copy(复制)操作。
如图1-165所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P70_1.jpg?sign=1739228240-cEasfuwWE1yh1zfUMsYTXe05zAIEVXyT-0-c94f0184e032cc4df58035177637a6a1)
图1-165
注意
以上为Constant(数值常量)、Color(颜色)、Curve(曲线)三种数值类型下的复制。
小技巧
在Unity中重播特效(免脚本)。
在制作特效时,往往需要重播多次,反复查看效果并进行修改。一些读者可能会利用“脚本”来达到目的,但是实际上,即使不使用任何脚本也能实现相同的重播效果(通常不提倡使用脚本)。
在项目制作中,一般有两种常见情况如下。
1.当特效全部由粒子系统组成
当特效全部由粒子系统组成时,首先可以创建一个粒子系统并取消其Emission(发射选项)作为其他粒子系统的父级别。
以图1-166为例,Effect01(效果01)作为其他粒子系统的父级别。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P70_2.jpg?sign=1739228240-53ifbU6xOBr9iR8UMRM6GAp0tp4cqI5G-0-98213875831825f3d2b8e17646779f7e)
图1-166
接着选择父级别粒子Effect01(效果01),然后在Scene(场景视图)右下角看到粒子播放控制器,如图1-167所示。
通过图1-167中的“播放控制器”,可以自由控制全部粒子特效的播放/暂停/停止。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P70_3.jpg?sign=1739228240-xz0uqe8VbTS15a6oWy90eV0sh3o1mZg6-0-012605d80609f35d3f7afbf081308866)
图1-167
除此之外,有时在“未运行状态下”往往不能查看到游戏中的真实效果(可能会存在粒子播放不完全等问题),那么这时就需要Play on(运行游戏)。
这次同样选择父级别粒子Effect01(效果01),然后运行游戏,在Scene(视图)右下角看到粒子播放控制器,如图1-168所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P71_1.jpg?sign=1739228240-UlMkdXbwIxB0DQTMdqodAauBnUi1DHxd-0-3e0d26057a25ffa7225fe88407ea3201)
图1-168
观察发现这次也有一个“播放控制器”,只不过相比之前简约一些。
可以通过单击Simulate(播放)/Stop(停止)按钮对粒子系统进行“播放”“停止”等操作。
注意
该控制器仅对粒子系统生效,当特效中含有动画、材质动画或者骨骼动画时不能通过该控制器控制。
2.当特效中含有粒子/模型/动画等多种元素时
一般若想查看效果,第一反应其实就是“运行游戏”,但是有些特效持续时间比较短,还没留意看清就播放结束了,往往需要重新运行再次播放才能查看效果,这样十分浪费时间,也会降低工作效率。那么要如何才能在运行状态下对特效进行重播呢?
Step 01以特效EffectHuman为例进行演示(该特效中同时含有UV动画、模型动画、粒子系统),如图1-169所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P71_2.jpg?sign=1739228240-hCDrhtPBr1wkpgS4ms3xBqwPY6w48NiX-0-8183b5e88370161341269b8b76beb278)
图1-169
Step 02运行游戏后,选择特效根级别EffectHuman,然后在Inspector(检测视图)查看如图1-170所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P71_3.jpg?sign=1739228240-0A4zwC5jirhH6Gv2R9g9t6J6pEai0Pbi-0-3f2d2afced301456f0a84e506d2adc74)
图1-170
Step 03接下来取消勾选左上角选项,如图1-171所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P71_4.jpg?sign=1739228240-30kUydmRwcQWwvD0uDho19VPQY0qC4tJ-0-6264bf39722cf21373db3ec0bb4f65fc)
图1-171
Step 04接着再次勾选(图1-171红框位置)就可以重复播放特效了,通过勾选/去选操作,即可反复重播特效。
该方法适用于所有特效(粒子系统、UV动画、骨骼动画等),原理是通过去选/勾选对场景预设体重新“实例化”,从而达到重播目的。
注意
建议在实际制作中使用第二种方法,该方法也是最便捷有效的。
小技巧
为物体设置自定义图标。以粒子系统为例,首先选中粒子系统对象,然后在Inspector(检测视图)(图1-172左上角位置)下拉列表中选择图标类型、颜色或者创建一个自定义图标。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P72_1.jpg?sign=1739228240-FU7gvXJXn08CZ46VSqc0Noq6efpoPzo0-0-290c9850c33ee1fa42d743f67841a82c)
图1-172
(1)Select Icon(选择图标):选择一个现有的预设图标。
(2)None(不使用):不使用图标。
(3)Other(其他):自定义一个图标形状。
如图1-173所示为粒子系统的图标修改示例。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P72_2.jpg?sign=1739228240-UmzrF55gZJY3MPSefTAi8ejvTiiSzRD6-0-e9624d95d9d35c3a5934b6f3bdc90bd4)
图1-173
小技巧
在场景视图中同步调节多个物体。
首先选择一个物体,然后按住快捷键Ctrl/Cmd+Shift加选其他对象。接着在操作视图中移动/旋转/缩放其中一个物体时,另一个也会随之变化(以自身坐标为基准),如图1-174所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P72_3.jpg?sign=1739228240-Wyv8BLcA5nDZVXznRtjSduZmlvIxeML8-0-ac92f9c779ddefbb6523a219bfa8f068)
图1-174
小技巧
载入Unity的Standard Assets(标准资源)。
使用过早期Unity版本(Unity 5.0之前)的读者都知道,Unity中默认内置了部分常用资源(“第一/第三人称控制器”“天空盒”“镜头光晕”“水效果预设”“地形”“镜头特效”等),可以在创建项目时通过勾选相应项进行预设资源载入,或者也可以直接在Unity中通过单击菜单Asset→Import Package(资源→导入资源包)进行载入。
以Unity 4.6.0为例,工程创建界面如图1-175所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P72_4.jpg?sign=1739228240-sOHWcGF0oMnnjcHyqMY4dkn4PXVvYpry-0-2b0f67fed98b125f753185bc02e180ab)
图1-175
图1-175中红框位置为预设标准资源列表,其相应说明如表1-12所示。
表1-12
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-T72_5.jpg?sign=1739228240-OOB1wd9KpMZfqOIwdLTFC8nBwmRBPYv8-0-a78b243cd4296775e558c498f9f5b417)
勾选相应预选项后,单击Create(创建)就可以直接将预设标准资源加载到Unity中了。
接下来以Unity新版本为例,同样打开Unity 5.3.0创建一个新的项目工程,工程创建界面如图1-176所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P73_2.jpg?sign=1739228240-zb1QigAYYMWyABxn9BZ3HhnJ87xIfX2n-0-834263384e0b5eaf15d16615a4f9da57)
图1-176
Step 01在创建界面中单击Asset Packages(资源包),打开资源包列表,如图1-177所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P73_3.jpg?sign=1739228240-lZiHWd0pnd85wZZqdb3FYDF5EvlevTXS-0-448f338252b6b69e94dd0b9b7a5c4fce)
图1-177
由于在Unity 5.0之后的版本中取消了默认内置的标准资源(故列表为空),所以就需要在Unity官网主动进行下载安装“标准资源包”。
Step 02在Unity官网主页中单击页面最下方的“所有版本”,如图1-178所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P73_4.jpg?sign=1739228240-9VdN1YHeg8cP1seZecodKzKg5DFOH1iK-0-35c5339e8b4eab068bd85966c20f2136)
图1-178
或者也可以直接在网页浏览器中输入网址http://unity.cn/releases。
Step 03进入页面后选择UNITY 5.3.0(当前版本),右侧单击“下载(Win)”→“标准的资源”,操作如图1-179所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P73_5.jpg?sign=1739228240-Y3ZaDA5k97tSUIIlc9ChRcCfMhffD1a9-0-0879101a5f1618388e5625cd5e95c468)
图1-179
注意
(1)需要根据当前Unity版本来选择Standard Asset(标准资源)资源版本,否则会造成无法识别。
(2)同样也可以在图1-179界面中下载“内置着色器”“示例项目”等。
Step 04下载的安装文件名称为“UnityStandardAssetsSetup-5.3.0f4. exe”,如图1-180所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P74_1.jpg?sign=1739228240-IN3MJzHgryXR98cahjtWqAot1l5Ggzd3-0-e406f43072f41e34062f73f5ca008b6f)
图1-180
Step 05双击.exe文件,选择Unity对应版本的根目录进行安装(默认会自动找到Unity安装路径),如图1-181所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P74_2.jpg?sign=1739228240-g57U7ahVGwxNj9CdaXRTANsjMg9MCfm6-0-8362d6dab7c1427c2cf25a81e67ef84b)
图1-181
注意
一定要安装在Unity根目录,否则安装后无法识别。
Step 06最后单击Finish(结束)按钮结束安装即可。
Step 07再次打开Unity 5.3.0新建一个项目工程,在创建界面中单击Asset Packages(资源包),如图1-182所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P74_3.jpg?sign=1739228240-KAOdn5olvZk2jbWCvSn9mQoaPpSGz16T-0-4f897de833581a520bac8eb2dd39790f)
图1-182
发现多了标准资源列表,现在已经可以选择相应资源载入项目了。
注意
除了在工程创建界面中通过“勾选”载入外,还可以在Unity中通过菜单Asset→Import Package(资源→导入资源包)进行载入。