mirror of
https://github.com/hajimehoshi/ebiten.git
synced 2025-01-28 19:52:43 +01:00
internal/graphicscommand: add a debug.IsDebug check before splitting strings (#3134)
Since `debug.IsDebug` is a constant, by putting the `strings.Cut` calls inside the check this makes the `(*commandqueue).flush` method faster when Ebitengine is compiled without the debug build tag. Without the if `debug.IsDebug` check, unnecessary allocations occur (since the logger is a noop logger when debug is disabled).
This commit is contained in:
parent
0ec2c4bfd0
commit
2ad0e9a9db
@ -305,6 +305,7 @@ func (q *commandQueue) flush(graphicsDriver graphicsdriver.Graphics, endFrame bo
|
|||||||
if err := c.Exec(q, graphicsDriver, indexOffset); err != nil {
|
if err := c.Exec(q, graphicsDriver, indexOffset); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
if debug.IsDebug {
|
||||||
str := c.String()
|
str := c.String()
|
||||||
for {
|
for {
|
||||||
head, tail, ok := strings.Cut(str, "\n")
|
head, tail, ok := strings.Cut(str, "\n")
|
||||||
@ -314,6 +315,7 @@ func (q *commandQueue) flush(graphicsDriver graphicsdriver.Graphics, endFrame bo
|
|||||||
}
|
}
|
||||||
str = tail
|
str = tail
|
||||||
}
|
}
|
||||||
|
}
|
||||||
// TODO: indexOffset should be reset if the command type is different
|
// TODO: indexOffset should be reset if the command type is different
|
||||||
// from the previous one. This fix is needed when another drawing command is
|
// from the previous one. This fix is needed when another drawing command is
|
||||||
// introduced than drawTrianglesCommand.
|
// introduced than drawTrianglesCommand.
|
||||||
|
Loading…
Reference in New Issue
Block a user