6 puppet_master

尚未进行身份认证

我要认证

coding can not change the world, but I will create my own world!

等级
TA的排名 3k+

《Gpu Gems》《Gpu Pro》《Gpu Zen》系列读书笔记

本篇blog简单记录了一下最近一两年一直在读的一系列书目。《Gpu Gems》1-3三部,《Gpu Pro》1-7七部,《Gpu Zen》一部。针对每一项渲染技术,进行全系列书的总结,从这个角度来看,可以看到一项技术,近十五六年来的进化过程。

2019-02-13 13:37:50

Unity Shader-Decal贴花(SelfDecal,Alpha Blend,Mesh Decal,Projector,Deferred Decal)

本篇blog主要讨论了一下目前常见的一些贴花的实现方式,并全部在Unity中给出了基本的实现,包括自身二套uv贴花(Self Decal),叠片贴花(Alpha Blend面片贴花),内置投影器贴花(Projector),碰撞网格构造贴花(Mesh Decal),延迟贴花的多种实现方式(Depth Decal,Depth Normal Decal,Deferred Decal,同时影响多通道的贴花)等。

2019-01-06 19:19:45

Unity Shader-边缘检测效果(基于颜色,基于深度法线,边缘流光效果,转场效果)

边缘检测,在图像处理,计算机视觉中都是很重要的一个概念。在图像处理领域,由于输入只有一张图片,所以一般是将图片转成灰度,然后判断图片像素间的梯度来判断图像中的边界的;而在3D渲染领域,除了场景渲染结果图片外,我们还可以得到场景的深度以及法线等信息,让我们可以得到更加精确的边缘检测结果。边缘检测在渲染中虽然可能没有图像处理领域那样出名,但是也是可以用来实现一些特殊渲染风格,渲染效果,以及后处理AA等功能。

2018-11-17 13:21:53

Unity Shader-Matcap(材质捕获)

Matcap,全称为Material Capture,翻译过来就是材质捕获。简单来说就是预先生成的一种存储了光照和反射等信息的贴图,运行时使用法线方向进行采样。Matcap的好处就是可以用很低的消耗来实现很多特殊风格的效果,但是Matcap也有一些缺陷,在于Matcap仅对于固定相机视角的情况较好,这也是Matcap的原理决定的。Matcap主要是在Zbrush,Mudbox这些软件里面使用的,ZBrush里面雕模的时候有时候虽然没有贴图,但是效果看起来也挺好的,实际上就是Matcap的作用,而且这些美

2018-11-05 23:45:02

Unity Shader-Ambient Occlusion环境光遮蔽(AO贴图,GPU AO贴图烘焙,SSAO,HBAO)

环境光遮蔽主要用来控制物体和物体相交,夹角,褶皱等位置遮挡漫反射光线的效果,提高暗部阴影效果达到一种近似自阴影的效果,提升画面的层次感,增加细节。本文主要实现几种主流的环境光遮蔽效果,AO贴图(使用预烘焙的贴图,实现离线的基于GPU的烘焙AO贴图的工具),SSAO(屏幕空间环境光遮蔽),HBAO(水平基准环境光遮蔽)

2018-10-30 00:44:45

《3D数学基础:图形与游戏开发》读书笔记

1.计算机图形学第一准则:近似原则如果她看上去是对的它就是对的。2.3D坐标系有两种,左手系和右手系,相同类型的坐标系可以通过旋转来重合,但左手系和右手系之间不可以。左右手坐标系转化可以通过翻转一个轴的符号来进行。DX左手系,OGL右手系,3dmax右手系,Unity左手系。3.惯性坐标系:为了简化世界坐标系到物体坐标系的转化,是世界坐标系和物体坐标系转化的中间过程。惯性坐标系原点与物...

2018-10-24 22:38:13

UnityShader-BilateralFilter(双边滤波,磨皮滤镜)

双边滤波(Bilateral Filter),可能没有高斯滤波那样著名,但是如果说磨皮滤镜,那肯定是无人不知无人不晓了,用双边滤波就可以实现很好的皮肤滤镜效果,不管脸上有多少麻子,用完双边滤波,瞬间变身白富美。

2018-10-17 00:46:43

Unity Shader-反射效果(CubeMap,Reflection Probe,Planar Reflection,Screen Space Reflection)

简介反射效果,是一个渲染中很重要的一个效果。在表现光滑表面(金属,光滑地面),水面(湖面,地面积水)等材质的时候,加上反射,都可以画面效果有很大的提升。来看几张图:先来张最近比较火爆的国产大作《逆水寒》的镜湖,我木有钱钱进副本,只好从网上找了个截图,感觉很漂亮哈。《罗马之子》主角的金属盔甲反射&远处水面倒影反射。《耻辱-外魔之死》地面积水的反射,只反射了静态场景...

2018-09-11 23:42:43

图形学相关数学(反射,折射公式)

反射公式反射是经常用到的一个公式,之前在Phong光照的时候推导过一次,这次再整理一下。反射过程如图所示:首先需要保证光方向向量AB,法向量N均为单位向量,反射向量AC,光入射方向AD = -ABθ为入射角,由反射公式我们知道,AC与AB沿y轴对称,AD与AC沿x轴对称EB = N * |AB|cosθ = N * dot(N,AB)DC = 2 * EB = -2 * N...

2018-07-23 23:59:23

Unity Shader-深度相关知识总结与效果实现(LinearDepth,Reverse Z,世界坐标重建,软粒子,高度雾,运动模糊,扫描线效果)

