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
After which the binary is either already on `$PATH` or located at `~/.cargo/bin/overlook` on Linux.
71
71
72
72
73
-
# 🖥️ Usage
73
+
##🖥️ Usage
74
74
75
75
For the best experience, use a terminal emulator with [true color support](https://gist.github.com/kurahaupo/6ce0eaefe5e730841f03cb82b061daa2#now-supporting-true-color). Terminal emulators that only support ANSI escape codes may be used with the `--ansi` flag.
76
76
@@ -88,9 +88,9 @@ Options:
88
88
```
89
89
90
90
91
-
# 🛠️ Write-up
91
+
##🛠️ Write-up
92
92
93
-
## Architecture
93
+
###Architecture
94
94
95
95
At the core of `overlook` is the _animation_ trait. As its name suggests, it defines an animation running in realtime using a discrete `step` function,[^2] which has mutable access to our _state_. The state contains e.g. the maze, whether nodes have yet been visited, and global settings derived from the CLI.
96
96
@@ -100,7 +100,7 @@ Animations performing the same task (e.g. generating or solving the maze) will g
100
100
- Walk: walk the maze from goal back to start using the parent LUT
101
101
102
102
103
-
## Maze
103
+
###Maze
104
104
105
105
The maze is represented as a lattice of nodes connected by edges, which may be open to signify a passage, or closed to signify a wall. Although this is the representation, this lattice is never stored in memory, and traversed through (encapsulated) coordinate arithmetic.
106
106
@@ -111,7 +111,7 @@ Nodes indices are trivially flattened according to $x + y * \text{width}$. To fl
111
111
Inside the maze we keep an edge buffer of booleans indicating whether each edge is open. Other node and edge buffers are used by the implementations of individual animations. This allows us to spare precious nanoseconds in this _extremely_ (very) time-sensitive program by not using hash-tables as lookups.
112
112
113
113
114
-
## Colours
114
+
###Colours
115
115
116
116
Each phase defines a colour scheme to be used when rendering the maze. The colour scheme contains colours for:
0 commit comments