Chrome webgl 渲染/闪烁问题
Chrome webgl rendering / flashing issue
我尝试在 google chrome 浏览器上获得统一 => webgl 导出。
它在 firefox 上工作正常,但在 Chrome 上背景不透明并且看起来很脏,有时甚至闪烁得非常快(对患有癫痫症的人非常危险)
这是应该做透明背景的代码:
var LibraryGLClear = {
glClear: function(mask)
{
if (mask == 0x00004000)
{
var v = GLctx.getParameter(GLctx.COLOR_WRITEMASK);
if (!v[0] && !v[1] && !v[2] && v[3])
// We are trying to clear alpha only -- skip.
return;
}
GLctx.clear(mask);
}
};
mergeInto(LibraryManager.library, LibraryGLClear);
代码取自此处:https://answers.unity.com/questions/1069255/embed-webgl-in-webpage-with-transparent-background.html
With 透明度代码:https://youtu.be/qpTq73ZL5_c(如果快速变化的图像会引发癫痫症,请不要观看)
我还以为是透明码引起的呢。不幸的是,这不是根本原因,因为我在没有透明代码的情况下将其捆绑并遇到了类似的问题:
没有: https://youtu.be/271mZsizvps
Unity 中是否有我可以玩的特殊设置?
你有同样的问题吗?
请帮忙,谢谢!
好的,我在这里解决了:https://forum.unity.com/threads/webgl-with-transparency-on-the-cavas.327425/
我想基本上我做错了,就是没有将相机的背景颜色设置为 0,0,0,0。
不幸的是,那个地方没有写,所以我把它加在里面post。希望对大家有帮助。
我尝试在 google chrome 浏览器上获得统一 => webgl 导出。
它在 firefox 上工作正常,但在 Chrome 上背景不透明并且看起来很脏,有时甚至闪烁得非常快(对患有癫痫症的人非常危险)
这是应该做透明背景的代码:
var LibraryGLClear = {
glClear: function(mask)
{
if (mask == 0x00004000)
{
var v = GLctx.getParameter(GLctx.COLOR_WRITEMASK);
if (!v[0] && !v[1] && !v[2] && v[3])
// We are trying to clear alpha only -- skip.
return;
}
GLctx.clear(mask);
}
};
mergeInto(LibraryManager.library, LibraryGLClear);
代码取自此处:https://answers.unity.com/questions/1069255/embed-webgl-in-webpage-with-transparent-background.html
With 透明度代码:https://youtu.be/qpTq73ZL5_c(如果快速变化的图像会引发癫痫症,请不要观看)
我还以为是透明码引起的呢。不幸的是,这不是根本原因,因为我在没有透明代码的情况下将其捆绑并遇到了类似的问题:
没有: https://youtu.be/271mZsizvps
Unity 中是否有我可以玩的特殊设置? 你有同样的问题吗?
请帮忙,谢谢!
好的,我在这里解决了:https://forum.unity.com/threads/webgl-with-transparency-on-the-cavas.327425/
我想基本上我做错了,就是没有将相机的背景颜色设置为 0,0,0,0。
不幸的是,那个地方没有写,所以我把它加在里面post。希望对大家有帮助。