关于透明MP4礼物的构思和实现

解码视频的我不会,不过只是融合图片的话,那很简单。

[shader_2_4_12.zip|attachment]shader_2_4_12.zip (1.1 MB)

1赞

太好了谢谢大佬

可以可以 大佬这个是2.4x的版本吗?能不能给我个demo

你这公式不都写出来了:

gl_FragColor = vec4( texture2D(texture, vec2(vUv.x/2, vUv.y)).rgb, texture2D(texture, vec2(0.5 + vUv.x/2, vUv.y)).r );

才疏学浅,一知半解,总会卡东西,一直没有成功,救就胡乱的认为可能成功不了

大佬大佬就是这玩意

https://test-1252163606.cos.ap-chengdu.myqcloud.com/NewProject_9.zip

2赞

大佬给个demo,我把你的跟下面大佬的融合一下

太牛了。大佬就是这玩意,大赞


大佬这里有个报错

你自己慢慢研究吧,我还要上班

这不就是透明视频吗,前端和客户端用的挺频繁的

好的谢谢大佬

是,但是确实好难实现啊,大佬有时间帮忙看看下

js、ts版本都行

视频显示ui.rar (2.7 KB) 搞出来了踢我一下

用ai写了个webgl, 不会用creator,是这么写么? 图片换成你自己的再改改

test.html.zip (2.4 KB)

precision mediump float;
varying highp vec2 vTextureCoord;
uniform sampler2D uSampler;
void main(void) {
vec4 leftColor = texture2D(uSampler, vTextureCoord);
if (vTextureCoord.x < 0.5) {
vec4 rightColor = texture2D(uSampler, vec2(vTextureCoord.x + 0.5, vTextureCoord.y));
gl_FragColor = vec4(leftColor.rgb, rightColor.r);
} else {
discard;
}
}

对这个是核心

其实是coco-mat 的软解video是关键点,只要video能渲染到纹理,那怎么样操作都可以了。
把纹理拿到一个四边形上渲染,然后材质用上你的shader就行了。