I’ll give the snippet of code I’m working with:
#if 1
pawwfxDeclBooleanHint( Wfx, PAWWFX_H_BOOLEAN_IGNORE_ERRORS, false );
#endif
#if 0
gfxBits = pawvfxWhatBits
( Vfx, PAWVFX_O_COLOR_BUFFER | PAWVFX_O_DEPTH_BUFFER );
#else
gfxBits = pawvfxWhatBits( Vfx, PAWVFX_O_COLOR_BUFFER );
#endif
aid = PawvfxMakeGfxApp( Vfx );
App = PawSeekUD( aid );
pawwinDeclIntegerHint( Wfx, PAWWIN_H_INTEGER_DEPTH_BITS, 24 );
pawwinShow( Win, true );
pawvfxMoveCtx( Vfx, 0, 0, winBoxW, winBoxW );
if ( App )
{
while ( pawwinKeep( Win ) )
{
pawapi_bindVfxApp( Vfx, NULL );
pawwfxPollAll( Wfx );
if ( pawwfxReadKey( Win, PAWKEY_ANSI_ESC ) )
{
pawwinShut( Win, true );
continue;
}
pawvfxColours( Vfx, 0, 0, 0, 0 );
pawgfxZeroBits( Vfx, gfxBits );
numlen = pawu2s( &numstr, numint, PAW_BASE10 );
pawtcsResizen( winText, numstr.str, numlen );
numint = (numint + 1) * numlen;
pawwinDeclText( Win, winText );
pawwinSwapBuffers( Win );
}
}
pawDropID(aid);
PawDropID(wid);
Win = NULL;
wid = -1;
return 0;
Without the depth bit being cleared all works dandy in this initial blank context, as soon as I try to clear the bit it hangs upon trying to swap the buffers (using glfw & glew under the hood of these wrappers atm btw), any ideas as to what I should look for or enable (btw depth test is enabled as soon as the initialisation of glew succeeds), btw Vfx & Wfx are just hooks for the libraries wrapping glfw & glew, the intent is that I can just hook the wrappers and have them deal with the source APIs while the top level code get’s a consistent api to work with regardless of whether opengl, vulkan, x11, wayland, etc are in use.