将漫反射的颜色改为从纹理贴图中获取,逐像素计算. Shader "Custom/11-Texture" { // 纹理贴图,BlinnPhong光照模型 Properties{ //_Diffuse("Diffuse Color", Color) = (1,1,1,1) // 可在编辑器面板定义材质自身色彩 _MainTex("Main Tex",2D) = "white"{} // 纹理贴图 _Color(,,,) // 控…
本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接:http://blog.csdn.net/poem_qianmo/article/details/40955607 作者:毛星云(浅墨)    微博:http://weibo.com/u/1723155442 邮箱: happylifemxy@163.com 本篇文章中.我们学习了Unity Shader的基本写法框架,以及学习了Shader中Properties(属性)的详细写法,光照.材质与颜色的详细写法.写了6个Shader作为…
shader和Material的基本关系 Shader(着色器)实际上就是一小段程序,它负责将输入的Mesh(网格)以指定的方式和输入的贴图或者颜色等组合作用,然后输出.绘图单元可以依据这个输出来将图像绘制到屏幕上.输入的贴图或者颜色等,加上对应的Shader,以及对Shader的特定的参数设置,将这些内容(Shader及输入参数)打包存储在一起,得到的就是一个Material(材质).之后,我们便可以将材质赋予合适的renderer(渲染器)来进行渲染(输出)了. 所以说Shader并没有什么…
写在前面 自己写过Vertex & Fragment Shader的童鞋,大概都会对Unity的光照痛恨不已.当然,我相信这是因为我们写得少...不过这也是由于官方文档对这方面介绍很少的缘故,导致我们无法自如地处理很多常见的光照变量.这篇我们就来讨论下Unity内置的一些光照变量和函数到底怎么用. 以下内容均建立在Forward Rendering Path的基础上. 自己总结的,如果有硬伤一定要告诉我啊!感激不尽~ 主要参考: http://en.wikibooks.org/wiki/Cg_P…
写在前面 写这篇文章的时候,我断断续续学习Unity Shader半年了,其实还是个门外汉.我也能体会很多童鞋那种想要学好Shader却无从下手的感觉.在这个期间,我找到一些学习Shader的教程以及一些书籍.我整理在这篇博客里. 什么是Shader Shader,也就是着色器,它的工作就是读取你的网格并渲染在屏幕上.Shader可以定义一些属性,你会用它来影响渲染模型时所显示的效果.当存储了这些属性的设置时,就是一个Material,材质. Shader有以下几个种类: Surface Sha…
几个有用的Unity 内置shader: (一)Standard RenderingMode:Opaque为实体渲染,更改Color的透明通道不会有影响:Cutout会把图片的透明通道显示出来,非严格意义上讲与Opaque想反:Fade模式下更改透明通道会有半透明效果,同时反光等效果也会跟随透明通道值变化:Transparent为半透明模式,与Fade类似,但是反光效果不会随着透明通道变化而改变,而且如果模型不同部分独立,且均有Transparent模式的材质,会显示有问题(这是此种模式的bug…
自己做个总结先.当然文中很多内容都是从各位大神的文档当中看的.我只是站在巨人的肩膀上.       首先什么是shader?其实就是一个在显示屏当中的显示程序,俗称着色器.它可以定义物体在硬件显示屏当中的显示方式,例如物体颜色和表面贴图,光泽等.貌似3Dmax和maya都有相关的shader程序.本篇基于unity内部的shader总结.       shader在unity的编程当中有3种,1.固定管式shader :2.可编程shader: 3.surface shader 表面shader…
一:简单 Blur 算法 一个像素的颜色值由其邻近的若干像素和自己的颜色值的平均值重新定义,以此达到模糊的效果. 如下图,红色的像素点的值将由它和它周围的24个像素的平均值重新定义.计算的范围一般由一个“半径”来决定,表示由该点为中心.“半径”为距离 辐射的范围,对于下图“半径”为2. 二:shader代码 Shader "Unlit/Blur" { Properties { _MainTex ("Texture", 2D) = "white"…
Unity内置shader  4.3.1 版本的  其他版本可以自己修改名称 下载地址 http://download.unity3d.com/download_unity/builtin_shaders-4.3.1.zip…
Computer Shader是什么? Computer shader是一段运行在GPU上的一段程序. 什么时候用Computer shader? 假如我们把一个cube当作单独的点,用许多个(cube)点来组成一个变换矩阵. 每帧cpu都需要对矩阵的点进行排序,批处理,将每个点位置复制给GPU,URP每帧需要执行两次,DRP必须执行至少三遍. 当100*100个点时,也许我们的cpu可以轻松应对,但如果我们想组成分辨率更高的图形,1000 * 1000,一百万个点时,CPU和GPU的工作量会大…