Thanks for the reply JJ. So, it seems like the link's not implemented yet 
then.  
I tried hacking my own in ealier and it failed but I gave it another go 
just now,
hacking in this line in my generated 'anthraciteWASM.js' file and lo and 
behold it kinda worked. The buffer's being copied alright: it looks a 
little off but I think that might be down to other small discrepancies 
between my desktop build and WASM.
Progress though: I've got some full screen effects now. Is there any chance 
that somebody can implement the function in the library as below?

function _glBlitFramebuffer(a,b,c,d,e,f,g,h,i,j) {
    GLctx["blitFramebuffer"](a,b,c,d,e,f,g,h,i,j);
   
}



On Tuesday, 11 February 2020 18:26:16 UTC, jj wrote:
>
> I think Alon was looking too quickly: glBlitFramebuffer is 
> implemented, but it is one of those trivial "pass-through" functions 
> (functions that have only primitive numbers as args) so you'll find it 
> by searching for 'blitframebuffer' rather than 'glblitframebuffer'. 
> Its implementation is done on this line: 
>
>
> https://github.com/emscripten-core/emscripten/blob/7b2d3d0a3fc0d5238d5dee0371de7cc24d3542a7/src/library_webgl2.js#L1015
>  
>
> There is one test in the test suite that does touch glBlitframebuffer, 
> see 
> https://github.com/emscripten-core/emscripten/blob/7b2d3d0a3fc0d5238d5dee0371de7cc24d3542a7/tests/webgl_with_closure.cpp#L176
>  
> . 
>
> See 
> https://github.com/emscripten-core/emscripten/blob/7b2d3d0a3fc0d5238d5dee0371de7cc24d3542a7/tests/test_browser.py#L2659
>  
> for the test. It can be run from command line with "python 
> tests/runner.py browser.test_webgl_with_closure" 
>
> The flag -s USE_WEBGL2=1 is an alias/synonym to -s 
> MAX_WEBGL_VERSION=2. (passing either one has identical behavior) 
>
> -s MAX_WEBGL_VERSION=2 means that the generated build supports 
> creating WebGL 2 contexts (in addition to supporting WebGL 1 
> contexts). Some of the emulated libraries (SDL,GLUT,GLFW,GLEW,... 
> emulation stubs in src/library_x.js) will default to creating WebGL 2 
> contexts if -s MAX_WEBGL_VERSION=2 is passed. The html5.h API WebGL 
> context creation function has a version field that is set to specify 
> the desired context versoin. 
>
> Passing -s MIN_WEBGL_VERSION=2 drops support for WebGL 1 altogether, 
> to get a size micro-optimization for the build output. This is 
> intended for pages that know they cannot operate with WebGL 1, and 
> wish not to have to pay code size for generated WebGL 1 support 
> functions. 
>
> Try passing -lwebgl2.js explicitly on the link line if there is any 
> oddness. Running with environment variable EMCC_DEBUG=1 and linker 
> flag -s VERBOSE=1 may help troubleshooting some linking decisions that 
> are being made. 
>
> ti 11. helmik. 2020 klo 19.42 Alon Zakai ([email protected] <javascript:>) 
> kirjoitti: 
> > 
> > Looking in src/*, it seems like that function is not implemented yet - 
> it needs to be added there. A PR would be very welcome if someone is 
> interested! It should be in src/library_webgl2.js. 
> > 
> > Linking with -s MAX_WEBGL_VERSION=2 should have been enough for this to 
> work, if the function were there (that says "the max version that will be 
> used is 2, so anything between the min version - default 1 - and the max is 
> supported; the default max is 1, so raising the max is necessary). 
> > 
> > On Mon, Feb 10, 2020 at 4:07 PM Tim Luther Lewis <[email protected] 
> <javascript:>> wrote: 
> >> 
> >> I tried that, although I hadn't thought of linking libraries directly 
> like that (emscripten seems to do it's own thing with '-s USE_WEBGL2=1', 
> which probably resolves to some library using internal magic that I haven't 
> deep dived on yet) 
> >> 
> >> In my generated WASM.js file, I still see this: 
> >> 
> >>  function _glBlitFramebuffer( 
> >>   ) { 
> >>   err('missing function: glBlitFramebuffer'); abort(-1); 
> >>   } 
> >> 
> >> Which is clearly why it's not working: it's not there! Why it's not 
> there though, is still a mystery to me :/ 
> >> 
> >> 
> >> On Monday, 10 February 2020 20:23:17 UTC, Charles Vaughn wrote: 
> >>> 
> >>> Looks like you're missing a linker input, do you have -lGLESv2 on your 
> link command? 
> >>> 
> >>> On Monday, February 10, 2020 at 1:01:11 AM UTC-8, Tim Luther Lewis 
> wrote: 
> >>>> 
> >>>> Thanks for the responses guys but unfortunately, I'm still getting 
> 'anthraciteWASM.js:8995 missing function: glBlitFramebuffer' 
> >>>> 
> >>>> I've added both '-s MIN_WEBGL_VERSION=2' and '-s MAX_WEBGL_VERSION=2' 
> and I'm creating my context with 'const context = 
> canvas.getContext("webgl2", {antialias: false, depth: true});' 
> >>>> 
> >>>> I do get a bunch of linker warnings when I build, however: 
> >>>> 
> >>>> ---8<------------------------------- 
> >>>> warning: undefined symbol: emscripten_glBeginQuery 
> >>>> warning: undefined symbol: emscripten_glBeginTransformFeedback 
> >>>> warning: undefined symbol: emscripten_glBindBufferBase 
> >>>> warning: undefined symbol: emscripten_glBindBufferRange 
> >>>> warning: undefined symbol: emscripten_glBindSampler 
> >>>> warning: undefined symbol: emscripten_glBindTransformFeedback 
> >>>> warning: undefined symbol: emscripten_glBlitFramebuffer 
> >>>> warning: undefined symbol: emscripten_glClearBufferfi 
> >>>> warning: undefined symbol: emscripten_glClearBufferfv 
> >>>> warning: undefined symbol: emscripten_glClearBufferiv 
> >>>> warning: undefined symbol: emscripten_glClearBufferuiv 
> >>>> warning: undefined symbol: emscripten_glClientWaitSync 
> >>>> warning: undefined symbol: emscripten_glCompressedTexImage3D 
> >>>> ... 
> >>>> --8<-------------------------------------------- 
> >>>> but seeing as everything ran fine, other than the blit, I assumed 
> this was just some sort of late binding issue for external functions. 
> >>>> 
> >>>> Is it possible that there's a problem with glBlitFramebuffer that 
> hasn't been picked up? 
> >>>> 
> >>>> 
> >>>> 
> >>>> On Sunday, 9 February 2020 20:31:49 UTC, Tim Luther Lewis wrote: 
> >>>>> 
> >>>>> Hi, 
> >>>>>   I'm porting my engine to WASM and it's all going well so far but 
> I've hit a snag with this.  I'm linking with -s FULL_ES2=1  -s FULL_ES3=1 
> but it still gives me 'missing function: glBlitFramebuffer' whenever I call 
> it. 
> >>>>> I noticed there was a discussion about this function on github back 
> in February 2019 (https://github.com/emscripten-core/emscripten/pull/7588). 
> Does anybody know if it's broken or perhaps I've missed something vital? 
> >>>>> 
> >>>>> Thanks in advance, 
> >>>>> Tim. 
> >>>>> 
> >> -- 
> >> You received this message because you are subscribed to the Google 
> Groups "emscripten-discuss" group. 
> >> To unsubscribe from this group and stop receiving emails from it, send 
> an email to [email protected] <javascript:>. 
>
> >> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/emscripten-discuss/9c7adf13-64e9-4993-8f87-f6f669a5b787%40googlegroups.com.
>  
>
> > 
> > -- 
> > You received this message because you are subscribed to the Google 
> Groups "emscripten-discuss" group. 
> > To unsubscribe from this group and stop receiving emails from it, send 
> an email to [email protected] <javascript:>. 
>
> > To view this discussion on the web visit 
> https://groups.google.com/d/msgid/emscripten-discuss/CAEX4NpT9mrc%3DczjFbhVBaG1fdChUn7WKnLnHEa9EBOg_LH6nbA%40mail.gmail.com.
>  
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"emscripten-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/emscripten-discuss/0db7c526-95c7-4619-b366-8912ae71f1b1%40googlegroups.com.

Reply via email to