自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 资源 (1)
  • 收藏
  • 关注

原创 投影纹理映射--将纹理投影到CUBE墙

投影纹理映射–将纹理投影到CUBE墙效果图:效果还可以。这个是利用投影纹理映射的原理,使用投影机将投影的纹理映射到视锥范围内的物体上的一个应用。具体底层的原理有很多优秀的贴子,可以参考[投影纹理映射],这里讲得很详细。(https://blog.csdn.net/liu_lin_xm/article/details/4850526)原理这里就不多做赘述了,直接说具体的实现。我在主摄像机(Camera)添加了投影机组件(Projector)。这里可以添加到任何地方,关键在元projector

2021-04-25 16:32:59 412

原创 狼人杀2D墙体阴影Shader解决方案

狼人杀2D墙体阴影先看效果这个阴影是动态的,随着人物的移动(点光源的移动),阴影也随之变化。整体的表现效果非常好。思路人物可抽象为点光源,而墙体则抽象为线段。线段可以阻挡光线。那么在shader片段程序中,如何来判断当前像素的着色,是有光还是黑暗呢?上图可以看到 当前uv与点光源组成的线段,与 墙体线段 如果相交则 当前uv着色偏暗,反之则有光照。由于我没有这么多素材来做到 道路和墙体的效果,这里仅是核心shader的编码。先看看效果:比较简陋,但已经把核心的功能说明清楚了。红

2021-04-08 12:18:37 345

原创 unity 3D模型流光Shader

今天分享下unity中3D模型的一些Shader。先来个最简单的,就是上下滚动的纯色流光。代码:Shader "JackyShader/flashShader"{ Properties { _MainTex ("Texture", 2D) = "white" {} _centerRange("CenterRange",Range(-2.0, 1)) = 0.5 _flashColor("FlashColor", Color) = (1, 0, 0, 1) _flashHeigh

2020-07-21 19:33:19 1781 1

原创 unity 显示3D模型被遮挡时透明边框效果

在3D游戏中,地图上的各种物件会对模型照成遮挡。主要是在主角上 体验很不好。让被遮挡的部分有个透明边框显示出来,是个比较好的解决方案。思路:要分成两个PASS来做,1个就是画出透明边框,另一个是正常的显示纹理。透明边框的PASS需要把在被遮挡时显示,这里需要对深度测试和深度写入做操作。当没被遮挡到时则正常显示模型。上节做完边缘泛光刚好可以用上,稍微改造下就可以被边缘显示出来。看图:成品效果:ZTest 默认是LEqual的 则是相对于摄像机在越靠前的物体优先渲染。则后面的物体会被前面的物体遮挡

2020-07-14 19:49:15 2730

原创 untiy 利用法线做高效3D模型 边缘泛光

在unity3D项目中,当选中一个3d模型,需要对其做一个外观的变化,来表现一个交互。经常是以描边或边缘泛光的形式来处理。描边的效果经常都是通过两个PASS来实现的,1个输出 沿着法线发现 放大的模型,再统一着色,这个颜色就是描边的颜色。另一个则直接输出。由于第一个沿着法线有做放大,所以就能实现描边的效果。而边缘泛光则只需要一个PASS解决。当然效果有点区别,这个看需求而定。思路:核心就是边缘检测,通过视向量和顶点的法向量的点积来实现。当两个向量的夹角越大,越靠近边缘。依赖这个做颜色强度,和纹理颜色

2020-07-14 16:43:47 554

原创 Unity后期制作 运动模糊Shader

帮朋友写一个后期制作的运动模糊Shader,分享给大家。思路:每次采样都取中心点到当前点的向量,按照固定的偏移数值去做N次采样,取平均值。效果:没加运动模糊的效果加了运动模糊的效果代码:Shader "JackyShader/runShader"{ Properties { _MainTex ("Texture", 2D) = "white" {} _Strenge ("Strenge", float) = 2.0 _DirStrenge("DirStrenge", fl

2020-07-07 17:38:00 571

原创 Unity 简单的积雪Shader

在网上找的资源,先看看原始的效果。这个资源目前使用的是Unity默认的Standard。效果还是比较明显的。这个素材只是用于演示,并不是最合适的。应该是那种高低不平的石头或者是小山坡,丘陵形状的会好些。但由于临时找不到,只能用上这个了。。。思路:用顶点的法向量与向上(0.0,1.0,0.0)做一个点积,让夹角越小的地方,融合到更多的白色(积雪的颜色)。Shader "JackyShader/SnowCover" {Properties { _MainTex ("Base (RGB)", 2D.

2020-07-06 12:19:25 1206

原创 Cocos使用一张贴图实现3D感星空

有段时间没码博客了。今天分享一个使用一张贴图在一个2D平面上实现3D感星空的Shader。意图:前段时间游戏登录界面背景图片需要临时更换,美术同学没办法快速提供,于是我临时想到做一个动态星空来当登录背景。贴图:这是在网上找的星空的图片没找到特别合适的,勉强符合要求。主要看中有黑色块较多,适合做加法叠加。效果:效果还是相当的明显的。思路:做多次的不同速的sin cos 偏移采样,最终再做叠加。使用TIME函数做驱动,让其动起来。代码:#ifdef GL_ES....void main

2020-06-29 15:44:36 946 2

原创 shader 扇形CD 类似于苹果app安装载入CD效果

背包中特殊物品有cd需求,参考了下苹果的效果。思路这个效果变暗的区域,我们可以使用rgb除以一个正整数的形式来实现变暗。如这样:color.rgb/3.0里面有一个变暗的动态圆,中间环形是正常颜色,最外圈是变暗的静态环,覆盖整个图标。那这里就需要有两个半径,一个是内圆半径R,一个是外环半径R1。先绘制出两个 变暗的区域出来。下面展示一些 内联代码片。vec2 center = vec2(0.5,0.5); float R = 0.15; float R1 = 0.2; vec2 uv =.

2020-05-18 12:10:20 356 2

原创 Cocos2d Shader 图片流光效果,并优化如何去除if else 判断

CocosShader 图片流光效果,并优化如何去除if else 判断介绍这里分享一个简单的图片流光Shader。原理很简单就是一个带范围的直线区域,在区域内做颜色的乘法叠加(目的是为了增强亮度)。并让区域在X轴方向周期性滚动。下面我会在功能一样的情况下,给出3个版本。为什么要这么做呢?废话不多说,上代码。代码顶点程序,这个没什么特别,3个版本都是一样的。attribute vec4...

2020-05-05 17:26:43 1189 1

shader_cd.rar

shader 扇形CD 类似于苹果app安装载入CD效果 源码 源码为glsl代码,如引擎需要CG,稍加改动就可以了

2020-05-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除