288 人赞同了该回答
这些技巧都是来自推特的 #UnityTips (感兴趣的可以自行搜索,可以找到更多的技巧)
*未测试Unity4.X版本的使用情况
1.Unity死机未保存场景:当你在Unity中编辑场景,突然死机时,可以在项目文件目录中找到Temp文件夹,双击文件夹,找到_Backupscenes文件夹,把后缀为.backup的文件后缀改为.unity,然后拖进Unity的Project界面里面,这样就可以还原死机前场景最后情况。
2.Inspector界面的数值栏自带加减乘除功能:从Unity5.1开始,可以在Inspector界面中的数值栏进行计算,比如:你可以在Transform里面的Position中X栏中加减乘除。
3.随意移动模型预览视窗:在Project界面里面选中模型,在Inspector界面上会显示模型的预览视图,右击视图的上的双横条,模型预览视图就会跳出来,此时就可以像Scene,Game等视窗一样任意移动,放在你想放的地方,如果想让他变回去,只要关掉它即可。
4.搜寻当前场景中哪些物件运用了指定脚本:在Hierarchy界面中的搜索栏中输入你想要搜索的脚本全名,即可找到哪些物件用了这个脚本,此方法也可以用来搜索哪些物体上有哪些物件,比如:Rigidbody等。
5.在界面上查看private变量:在Inspector界面右击Inspector的标签栏,选择Debug。
6.只让游戏运行一帧:先按下暂停键,再按运行键。
7.通过Debug.Log获取执行此语句物件:在脚本的Debug.Log语句中加入gameObject,即Debug.Log("Test", gameObject); 脚本运行时点击Console界面中的输出语句,就能在Hierarchy界面中看到哪个物件执行了这个脚本。
8.展开所有子节点:按住Alt,用鼠标点击包含子节点物件前的三角形,在Hierarchy界面和Project界面都可以使用。
9.编辑时镜头跟随选中物件:在Scene界面中选中物件按F,镜头就会对准选中物件,并使其在Scene窗口中居中,如果在拖动物件时,要让镜头跟随物件移动,选中物体后按Shift+F即可。
10.在Scene界面中方便移动编辑镜头:在Scene界面中鼠标右键 + A/S/D/W/Q/E来移动镜头, 如果想使Game视窗的镜头跟Scene一样,可以在Unity菜单栏中选择GameObject-->AlignWithView。
11.在Project界面搜索商店内容:先在Project界面中的搜索栏中输入你想要搜索内容的关键字,然后在搜索栏下边的搜索范围选择中选择AssetStore。
赞同 28818 条评论
分享
计算机图形学话题下的优秀答主
185 人赞同了该回答
分享一个比较好玩的内容吧。
大家都知道Unity有一个职位叫做Evangelist,翻译成中文就是布道师。他们的任务是介绍Unity最新的功能,分享Unity的知识。那么做一些演讲自然就必不可少了。
包括其他Team的同事,如果遇到了Unite这样的大会,也要做一些演讲。
那么,准备一份Power Point,同时准备一个live demo就是家常便饭的事情了。但是Power Point和Unity之间来回切换,总觉得不太爽,而且大家都使用Power Point似乎又有点无趣。
所以,国外的Evangelist Andy Touch以及Field Engineer Valentin Simonov他们就做了一个Unity Editor的拓展,即在Unity中播放“Power Point”——其实并不是真的播放PPT——而是利用了Unity的UI系统构建了一套类似Power Point,适合做演讲的工程。(这两位也参加了今年的Unite Beijing)。
下面简单演示一下:
Presentation Project (Unity)
怎么用呢?其实很简单。一套“PPT”就是有很多Scene组成的。
- Download the project.
- Open Presentation Window from Window > Presentation menu.
- Locate the sample Slide Deck in Presentation > Unity folder. It is called Unity Sample Presentation.
- Select it and click Load This Slide Deck button in the Inspector.
- Press [> B] button in the top right corner of the Presentation Window.
- Use Left and Right arrows on your keyboard or [<<] and [>>] buttons in the top right corner of the Presentation Window to switch slides.
那么,这样除了逼格突出之外还有什么好处呢?那就是可以很方便的将Live Demo和“PPT”结合起来。
比如Unite Euro 2017上Valentin Simonov的演讲,PPT和Live Demo浑然天成,还可以很方便的直接调试Profiler。
Unite Demo
不过Valentin在玩flappy bird的时候显得很方,不知道是不是因为狗子的注视。
当然,最后送上工程链接:
UnityTechnologies/Presentationgithub.com/UnityTechnologies/Presentation正在上传…重新上传取消
赞同 1858 条评论
分享
109 人赞同了该回答
2018里拍案叫绝的操作真的太多了。
首先是对“老年C++开发者”非常友好的Unsafe C#,亦可以称之为Safe C++,加上PC端IL2CPP的普及,可以使游戏在runtime达到真正Native C++的水平,以及新版C# 7的引用,比如ref local和return ref之类的操作,也提高了Native编码的水平,比如这里直接使用C++的方式访问NativeArray的值的引用,避免了繁重的value copy操作(本人正在开发一个底层渲染的开源,对性能要求比较苛刻,其中DrawingPolicy是一个体型很庞大的struct):
我个人认为,在足够有经验的,对性能有很高要求的程序手里,绝对称得上是拍案叫绝了。不仅做到完全没有GC,而且还达到了原生C++的效率。
有人问,游戏引擎本来就对性能要求很高鸭,拥有Native Performance不是很正常的吗?之前才不正常好吧。
诶,这另一个特点就来了,Unsafe保留了Unity自古以来的优良传统,编辑器极其强大。各种Debug系统,所以我会称之为Safe C++。
而且Unity在Editor里还是使用虚拟机,所以开发的时候还是该怎么爽就怎么爽的。
写完代码不用重启编辑器啊~不用编译等半天啊~
写完Shader不用等编译啊~~更不用等什么联合编译啊~~而且官方还见缝插针的修复了Shader runtime compiling的问题,现在一边玩着一边改Shader代码简直美滋滋……
至于其他的,SRP,Progressive GPU,Vulkan API,Job System之类的更偏向于实际技术实现而非“技巧”了,为了不偏题就不说了。
其实今年在看GDC的时候,就感觉Unity的发布会和其他的一些同行比起来虽然不那么酷炫,但是要更加接地气,比如说行业内大火的光线追踪,Unity带来的Progressive GPU目前看来是可以确确实实的提高游戏开发的质量和效率的。
虽然很多操作还是Preview,而且也不如Unity 5那种更新轰动性强,但是带来的提升是全方位的,接地气的,技术比较熟练的高级开发者确实可以选择更新一波。