欢迎光临散文网 会员登陆 & 注册

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

2022-09-11 23:16 作者:赫拉小姐的储备粮蛋蛋  | 我要投稿


使用插件制作的程序化动态背景

需要使用到的插件:OBS-ShaderFilter-Plus(win下只有x64版本,需要对应使用64位版本OBS)

下载地址:https://github.com/Limeth/obs-shaderfilter-plus/releases


一、安装方法

下载对应版本dll(图中拿win平台举例)
  1.  下载对应平台dll

  2.  复制到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变量

shadertoy上的着色器输入
shader-filter-plus 着色器输入

如图,如果代码中有使用到相关变量需要进行替换

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上的作品


给直播间加特效!obs-shaderfilter-plus插件使用指北的评论 (共 条)

分享到微博请遵守国家法律