Unity Shader应用
文章平均质量分 82
起个名字真的好难啊
这个作者很懒,什么都没留下…
展开
-
Unity Shader - 对Cubemap进行环境映射(世界空间和切线空间下的对比)
采样图效果: 上面3幅图的效果分别是:原始Cubemap、世界空间下的采样、切线空间下的采样;由以上对比图可知,在需要使用Cubemap 进行环境映射等情况下,我们就需要在世界空间下对Cubemap进行采样。切线空间转换到世界空间的方法://世界空间下的法线、切线、副法线float3 worldPos = mul(_Object2World, v.vertex).xyz...原创 2018-06-28 14:05:40 · 1950 阅读 · 0 评论 -
Unity Shader - 阴影(平面阴影&球体阴影)
阴影效果:上面两幅图分别为:平面阴影和球体阴影的效果平面阴影简述:平面阴影是一种比较特殊的情形。在这种情形里,我们只考虑物体的阴影投射到平面上的情形,所以有一套相对比较简单的专用算法。首先考虑最简单的情况,如何计算一个平行光的投影。平行光在我们的计算中其实就是一个方向矢量,是阴影的投射方向,而平面是阴影要影响的目标物体。我们需要知道到目标物体的Obj...原创 2018-06-17 15:25:49 · 1981 阅读 · 0 评论 -
基于物理着色(PBS)及Unity中的实现
==========================================================首先是一些基本概念 立体角是一个物体对于一个特定观察点在三维空间中的角度(观测到的大小),记作Ω,单位为球面度(sr),即三维弧度,1球面度的立体角所对应的球面表面积为r2(r为球半径)辐射通量 Radiant Flux光源每秒钟发射的功率,记作...转载 2019-02-12 18:19:47 · 1026 阅读 · 1 评论 -
UnityShader 漫反射(兰伯特与半兰伯特光照模型-逐顶点和逐像素光照)
漫反射效果漫反射是指投射在粗糙表面上的光向各个方向反射的现象。当一束平行的入射光线射到粗糙的表面时,表面会把光线向着四面八方反射,所以入射线虽然互相平行,由于各点的法线方向不一致,造成反射光线向不同的方向无规则地反射,这种反射称之为“漫反射”或“漫射”。这种反射的光称为漫射光。很多物体,如植物、墙壁、衣服等,其表面粗看起来似乎是平滑,但用放大镜仔细观察,就会看到其表面是凹凸不平的,所以本来是平行的...原创 2018-05-15 16:05:24 · 2750 阅读 · 0 评论 -
UnityShader 序列帧动画效果
序列帧动画效果 ====》实现原理主要的思想是设置显示UV纹理的大小,并逐帧修改图片的UV坐标。(可分为以下四步)1:我们首先把 _Time.y 和速度属性_Speed 相乘来得到模拟的时间,并使用CG 的floor 函数对结果值取整来得到整数...原创 2018-05-15 10:58:35 · 2594 阅读 · 3 评论 -
UnityShader 浮雕凹凸贴图BumpMap与法线贴图NormalMap的原理及其区别
效果图: 浮雕凹凸贴图效果 ====》 高度图 法线贴图凹凸效果 ====> 法线贴图简介法线贴图是目前游戏开发中最常见的贴图之一。我们知道,一般情况下,模型面数越高,可以表现的细节越多,效果也越好。但是,由于面数多了,顶点数多了,计算量也就上去了,效果永远...原创 2018-05-20 17:42:39 · 5356 阅读 · 0 评论 -
Unity Shader - 2D描边效果
2D描边效果: 上面是实现2D描边效果的3种不同效果,左边为原图,右边为效果图方式一:平均透明度法原理:取每个像素及其周围的Alpha值进行平分,边界处因为对边界外也进行了采样,所以叠加后透明度小于原有透明度,将小于一定阈值的alpha设置为描边色;(适用于周围为透明效果的2D贴图)代码实现如下:Shader "Custom/...原创 2018-11-30 12:12:18 · 2454 阅读 · 0 评论 -
Unity Shader - Sprite Shader之简单抠图效果
Sprite抠图效果: 抠掉白色 抠掉黑色前言在PhotoShop中我们经常会用到抠图操作,现在就用Shader实现一个简单的抠图效果。实现原理:使用当前像素颜色与需要...原创 2018-05-30 15:05:46 · 4629 阅读 · 0 评论