给直播间加特效!obs-shaderfilter-plus插件使用指北


需要使用到的插件:OBS-ShaderFilter-Plus(win下只有x64版本,需要对应使用64位版本OBS)
下载地址:https://github.com/Limeth/obs-shaderfilter-plus/releases
一、安装方法

下载对应平台dll
复制到OBS安装目录\Plugins\x64目录下

这里可能会提示需要管理员权限,确认即可。
二、OBS中使用shader-filter-plus
选择需要加特效的OBS源,选择滤镜

在滤镜中选择 ShaderFilter Plus

在ShaderFilter Plus中选择对应的shader(之后会讲该文件获得),以及调整对应的参数

最终原图和带滤镜的最终效果

三、如何获得对应滤镜使用文件?
1、从Shadertoy上进行获取 https://www.shadertoy.com/
以下内容需要部分编程(尤其是图形学部分)知识,读者可以选择性阅读或者直接找身边大佬。
(一)、开启OBS OPENGL支持
因为win下默认使用的渲染API是DirectX系列(对应HLSL shader),而shadertoy网站上使用的是OpenGL(GLSL),因此我们需要切换OBS渲染API为OpenGL才方便后续使用。
Step1. 增加 --allow-opengl 启动参数,选中OBS快捷方式,在目标后面增加 --allow-opengl

Step2. 设置中进行切换
进入obs设置界面,在 高级-视频-渲染器 中切换到OpenGL,切换应用设置之后需要重启!

Step3. 从shadertoy上复制shader代码并进行处理
使用例子: Over the Moon+ [BigWings+] https://www.shadertoy.com/view/ltSyWt
复制代码到本地,之后进行处理
a. 替换部分内置shader变量


如图,如果代码中有使用到相关变量需要进行替换
b. 调整shader入口以及坐标原点差异(如果有遇到的话)
shadertoy上的入口格式为
void mainImage( out vec4 fragColor, in vec2 fragCoord )
shader-filter-plus上的入口格式为
float4 render(float2 uv)
因此需要做如下类似处理。

c. 成品展示(复制过来后研究时改了点)

2、找程序猿或者TA(技术美术)进行效果制作
把这个文章复制给身边的程序猿朋友或者神奇大佬们,让他们帮忙制作处理吧~
四、最后一些Tips
1. 可以通过给分组增加路径来让下方所有内容生效

2. Shader可以做到诸如 调色、曝光、模糊、反色、雨滴效果等等一系列效果!这里可以多询问一下游戏行业相关从事美术。
3. 和之前的文章同理,因为该插件很久没更新了因此可能不支持OBS28插件。请使用OBS 27最新版本以保持插件正常运行。

有其他疑问或者需交流内容欢迎评论或私信~~(我不是搞前端、图形学的程序哈)
顺带随便截一个图分享下Shadertoy上的作品
