Skip to content

Commit 57082d7

Browse files
committed
added pprof flag, improved boilerplate
1 parent 0204868 commit 57082d7

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed

template/main.go

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,22 @@ import (
44
"flag"
55
"github.com/tdewolff/canvas"
66
"log"
7+
"os"
8+
"runtime/pprof"
79

810
"github.com/aldernero/sketchy"
911
"github.com/hajimehoshi/ebiten/v2"
1012
)
1113

14+
func setup(s *sketchy.Sketch) {
15+
// Setup logic goes here
16+
}
17+
1218
func update(s *sketchy.Sketch) {
1319
// Update logic goes here
20+
//if s.DidControlsChange {
21+
// setup(s)
22+
//}
1423
}
1524

1625
func draw(s *sketchy.Sketch, c *canvas.Context) {
@@ -21,10 +30,19 @@ func main() {
2130
var configFile string
2231
var prefix string
2332
var randomSeed int64
33+
var cpuprofile = flag.String("pprof", "", "Collect CPU profile")
2434
flag.StringVar(&configFile, "c", "sketch.json", "Sketch config file")
2535
flag.StringVar(&prefix, "p", "", "Output file prefix")
2636
flag.Int64Var(&randomSeed, "s", 0, "Random number generator seed")
2737
flag.Parse()
38+
if *cpuprofile != "" {
39+
f, err := os.Create(*cpuprofile)
40+
if err != nil {
41+
log.Fatal(err)
42+
}
43+
pprof.StartCPUProfile(f)
44+
defer pprof.StopCPUProfile()
45+
}
2846
s, err := sketchy.NewSketchFromFile(configFile)
2947
if err != nil {
3048
log.Fatal(err)
@@ -36,6 +54,7 @@ func main() {
3654
s.Updater = update
3755
s.Drawer = draw
3856
s.Init()
57+
setup(s)
3958
ebiten.SetWindowSize(int(s.ControlWidth+s.SketchWidth), int(s.SketchHeight))
4059
ebiten.SetWindowTitle("Sketchy - " + s.Title)
4160
ebiten.SetWindowResizingMode(ebiten.WindowResizingModeDisabled)

0 commit comments

Comments
 (0)