项目要求一个文本自发光的效果,网上搜索了一下法线并没有找到有关代码,于是只能自己动手写了一个,先上效果吧

这里其实只用到了简单的模糊效果,本来想用的高斯模糊,但是发现效果还不如简单的模糊效果。下面是片元着色器的代码

float getTransparent(sampler2D MainTex, float2  uv)

{

fixed4 result = tex2D(_MainTex, uv);

return result.a;

}

fixed4 frag (v2f i) : COLOR

{

fixed4 lightCol = fixed4(0.0f, 0.612f, 1.0f, 1.0f);

fixed4 result = tex2D(_MainTex,i.uv);

float accAlpha = 0;

float offsetValue = _OffsetValue;

int lev = 7;

for(int lie = 0 - lev; lie <= lev;)

{

accAlpha = accAlpha + getTransparent(_MainTex, i.uv + offsetValue*float2(lie, -7));

++lie;

}

for(int lie = 0 - lev; lie <= lev;)

{

accAlpha = accAlpha + getTransparent(_MainTex, i.uv + offsetValue*float2(lie, -6));

++lie;

}

for(int lie = 0 - lev; lie <= lev;)

{

accAlpha = accAlpha + getTransparent(_MainTex, i.uv + offsetValue*float2(lie, -5));

++lie;

}

for(int lie = 0 - lev; lie <= lev;)

{

accAlpha = accAlpha + getTransparent(_MainTex, i.uv + offsetValue*float2(lie, -4));

++lie;

}

for(int lie = 0 - lev; lie <= lev;)

{

accAlpha = accAlpha + getTransparent(_MainTex, i.uv + offsetValue*float2(lie, -3));

++lie;

}

for(int lie = 0 - lev; lie <= lev;)

{

accAlpha = accAlpha + getTransparent(_MainTex, i.uv + offsetValue*float2(lie, -2));

++lie;

}

for(int lie = 0 - lev; lie <= lev;)

{

accAlpha = accAlpha + getTransparent(_MainTex, i.uv + offsetValue*float2(lie, -1));

++lie;

}

for(int lie = 0 - lev; lie <= lev;)

{

accAlpha = accAlpha + getTransparent(_MainTex, i.uv + offsetValue*float2(lie, 0));

++lie;

}

for(int lie = 0 - lev; lie <= lev;)

{

accAlpha = accAlpha + getTransparent(_MainTex, i.uv + offsetValue*float2(lie, 1));

++lie;

}

for(int lie = 0 - lev; lie <= lev;)

{

accAlpha = accAlpha + getTransparent(_MainTex, i.uv + offsetValue*float2(lie, 2));

++lie;

}

for(int lie = 0 - lev; lie <= lev;)

{

accAlpha = accAlpha + getTransparent(_MainTex, i.uv + offsetValue*float2(lie, 3));

++lie;

}

for(int lie = 0 - lev; lie <= lev;)

{

accAlpha = accAlpha + getTransparent(_MainTex, i.uv + offsetValue*float2(lie, 4));

++lie;

}

for(int lie = 0 - lev; lie <= lev;)

{

accAlpha = accAlpha + getTransparent(_MainTex, i.uv + offsetValue*float2(lie, 5));

++lie;

}

for(int lie = 0 - lev; lie <= lev;)

{

accAlpha = accAlpha + getTransparent(_MainTex, i.uv + offsetValue*float2(lie, 6));

++lie;

}

for(int lie = 0 - lev; lie <= lev;)

{

accAlpha = accAlpha + getTransparent(_MainTex, i.uv + offsetValue*float2(lie, 7));

++lie;

}

fixed4 col = 1*result.a + lightCol.rgba*(1.0f - result.a);

col.a = result.a + accAlpha/(float)((2*lev+1)*(2*lev+1));

col.a = col.a*(col.a + 1);

return col;

}

unity的shader貌似不能嵌套for循环,就只能如此了,例子这里是取了每点周围五个像素作为源色彩,求得均值作为当前像素色彩。

