iphone - presentRenderbuffer : GL_RENDERBUFFER_OES takes long time -
i added profiler game , isolated function. it, sometimes, cause fps drop. result:
present buffer time: 22 present buffer time: 1 present buffer time: 9 present buffer time: 1 present buffer time: 20 present buffer time: 6 present buffer time: 4 present buffer time: 4 present buffer time: 22 present buffer time: 4 present buffer time: 8 present buffer time: 4 present buffer time: 4 present buffer time: 15 present buffer time: 1 present buffer time: 1 present buffer time: 1 present buffer time: 11 present buffer time: 1 present buffer time: 6 present buffer time: 1 present buffer time: 1 present buffer time: 25 present buffer time: 6 present buffer time: 7 present buffer time: 1 present buffer time: 10 present buffer time: 7 present buffer time: 3 present buffer time: 1 present buffer time: 12 present buffer time: 9 present buffer time: 6 present buffer time: 9
do know why @ every few frames function takes more time?
this code:
f64 time = -system::gettime(); [m_context presentrenderbuffer:gl_renderbuffer_oes]; log("present buffer time: %d\n", u32((system::gettime() + time) * 1000.));
if not calling glflush()
explicitly, driver forced when present buffer, because @ point of presentrenderbuffer
call rendering operations on buffer may not completed yet.
try calling glflush
before presenting buffer , measuring time of separately.
Comments
Post a Comment