当 body 的背景颜色设置为如下透明时,实际背景显示为钴紫色。
body {
background-color: transparent;
}
有没有办法让背景变得真正透明?我希望在钴的图形层下显示其他 gfx 或视频层。谢谢!
当 body 的背景颜色设置为如下透明时,实际背景显示为钴紫色。
body {
background-color: transparent;
}
有没有办法让背景变得真正透明?我希望在钴的图形层下显示其他 gfx 或视频层。谢谢!
作为优化,Cobalt 不会每帧清除其帧缓冲区,但是如果您想将其用作叠加层,这确实会导致问题。
在cobalt/renderer/pipeline.cc 中,就在该行之后:
rasterizer::Rasterizer::Options rasterizer_options;
但在行之前:
rasterizer_->Submit(results.animated, render_target, rasterizer_options);
如果添加:
rasterizer_options.flags = rasterizer::Rasterizer::kSubmitFlags_Clear;
在渲染内容之前,Cobalt 会清除每一帧以完全透明。
我们将考虑在未来添加一种更好的方式来表达这种愿望,但希望这对现在有所帮助。
所以从 src/cobalt/renderer/backend/egl/graphics_context.cc:GraphicsContextEGL::SecurityClear() 中注释掉以下行
GL_CALL(glClearColor(1.0f, 0.4f, 1.0f, 1.0f));