unity 发光字体_unity文本自发光效果相关推荐

  1. unity 发光字体_Unity 游戏开发技巧集锦之创建自发光材质

    Unity 游戏开发技巧集锦之创建自发光材质 Unity游戏开发技巧集锦教程大学霸内部资料 创建自发光材质 自发光材质(self-illuminated material)是指自己会发光的材质.生活中 ...

  2. unity 发光字体_Unity中字体的一些知识

    Unity中的字体常用的有:内置字体,外部导入的字体,自定义的字体. 1,内置字体. 内置字体一般是指unity自带的字体,Windows下unity自带字体为Arial,如果游戏中使用Arial字体 ...

  3. unity 发光字体_Unity UGUI 使用艺术字体

    道具准备 字体制作 菜单栏上单击 Edit -> Open Image Manager. 再单击 Image -> Import image,把你要做成位图字体的图片依次导入进来.如果是中 ...

  4. unity 发光字体_[转载]Unity3D做彩色的字体的详细教学

    效果是这样的: 1-1.jpeg (15.73 KiB) 被浏览 24 次 详细的实现方法: 1 首先随便扔进去一个字体,最简单的比如扔进去一个arial. 设置好Font Size,比如24 Cha ...

  5. unity 发光字体_Unity3D 设置OnGUI中的字体样式、字体颜色、字体大小等

    1:字体样式 从系统盘,如C:\Windows\Fonts找一个.ttf格式的字体库,放到Assets目录下. 此时选中该字体库,在Inspector面板可以修改字体的大小,试了一下修改字体的颜色(F ...

  6. unity 太阳自发光_unity shader基础之——unity中实现环境光、自发光

    上篇主要讲的是unity中的光照模型及其原理,还有几种光照类型(自发光.环境光.漫反射.高光反射),后面几篇文章就开始在unity中实现这几种光照类型,本篇在unity实现自发光.环境光. 一.uni ...

  7. 迄今为止最好的《权力的游戏》字体和文本效果

    <权力的游戏>是电视上规模最大,谈论最多的幻想戏剧之一,吸引了全世界观众的猛ma. 从谚语到商品,<权力的游戏>已经激发了我们日常生活中的许多事物. 随着设计师成为<权力 ...

  8. 修改 VSCode 的工作台重叠样式表实现任意效果, 记录一个发光字体

    插件 Custom CSS and JS Loader 用于重新加载为自己的css文件 GlassIt-VSC 或者 Windows opacity win平台用于透明化背景 建立自己的 .css文件 ...

  9. CSS3发光字体几种效果

    <!DOCTYPE html> <html> <head> <!-- 超酷炫的CSS3发光字体,可自定义喔!!--> <meta http-equ ...

最新文章

  1. SpringMVC入门学习---拦截器
  2. Could not initialize class sun.awt.X11GraphicsEnvironment
  3. ansible自己总结(playbook)
  4. OpenCV与c语言图像融合
  5. Nacos注册中心的部署与用法详细介绍
  6. 推荐一些能能提高生产力的 Python 库
  7. IOS零碎技术整理(3)-获取wifi列表
  8. vscode+php+phpstudy:断点调试(f5后vscode无法继续下一步;浏览器无法断点,直接返回执行结果的解决方法)
  9. install python 3.5.0_Mac 下安装Python3.5出现“python3-3.5.0 already installed, it's just not linked”错误...
  10. 【python爬虫】报错module requests has no attribute get
  11. js 指定滚动条位置
  12. 使用alias简化命令输入
  13. JavaEE Design Patter(2)
  14. python 打开txt文件
  15. Deecamp 面试翻车记录
  16. 使用ArrayList集合,对其添加10个不同的元素,并使用Iterator遍历该集合
  17. Django 博客开发教程 8 - 博客文章详情页
  18. win快捷键失效,win+d,win+e等快捷键功能修复
  19. 拆解一个居家隔离监测的无线门磁
  20. Ubuntu软件安装与更改镜像源(超详细)

热门文章

  1. PRML(3)--Chapter2(上)-概率分布-二元变量、多项式变量、高斯分布、指数族分布
  2. 论中国足球教练排名,“神奇教练”米卢说第二,没人敢称第一
  3. 从无秘和知乎看中国社交产品的特点
  4. 设计模式的六大设计原则
  5. java中前加加和后加加的案例
  6. 以太坊2.0迁移之际,会有哪些机会和挑战?| Sodium线上发布会
  7. Zhong__Centos安装Redis
  8. 长达1.5年华强北耳机微妙体验
  9. 解决:联想电脑开机壁纸图片在哪可以找到?
  10. 2010年互联网风云人物