Unity
尘虚元
Hello Word
展开
-
Unity3D中的数学
点乘判断角度,叉乘判断方向。点乘结果是一个标量 a·b = (ax,ay,az)·(bx,by,bz) = axbx+ayby+azbz a·b = b·a 满足交换律 a·b = |a||b|cosθ点乘结果描述了两个向量的“相似”程度,点乘结果越大,两向量越相近。应用: 计算投影 比较矢量长度:v·v=|v|²,避免开平方操作 计算夹角,cosθ=0垂直,cosθ&...原创 2018-04-10 16:54:50 · 394 阅读 · 0 评论 -
使用Unity Profiler优化技巧
MemoryOtherManagedHeap.UsedSize:托管堆使用大小。重点监控对象,不要让它超过20MBSerializedFile:序列化文件,把显示中的Prefab、Atlas和metadata等资源加载进内存。PersistentManager.Remapper:持久化数据重映射管理相关,比如AssetBundle之类的。AssetsTexture...转载 2018-04-30 17:55:02 · 1624 阅读 · 0 评论 -
unity热更新
Unity热更新 分为资源热更新和代码热更新。 资源热更新 AssetBundle 代码热更新的机制:项目开发中,可以将部分逻辑提取至一个单独的代码库工程中,打包为DLL。将DLL打包为AssetBundleUnity程序动态加载assetBundle中的DLL文件,使用Reflection机制来调用代码。...原创 2018-04-30 18:43:09 · 632 阅读 · 0 评论 -
unity性能优化
真机上跑,看Unity Profiler,确定瓶颈,再针对性的优化。CPU问题:短时间内计算量大,导致跳帧;发热严重,耗电高 解决:数据缓存,内存池分帧,将计算分到多个逻辑帧中进行计算,避免短时间内的性能超过负荷使用合理的算法和数据结构,优化排序算法GPU问题:发热严重,耗电高;FPS降低 解决:优化美术资源,合理规划图集,减少不必要的骨骼,优化模型片...转载 2018-04-30 18:45:50 · 704 阅读 · 0 评论 -
使用3dmax Morpher制作Unity表情动画
关于游戏人物的面部表情动画 方案一:如果面部骨骼数丰富的话,可以直接做骨骼动画 方案二:采用变形器(3dmax是Morpher,maya是blendshape)修改相应通道的权重值来做表情动画本文简述方案二的做法。 说明:本文截图中3dsMax版本为2017。笔者第一次使用3dsMax,欢迎指正。3dmax中导入人物模型,选择需要变形的对象,即head。当前对象附带skin信息。...原创 2018-05-24 10:10:25 · 24918 阅读 · 3 评论 -
切换Animator Controller后AnimationClip内存释放问题
当Animator Controller挂载的动作比较多时,即使切换成另外一个动作很少的Animator Controller,任务的动作信息还是不会释放。 英雄自带的Animator Controller是挂了所有动作的。我们试了替换Runtime Animator Controller之后,老的AnimationClip内存并没有释放,引用计数也是增加的。解决办法: 1)销毁Anima...原创 2018-06-22 14:26:33 · 1644 阅读 · 0 评论 -
Unity网格基础知识
顶点三角形UV法线例子:双面网格的实现材质顶点顶点是网格最基础的组成部分,可通过mesh.vertices获取和赋值。 mesh.vertices是一个Vector3的数组,每个Vector3为此顶点与此游戏物体的相对坐标(local position)。 顶点的位置,数量没有任何限制。几个同样的顶点可以组合成若干不同形状,不同数量的三角形。// 手动设置顶点...转载 2018-06-25 13:39:08 · 2932 阅读 · 0 评论 -
骨骼蒙皮动画(Skinned Mesh)的原理解析(未完待续)
3D模型动画基本原理和分类Skinned Mesh原理和结构分析理解骨骼和骨骼层次结构(Bone Hierarchy)3D模型动画基本原理和分类3D模型动画的基本原理是让模型中各顶点的位置随时间变化。 主要种类有: - Morph动画 - 关节动画 - 骨骼蒙皮动画(Skinned Mesh) 从动画数据的角度来说,三者一般都采用关键帧技...转载 2018-06-25 14:00:49 · 1673 阅读 · 0 评论 -
Unity自带的一些坑
GameObject.FindGameObjectWithTag(“Player”) returning (clone),获取其组件失败。Unity的Bug,Animator Window导致的一个clone。 S.O. Question https://stackoverflow.com/questions/27980776/gameobject-findgameobjectwithtag...原创 2018-03-14 12:33:35 · 967 阅读 · 0 评论 -
Unity寻路导航相关组件
Navigation面板NavMeshAgent: 寻路导航PlayerOffMeshLink: 不联通的跳跃点NavMeshObstacle: 导航网格障碍物导航烘焙导航区域设置两个对象之间跳跃功能导航障碍物导航烘焙选中场景(希望烘焙寻路导航网络的部分),点选Inspector选项卡-Static右下拉三角-勾选NavigationStaticNa...原创 2018-03-06 15:50:13 · 1149 阅读 · 0 评论 -
Unity3D的LightProbe动态光探头用法
LightProbe,是对LightMapping的一个补充功能,可以让动态物体在烘焙好的场景里面受到光的照射效果。转载 2017-04-11 11:01:40 · 1511 阅读 · 0 评论 -
Unity 5 中的全局光照技术
全局光照,简称GI,是一个用来模拟光的互动和反弹等复杂行为的算法,要精确的仿真全局光照非常有挑战性,付出的代价也高,正因为如此,现代游戏会先一定程度的预先处理这些计算,而非游戏执行时实时运算。选择一个照明专案广义的来说,Unity的全局光照是”实时”或是”预先计算好”的,在某些情况下两种方法可以结合使用,照出更逼真的场景。本节我们会针对两种技术的差异优势和使用时机做个简单的描述。实时照明(REALT转载 2017-04-11 13:19:30 · 872 阅读 · 0 评论 -
Untiy EasyTouch插件使用
1. 导入EasyTouch资源包2. 做好前期准备,包括人物模型、地形的创建3. 添加JoyStick实例:Hedgehog Team->Easy Touch->Extensions->Add a new Joystick4. 设置摇杆的相关参数 1. 确定摇杆名称 2. 选择事件驱动与遥感灵敏度 5. 创建脚本用来接收遥感事件控制角色移动using ...原创 2017-04-11 17:59:08 · 702 阅读 · 0 评论 -
Unity5.×烘焙常规处理步骤
Unity5.×烘焙常规处理转载 2017-04-10 22:45:57 · 11535 阅读 · 0 评论 -
Unity的特殊文件夹及脚本编译顺序
脚本编译顺序1:处于 Standard Assets, Pro Standard Assets 和 Plugins 文件夹中的运行时脚本(Standard Assets 文件夹需是Assets的一级子文件夹.)2:处于 Standard Assets, Pro Standard Assets 和 Plugins 文件夹下的以 Editor 命名的一级子文件夹中的脚本。3:顶级 Edito...转载 2017-11-28 20:21:55 · 1163 阅读 · 0 评论 -
Unity的各种[XXX]用法
[Tooltip(“提示内容”)] 在Inspector面板提示文字[HideInInspector] 在Inspector版面中隐藏public属性[SerializeField] 在Inspector版面中显示非public属性,并且序列化[NonSerialized] 在Inspector版面中隐藏public属性,并且序列化[RequireComponent (typeof转载 2017-12-31 17:21:26 · 858 阅读 · 0 评论 -
Unity物理引擎基础
修改重力环境刚体Rigidbody碰撞体ColliderSpringJoint弹簧关节HingeJoint链锁关节ConstantForce恒力组件Raycast光线投影修改重力环境Edit-ProjectSettings-Physics-PhysicsManager面板:Gravity-xyz刚体Rigidbody常用API:AddForce...原创 2018-03-07 16:09:03 · 1080 阅读 · 0 评论 -
Mecanim动画系统
关于动画模型的处理一般动画系统的制作与使用流程建模注意事项:模型导出Animator(动画编辑器)Add Behaviour 的简单应用:Animator Controller(动画控制器)HasExitTimeUnity的动画系统由以下几部分组成:Animator(动画编辑器)、Animator Controller(动画控制器)、Animation(动...转载 2018-03-09 21:06:56 · 571 阅读 · 0 评论 -
Unity3D游戏优化的一些方法(静态动态)
静态优化动态优化本文是根据泰课视频《Unity3D开发技术讲解》的部分学习整理。静态优化静态物体勾选static贴图处理(属性设置) TextureType选择Advanced移动设备下设置贴图压缩格式 Android原生支持ETC,OPNEGL2.0都支持。ETC2只有OPENGL3.0支持;IOS只支持PVRTC的压缩格式Generate Mip...原创 2018-03-02 23:05:41 · 1946 阅读 · 0 评论