Thicket data repository for the EEG
1{
2 "id": "https://ryan.freumh.org/cubes.html",
3 "title": "Cubes",
4 "link": "https://ryan.freumh.org/cubes.html",
5 "updated": "2022-03-03T00:00:00",
6 "published": "2021-06-03T00:00:00",
7 "summary": "<div>\n \n <span>Published 3 Jun 2021.</span>\n \n \n <span>Last update 3 Mar 2022.</span>\n \n </div>\n \n <div> Tags: <a href=\"/projects.html\" title=\"All pages tagged 'projects'.\">projects</a>. </div>\n \n \n\n <p><span>I was teaching myself Unity the week after the last\nexam for my undergrad and ended up creating this. It’s an infinite\nrunner with cubes created in unity.</span></p>\n<p><span>Play it <a href=\"resources/cubes/\">here</a>.</span></p>\n<p><span>The repo can be found at <a href=\"https://github.com/RyanGibb/cubes\">github.com/RyanGibb/cubes</a>.</span></p>\n<h2>Re-rooting</h2>\n<p><span>To allow the game to be infinite, whilst\nalso avoiding floating point errors, the game world is periodically\n‘re-rooted’. This involves moving the player and all objects back a\ncertain distance in one frame. Objects behind the player can be safely\nremoved.</span></p>\n<p><img src=\"./images/cubes.gif\"></p>\n<p><span>However, it may prove challenging to get\nto a distance where floating point errors occur!</span></p>\n<h2>World Generation</h2>\n<p><span>The world is generated using a\nMarkov Chain containing transitions from segments to segments. Segments\nmay be prefabricated or programatically generated.</span></p>\n<p><img src=\"./images/cubes-markov-chain.svg\"></p>\n<p><span>The square boxes denote a segment\nwith 0 length and simplify the building of the Markov Chain. They are\nsimilar to an epsilon transition in a state machine.</span></p>",
8 "content": "<div>\n \n <span>Published 3 Jun 2021.</span>\n \n \n <span>Last update 3 Mar 2022.</span>\n \n </div>\n \n <div> Tags: <a href=\"/projects.html\" title=\"All pages tagged 'projects'.\">projects</a>. </div>\n \n \n\n <p><span>I was teaching myself Unity the week after the last\nexam for my undergrad and ended up creating this. It’s an infinite\nrunner with cubes created in unity.</span></p>\n<p><span>Play it <a href=\"resources/cubes/\">here</a>.</span></p>\n<p><span>The repo can be found at <a href=\"https://github.com/RyanGibb/cubes\">github.com/RyanGibb/cubes</a>.</span></p>\n<h2>Re-rooting</h2>\n<p><span>To allow the game to be infinite, whilst\nalso avoiding floating point errors, the game world is periodically\n‘re-rooted’. This involves moving the player and all objects back a\ncertain distance in one frame. Objects behind the player can be safely\nremoved.</span></p>\n<p><img src=\"./images/cubes.gif\"></p>\n<p><span>However, it may prove challenging to get\nto a distance where floating point errors occur!</span></p>\n<h2>World Generation</h2>\n<p><span>The world is generated using a\nMarkov Chain containing transitions from segments to segments. Segments\nmay be prefabricated or programatically generated.</span></p>\n<p><img src=\"./images/cubes-markov-chain.svg\"></p>\n<p><span>The square boxes denote a segment\nwith 0 length and simplify the building of the Markov Chain. They are\nsimilar to an epsilon transition in a state machine.</span></p>",
9 "content_type": "html",
10 "categories": [],
11 "source": "https://ryan.freumh.org/atom.xml"
12}