You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+4-48Lines changed: 4 additions & 48 deletions
Original file line number
Diff line number
Diff line change
@@ -26,65 +26,21 @@ It's a game that resembles old 8-bit/16-bit games. This usually means:
26
26
27
27
* Most API function names are similar and behave the same way.
28
28
* Screen resolution is small, and the number of colors is limited. Although in Pi you can change the resolution and palette.
29
-
* You have one small sprite sheet and a map.
29
+
* You have one small sprite sheet.
30
30
31
31
### Why would I use it?
32
32
33
33
Because it's the easiest way to write a game in Go. IMHO ;)
34
34
35
35
### Is Pi ready to use?
36
36
37
-
Pi is under development. Only limited functionality is provided. API is not stable. See [roadmap](#roadmap) for details.
37
+
Pi is under development. Only limited functionality is provided. API is not stable. See [roadmap](ROADMAP.md) for details.
38
38
39
-
###How to get started?
39
+
## How to get started?
40
40
41
41
1. Install dependencies
42
-
* Go 1.18+
42
+
*[Go 1.18+](https://go.dev/dl/)
43
43
* Pi is powered by [Ebitengine](https://ebiten.org/) which has its own dependencies. See [instructions](https://ebiten.org/documents/install.html) how to install them.
44
44
2. Create a new game using provided [Github template](https://github.com/elgopher/pi-template).
45
45
46
46
See also [examples](examples) directory and [documentation](https://pkg.go.dev/github.com/elgopher/pi).
47
-
48
-
## Roadmap
49
-
50
-
*[x] Present game on the screen
51
-
*[x] ability to change the resolution and palette
52
-
*[x] sprite-sheet loader
53
-
*[ ] more options: full screen, specifying tps and scale
54
-
*[x] Game loop
55
-
*[ ] Implement Graphics API
56
-
*[x] drawing sprites and pixels with camera and clipping support
57
-
*[x] add the ability to directly access pixels on the screen and sprite-sheet
58
-
*[x] palette transparency
59
-
*[x] palette swapping
60
-
*[ ] printing text on the screen
61
-
*[x] system font
62
-
*[ ] custom font and additional features: escape characters, offsets
63
-
*[ ] drawing shapes
64
-
*[x] rectangles, lines, circles
65
-
*[ ] fill patterns
66
-
*[ ] stretching sprites
67
-
*[ ] map API
68
-
*[ ] math API
69
-
*[x] Cos, Sin, Atan2
70
-
*[ ] Min, Max, Mid
71
-
*[x] Game controller support: gamepad and keyboard
72
-
*[ ] Mouse support (dev mode)
73
-
*[ ] Full keyboard support (dev mode)
74
-
*[ ] Menu screen
75
-
*[ ] Development console
76
-
*[ ] stopping, resuming the game
77
-
*[x] add a programmatic way to stop the game
78
-
*[ ] resume the game using console command
79
-
*[ ] scripting (running π functions)
80
-
*[ ] screen inspector
81
-
*[ ] sprite-sheet editor
82
-
*[ ] map editor
83
-
*[ ] sound editor
84
-
*[ ] music editor
85
-
*[ ] Documentation
86
-
*[ ] Go docs
87
-
*[ ] Examples
88
-
*[ ] simple programs for beginners
89
-
*[ ] interactive programs describing how functions work
0 commit comments