找回密码
 注册帐号

扫一扫,访问微社区

慕容小匹夫 有趣而又被忽略的Unity技巧

57
回复
5309
查看
[ 复制链接 ]
排名
2307
昨日变化

54

主题

297

帖子

3108

积分

Rank: 9Rank: 9Rank: 9

UID
44527
好友
61
蛮牛币
2623
威望
0
注册时间
2014-9-12
在线时间
578 小时
最后登录
2018-9-25

专栏作家活力之星认证开发者

2017-6-15 13:07:11 显示全部楼层 阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册帐号

x
本帖最后由 慕容小匹夫 于 2017-6-16 07:49 编辑

有趣而又被忽略的Unity技巧


0x00 前言



本文的内容主要来自YouTube播主Brackeys的视频TOP 10 UNITY TIPS 和TOP 10 UNITY TIPS #2。在此基础上经过自己的实践和筛选之后,选择了几个自己觉得还算有趣而平时又有所忽略的小技巧记录在此和各位分享。

0x01 编辑器染色



这也是这两段视频的第一个小技巧,我自己也觉得很有趣。一个常见的工作情景是我们在调整场景内的某些组件参数时,没有注意到自己是在Play Mode的模式下进行的,从而导致修改没有被保存下来。

这个问题的关键在于是我们没有意识到自己已经处在Play Mode,如果我们能够在修改参数的时候,清楚的意识到自己处于Play Mode,那么我们自然可以通过Copy Component来保存数据或者是选择在Editor Mode进行修改。因此,我们可以通过对编辑器染色来醒目的提醒自己,自己是否已经处于Play Mode了。

一个简单的方法就是在Play Mode给编辑器染上不同的颜色:

Edit->Preference->Color->Playmode tint

在这里,我们就可以修改Play Mode的编辑器颜色了,当然还有很多别的染色可以修改。



修改完之后,在Play Mode的编辑器大概效果是下面这样的:



这样,我们就能时刻意识到自己是否已经在Play Mode了。

0x02 锁定对象的Inspector视窗



这是第一段视频的第三个小技巧,我觉得有趣的同时也很实用。还是一个实际的工作情景,场景中有很多对象,我们想创建一个管理器来容纳这些对象,最简单的方法就是在Hierarchy视窗中选择那些对象,将它们拖入管理器的容器中。



但是,我们立马就会发现一个问题,那就是我先选中管理器之后,再去多选所有需要被拖入管理器的对象时,Inspector视窗会变为此时所选中的被管理对象,而非管理器。这时,我们就用到了这条小技巧,我们可以锁定管理器的Inspector视窗,选中多个被管理对象之后将它们拖入管理器的数组中。我们要做的只是勾选这个小锁子图标,之后就可以同时将多个对象通过锁定的Inspector视窗拖入管理器的数组中了:



0x03 Inspector视窗的Debug Mode模式



这是第一段视频的第四个小技巧,同样是一个和Inspector视窗相关的技巧。我相信有一些朋友已经经常会用到了,但是我觉得这条也很实用,因此也在此和各位朋友分享。

这个常见的工作场景是这样的:我有一些字段不想通过外部修改,因此声明为private,但是又有在运行时观察这些字段实时值的需求。



这时我们就可以点击Inspector视窗右上角的下拉菜单,可以看到它和一般视窗的下拉菜单相比多了几个选项。



默认状况下,它处于Normal模式,我们这里就可以选择Debug模式了。更换模式之后,之前的Inspector视窗就变成了下面这样子:



这样,我们就可以既限制字段的访问权限又观察这些私有成员的变化了。

0x04 利用Scene视窗设置相机数据



这是第一段视频中的第五个小技巧,我觉得这条技巧很受用。这次我们的工作情景变成了这样:对很多人来说,在场景视图中调整观察的角度、位置等等是一件十分简单的事情,但是如果真的要游戏中达到同样的效果,则必须去调整场景中的相机。


(左侧是Scene视图,右侧是Game视图)

相对来说,调整相机的过程更复杂,那么有没有什么方法能够直接让摄像机应用和Scene视图一样的设置呢?这条技巧就是关于这个的。

shift + ctrl + f

就可以把Scene视图中的数据复制给选中的摄像机了。
当然,除了使用快捷键,我们还可以在菜单中选择相应的操作。

GameObject->Align With View

也可以达到相同的效果。



0x05 拓展编辑器

这一部分并非来自某一个技巧,而是和拓展编辑器相关的小技巧的集合。

在Unity中拓展编辑器,往往需要用到C#的各种特性(attribute)。

例如,我们可以使用[RangeAttribute]在Inspector视窗上显示一个滑动条。

[mw_shl_code=csharp,true][Range(0, 10)]
public int publicInt;[/mw_shl_code]