前言前言废话依旧比较多,感觉我是个写游戏体验评测的,233。最近想起了《恶灵附身》这款游戏的几个效果:《恶灵附身》整款游戏都是在一个“疯子”撸总的脑洞世界里面,游戏内容相当恐怖(吓得我当年一边尖叫一边玩,不光把我吓够呛,把我室友也吓坏了),有“贞子”,“保险箱怪”等等至今让我久久不能忘怀的Boss,不过整个游戏既有恐怖的地方,又有刺激的战斗,非常符合三上真司一贯的作风(我是三上...

2018-06-18 20:08:58

SoftRenderer&RenderPipeline(从迷你光栅化软渲染器的实现看渲染流水线)

简介这是一篇没有什么实际作用的文章,因为没有任何shader效果实现,整篇文章到最后,我只实现了一个旋转的立方体(o(╯□╰)o),和Unity渲染的万紫千红的3D世界显得有很大落差,仿佛一切都回到了最初的起点。不过实时渲染繁华的背后,还是这看似简单的光栅化。今天,本人打算研究一下基本的光栅化渲染的实现,看一下怎样把一个模型从一些顶点数据,变成最终显示在屏幕上的图像,也就是所谓的渲染流水线。实现过...

2018-05-22 00:20:33

Unity Shader-GodRay,体积光(BillBoard,Volume Shadow,Raidal Blur,Ray-Marching)

前言好久没有更新博客了,经历了不少事情,好在最近回归了一点正轨,决定继续Unity Shader的学习之路。作为回归的第一篇,来玩一个比较酷炫的效果,一般称之为GodRay,也有人叫它云隙光,当然,最高大上的名字就是体积光散射了。这几个名字对应几种类似的效果,但是实现方式相差甚远。先来几张照片以及其他游戏的截图看一下:ps:这张图片是一张照片哈,是本屌丝看别人的云南游记发现的,清明节本来想去的,结...

2018-05-12 02:17:22

CPU GPU设计工作原理(转载)

原文地址:http://www.cnblogs.com/geniusalex/archive/2008/12/26/1941766.html原文从这里开始:要说到设计的复杂程度,那还是CPU了!这个不用讨论,很简单的道理你看看显卡芯片的更新速度和CPU的更新速度就可见一斑了。还是简单说说他们的设计原理吧。CPU:但是,现在我要问一句:“什么是CPU?”我相信大多数人并不知道

2017-08-13 01:07:01

Unity Shader-非主流纹理采样研究(流光,溶解,隐身效果)

简介今天来研究几个效果,最近比较忙,所以来研究几个比较简单的效果。不过也是游戏中常用的一些效果,流光效果,按照方向的溶解效果。其实这几个效果主要运用的就是世界空间采样的一个技术。不多说,下面进入正题。流光效果首先来看一下流光效果。流光效果是一个非常常见的效果,不仅仅是游戏,一些广告之类的也都会有这种效果。流光的原理还是比较简单的:首先就是需要一张流光图,这张流光

2017-08-11 09:56:48

Unity3D默认的快捷键

原文地址:http://blog.csdn.net/ganlijianstyle/article/details/7985509Windows系统Unity3D中的快捷键组合键键功能File 文件Ctrl NNew Scene 新建场景Ctrl O

2017-08-05 14:16:04

傅里叶分析之掐死教程(完整版)

原文地址:https://zhuanlan.zhihu.com/p/19763358?columnSlug=wille作 者:韩 昊知 乎:Heinrich微 博:@花生油工人知乎专栏:与时间无关的故事谨以此文献给大连海事大学的吴楠老师,柳晓鸣老师,王新年老师以及张晶泊老师。转载的同学请保留上面这句话,谢谢。如果还能保留文章来源就更感激不尽了。

2017-08-01 14:07:50

C#反射(Reflection)详解

原文地址:http://www.cnblogs.com/wangshenhe/p/3256657.html本人理解:装配件:Assembly(程序集)晚绑定:后期绑定MSDN:反射(C# 编程指南)-----------------原文如下--------1、 什么是反射2、 命名空间与装配件的关系3、 运行期得到类型信息有什么用4、 如何使用反

2017-07-30 23:37:50

《代码整洁之道》读书笔记

1.重复是一切邪恶的根源,许多原则与设计规则都是为了避免重复而产生的。如面向对象编程的基类,面向组件编程等等。2.添加有意义的语境,对于命名,起一个比较容易检查的命名。比如都在一个工程里面,就没有必要为所有类增加一个相同的前缀了,否则当你搜索的时候,所有的东西就都会出来了。。。。3.函数应该只做一件事,做好这件事,只做这一件事。而且要尽可能短小,让人一眼能从函数名字看出这个函数要干

2017-07-29 20:18:06

Unity Shader-遮挡处理(X-Ray,遮挡描边,遮挡半透,遮挡溶解)

游戏中处理遮挡的几种常用的方法,遮挡溶解,遮挡描边,遮挡半透,X光效果。

2017-07-26 01:38:18

Unity Shader-Command Buffer的使用(景深与描边效果重置版)

Command Buffer是Unity5新增的一个灰常灰常强大的功能。先祭出官方介绍和文档。我们在渲染的时候,给OpenGL或者DX的就是一系列的指令,比如glDrawElement,glClear等等,这些东西目前是引擎去调用的,而Unity也为我们封装了更高一级的API,也就是CommandBuffer,可以让我们更加方便灵活地实现一些效果。CommandBuffer最主要的功能是可以预定义一些列的渲染指令,然后将这些指令在我们想要的时机进行执行。本篇文章简单介绍一下CommandBuffer的使用,

2017-06-07 01:25:22

查看更多

CSDN身份
  • 博客专家
勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得