فهرست منبع

GL: Timer query check if result is available.

Branimir Karadžić 10 سال پیش
والد
کامیت
79d2b81eb1
1فایلهای تغییر یافته به همراه13 افزوده شده و 5 حذف شده
  1. 13 5
      src/renderer_gl.h

+ 13 - 5
src/renderer_gl.h

@@ -1151,13 +1151,21 @@ namespace bgfx { namespace gl
 		{
 			if (0 != m_control.available() )
 			{
-				GL_CHECK(glGetQueryObjectui64v(m_frame[m_control.m_read]
-						, GL_QUERY_RESULT
-						, &m_elapsed
+				GLint available;
+				GL_CHECK(glGetQueryObjectiv(m_frame[m_control.m_read]
+						, GL_QUERY_RESULT_AVAILABLE
+						, &available
 						) );
-				m_control.consume(1);
 
-				return true;
+				if (available)
+				{
+					GL_CHECK(glGetQueryObjectui64v(m_frame[m_control.m_read]
+							, GL_QUERY_RESULT
+							, &m_elapsed
+							) );
+					m_control.consume(1);
+					return true;
+				}
 			}
 
 			return false;