如果,我们嫌Inspector视窗上显示的各个字段太混乱没有章法,那么我们可以使用另外两个特性来帮助我们对显示在Inspector上的字段进行整理:[SpaceAttribute]和[HeaderAttribute]。

[mw_shl_code=csharp,true]#region 字段

[Header("测试数据1")]
[Range(0, 10)]
public int publicInt;
public bool publicBool;
public float publicFloat;
public GameObject publicObj;
[Header("测试数据2")]
[Space(10)]
public List<GameObject> objsArray;[/mw_shl_code]

这样,我们就可以为一堆字段分类显示了。



如果,我们既想保证类的某个字段不被其他的类访问修改,又想在Inspector视窗中修改这个字段的值的话,就可以采用private +

[SerializeField]属性的方案。

[mw_shl_code=csharp,true][SerializeField]
private int privateInt;[/mw_shl_code]



0x06 快速设置视图最大化



这也是一个我感觉很有趣的小技巧,来自第二段视频的第一个技巧。

利用这个技巧,我们可以快速的在不同的视图中设置视图的最大化。

比如场景视图和游戏视图同时显示,我们想要将场景视图放到最大,只需要将鼠标悬停在场景视图上,并同时按下快捷键:

shift + 空格

就可以将场景视图设置为最大化。





如果调整动画的话,Animator视图是必不可少的,如果要将
Animator视图最大化也只需要把鼠标停在Animator视图上,同时按shift+空格快捷键。
不过在我的使用中,Game视图不能在运行时进行这种操作,必须在暂停状态或不在Play Mode时才起作用。

0x07 更好的预览模型



这条技巧来自第二段视频的第十条,我相信它能够提供给我们在Editor中观察模型的更好的体验。一个可能的工作情景是这样的,我们导入了一个模型,并希望在模型的Inspector视窗上预览该模型时,常常只能拘泥于这个角落。



想要看的更清楚、更大似乎只能拖动整个Inspector视窗。
其实,我们可以轻松的将模型预览的小窗口单独拖出来。只需要鼠标右键单击预览窗口的上沿。



不信?你看是不是放大了很多?



0x08 小结

