diff --git a/app/window.go b/app/window.go index 29e59349..4702958b 100644 --- a/app/window.go +++ b/app/window.go @@ -741,7 +741,10 @@ func (w *Window) processEvent(d driver, e event.Event) { // No drawing if not visible. break } - frameStart := time.Now() + var frameStart time.Time + if w.queue.q.Profiling() { + frameStart = time.Now() + } w.hasNextFrame = false e2.Frame = w.update e2.Queue = &w.queue diff --git a/gpu/gpu.go b/gpu/gpu.go index 4bb9fb9a..8c30a595 100644 --- a/gpu/gpu.go +++ b/gpu/gpu.go @@ -362,8 +362,8 @@ func (g *gpu) collect(viewport image.Point, frameOps *op.Ops) { g.renderer.pather.viewport = viewport g.drawOps.reset(viewport) g.drawOps.collect(frameOps, viewport) - g.frameStart = time.Now() if g.drawOps.profile && g.timers == nil && g.ctx.Caps().Features.Has(driver.FeatureTimers) { + g.frameStart = time.Now() g.timers = newTimers(g.ctx) g.stencilTimer = g.timers.newTimer() g.coverTimer = g.timers.newTimer()