随笔分类 - Unity3D
摘要:Unity5的AssetBundle修改比较大,所以第一条建议是:忘掉以前的用法,重新来!要知道,Unity5已经没办法加载2.x 3.x的bundle包了…体会一下Unity5 AssetBundle的优势: Cube引用Material,给Cube和Material设置不同的assetBundl
阅读全文
摘要:游戏中任何可以输入的地方,只要调用语音输入,必然会导致app崩溃,解决方法如下: ok, so essentially the gist of it is that siri wants gl context and to be rendered alongside your view. So yo
阅读全文
摘要:首先上效果图: 编辑器代码: using UnityEngine; using UnityEditor; using System.Collections; public class LightmapAnalysisEditor : EditorWindow { private static Edi
阅读全文
摘要:https://github.com/onevcat/XUPorter
阅读全文
摘要:Unity工程随着复杂度的提升,常会有Prefab上的脚本丢失的情况,如下图所示: 首先失去关联的脚本,是没有线索找到原来是什么文件的,那么有没有办法批处理将这些MissingScript进行一下清理呢?就我使用的Unity4.6所提供的接口来说,没有非常完美的解决办法,但有一些还算可以用...
阅读全文
摘要:// Nav层名字-->层的值,1、2、4、8、16 public static int AgentLayerNameToValue(string name) { int idx = NavMesh.GetNavMeshLayerFromName(name); ...
阅读全文
摘要:Android x86模拟器Intel Atom x86 System Image时提示Intel execute disable bit(xd) is not turned on运行Elicpse来开发Android程序,进行调试时老是提示警告,因此,打开SDK Manager-> Extras-...
阅读全文
摘要:Editor模式下的控件没有提供直接检测双击的消息,但可以简单模拟出双击检测的效果,代码如下所示: private double clickTime = 0f; ... if (GUILayout.Button("TestButton")) { if(Edi...
阅读全文
摘要:在Unity3D中制作编辑器的时候,有时候会需要手动控制界面上控件的焦点,与此相关的有三个函数都在下面的示例代码中了: public void Test() { // 给控件命名 GUI.SetNextControlName("FocusControl01...
阅读全文
摘要:Unity3d的Debug.Log函数用于打印日志,一般项目中都会对其作如下两件事情: (1)希望有一个总的开关来控制整个游戏中日志的打印与否; (2)有的系统会将Log封一层并添加统一的标记,比如Skill模块希望打印的日志格式为[Skill]***。 对于第一个问题,Unity没有统一...
阅读全文
摘要:Unity3D提供的代码级别的和屏幕相关的类主要是以下两个: (1)Screen.orientation 可以用于设置当前游戏的屏幕方向状态; (2)Input.deviceOrientation 可以获取设备的屏幕方向状态。 下面的代码根据设备的实际朝向设置App的屏幕方向: publ...
阅读全文
摘要:Unity3D提供的NavMesh系统可以方便的解决游戏的寻路问题,但是该系统有一个比较让人不理解的问题: NavMesh导航时会忽略Physics系统本身的碰撞,也就是说NavMeshAgent在移动的过程中不会被Collider阻挡,而是会直接走过去(但是OnTriggerEnter等触发...
阅读全文
摘要:在实际的项目开发中,一般需要程序抽象出一些在几何意义上有明确意义的参数,这样方便策划或美术在自己的机器上进行调试。 下面是一个可变参的地下城摄像机的简单实现:// 第三人称摄像机,平移和旋转会同时进行平滑public class ThirdPersonalCamera : MonoBehavi...
阅读全文
摘要:根据游戏类型的不一样,会需要各种各样的摄像机,下面将分享三种典型的摄像机类型:(1)地下城摄像机;(2)第三人称跟随摄像机;(3)鼠标控制旋转摄像机。将这些控制脚本拖动到场景的MainCamera上即可。 为了辅助测试,使用了下面的角色移动/旋转控制脚本:using UnityEngine;u...
阅读全文
摘要:有时候我们可能会有这样的需求,就是在编辑模式下,控制移动场景中的物体,这里面有两个点要解决: (1)怎么在编辑模式下运行一个脚本; (2)怎么有效地响应鼠标按键。 第一个问题可以使用编辑器属性ExecuteInEditMode让脚本在编辑模式也能实时地更新。下面的代码用来控制物体的移动,并...
阅读全文
摘要:有时候需要在Scene视图中绘制一些辅助线,方便进行一些编辑的工作,可以通过如下类和函数完成: 绘制辅助线,相关类: Gizmos类:用于在Scene视图中绘制调试信息或辅助线,这些辅助线只有在Scene中能看到,Game视图中看不到。 Handles类:绘制各种东西,可以绘制一些3D g...
阅读全文
摘要:自定义类型的显示: public class TestClass { public int value; public string name = ""; } public class TestEditor : EditorWindow { public static TestEditor wind
阅读全文
摘要:Unity中的Inspector面板可以显示的属性包括以下两类:(1)C#以及Unity提供的基础类型;(2)自定义类型,并使用[System.Serializable]关键字序列化,比如:[System.Serializable]public class TestClass{ public ...
阅读全文
摘要:有人在之前的博客中问我有关共享资源打包的代码,其实这一块很简单,就两个函数: BuildPipeline.PushAssetDependencies():依赖资源压栈; BuildPipeline.PopAssetDependencies():依赖资源出栈。 直接看代码,下面为打包示例代码...
阅读全文
摘要:简要清单,让你的游戏速度更快:(1)保持顶点数如下:针对iPhone 3GS和更加新的设备(带SGX GPU),每帧40K;针对旧设备(带MBX GPU)每帧10K。(2)物体之间尽可能共享相同的材质,这样有利于进行渲染合批,对于不同贴图同一材质的,可以将多张贴图合成一张,只合并两个物体而没有共享材
阅读全文

浙公网安备 33010602011771号