写在前面本篇内容实现了在URP下获取深度、法线实现的后处理之前做的工作,包括讨论方案,以及写shader之前的自定义renderFeature和Volume组件的过程。由于是想复刻《SCHiM》游戏里的画面风格,所以本篇文章的需求很明确,会夹杂一些自己的分析思考,并不是严格意义上的分享某一种技术的文章,更多的是个人的记录。由于URP各个版本更新换代太快了,贴一下项目环境,给后面看到
下载B站,百度云去除图片上文字第一种第二种看文字的清晰程度,越清晰越好或者在图片上添加文字放大缩小图片 alt+鼠标滑动 ctrl+鼠标左右移动图片 ctrl+D取消选区 鼠标右键显示其他工具字体下载文字识别网站截图文字,上传网站 复制上面文字,百度下载点击为所有客户安装即可ps重新启动,就可以看到字体图层链接选中图层,右击(可以一起移动)设置文字边框 选择矩形工具点击图片可以新建一个同样的边框恢
前言在制作游戏时,可以遇到要对字体添加的需求,unity 的UGUI自带的OutLine组件,效果不好,宽度过大会出现穿帮,顶点数量也会增加,性能不好,如果对于有几百字,顶点数量会很多,而且无法扩展功能 可以看出Outline创建了4个方向的文字 Unity5.2以前的版本要求,每一个Canvas下至多只能有2^16-1=65535个顶点(使用2个字节(16位)存储顶点索引),超过就会报错
前言和阴影,Unity本来是由自带的组件的(Outline和Shadow)。Unity自己的实现方式如下:Outline:把原文字/图片以往的网格复制4份,然后上下左右各偏移一点距离(相当于多绘制了4遍)。Shadow:把原文字/图片的网格复制1份,然后往某个方向偏移一点(相当于多绘制了1遍)。我觉得是挺蛋疼的,所以就突发奇想干脆用Shader来实现会不会好一点。 正文:由于本人水平
1. 什么是Outline()组件?Outline()组件是Unity UGUI中的一种特效组件,用于给UI元素添加效果。通过设置的颜色、宽度和模糊程度,可以使UI元素在视觉上更加突出。2. Outline()组件的工作原理Outline()组件通过在UI元素周围绘制多个相同的UI元素,并设置不同的颜色和大小,从而实现的效果。的宽度和模糊程度可以通过调整参数来控制。
转载 9月前
180阅读
好马配好鞍,在平时做海报设计、产品设计等时,合适的字体能起到画龙点睛的作用,所以多学几种字体是很有必要的。本期教程我们来学习制作沙滩文字效果,下面我们就来演示这种充满趣味的文字制作过程。 工具/材料:电脑、Photoshopcc 2019、素材图片一张(沙滩素材一张)方法/步骤:1、打开准备好的沙滩素材软件,如下图所示。 2、选中“沙滩”图层,点击“文字”工具,设置沙滩文字
unity-shader模板测试,效果,常用于 rpg 项目中 主角 被遮挡的情况,将被遮挡的部分的轮廓绘制出来,这样可以在任何情况都能知道 主角 在哪里。(还有另外一种就是使用 X光 效果,但这种效果不需要用到模板测试,所以这里用 效果 举栗子)效果思路实现这种效果需要两个pass正常绘制,即深度测试 LEqual,正常遮挡,同时往 模板缓冲区 写入一个 参考值 Ref=1(即使深度
UGUI的基础元素TextText文本框 Rich Text 多文本 Line Spacing:行距 Align By Geometry:几何对齐 Wrap:自动对齐 Overflow:溢出 Raycasst Target :射线检测(如果UI元素不需要点击事件,一定不要勾选。因为UGUI的事件系统会遍历出所有带Raycast Target的组件)和阴影 可以设置它们的颜色已经的距离
黑板擦的功能其实和画笔是一样的,只是黑板擦设置的颜色是画板最原始的颜色,而笔设置的是其他的颜色。所以最大的不同时,当手柄握住黑板擦时和握住笔时的函数实现是不一样的;实现这个功能之后,黑板擦的擦掉功能将在后续的篇章中和画笔一起完成;可以看到不管黑板擦以什么角度开始靠近画板,最终这个黑板擦一定是和画板平行的;先看看画板的坐标系: 再看看黑板擦的坐标系:也就是说不管黑板擦以何种旋转角度(Rot
转载 2024-07-06 13:06:51
24阅读
效果一览外是许多游戏的画面需求,通常大体分为法线外扩和后处理边缘检测两种,法线外扩通常用于特殊需求,如外高亮关键物体,选中外高亮等,后处理边缘检测画面表现力更强一点,通常用于全屏的风格化,如卡通渲染,素描风格画面等(其实我也不清楚,凭感觉应该有这样的使用趋向区别),本篇文章主要讲解法线外扩外效果。 法线外扩外效果 基本原理一个shader两
文章目录一、前言二、2D效果1、导入一张png素材图片2、创建一个Unlit Graph3、使用Sample Texture 2D采样图片4、显示的思路5、使用Tilling And Offset节点控制UV,实现图片平移6、得到轮廓7、与原图相加8、最终显示三、升级版1、带颜色的2、加噪声3、再加点变化 一、前言我之前写了一篇文章:ShaderGraph使用教程与各
转载 2024-03-17 09:50:47
792阅读
周末了,最近北京总是莫名其妙的下雨,在家里呆着就不想动弹。最近一个星期一直在研究卡通材质,进而对如何边做了些尝试。第一种:在材质上,由美术组的同学在贴图上根据模型边缘直接绘制。优点:更具有艺术性以及可变性。缺点:工程量很大,人物角色无法,只对固定的场景及建筑可行。第二种:根据视角和法线来。dot(n,v)代码如下:Shader "Custom/dotSurfaceShader"
转载 2024-04-06 20:35:09
226阅读
效果:绘制物体的外轮廓(不是所有的,只是最外围的),比如LOL中选中塔的效果:       这部分知识在ShaderLab开发实战详解有详细的说明,不过我做了修改,用另一种更简单的方法解决了在不写深度的情况下,被遮挡的问题。       原理:要画2遍,第一遍画稍
转载 2024-02-29 16:46:32
453阅读
在Shader中使用单独一个Pass渲染轮廓线是非常常见的做法,其原理是在该Pass的顶点着色器中将模型顶点加上沿法线方向的偏移是原本的模型扩大一圈并剔除正向面,从而实现轮廓线效果。 但是使用该方法有一个要求就是模型的法线必须连续,也就是模型必须光滑表面,如果是硬表面的模型,由于转折处法线不连贯,会导致沿法线扩大的轮廓线模型断裂,如下图: 原因是转折处法线不连贯: 解决方案有二,但思路是一样的,就
一、基于菲涅尔反射的物体        1.1 基于内边缘发光的方式                内边缘发光本身的局限性就不说了。  
前言在本文中使用的是基于空间的3D模型的,着手于1条的2个邻接面,即退化四形进行边缘检测和绘制。本文读者默认为有图形学基础和编写Shader基础,若没有请先去把这些基础学习一下,再来阅读本文,否则可能会有阅读障碍。一、边缘检测算法3D模型有两种方式,一种是基于图像,即在所有3D模型渲染完成一张图片后,对这张图片进行边缘检测,最后得出效果。一种是基于空间,即针对3D模型的三角面三个顶
模型1: LOL里面的模型效果,点击防御塔会有的效果,被攻击的时候模型也要凸显一下2: 网上可以找到模型的Shader,可以直接下载使用,一组第三方的Shader, 帮我们解决了模型的问题,叫Toony(第65)  Shader切换1.被攻击的时候模型凸显一下,不被攻击的时候就隐藏,变成正常模型的样子2.需要一个带模型的Shader和一个不带
转载 2024-03-26 14:42:30
132阅读
参考文章:方法一:对指定Layer层(Outline层)的物体进行处理原理:使用一个只渲染Outline层的摄像机进行渲染,将渲染结果存入临时渲染纹理rt,再利用Graphics.Blit(rt, destination, targetMat, 0); 函数使用targetMat材质的shader的第一个Pass进行渲染,即对Outline层的物体进行边缘检测,然后将被认定为边缘的屏幕像素点替
转载 2024-05-07 08:16:04
1420阅读
  最近遇到了一个非常奇葩的需求:半透明文本,并且要有。这简直就是简直了,然后美术小姐姐还说了一句:不就是加个么?我们一众程序员竟然无言以对,我内心:大姐,这是Unity,不是PS啊0.0  没办法,做不出来只能开始研究。那么为什么透明物体的如此难实现呢,我来分析一下。一、Unity自带的  首先来看Unity自带的,把参数调大就会发现,只是在四个方向多显示了几份。透明物体肯定
转载 2024-02-21 11:54:45
1481阅读
  效果是游戏里面非常常用的一种效果,一般是为了凸显游戏中的某个对象,会给对象增加一个效果。本篇文章要和大家讲的是Unity 2D的游戏项目中的实现方法,下面是具体的实现过程。    需求介绍:   我们的项目是一款2D骨骼动画角色的战棋类回合制游戏,场景如下:   每回合开始,回合方在战场上的角色,分别有可移动、可攻击或者可移动并且可攻击3种状态,为了让玩家一目了然场上角
转载 2024-05-10 17:01:16
187阅读
  • 1
  • 2
  • 3
  • 4
  • 5