0

在与我一起探索时,webgl2_draw_packed_triangle.c我惊讶地发现,无论是否显式设置标志,只有在调用某些特定于 GL 的代码时才会创建生成代码中-lGL的全局对象。GL

例如,在尝试了webgl2_draw_packed_triangle.c以下在生成的 JS 中触发 GL 上下文的最小代码后:

EmscriptenWebGLContextAttributes attr;
emscripten_webgl_init_context_attributes(&attr);
EMSCRIPTEN_WEBGL_CONTEXT_HANDLE ctx = emscripten_webgl_create_context("#canvas", &attr);

也就是说,如果不调用 emscripten_webgl_create_context 甚至不会创建 GL 上下文。

所以,我的问题是 - 如何强制执行 GL 声明,这可能吗?

这是我的编译方式:

emcc -o index.html -lGL -s MAX_WEBGL_VERSION=2 -s GL_ASSERTIONS webgl2_draw_packed_triangle.c
4

0 回答 0