Use slice for range in Drawer.Dirty(), to improve performance

This commit is contained in:
Luke Meyers 2020-10-12 22:31:00 -07:00
parent ba7fa122b2
commit ef6cafa0cb
1 changed files with 5 additions and 3 deletions

View File

@ -24,8 +24,9 @@ type Drawer struct {
Triangles Triangles
Picture Picture
targets map[Target]*drawerTarget
inited bool
targets map[Target]*drawerTarget
allTargets []*drawerTarget
inited bool
}
type drawerTarget struct {
@ -46,7 +47,7 @@ func (d *Drawer) lazyInit() {
func (d *Drawer) Dirty() {
d.lazyInit()
for _, t := range d.targets {
for _, t := range d.allTargets {
t.clean = false
}
}
@ -68,6 +69,7 @@ func (d *Drawer) Draw(t Target) {
pics: make(map[Picture]TargetPicture),
}
d.targets[t] = dt
d.allTargets = append(d.allTargets, dt)
}
if dt.tris == nil {