| 1234567891011121314151617181920212223242526272829303132 |
- #include "BsGLEventQuery.h"
- #include "BsRenderStats.h"
- namespace BansheeEngine
- {
- GLEventQuery::GLEventQuery()
- :mQueryObj(0)
- {
- glGenQueries(1, &mQueryObj);
- BS_INC_RENDER_STAT_CAT(ResCreated, RenderStatObject_Query);
- }
- GLEventQuery::~GLEventQuery()
- {
- glDeleteQueries(1, &mQueryObj);
- BS_INC_RENDER_STAT_CAT(ResDestroyed, RenderStatObject_Query);
- }
- void GLEventQuery::begin()
- {
- glQueryCounter(mQueryObj, GL_TIMESTAMP);
- setActive(true);
- }
- bool GLEventQuery::isReady() const
- {
- GLint done = 0;
- glGetQueryObjectiv(mQueryObj, GL_QUERY_RESULT_AVAILABLE, &done);
- return done == GL_TRUE;
- }
- }
|