在做射击游戏的时候,我们会需要激光枪射击的激光效果。
这里使用带有光晕的材质来实现。
Window => Package Manager 中搜索Universal RP
,并安装
如果已经安装则跳过
在Assets文件夹下新建
Create => Rendering => URP Asset (with Universal Renderer)
我这里文件命名为ZURPAsset
会生成两个文件
项目中设置
Edit => Project Settings
选择我们刚创建的
在场景中添加
选中 并新建配置文件
新建后会增加一个按钮
添加后处理中的Bloom
设置值
其中
也就是说我们设置过这个后 亮度超过1的物体会更加的亮的光晕效果。
我们可以测试一下是否生效
把Threshold
调整为0,如果发现整个界面出现光晕了,就证明全局光晕效果可用了。
测试后再把Threshold
调整为1。
激光效果实现的思路是 线渲染器渲染的线上添加上光晕来实现。
光晕效果是通过设置一个亮度超过1的材质,从而出现光晕效果。
首先添加线渲染器
在我们任意对象上添加组件 Line Renderer
一定要设置这三个地方,才能看到效果
Positions
中 Size设置为2,证明我们的线只有一个开始点和一个结束点,结束点一定要设置,负责线的长度为0,肯定看不到。Materials
一定要选择材质,否则也不会渲染,后边我们就是修改这个地方来实现光晕的效果的。排序
一定要上我们的位置在上层,否则也看不到。颜色
的话设置为我们需要的就行。Width
是线的宽度。这时候线是这样的
在Assets文件夹下新建Shader文件夹
在 Unity 的 Shader Graph (Shader 图)中,Sprite Unlit Shader 是一个专门用于渲染 2D Sprite 的非照明 Shader。
它的主要特征和作用:
在Shader下创建
Create => Shader Graph => URP => Sprite Unlit Shader Graph
设置名称为ColorGraph
双击打开文件
默认只有框中的部分
在左侧添加两个入参
其中Color要设置为HDR模式,设置HDR后输入的颜色才能亮度大于1 。
设置完成后一定要点击 左上角的 Save Asset
进行保存。
右键上一步创建的ColorGraph
点击Create
=> Material
命名为BrightMaterial
这两个输入就是上一步创建的输入参数
Texture2D 随便选一个白色贴图
我这里使用的是自带的
Color中设置
这里设置强度大于1,让光晕生效。
Line Renderer
的属性中设置新的材质就可以了。
这时候效果就变成这个了