@ -486,6 +486,7 @@
# endif
# endif
# ifdef _MSC_VER
# ifdef _MSC_VER
# pragma warning (disable: 4127) // condition expression is constant
# pragma warning (disable: 4505) // unreferenced local function has been removed (stb stuff)
# pragma warning (disable: 4505) // unreferenced local function has been removed (stb stuff)
# pragma warning (disable: 4996) // 'This function or variable may be unsafe': strcpy, strdup, sprintf, vsnprintf, sscanf, fopen
# pragma warning (disable: 4996) // 'This function or variable may be unsafe': strcpy, strdup, sprintf, vsnprintf, sscanf, fopen
# define snprintf _snprintf
# define snprintf _snprintf
@ -2180,6 +2181,15 @@ static void AddDrawListToRenderList(ImVector<ImDrawList*>& out_render_list, ImDr
if ( draw_list - > CmdBuffer . back ( ) . ElemCount = = 0 )
if ( draw_list - > CmdBuffer . back ( ) . ElemCount = = 0 )
draw_list - > CmdBuffer . pop_back ( ) ;
draw_list - > CmdBuffer . pop_back ( ) ;
out_render_list . push_back ( draw_list ) ;
out_render_list . push_back ( draw_list ) ;
if ( sizeof ( ImDrawIdx ) < 4 )
{
// Check that draw_list doesn't use more vertices than indexable (default ImDrawIdx = 2 bytes = 64K vertices)
// If this assert triggers because you are drawing lots of stuff manually, a workaround is to use BeginChild()/EndChild() to put your draw commands in a new draw list
unsigned int max_vtx_idx = ( unsigned int ) 1 < < ( sizeof ( ImDrawIdx ) * 8 ) ;
IM_ASSERT ( draw_list - > _VtxCurrentIdx < = max_vtx_idx ) ;
}
GImGui - > IO . MetricsRenderVertices + = draw_list - > VtxBuffer . Size ;
GImGui - > IO . MetricsRenderVertices + = draw_list - > VtxBuffer . Size ;
GImGui - > IO . MetricsRenderIndices + = draw_list - > IdxBuffer . Size ;
GImGui - > IO . MetricsRenderIndices + = draw_list - > IdxBuffer . Size ;
}
}