Graphic Tips
文章平均质量分 85
wolf96
Welcome, I'm Lin Dong. I am an U3D Programmer in ShangHai, I love Game Developing and Rendering, I will be absorbed in it.here is my GitHub URL https://github.com/wolf96
email URL wolf_crixus@sina.cn
展开
-
ARM Unity开发者图形优化指南总结
优化列表应用层:1.用 OnBecameVisible()和OnBecameInvisible()来开关高cpu消耗的物体,或者该物体的部分高消耗逻辑代码2.用 Vector3.sqrMagnitude来替代Vector3.Distance()或者Vector3.magnitude.Vector3.sqrMagnitude sums the squared compon...原创 2019-06-04 18:54:13 · 1666 阅读 · 0 评论 -
Unity3d 实现顶点动画
在今年GDC上发现一个非常有趣的演讲,叫做Animating With Math,遂实现之,是讲述顶点shader动画的,举了几个经典的例子,但是讲者并没有给代码,而是像虚幻引擎那样的节点,这样更加清楚明了之前博主通过顶点着色器实现了谁的波动算法:顶点着色器动画可以减少动画的开销,并减少关节joint的数量开始举的例子都很简单,可以着手一试 关于vertex c原创 2016-04-20 07:23:11 · 9633 阅读 · 0 评论 -
Unity3d 模拟视锥的实现
一个独立游戏 Teleglitch 使用了一种欺骗手法来模拟视锥,效果如下:博主看了看了看提示Actually, the line of sight shadows aren’t done with perspective. They are just black polygons extruded from the walls away from the player.原创 2016-04-16 11:52:43 · 5778 阅读 · 1 评论 -
进阶光照与材质之光照和反射模型
第五章讲述了一些漫反射模型和镜面反射模型的原理和数学公式博主在unity中实现了一下,把部分结果贴在上面有下面几个主题:渲染公式基本光照定义光照和lambert法则双向反射分布函数BRDF漫反射材质原理简介与模型镜面反射材质原理简介与模型基本光照定义对于我们眼睛可见的光对于表面的作用,他们会发生,反射,穿透,折射,吸收,或者表面自发光。原创 2016-04-11 06:53:55 · 8640 阅读 · 2 评论 -
进阶光照与材质之物体和材质
第四章主要介绍分析真实世界中某些常见材质的特性与细节,作者提醒我们应该时刻关注大自然真实世界中材质的特点,加强自己的思考与敏锐的观察力和感知力对渲染实现很有帮助。作者主要对如下材质进行了分析:塑料木头:树,木材,被油漆过的木材叶子和植物金属混凝土和石头:混凝土,砖石,自然界的石头皮肤头发和毛发大气半透明材质:玻璃,水油漆旧的磨损的材质原创 2016-04-09 11:44:46 · 4533 阅读 · 0 评论 -
进阶光照与材质之模拟真实世界的光照
读书笔记第二章,加了许多博主的理解和补充。第二章讲的也是基础知识,补充了博主许多知识缝隙。介绍了四中类型光的光照模型,点光源,面光源,方向光,聚光灯,和他们的光照模型,还简单介绍了下GI。这章的几个topics:1.理想的点光源2.几何衰减3.光照通过物质的衰减4.方向光5.面积光6.聚光灯7.本地和全局光照模型8.环境光作者首先介绍了真实世界中一些原创 2016-04-06 17:07:03 · 3554 阅读 · 0 评论 -
进阶光照与材质之光的物理学
对advanced lighting and materials with shaders的读书笔记与总结,05年的老书了,这本书简单并且通俗易懂这一章是讲述光照理论知识的,虽然大部分的理论都知道,但是复习一遍总是好的正如作者所说,你在知道“how”之前需要知道“why”光的二元性之所以二元性,是因为我们的大前辈科学家们发现的光的性质各不相同,而现在又发现,其实这两者性原创 2016-04-06 07:59:47 · 1697 阅读 · 0 评论 -
【PS3】二之国 白色圣灰的女王 日本制造的视觉效果
原文:http://www.element3ds.com/thread-29245-1-1.html二之国 白色圣灰的女王走向RPG的王道 日本制造的视觉效果本作用CG再现了吉卜力工作室的温暖世界观。作为把以前只能在电影作品中看到的世界积极运作的杰作,成为一个大话题。这次因为在Level5的开发组中打听到了本作中加入的思路,所以想介绍一下。TEXT_久代忠史翻译 T转载 2016-02-21 19:10:39 · 4733 阅读 · 2 评论 -
【lighting】Color and Vision
The Electromagnetic and Visible Spectra原文:http://www.physicsclassroom.com/class/light/Lesson-2/The-Electromagnetic-and-Visible-SpectraThe Electromagnetic and Visible SpectraVisible Light a转载 2016-02-19 20:28:47 · 4935 阅读 · 0 评论 -
几个著名的3D测试场景与模型
来自:http://tieba.baidu.com/p/2516805630Sponza Atrium(Marko Dabrovic版)由来自Lightwave的Marko Dabrovic于2002年创建,原型是位于克罗地亚南部港口城市杜布罗夫尼克的著名旅游景点、有400余年历史的Sponza宫。因其发杂又易于进行观察对比的结构,sponza成为了一个著名的测试全局光照的场景。场转载 2015-12-31 06:44:11 · 12745 阅读 · 0 评论 -
Geometry-Shader Object
Geometry-Shader ObjectA geometry-shader object processes entire primitives. Use the following syntax to declare a geometry-shader object.[maxvertexcount(NumVerts)]void ShaderName ( Pr转载 2015-11-18 20:37:39 · 1298 阅读 · 0 评论 -
Shader Stages
The Direct3D 10 and higher pipeline contains three programmable-shader stages (the rounded blocks in the pipeline functional diagram).Each of these shader stages exposes its own unique functionali转载 2015-11-20 17:54:02 · 1139 阅读 · 0 评论 -
Light Pre-Pass 渲染器----为多光源设计一个渲染器
翻译来源:http://blog.csdn.net/xoyojank/article/details/4460953作者: Wolfgang Engel, 原文: http://www.wolfgang-engel.info/RendererDesign.zip 渲染器设计就像为一座房子打地基, 结果可能比预期大了, 小了, 或者太笨重了. 预先了解要在它之上建造什么, 并转载 2015-09-24 18:35:15 · 1341 阅读 · 0 评论 -
Real-Time Rendering 笔记
里面有些公式和矩阵无法在电脑上书写,故用纸笔记录了一些笔记,比如公式的推算,注意要点等. 由于电子书是黑白图, 不好理解, 所以弄了彩色配图上来Chapter 1 Introduction1. 实时渲染---图像在计算机上快速的显示2. 15fps --- 实时渲染的基本fps. 72fps以及更大的fps观察者无法发现其中的差别60fps 对反应时间来说太转载 2015-09-21 13:24:04 · 3131 阅读 · 1 评论 -
Color Temperature & Color Rendering Index DeMystified
http://lowel.tiffen.com/edu/color_temperature_and_rendering_demystified.html"What is color? No object of itself alone has color.We know that even the most brightly colored obje转载 2016-04-21 16:13:59 · 2269 阅读 · 0 评论 -
Reproducing Real World Light
http://planetpixelemporium.com/tutorialpages/light.htmlWhite BalanceOccasionally the question arises as to how to reproduce the "real" color of light sources in a rendered environment. I set out转载 2016-04-21 17:38:02 · 1146 阅读 · 0 评论 -
关于Texture Cache简单总结
Texture Cache是一个存储图片数据的只读cache按照正常uv顺序读贴图tex cache有高命中率Texture Cache在 shader processor附近,所以它有高吞吐率,并且低延迟上图可见有许多 shader corehttps://computergraphics.stackexchange.com/questions/355/how-does-te...原创 2019-02-22 19:15:51 · 6412 阅读 · 1 评论 -
Tiled Based Deferred Shading与Forward+
Tiled Based流程 1.将屏幕分成小块,每个小块为一个视锥体 2,(depth bounds)在每一个视锥体中,根据ZBuffer得到每个Tile的MinZ和MaxZ,用MinZ到MaxZ这片区域对光做交点测试(使用compute shader) 因此不需要光体积,点光源只需要position和range,spotlight也用球来做剔除bound...原创 2019-01-01 15:41:59 · 6167 阅读 · 5 评论 -
延迟渲染与前向渲染
The basic idea behind deferred shading is to perform all visibility testing before performing any lighting computations.-RealTimeRendering 3rd延迟着色的基本思想是在执行任何光照计算之前执行所有可见性测试。General goal of the a...原创 2018-12-11 17:58:06 · 6049 阅读 · 0 评论 -
关于EarlyZ
在前向渲染中,ZTest是在Fragement Shader之后进行的,也就是说,被遮挡的部分也要绘制FS,就产生了Over Draw,其实很费,Early Z Culling就解决了这个问题Early fragment tests, as an optimization, exist to prevent unnecessary executions of the Fragment Shad...原创 2018-12-14 12:35:02 · 2907 阅读 · 0 评论 -
基于物理的的相机(一):曝光
Moving Frostbite to Physically Based Rendering中讲了Frostbite引擎的基于物理的整套管线流程,其中就包括物理相机世界中的部分物体亮度是很高的,比如光源,相机的亮度范围也是有限,就需要将世界的亮度重新映射到相机的亮度范围,最终显示在照片上 需要做这件事的处理就是曝光,曝光代表有多少光线显示在图像上。控制曝光的三个参数就是:快...原创 2018-11-02 20:24:31 · 1511 阅读 · 0 评论 -
Direct3D 10 & Direct3D 11 Pipeline Stages
Pipeline Stages(DX11)The Direct3D 11 programmable pipeline is designed for generating graphics for realtime gaming applications. This section describes the Direct3D 11 programmable pipeline. The f转载 2015-11-20 17:56:08 · 1008 阅读 · 0 评论 -
Unity5 的新旧延迟渲染Deferred Lighting Rendering Path
unity5 的render path ,比4的区别就是使用的新的deferred rendering,之前的4的deferred rendering(其实是light prepass)也被保留了下来。Legacy Deferred Lighting Rendering Path(light prepass)老旧的Deferred Rendering Path,使用了light pre原创 2015-09-25 09:46:42 · 6998 阅读 · 0 评论 -
关于法线高频导致高光及环境反射闪烁的处理
normal mip maphttp://blog.selfshadow.com/2011/07/22/specular-showdown/http://www.selfshadow.com/sandbox/toksvig.htmlftp://download.nvidia.com/developer/Papers/Mipmapping_Normal_Maps.pdfhtt原创 2016-12-04 18:53:54 · 1558 阅读 · 0 评论 -
几个简单的各向异性光照模型
1.dot(N,H)^specularity fixed HdotA = dot(normalize(Normal + AnisoDirection), halfVector); float aniso = max(0, sin(radians((HdotA + _AnisoOffset) * 180f))); float spec = saturate(p原创 2016-10-31 19:13:46 · 8936 阅读 · 1 评论 -
DirectX 11の圧縮フォーマットBC1~BC7について
原文:http://www.webtech.co.jp/blog/optpix_labs/format/6993/http://www.webtech.co.jp/blog/optpix_labs/format/7006/米Net Applications社の調査によると、Windows XPは2014年4月の時点でも26.3%と高いシェアを保ってるようです。しかし、いくら转载 2016-09-27 13:40:09 · 2079 阅读 · 1 评论 -
D3D9 GPU Hacks
原文:http://aras-p.info/texts/D3D9GPUHacks.htmlIf you know more hacks or more details, please let me know in the comments!Most hacks are exposed as custom ("FOURCC") formats. So to check for tha转载 2016-09-27 13:27:48 · 1032 阅读 · 0 评论 -
图形学积累(持续更新,自用)
1.万物之源照亮物体表面的反射函数B(λ) = I(λ)R(λ)I(λ)照到物体表面区域的光谱,R(λ)构成物体的的材料(材质)的反射函数,B(λ)是到达传感器的光谱,也就是最终结果,所有对物体的渲染都能概括为这个光照模型原创 2016-01-03 06:37:57 · 1564 阅读 · 0 评论 -
TSSAO Temporal Screen-Space Ambient Occlusion (Unity3d 5 示例实现)
前提环境光(ambient occlusion)是一种GI,其简化形式SSAO可以用“微量高效”来形容,消耗得很少,得到的效果很好。环境光遮蔽(ambient occlusion)的本质是计算在一个点的半球面范围内有多少方向被阻塞(如下图1.2.1),然后根据它调整表面颜色。如果实时渲染使用的话非常消耗,所以在游戏中一般都使用(screen-space ambient occlusion)原创 2015-10-09 10:56:03 · 4188 阅读 · 1 评论 -
人眼的视觉特性
原文:www.360doc.com/content/13/1218/09/153944_338062866.shtml 1、引言 人眼的视觉系统是世界上最好的图像处理系统,但它远远不是完美的。人眼的视觉系统对图像的认知是非均匀的和非线性的,并不是对图像中的任何变化都能感知。例如图像系数的量化误差引起的图像变化在一定范围内是不能为人眼所觉察的。因此转载 2015-10-10 13:48:31 · 20201 阅读 · 0 评论 -
新图形API为unity5 带来了什么&下一代新图形API的好处
西瓜的演讲ppt翻译+解释+其他: wolf96 在最基本的层面上,这些新api是为了改进CPU性能和效率,通过:减少CPU渲染瓶颈的情况,提供更多可预测和稳定的驱动的行为,给应用程序更多控制,就像在控制台开发一样 在传统的api,通常只有单个CPU线程提交GPU的工作。当试图渲染一个极其复杂的场景时,可能成为一个瓶颈。因此,大多数应用程序尝试在“渲染线程”做尽原创 2015-08-31 09:46:51 · 2933 阅读 · 3 评论 -
unity3d 几种镜头畸变
1.Fisheye distortion 鱼眼镜头解释来自百度百科:鱼眼镜头是一种焦距为16mm或更短的并且视角接近或等于180°。 它是一种极端的广角镜头,“鱼眼镜头”是它的俗称。为使镜头达到最大的摄影视角,这种摄影镜头的前镜片直径很短且呈抛物状向镜头前部凸出,与鱼的眼睛颇为相似,“鱼眼镜头”因此而得名。关键代码如下:float2 fisheye(float2 uv){floa原创 2015-07-22 06:19:35 · 14226 阅读 · 3 评论 -
unity3d shader之实时室外光线散射(大气散射)渲染
散射需要:吸收,内散射,外散射分为瑞利散射Rayleigh Scattering和米氏散射 Mie Scattering 后面会详细讲解大气中散射由多种原因产生,微粒,尘埃,水蒸气等等阳光由于散射增加会减弱并变色 物体也会随着距离增加散射增加而减弱并变色 大气光线散射由于 一天中的时间,天气,污染的改变而改变散射共通篇Radiometric原创 2015-07-30 09:26:04 · 10768 阅读 · 2 评论 -
一些随机噪波函数(随时更新)
汇总自各网站(随时更新)Gradient noisewiki:https://en.wikipedia.org/wiki/Gradient_noisePerlin noise伪代码:// Function to linearly interpolate between a0 and a1 // Weight w should be in the range原创 2015-07-13 18:57:55 · 3604 阅读 · 0 评论 -
超级采样 Supersampling 方式汇总
超级采样是一个spatial 抗锯齿的一种方法,用于消除走样(锯齿和像素化的边缘)从电脑游戏上的渲染的图片或者其他的电脑程序中产生。不像现实中的物体有连续光滑的曲线,锯齿的产生是因为电脑显示给浏览者的是大量的正方形。这些“像素”都是一样大的,每个都有一种颜色。一条线只能被显示成像素的集合,因此出现了锯齿,除非是绝对水平或垂直的线。超级采样的目的是为了减少这种事情,从几个在像素中的实例进行颜色采样(原创 2015-05-01 14:27:22 · 17869 阅读 · 0 评论 -
Unity3d 游戏中的实时降噪-对Square Enix文档的研究与实现
看到SE的技术文档关于降噪的决定研究一下,本次试验场景: 文章中提到了3中主要滤波方法,最后一种方法又有三种方式分别为Conventional geometry-aware filtering,Distribution-Aware Filtering,Specular Lobe-Aware Filtering and Upsampling根据公式做了一些,自己弄得除噪方法不知原创 2015-06-07 09:02:10 · 3116 阅读 · 0 评论 -
中国计算机学会推荐国际学术期刊 (计算机图形学与多媒体)
一、A类序号刊物简称刊物全称出版社网址1TOGACM Transactions on GraphicsACMhttp://www.acm.org/tog2TIPIEEE Transactions on Image ProcessingIEEEhttp://www.signalpr转载 2015-06-01 20:31:59 · 1819 阅读 · 0 评论 -
unity3d Hair real time rendering 真实头发实时渲染
先放上效果惊现塞拉酱算法是Weta Digital根据siggraph2003的论文加以改进,改进之前使用的是Kajiya and Kay’s 模型,它能量不守恒,也就是说不是基于物理的,不准确 电镜下真实头发丝纤维的照片,我们发现上面有很多重叠的角质层叫做毛小皮也叫毛鳞片,他们相对根部的倾斜角度大约为3°,近似模型如下图 头发纤维的模型原创 2015-05-18 16:09:21 · 15256 阅读 · 5 评论 -
《游戏引擎架构》中英词汇索引表
简介此词汇索引表源自《游戏引擎架构》的中英索引,支持搜寻及排序,以方便读者查阅。遇到游戏相关的术语也可利用本表查找其中英翻译。欢迎提供意见反馈。中英双语索引表Search: 英文中文页数 2D angular acceleration二维角加速率5802D angular dynamics二维旋转动力学5转载 2015-05-05 12:18:29 · 5201 阅读 · 0 评论 -
Unity3d shader之次表面散射(Subsurface Scattering)
次表面散射是一种非常常用的效果,可以用在很多材质上如皮肤,牛奶,奶油奶酪,番茄酱,土豆等等初衷是想做一个牛奶shader的,但后来就干脆研究了sss这是在vray上的次表面散射效果这是本文在unity中实现了的次表面散射效果:左侧为BRDF(双向反射分布),右侧为BSSRDF(双向次表面散射反射分布) 左侧为BRDF(双向反射分布),右侧为BSSRDF(双向次表面散射反射分布原创 2015-05-10 09:13:41 · 21459 阅读 · 8 评论