
Unity3D
键盘春秋
键盘论王侯,数据写春秋~~~
展开
-
UnityShader:选择Pass渲染通道
上一篇博客讲了MRT多重渲染,这篇接着学习通过一个shader输出不同效果的另一种方法——指定不同的渲染通道。渲染通道在unity Shader中就是SubShader中的Pass。之前的shader中都只有一个Pass,也就是单通道渲染,这样的话如果要对同一个RenderTexture在不同的时刻进行不同的渲染效果输出就需要不停的更换shader。当然,也可以使用多重渲染,但是如果一次只用一个效果原创 2016-12-10 19:26:53 · 19470 阅读 · 2 评论 -
UnityShader:MRT多重渲染
UnityShader:深度图获取,屏幕后期处理特效 中学习了如何使用unityshader处理摄像机画面,这次来看看多重渲染的使用。 有时候我们想同时获得一个画面的不同后期效果:比如需要同时显示深度图,RGB,像素化等,但是又不想进行多次处理浪费性能,这时候我们就需要多重渲染技术了,通过多重渲染技术,只需要一次就可以将我们想要处理的画面处理成我们需要的多种效果并输出。一、 多重渲染shader原创 2016-12-04 22:54:33 · 13164 阅读 · 1 评论 -
UnityShader:摄像机深度图获取,屏幕分割,变形
最近由于公司业务需要,需要输出深度图,并且游戏最终画面效果要同时输出RGB图和深度图,并分别占据屏幕不同的比例。之前公司同事的做法是用一个相机获取RGB,另一个相机获取深度图(需要用shader对画面进行后期处理),然后相机在屏幕显示比例不同达到最终要求。效果是可行的,但是总感觉很别扭,过于复杂。实际上shader能够输出深度图,本身又有RGB数据,理论上可以用算法一次输出最终分割效果,试了试果然成原创 2016-11-27 19:21:55 · 14113 阅读 · 7 评论 -
Unity设计模式:命令模式
最近读了《游戏编程模式》,受到很多启发。虽然之前也读过设计模式的书,但是基本看过就忘了,实际开发中也很难和它们建立联系。这本书从实际应用出发讲解了游戏开发中常用的设计模式,很适合有一定开发经验但是不太会用设计模式的开发者。 为了学以致用,我在Unity中将几种基本的设计模式实现出来了,下面从第一个设计模式命令模式开始。1. 定义书中的定义是:命令就是面向对象化的回调。 好像还是有些抽象。简单来说原创 2016-12-17 11:52:27 · 4127 阅读 · 1 评论 -
Unity设计模式:享元模式
游戏中经常需要用到大量只是参数(比如坐标,旋转角,尺寸,颜色等)有些不同的重复物体,如植物,子弹,粒子等。如果数量非常多,在一个场景中逐一绘制这些对象将会消耗大量的性能。在学习OpenGL的时候我们知道有个实例化的方式,可以在一瞬间绘制数十万个仅仅位置不同的同一个对象而且并不会对GPU造成很高的负担,在实际开发中怎么使用这个方法来提升性能呢?享元模式可以做到这一点。享元模式的基本思路尽量少向GPU发原创 2016-12-24 20:33:17 · 1858 阅读 · 2 评论 -
Unity设计模式:观察者模式
初学编程的时候内容比较少没有数据交互,等内容多到需要多个文件多个类协同运行的时候就涉及到类之间的数据交互了。比较简单的数据交互是这些类之间互相引用,直接或间接传值或调用,但是这样类之间的耦合性太高了,如果项目复杂且经常变动,类之间的引用关系可能会让开发人员陷入一团乱麻无法下手。尤其是有些不同模块不同人开发,互相之间需要相应事件的时候…… 这种情况下就需要观察者模式了。 顾名思义,观察者模式就是设原创 2016-12-31 08:36:13 · 2311 阅读 · 2 评论