转载自风宇冲Unity3D教程学院特别讲:CG函数本讲不需立刻看完,遇到相关函数时来查阅即可。(本文截图来源:Cg教程_可编程实时图形权威指南)E.1 数学函数E.2 几何函数E.3 纹理贴图函数E.4 导数函数E.5 调试函数E.1 数学函数E.2 几何函数E.3 纹理贴图函数E.4 导数函数E.... Read More
posted @ 2015-03-11 18:47 zhangdongli Views(310) Comments(0) Diggs(0) Edit
转载自风宇冲Unity3D教程学院 本讲会陆续补充一些问题的解答。问:(1) TRANSFORM_TEX是做什么的(2)float4 _MainTex_ST 中的_MainTex_ST变量也没有用到,为啥非要声明一下?答:(1)简单来说,TRANSFORM_TEX主要作用是拿顶点的... Read More
posted @ 2015-03-11 12:59 zhangdongli Views(237) Comments(0) Diggs(0) Edit
转载自风宇冲Unity3D教程学院以下内容不需要入门的时候立刻阅读和理解,建议逐渐深入学习后,不时回来看看即可。什么是GPU?GPU:Graphic Processing Unit,中文翻译为“图形处理器”。显卡包括(GPU,显存,显卡BIOS,显卡PCB板)。什么是Shader?Shader程序:... Read More
posted @ 2015-03-11 12:57 zhangdongli Views(383) Comments(0) Diggs(0) Edit
学习方法及技巧学习方法(1)由简入繁:自己写Shader,从最简单写起,简单的测试通过了,再一点点往里加。(2)多调试:例如,有一个float变量x。假如x范围是[0,1],则在frag片段函数里输出 float4(x,0,0,1)的颜色,以红色的深浅来观察x的值;如果x范围是[0,1000],则可... Read More
posted @ 2015-03-11 12:55 zhangdongli Views(380) Comments(0) Diggs(0) Edit
转载自风宇冲Unity3D教程学院即Graphics Library。Low-Level Graphics Library。计算matrices,发出类似OpenGL的immediate模式的渲染指令, 和其他低级图像任务。Graphic.DrawMesh()比GL更高效。GL立即绘制函数 只用当前... Read More
posted @ 2015-03-11 12:50 zhangdongli Views(525) Comments(0) Diggs(0) Edit
转载自风宇冲Unity3D教程学院Twirl是一个全屏画面扭曲的效果,新仙剑的战斗切换有用到这个效果。主要有三个设置:center 扭曲的中心点radius扭曲的范围angle扭曲的角度用到了如下函数Matrix4x4.TRS(Vector3 pos, Quaternion rotate,Vecto... Read More
posted @ 2015-03-11 12:43 zhangdongli Views(724) Comments(0) Diggs(0) Edit
转载自风宇冲Unity3D教程学院 Blur模糊其实理解了以后非常简单。核心原理就是1个点的颜色 并不用该点的颜色,而是用该点周围所有点的均值(1)确定取点范围, 例如周围3个像素 或者周围10个像素(2)确定各点权重,这也是高斯模糊的由来,主要颜色分配的比重为正态分布,即高斯... Read More
posted @ 2015-03-11 12:22 zhangdongli Views(514) Comments(0) Diggs(0) Edit
转载自风宇冲Unity3D教程学院简介Reflection Mapping,又叫Environment Mapping。对应TexGen的SphereMap和CubeReflect。是最快的reflect周围环境的算法最早出现的是Sphere Mapping,之后被Cube Mapping取代。Re... Read More
posted @ 2015-03-11 12:19 zhangdongli Views(780) Comments(0) Diggs(0) Edit
转载自风宇冲Unity3D教程学院GrabPass是一种特殊的pass类型。当物体将要被绘制时,它抓取屏幕内容并绘制到一张texture里。总体来说GrabPass开销较大,不如 AlphaBlend等指令。故能用AlphaBlend等指令实现的效果尽量用指令,不得不用GrabPass时才用Grab... Read More
posted @ 2015-03-11 12:13 zhangdongli Views(937) Comments(0) Diggs(0) Edit
转载自风宇冲Unity3D教程学院实现高级效果时,往往需要用到多个Pass.用AlphaBlend混合例1:将一张图 分别用红色 和 绿色渲染并混合(1)新建场景新建一个plane(2)新建一个material并随便赋张贴图,并让plane使用该materialmaterial所使用的shader如... Read More
posted @ 2015-03-11 12:09 zhangdongli Views(464) Comments(0) Diggs(0) Edit
转载自风宇冲Unity3D教程学院视差贴图的展示图一:注意轮胎印中的自阴影,实际上路面只是一个平地图二:孤岛危机的成功,视差贴图功不可没图三:视差贴图同样可用于人物,装备及道具本讲分四个部分一:优点特性二:基本原理三:使用方法四:视差计算第一部分视差贴图的优点及特性上一讲讲了法线贴图。法线贴图,无论... Read More
posted @ 2015-03-11 12:06 zhangdongli Views(1749) Comments(0) Diggs(0) Edit
转载自风宇冲Unity3D教程学院 上一讲我们讲了凹凸贴图以及生成法线贴图。这一讲来谈谈怎么使用法线贴图。一:法线贴图的原理二:法线贴图的实现三:法线贴图的使用四:法线贴图的格式一:法线贴图的原理光照效果很大程度上是由垂直于物体表面的法线决定的,因为法线影响反射光的方向。均匀垂直的... Read More
posted @ 2015-03-11 11:59 zhangdongli Views(1235) Comments(0) Diggs(0) Edit
转载自风宇冲Unity3D教程学院本讲分为两个部分一:原理二:实现 一:原理(1)眼睛与光让我们来看看一个粗糙的表面。 从远处看,你判断这个物体是粗糙的的唯一证据是在它表面上下的亮度有改变。你的大脑能够获得这些亮暗不一的图案信息,然后判断出它们是表面中有凹凸的部位。左边的一幅图就说明了... Read More
posted @ 2015-03-11 11:52 zhangdongli Views(3245) Comments(0) Diggs(0) Edit
转载自风宇冲Unity3D教程学院从本讲开始讲一些特效贴图。这些贴图大多数是在不采用高精度模型的情况下,以较小的代价获得最好的画面效果。而涉及的主要是与光有关的运算。(1) Bump Mapping 凹凸贴图(2) Normal Mapping 法线贴图(3) Parallax Mapping 视差... Read More
posted @ 2015-03-11 11:49 zhangdongli Views(331) Comments(0) Diggs(0) Edit
转载自风宇冲Unity3D教程学院HeightmapHeightmap, 高度图。通常Heightmap高度图储存成Gray Scale Image也就是常说灰度图。越白该点就越高,纯黑表示最低点,纯点表示最高点。8位灰度图有256阶。16位灰度图有65536阶。如果依然精度不够用的话(例如绘制大型... Read More
posted @ 2015-03-11 11:46 zhangdongli Views(2267) Comments(0) Diggs(0) Edit
转载自风宇冲Unity3D教程学院 十四讲我们实现了基本的Surface Shader,十五讲讲了光照模型的基础知识。这一讲说的是如何写光照模型。自定义光照模型主要分为4步:(0)架设框架,填写需要的参数(1)计算漫反射强度(2)计算镜面反射强度(3)结合漫反射光与镜面反射光代码配有... Read More
posted @ 2015-03-11 11:41 zhangdongli Views(324) Comments(0) Diggs(0) Edit
转载自风宇冲Unity3D教程学院简单的说,带光照的Shader的最终颜色输出为 材质颜色 * 光颜色,其中材质颜色:之前已经提到过,固定格式tex2D (_MainTex, i.uv)光颜色:光颜色 =自发光+环境光+漫反射光+镜面光下面详细讲解这四种光一:自发光由物体表面向四面八方发出的光emi... Read More
posted @ 2015-03-11 11:36 zhangdongli Views(380) Comments(0) Diggs(0) Edit
转载自风宇冲Unity3D教程学院 用Shader来实现光照是比较复杂的,有不同的光类型,不同的阴影选项,不同的Render Path(forward和Deferred)。 Unity只是把光照模型封装处理了,Shader的代码还是用CG/HLSL编写的。例一:最简单的Surface Shade... Read More
posted @ 2015-03-11 11:03 zhangdongli Views(753) Comments(0) Diggs(0) Edit
转载自风宇冲Unity3D教程学院 Alpha Blending,中文译作Alpha混合Blending就是控制透明的。处于光栅化的最后阶段。这里例如我们给一个模型贴一个材质,那么在某个点计算出来颜色值称为源,而该点之前累积的颜色值,叫目标。语法Blend Off 不混合Blend... Read More
posted @ 2015-03-11 10:52 zhangdongli Views(676) Comments(0) Diggs(0) Edit
转载自风宇冲Unity3D教程学院引言:本讲和下一讲主要讲Alpha即透明通道有关的内容。RGBA,其中最终在屏幕上显示的只有RGB即 红绿蓝组成的颜色,Alpha并没有任何颜色显示。A只是辅助颜色运算特别是多图层运算而已。例如在单图层的情况下(1,1,1,0.8)输出的是(1,1,1)*0.8即 ... Read More
posted @ 2015-03-11 10:47 zhangdongli Views(676) Comments(0) Diggs(0) Edit