![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
unity3d
清风半夜鸣蝉
一个NPC的日常。
展开
-
路径查找基础知识-动画演示
这是教程教你建立路径查找算法的第一步。路径查找就是在两点之间查找最短路径的算法,你可以在很多地方应用,例如:玩家控制角色时通过点击设置目的地时,就需要用到。在开始前,我们需要明确一点:路径查找是在终点给定的情况下才会工作。另外这只是系列教程中的第一步,因此我将说明一些最基本且效率不高的算法,然后我们会利用启发式方法一起研究出著名的A*算法。我不想发布另一个A*算法,按照下面转载 2014-02-09 16:33:22 · 1193 阅读 · 0 评论 -
Unity ScriptableObject的理解
个人感觉ScriptableObject的核心概念是它是一种资源,类似于材质、图片、声音,或者是lua、python这样的脚本,是可以更新的。但是负责这个资源类型声明的c#脚本类不能更新,和普通的c#脚本一样。ScriptableObject它主要是做静态资源的配置或更新保存,同时具备了显示面板的方便快键,非常适用于策划的调试。某些方面,感觉可以替代json和xml。原创 2016-10-30 18:40:30 · 1888 阅读 · 0 评论 -
MVP矩阵之齐次坐标和ModelMatrix
转自:MVP矩阵之齐次坐标和ModelMatrix齐次坐标(Homogeneous Coordinates)其次坐标这个概念在第一次看real-time rendering 这本书的时候就有提起到,但当时看的一头雾水,只知道其次坐标在某些计算中比较方便,而事实上齐次坐标有着非常重要的意义和作用,主要是在处理三维透视方面,常用的几个地方,比如texture mapping 透视矫正,转载 2016-10-31 21:51:51 · 597 阅读 · 0 评论 -
unity shader中的矩阵变换知识
提要 在图形的计算中,比如旋转、缩放、平移、投影等操作,矩阵都扮演着极其重要的角色,它是操作图元的基本工具。虽然很多的图形API已经封装好了这些矩阵操作,但是理解这些矩阵操作的原理会非常非常有帮助,比如说我们可以通过一些矩阵的快捷计算来加速你的代码。 如果你有一些线性代数的基础,看下面的内容的时候也不会很轻松,因为有点难且比较没意思,如果没有修过这门课,最好把转载 2016-11-01 22:16:56 · 6595 阅读 · 0 评论 -
HDR中的Tone Mapping(色调映射)
Tone Mapping原是摄影学中的一个术语,因为打印相片所能表现的亮度范围不足以表现现实世界中的亮度域,而如果简单的将真实世界的整个亮度域线性压缩到照片所能表现的亮度域内,则会在明暗两端同时丢失很多细节,这显然不是所希望的效果,Tone Mapping就是为了克服这一情况而存在的,既然相片所能呈现的亮度域有限则我们可以根据所拍摄场景内的整体亮度通过光圈与曝光时间的长短来控制一个合适的亮度域,这转载 2016-12-06 20:09:01 · 15184 阅读 · 0 评论 -
Unity使用HDR做天空盒
1.导入HDR贴图,将Texture Type设置为Cubemap,点击Apply2.创建材质Material将shader类型设置为skybox-cubemap,这里的shader还可通过“Unity3D中简单的Cubemap反射”这篇文章中shader进行自行编写。实现自定义效果。3.打开光照面板替换skybox材质,路径为:window-lightin转载 2016-12-06 22:32:34 · 17750 阅读 · 1 评论 -
unity插件Skyshop的介绍与基本操作
Skyshop这个插件发布到商店后就引起了许多用户的关注与热烈讨论,其中最大的原因是在Unity里面一直缺乏很完善的环境系统,大多数的情况下必须使用天空盒与默认的光源来模拟场景内的光影效果,而这种情况将在Skyshop的诞生后有了巨大的改变,接下来的介绍里面,我们将通过一个案例演示来见识Skyshop所带给我们的视觉冲击。首先在论坛内下载教程内使用的插件并进行安装,Skyshop Im转载 2016-12-07 10:50:06 · 6124 阅读 · 0 评论 -
PBR基于物理渲染
什么是基于物理渲染(PBR)?传统3D材质制作方法是基于艺术家的手艺的,由美术根据个人评估绘制Diffuse贴图调整颜色后进行渲染。好处是画成什么颜色就是什么颜色,制作流程简单修改直观,缺点则是质量不稳定,难以标准化和做进一步的细致分工,导致游戏制作规模受到人力限制;此外,在复杂变化的光照环境下,仅通过RGB值定义的贴图往往无法达到足够的拟真感。基于物理渲染的本质,则是通过对真实世转载 2016-12-07 11:50:41 · 7227 阅读 · 1 评论 -
Unity3D:粒子特效(Particle System)播放序列帧动画
转自:http://jingyan.baidu.com/article/f96699bbb1a0d6894f3c1b77.html参考:http://www.unitymanual.com/thread-2993-1-1.html?_dsign=a97a2a84本篇教程为基础篇,针对U3D入门新手,讲解粒子系统播放序列图的一种实现方法,随着基础教程的知识点的慢慢转载 2016-11-24 18:39:22 · 12409 阅读 · 0 评论 -
Unity3D内存泄漏Render的sharedMaterial和material
如果你需要修改模型材质的颜色,或者是修改材质Shader的一些属性, 通常情况是用获取模型的Renderer组件,然后获取它的material属性。举个简单的例子,修改颜色或者直接更换shadermaterial.color = Color.red;material.shader = Resources.Load(“Shader/Alpha-Diffuse”, typeof(S原创 2016-12-13 22:17:31 · 4671 阅读 · 0 评论 -
unity帧动画的几种方式比较
之前一直没有做帧动画系列,以前的动画方式多是用程序控制,或者有些效果类型的会用shader实现。但后面要加各种特效动画,就必须熟悉帧动画了。看了好多关于帧动画方面的思路,感觉方式还是很多的,但到底哪个好,只能尝试了,先捋一捋基本的思路,至于详细使用说明,带后面有时间好好检验一番。常见的思路如下:1、2DToolkit插件这个插件曾经风靡一时,实现帧动画还是很容易的。2、代码脚本原创 2017-01-02 16:57:42 · 10765 阅读 · 0 评论 -
unity抗锯齿
反锯齿分为两大类:一 Hardware AA :多重采样,即MSAA, 任何平台都支持二 Post Process AA: Image处理, 包括 FXAA,SSAA等, 移动平台要求OpenGL ES2.0测试FPS:爬楼 UI 场景1无 1.x 45 58转载 2016-12-20 09:37:53 · 9033 阅读 · 0 评论 -
mac下unity shader编辑器sublime插件
如果是Windows系统,使用vs2015,直接装一个ShaderlabVS就可以了,mac下要用sublime安装相应的插件。1、语法高亮:ShaderLanguages或Unity3D Shader Highlighter and SnippetsPackage Control里搜索shader,选择上面任意一种安装,然后打开unity的shaderlab文件(格式为.shader c原创 2016-12-20 11:08:17 · 2288 阅读 · 0 评论 -
unity实现3D物体上的事件监听处理
官方On系列API关于触摸事件检测都无法检测抬起事件时当前所指向的物体。OnMouse系列OnTrigger系列OnPointer系列OnDrag系列“抬起事件”触发的要求就是“按下”时是在当前的物体上,也就是说如果我在A物体上按下,但是在B物体上松开,这时B物体的抬起事件是不会触发的,但是会出发A物体上的抬起事件,这就很蛋疼了,我经常要判断在哪里松开。有两种思路:1、原创 2016-12-28 19:46:36 · 5416 阅读 · 0 评论 -
UGUI的Dropdown组件
内核原理部分:http://blog.csdn.net/ecidevilin/article/details/52570871需要注意的使用问题:1、Dropdown组件已经自动适配大小:根据添加的项数2、模板Template是一个scroll Rect,其中content的大小有玄机:如果content的高度比单个item的大小,显示时,不能显示所有项,需要滚动。如果cont原创 2017-01-13 16:00:37 · 2267 阅读 · 0 评论 -
Unity 双指旋转
思路都是:以两指坐标生成一个向量Vector2,每次一双指旋转,计算与上一帧两指向量之间的角度变化Vector2.Angle()。参考EasyTouch的实现public class TouchTest : MonoBehaviour{ Touch oldTouch1; //上次触摸点1(手指1) Touch oldTouch2; //上次触摸点2(手指2) void原创 2017-02-11 18:38:09 · 3260 阅读 · 0 评论 -
Unity 5.x的专用插件推荐
本帖集合了Unity 5.x的专用插件,如果是使用 4.6.x 的伙伴们切勿下载安装。Sprite Color FX 2.0 - 像素特效http://www.narkii.com/club/thread-383520-1.htmlHoney Hex Framework 1.5.2 - 蜂巢式地形制作插件(Unity5专用版)http://www.narkii.转载 2016-10-06 15:14:48 · 3997 阅读 · 0 评论 -
Unity Shader学习之相关知识搜集
unity中的shader语法和通用的不同,稍作封装后的语法记为ShaderLab。基础知识网上有shader大牛普及了,直接给链接:猫都能学会的Unity3D Shader入门指南Shader专栏CG语言函数手册通用光照模式公式原创 2016-11-02 15:28:11 · 373 阅读 · 0 评论 -
Unity3D性能优化--- 收集整理的一堆
http://www.cnblogs.com/willbin/p/3389837.html官方优化文档--优化图像性能http://docs.unity3d.com/Documentation/Manual/OptimizingGraphicsPerformance.html Unity3D性能优化专题性能优化是一个异常繁琐而又涉及到项目开发的方方面转载 2016-04-11 10:43:59 · 1178 阅读 · 0 评论 -
Unity3D之如何将包大小减少到极致
http://www.luzexi.com/unity3d%E4%B9%8B%E5%A6%82%E4%BD%95%E5%B0%86%E5%8C%85%E5%A4%A7%E5%B0%8F%E5%87%8F%E5%B0%91%E5%88%B0%E6%9E%81%E8%87%B4/Unity3D之如何将包大小减少到极致,图片是游戏app里最最占空间的资源,所以请各位还没有理解u3d对图片转载 2016-04-11 10:44:38 · 907 阅读 · 0 评论 -
AssetBundle整合资料深入理解
实质是一个封装好的压缩解压类型,通过BuildAsset系列函数压缩,通过www.assetbundle解压。--打包的难点在于资源依赖。而之所以要用资源依赖,实际上是不想将公用的资源打包进多个Bundle中,资源重复,一是下载量大,改动一点就要打包一大块的Bundle,二是占用空间大,本地资源里有很多重复的空间占用,加载到内存中也一样。关于资源依赖,会遇到好多种情况,分实际项目需求而原创 2016-04-11 21:07:05 · 1245 阅读 · 0 评论 -
c# 正则表达式
转发自http://blog.csdn.net/u010019717/article/details/45015181这是从网上找来的,收藏一下备用,用到之处可以节省不少时间哦! 只能输入数字: "^[0-9]*$" 。 只能输入n位的数字:"^\d{n}$"。 只能输入至少n位的数字:"^\d{n,}$"。 只能输入m~n位的数字:"^\d{m转载 2016-04-16 14:30:13 · 453 阅读 · 0 评论 -
Unity 游戏框架搭建 (八) 减少加班利器-QLog
为毛要实现这个工具? 在我小时候,每当游戏到了测试阶段,交给QA测试,QA测试了一会儿拿着设备过来说游戏闪退了。。。。当我拿到设备后测了好久Bug也没有复现,排查了好久也没有头绪,就算接了Bugly拿到的也只是闪退的异常信息,或者干脆拿不到。很抓狂,因为这个我是没少加班。所以当时想着解决下这个小小的痛点。。。现在框架中的QLog: 怎么用呢?在初始化的地方调用这句话就够了。转载 2016-10-11 22:25:29 · 2909 阅读 · 0 评论 -
unity架构方面的思想:搜集整理+项目实践感受
在实际项目中,个人感觉,整个架构的核心(对我来说也是难点)就是数据的传递问题,尤其在unity中,跨脚本间的数据传递,首先要拿到脚本吧。有的架构思路呢,是建议少用或不用MonoBehaviour,就像非unity项目中的那样,有个主控逻辑驱动的类,里面进行update,这样抛弃了unity的组件优势,主要是因为不同脚本的初始化顺序、显隐控制是由MonoBehaviour自己控制的,不方便架构的驱动原创 2016-10-11 17:45:25 · 744 阅读 · 0 评论 -
Unity Shader学习之积雪练习
Shader "Custom/_Snow" { Properties { _Color ("Color", Color) = (1,1,1,1) _MainTex ("Albedo (RGB)", 2D) = "white" {} _Bump ("Bump", 2D) = "bump" {} _Snow ("Snow Level", Range(0,5)) = 0 _Sno原创 2016-11-07 12:33:26 · 1280 阅读 · 0 评论 -
Unity 毛玻璃效果(UGUI)—高斯模糊
因为Unity 提供了GrabPass,可以在Shader中很方便的拿到Panel下面的图像,即_GrabTexture。Shader "Custom/SimpleGrabPassBlur" { Properties { _Color ("Main Color", Color) = (1,1,1,1) _BumpAmt ("Distortion", R转载 2016-10-30 15:44:40 · 24803 阅读 · 8 评论