Dan*_*Fox 13 javascript webgl html5-canvas
我想用experimental-webgl,和2d画布上下文也一样.在我绘制了3d对象之后,我想在它上面绘制一些2d对象.
我该怎么办?
pim*_*vdb 11
您不能将多个上下文用于一个canvas元素.在WebKit中,这在源代码中明确提到:
// A Canvas can either be "2D" or "webgl" but never both.
Run Code Online (Sandbox Code Playgroud)
如果你确实要求另一个上下文,你得到null:
if ((type == "webkit-3d") ||
(type == "experimental-webgl")) {
if (m_context && !m_context->is3d())
return 0;
Run Code Online (Sandbox Code Playgroud)
(因此,如果您在已有其他上下文时请求3D上下文,则可以获得null.)
你可能想要的是两个画布元素 - 一个用于3D东西,另一个用于2D东西.如果将它们放在一起,它们可以作为两层,您可以独立地在每个画布上绘制.