c++ - Enable WebGL-extensions from Asm.js/emscripten? -


मैं asm.js / emscripten से WebGL-extensions कैसे सक्षम करूं? मैं जावास्क्रिप्ट कोड के बराबर 'var float_texture_ext = gl.getExtension (' OES_texture_float ') को चलाने के लिए चाहते हैं,' जो बिल्कुल मैं एक से कर सकता है ASM_JS () मैक्रो , लेकिन मैं नहीं जानता कि वैश्विक gl -object का नाम क्या है?

मैं यह कहकर पेश करूँगा कि आपको इस तरह ईस्क्रिप्टेन का उपयोग नहीं करना चाहिए। व्यक्तिगत रूप से, मैं विंडोिंग और एक्सटेंशन का प्रबंधन करने के लिए GLFW3 और GLEW का उपयोग करेगा। Emcc या em ++ (emscripten compilers) का उपयोग करते समय वे विंडोिंग कॉल को वेबग्लॉग सृजन और क्या नहीं करेंगे।

लेकिन अब जवाब पर। यदि आप GLFW3 का उपयोग करने में दिलचस्पी नहीं रखते हैं, तो आपको विशिष्ट ईस्क्रिप्टियन विधियों का उपयोग करना होगा। कोई भी वैश्विक "ग्लोबल ऑब्जेक्ट" नहीं है।

EM_BOOL enableExtensionsByDefault

    आप निम्नलिखित का उपयोग कर सकते हैं तो आप सभी एक्सटेंशन सक्षम करने के लिए देख रहे हैं >

    यदि "सत्य" है, संदर्भ के सभी GLES2- संगत गैर-प्रदर्शन-प्रभावित WebGL एक्सटेंशन आपके लिए स्वचालित रूप से सक्षम हो जाएंगे।

  • यदि "झूठे", तो डिफ़ॉल्ट रूप से कोई भी एक्सटेंशन सक्षम नहीं है, और आपको उस प्रत्येक एक्सटेंशन को सक्षम करने के लिए मैन्युअल रूप से "emscripten_webgl_enable_extension ()" कॉल करना होगा, जिसे आप उपयोग करना चाहते हैं। डिफ़ॉल्ट मान: "सत्य"।

यदि आप एक विशिष्ट विस्तार सक्षम करने के लिए देख रहे हैं तो आप निम्न का उपयोग कर सकते हैं:

EMSCRIPTEN_WEBGL_CONTEXT_HANDLE emscripten_webgl_get_current_context ()

वर्तमान में सक्रिय WebGL प्रतिपादन संदर्भ देता है, या 0 यदि कोई संदर्भ सक्रिय है। जब कोई सक्रिय प्रस्तुति संदर्भ नहीं है, तो किसी भी वेबजीएल फ़ंक्शन को कॉल करना अनिर्धारित है और एक जावास्क्रिप्ट अपवाद डाल सकता है।

रिटर्न:

  • वर्तमान में सक्रिय WebGL रेंडरिंग प्रसंग, या

  • 0 यदि कोई संदर्भ सक्रिय है

वापसी के प्रकार:। "EMSCRIPTEN_WEBGL_CONTEXT_HANDLE"

WebGL प्रसंग हैंडल हो और निम्न विधि में पारित करने के लिए है कि में:

EM_BOOL emscripten_webgl_enable_extension (EMSCRIPTEN_WEBGL_CONTEXT_HANDLE संदर्भ, स्थिरांक चार * विस्तार)

को सक्षम करता दिया । दिए गए संदर्भ पर विस्तार

पैरामीटर:

  • संदर्भ ( EMSCRIPTEN_WEBGL_CONTEXT_HANDLE ) - WebGL

  • एक्सटेंशन (* const char **) - एक स्ट्रिंग जिसकी पहचान WebGL एक्सटेंशन है। उदाहरण के लिए "OES_texture_float"।

रिटर्न:

  • EM_TRUE यदि दिए गए एक्सटेंशन संदर्भ द्वारा समर्थित है, और

  • EM_FALSE यदि एक्सटेंशन उपलब्ध नहीं था।

वापसी प्रकार: "EM_BOOL"

< P> आपकी सभी आवश्यक जानकारी यहां है:


Comments

Popular posts from this blog

apache - 504 Gateway Time-out The server didn't respond in time. How to fix it? -

c# - .net WebSocket: CloseOutputAsync vs CloseAsync -

c++ - How to properly scale qgroupbox title with stylesheet for high resolution display? -