Unity3D的官方下载网页:https://unity3d.com/get-unity/download/archive
现在Unity3D的下载需要用到官方的工具,叫Unity Installer,公司内部好几台电脑需要升级时每个人都在线下载安装就好麻烦,在网上搜索并猜到其直接下载地址的方法。
以Unity3D 5.3.5f1为例,可以查看到Mac版Editor的下载地址是http://download.unity3d.com/download_unity/960ebf59018a/MacEditorInstaller/Unity-5.3.5f1.pkg?_ga=1.116579589.2817943.1469440554 ,
而其实际的下载地址是 http://netstorage.unity3d.com/unity/960ebf59018a/MacEditorInstaller/Unity-5.3.5f1.pkg
只需要稍微改一下URL即可。
参考链接:https://www.reddit.com/r/Unity3D/comments/45ytcg/unity_53_offline_installer/
Read more →
主讲人是Carl Callewaert,同时有个翻译的工程师,在一个五星级酒店。主要讲Unity5.3的VR功能,做VR程序时的特别设置、要求,现场教大家做了个塔防游戏,并把它改为VR版本。
现场我做好后的源代码 链接: http://pan.baidu.com/s/1gejrZqz 密码: tfa2
加了Cardboard SDK,更新到https://github.com/linmq/Unity3D-2016-VR-Masterclass-Guanzhou
下面是一些笔记:
Asset Store里有VR Sample,可以参考。
不用Normal Map?
Statics 中的 SetPass Calls 比 Batches (以前的Draw Calls)重要。
Framer Debugger功能
减少Draw Calls推荐的插件Mesh Baker, Simplygon
Enable Virtual Reality Supported时,无法控制main camera位置,可以建个空物体,把main camera放在二级节点。
优化方面的设置(Build Settings -> Player Settings):
Standalone(连接主机的VR,如Oculus, VIVE) 开启GPU Skinning
Rendering path: deferred
Color Space: Linear
Android(Gear VR, Cardboard等) 开启Multithread Rendering
HTC VIVE等在转圈时会缠住用户,不能转一整圈。游戏设计时要注意这个。
要可以自定义高度来适应用户的身高。
检测VR游戏做得好不好有一点:闭上一只眼睛时,能否让人感觉到3D的深度。于是就得用真实世界中的物体在眼睛看起来的大小。游戏中物体的大小要相对。如果只在三维中放一个简单的靶,没有其它东西进行对比,就不是一个好的设计,无法知道靶的大小。需要有其它能够相对大小的物体进行比较。
genius loci – perspective(游戏中怎样来感受透视)
用逐渐缩小的效果来体验perspective
也用光影 light – shadow来感觉perspective
未来新功能:Unity VR Editor
Read more →
机核网 浅谈VR
讲了目前三个VR产品的体验,Oculus Rift,HTC VIVE,Playstation VR。
http://www.g-cores.com/volumes/17338
Read more →
在关注这一块的最新消息,目前最新的就是Oculus Rift和HTC VIVE,这两款都需要连接电脑主机才能运行。Oculus有给出硬件配置要求,VIVE我还没找到具体的硬件配置要求。
Oculus硬件配置要求:
NVIDIA GTX 970 / AMD 290 equivalent or greater Intel i5-4590 equivalent or greater 8GB+ RAM Compatible HDMI 1.3 video output 2x USB 3.0 ports Windows 7 SP1 or newer 参考链接:https://www.oculus.com/en-us/blog/the-rifts-recommended-spec-pc-sdk-0-6-released-and-mobile-vr-jam-voting/
www.digitaltrends.com/virtual-reality/oculus-rift-vs-htc-vive/
问了下两个网友他们跑VIVE的配置,第一个用的是
华硕980Ti i74970k 16G
另一个用的是
CPU是E3-1230 v3 内存8G 显卡970 硬盘SSD,不过他觉得有点卡。
所以有条件的话可以上980。
另外Oculus和NVIDIA有专门给VR用的主机推荐
https://www.oculus.com/en-us/oculus-ready-pcs/
http://www.geforce.com/hardware/technology/vr/where-to-buy
Read more →
http://www.cnblogs.com/murongxiaopifu/p/4284988.html
上面链接时有提到有人做了个测试:用GetComponent()获取Transform组件,比预先保存其引用后再调用要慢得多。
我搜了下,找到那个测试。即下面的链接。
http://forum.unity3d.com/threads/cachedmb.130365/
代码拿来跑了下,结果确实类似。所以在经常要用到的地方少用GetComponent<>(),尽量预先保存引用后再调用。
它的测试代码有一些写法比较有意思,顺便学习了下。
yield return null
表示停顿一帧,才再继续往下走。
这里的计时用到Stopwatch,从字面意思上看就是用来测时间的,用来测一段代码运行的时间。它这里的Stopwatch下面的大括号只是为了让人看得更明白,知道记时开始和结束的地方。
https://msdn.microsoft.com/en-us/library/system.diagnostics.stopwatch(v=vs.110).aspx?cs-save-lang=1&cs-lang=csharp#code-snippet-1
这里面有用到var,我一直以为C#中是没有var的,js中才有。
搜了下C#中var的用法。
http://zhidao.baidu.com/link?url=mJX9fSA0_N2CaZYPzm3nTMlyBLVNVfMkm5r6IlZHPCWaIguhIJEbDidKBJzy7xPxeQ5bKUSTxQO9KOMPaoI5Pa
Read more →
在官网下载并安装了Unity3D 5.3.1 的32位编辑器。为了方便,我都是直接去下载,不用官方给的下载器 Unity Installer。
http://unity3d.com/get-unity/download/archive
准备打包时,发现提示“No Unsupported Target module loaded”,发现得用它的安装器“Unity Installer”来安装打包到各种平台的组件包。怪不得之前下载的Unity Editor 32-bit的安装包才不到300M。
于是我卸载掉Unity Editor 32-bit,下了个Unity Installer重新安装,发现它只能默认安装64bit的Unity Editor,因为它给的安装目录是C:\Program Files,而不是C:\Program Files (x86)。真是麻烦。
同事说得先手动下载安装Unity Editor 32-bit,然后再用Unity Installer安装时才会自动设为C:\Program Files (x86)。于是又得把卸载掉的Unity Editor 32-bit重新装上,才搞定。
话说,32-bit的Editor和64-bit打包出来的exe是不是就是32位和64位的区别了呢?
Read more →
大家有可能在调试的时候发现,在Unity3D的Game窗口中明明物体已经出了摄像机,但还是无法响应OnBecameInVisible。原因是在Unity3D中测试时,需要同时满足物体也出了Scene的窗口,才可以响应OnBecameInVisible。打包成exe出来就没有这个影响。
另外,OnBecameVisible和OnBecameInVisible所在的脚本是需要挂在你要判断的物体上的。
同时,你要用来判断的物体是需要有Renderer Component的。
参考链接:
https://docs.unity3d.com/ScriptReference/MonoBehaviour.OnBecameVisible.html
Read more →
我们知道在三维中旋转某个轴,该轴是不动的,只是另外两个轴组成的平面在动,这个说法是指绕着自身坐标系旋转,即局部坐标系(Local Coordinate)。一直以来,我以为Unity3D中的界面Inspector上的Rotation是绕着局部坐标系旋转,今天要旋转一个物体时,发现应该是世界坐标系。
当Rotation的X、Y、Z都是0的时候,你旋转某个轴是看不出来,但X、Y、Z上都已经有些值时,你就可以看出来它不是绕你想要的局部坐标系的轴在旋转。
把左上方的Local改为World,就能更好地看出想要的旋转。
Read more →
Win7 Unity3D 4.2.0f4
同事给我一些Fbx格式的角色动画,包括几个图片文件夹,和一个Materials文件夹。但我在导入Unity3D时,但主角的材质却丢失。
解决办法是把Materials文件夹删掉,然后那个文件夹上右键选择reimport,即可解决问题。
Read more →