如何将背景图像设置为画布

时间:2017-07-29 15:31:23

标签: javascript canvas background html5-canvas webgl

好吧,我想设置一个background-image深度,而不是那个降级的背景。我尝试了很多东西,我尝试了很多来自这个社区的答案,但是没有办法......结果是background-image不可见或高于粒子。我只想要background-image替换当前的background-color

我希望任何人都能用正确的代码帮助我,谢谢并抱歉我的英语。

https://codepen.io/at80/pen/tqdmv

<canvas>

2 个答案:

答案 0 :(得分:0)

我无法完全回答您的问题,因为需要查看很多着色器代码。

您需要做的是确保当片段绘制不是叶子的东西(例如背景)时,它的alpha值为0.0。最简单的方法是在某处gl_FragColor.a = 0.0;。我是OpenGL / WebGL的新手,所以我找不到确切的位置或方法来帮助你。

你有很多片段着色器,他们每个人都在做不同的事情。着色器<script id="bg_fsh" type="x-shader/x_fragment">仅控制背景,但它本身并不足够。

一旦您设法在片段着色器中使背景透明,您可以以某种方式设置背景图像,例如在包含画布的<div>上,它应该显示。

答案 1 :(得分:-2)

您无法直接设置画布图像的背景图像。 stackoverflow.com的这个链接将描述更多关于设置背景图像的可能性 Is it possible to set background image in canvas HTML5 and can do some paint functionality like Undo,Erase,Clear,Save that background image?