以上,就是这次和大家分享的内容。
场景以及模型资源来自:Japanese Matsuri City (https://www.assetstore.unity3d.com/cn/#%21/content/35619)

原视频链接:
TOP 10 UNITY TIPS
https://www.youtube.com/watch?v=JDVuTBHnGWw

TOP 10 UNITY TIPS #2
https://www.youtube.com/watch?v=IHeMmFxvmkY

最后打个广告,欢迎支持我的书《Unity 3D脚本编程》


亚马逊:
http://dwz.cn/67sNsR
京东:
https://item.jd.com/12035114.html





参与人数 19蛮牛币 +10 鲜花 +76 收起 理由
md123123 + 2 很给力!
温小鑫 + 2 很给力!
Aryo + 1 赞一个!
echo2300 + 2 赞一个!
AhBo + 5
001122xx + 1 赞一个!
懒人起烂名 + 1 很给力!
bbbhmzz + 2 赞一个!
chentian420427 + 1 很给力!
羽落星尘 + 5 赞一个!
dkj165470 + 2
perfecthacker + 2
木芯 + 5 很给力!
lidazhou + 2 很给力!
unity菜鸟 + 8 赞一个!
哪来的胖子 + 10 + 20
Ben小浩 + 2 很给力!
kckbkckb2 + 5 很给力!
网虫虫 + 8 赞一个!

查看全部评分总评分 : 蛮牛币 +10 鲜花 +76

本帖被以下淘专辑推荐:

回复

使用道具 举报

排名
1761
昨日变化

40

主题

198

帖子

2056

积分

Rank: 9Rank: 9Rank: 9

UID
178893
好友
14
蛮牛币
2634
威望
0
注册时间
2016-10-28
在线时间
801 小时
最后登录
2019-3-22

专栏作家

2017-6-15 17:56:07 显示全部楼层
这些教程能使效率提高不少,,多谢分享~~
回复 支持 反对

使用道具 举报

7日久生情
1545/5000
排名
1198
昨日变化

0

主题

202

帖子

1545

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
137070
好友
0
蛮牛币
3129
威望
0
注册时间
2016-2-20
在线时间
367 小时
最后登录
2019-3-26
2017-6-15 18:39:57 显示全部楼层
模型预览窗口能拖这事我还真不知道,
感谢楼主分享!
回复 支持 反对

使用道具 举报

2初来乍到
117/150
排名
19946
昨日变化

0

主题

64

帖子

117

积分

Rank: 2Rank: 2

UID
221423
好友
1
蛮牛币
83
威望
0
注册时间
2017-5-9
在线时间
25 小时
最后登录
2018-1-2
2017-6-15 23:51:07 显示全部楼层
666666666666
回复

使用道具 举报

排名
2307
昨日变化

54

主题

297

帖子

3108

积分

Rank: 9Rank: 9Rank: 9

UID
44527
好友
61
蛮牛币
2623
威望
0
注册时间
2014-9-12
在线时间
578 小时
最后登录
2018-9-25

专栏作家活力之星认证开发者

楼主 2017-6-16 07:56:39 显示全部楼层
网虫虫 发表于 2017-6-15 17:56
这些教程能使效率提高不少,,多谢分享~~

多谢支持~~
回复 支持 反对

使用道具 举报

排名
2307
昨日变化

54

主题

297

帖子

3108

积分

Rank: 9Rank: 9Rank: 9

UID
44527
好友
61
蛮牛币
2623
威望
0
注册时间
2014-9-12
在线时间
578 小时
最后登录
2018-9-25

专栏作家活力之星认证开发者

楼主 2017-6-16 07:57:07 显示全部楼层
kckbkckb2 发表于 2017-6-15 18:39
模型预览窗口能拖这事我还真不知道,
感谢楼主分享!

多谢支持~~
回复 支持 反对

使用道具 举报

排名
2307
昨日变化

54

主题

297

帖子

3108

积分

Rank: 9Rank: 9Rank: 9

UID
44527
好友
61
蛮牛币
2623
威望
0
注册时间
2014-9-12
在线时间
578 小时
最后登录
2018-9-25

专栏作家活力之星认证开发者

楼主 2017-6-16 07:57:13 显示全部楼层

多谢支持~~
回复 支持 反对

使用道具 举报

7日久生情
2240/5000
排名
20605
昨日变化

2

主题

1851

帖子

2240

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
185807
好友
0
蛮牛币
2900
威望
0
注册时间
2016-11-22
在线时间
359 小时
最后登录
2019-1-10
2017-6-19 08:31:21 显示全部楼层
赞,学习了,谢谢分享
回复 支持 反对

使用道具 举报

7日久生情
1904/5000
排名
1525
昨日变化

0

主题

593

帖子

1904

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
164723
好友
0
蛮牛币
3556
威望
0
注册时间
2016-8-29
在线时间
475 小时
最后登录
2019-3-26
2017-6-19 09:07:47 显示全部楼层
回复

使用道具 举报

5熟悉之中
874/1000
排名
3998
昨日变化

5

主题

173

帖子

874

积分

Rank: 5Rank: 5

UID
182321
好友
0
蛮牛币
64
威望
0
注册时间
2016-11-9
在线时间
325 小时
最后登录
2019-2-11
2017-6-19 09:41:30 显示全部楼层
这篇文章好比独立加成属性,在整体上增加工作效率。
回复 支持 反对

使用道具 举报

5熟悉之中
927/1000
排名
2685
昨日变化

0

主题

126

帖子

927

积分

Rank: 5Rank: 5

UID
131853
好友
6
蛮牛币
1280
威望
0
注册时间
2015-12-16
在线时间
259 小时
最后登录
2019-3-11
QQ
2017-6-19 09:45:18 显示全部楼层
不错,都是实用小技巧,多谢分享~~
回复 支持 反对

使用道具 举报

3偶尔光临
294/300
排名
9199
昨日变化

1

主题

106

帖子

294

积分

Rank: 3Rank: 3Rank: 3

UID
91378
好友
1
蛮牛币
346
威望
0
注册时间
2015-4-11
在线时间
61 小时
最后登录
2019-3-1
2017-6-19 09:48:21 显示全部楼层
谢谢楼主分享
回复

使用道具 举报

排名
673
昨日变化

18

主题

1163

帖子

3514

积分

Rank: 9Rank: 9Rank: 9

UID
68430
好友
13
蛮牛币
18233
威望
0
注册时间
2015-1-14
在线时间
955 小时
最后登录
2019-3-26
2017-6-19 10:05:25 显示全部楼层
值得看看哦~~不错··
回复 支持 反对

使用道具 举报

7日久生情
1868/5000
排名
777
昨日变化

0

主题

38

帖子

1868

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
167431
好友
0
蛮牛币
4022
威望
0
注册时间
2016-9-7
在线时间
610 小时
最后登录
2019-3-26
2017-6-19 10:37:24 显示全部楼层
楼主棒棒哒!!!
回复

使用道具 举报

6蛮牛粉丝
1115/1500
排名
2843
昨日变化

19

主题

285

帖子

1115

积分

Rank: 6Rank: 6Rank: 6

UID
52577
好友
4
蛮牛币
390
威望
0
注册时间
2014-11-2
在线时间
295 小时
最后登录
2019-2-10

活力之星

2017-6-19 10:40:57 显示全部楼层
效率提高10倍,呵呵,确实提高不少
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则