C++ 是否从Asm.js/emscripten启用WebGL扩展?
如何从asm.js/emscripten启用WebGL扩展? 我想运行与javascript代码“var float\u texture\u ext=gl.getExtension('OES\u texture\u float')”等价的代码我当然可以从C++ 是否从Asm.js/emscripten启用WebGL扩展?,c++,webgl,emscripten,asm.js,C++,Webgl,Emscripten,Asm.js,如何从asm.js/emscripten启用WebGL扩展? 我想运行与javascript代码“var float\u texture\u ext=gl.getExtension('OES\u texture\u float')”等价的代码我当然可以从ASM_JS()宏中执行哪些操作,但我不知道全局gl-对象的名称是什么 我会先说,你不应该像这样使用Emscripten。我个人会使用GLFW3和GLEW来管理窗口和扩展。当使用emcc或em++(emscripten编译器)时,他们会将窗口调用
ASM_JS()
宏中执行哪些操作,但我不知道全局gl-对象的名称是什么
我会先说,你不应该像这样使用Emscripten。我个人会使用GLFW3和GLEW来管理窗口和扩展。当使用emcc或em++(emscripten编译器)时,他们会将窗口调用更改为webgl上下文创建等等 但现在我们来看看答案。如果您对使用GLFW3不感兴趣,则必须使用特定的Emscripten方法。没有任何全局“gl对象” 如果希望启用所有扩展,可以使用以下选项: 默认情况下,EM_BOOL启用扩展
- 如果为“true”,则所有GLES2兼容的非性能都会影响WebGL 测试完成后,将自动为您启用扩展 已创建上下文
- 如果为“false”,则不启用扩展 默认情况下,您需要手动调用 “emscripten_webgl_enable_extension()”以启用每个扩展 你想用的。默认值:“true”
- 当前活动的WebGL呈现上下文,或
- 如果没有活动的上下文,则为0
- 上下文(EMSCRIPTEN\u WEBGL\u context\u HANDLE)——WEBGL 要在其上启用扩展的上下文
- 扩展名(*const char**)——标识WebGL扩展名的字符串。例如“OES_纹理_浮动”
- 如果上下文支持给定的扩展,则EM_TRUE,并且
- 如果扩展不可用,则EM_FALSE
此外,我希望不使用-FULL-ES2作为glDrawArray仿真进行编译,我对此不感兴趣。