{"id":103,"date":"2014-03-14T13:19:20","date_gmt":"2014-03-14T02:19:20","guid":{"rendered":"http:\/\/scipilot.org\/blog\/?p=103"},"modified":"2015-01-06T18:22:30","modified_gmt":"2015-01-06T07:22:30","slug":"dusted-off-4d-games","status":"publish","type":"post","link":"https:\/\/scipilot.org\/blog\/2014\/03\/14\/dusted-off-4d-games\/","title":{"rendered":"Dusted off &#8211; 4D games"},"content":{"rendered":"<p>Hopefully I&#8217;m not infringing any trademarks with the term 4D games, but many years ago I was fascinated with the idea of why the human brain (except Stephen Hawking&#8217;s) cannot think in more than three dimensions.<\/p>\n<p>I&#8217;d seen a number of books and even short videos of 4D visualisations, but you never quite understand something until you can fight it or play with it and control it. So I thought why not make a simple 4D game and see if it causes a mental phase-change if it &#8220;clicks&#8221;.<\/p>\n<p>I wanted to start with a simple game: put a peg in a hole. Sounds easy, but I&#8217;m presuming in 4D it&#8217;ll get weird really quickly. Then later on we could move on to more complicated puzzles, like jigsaws, knots, shooting\/aiming, driving. The list is as endless as for 3D, but we need to take baby steps into this confusing world.<\/p>\n<p>My first venture in the 90&#8217;s was into C++ libraries, researching rendering, ray-tracing, collision detection and so-forth. I even discussed it with some experts in the field who thought I was mad to try collision detection in 4D. I did try to amend a port of a 3D graphics library &#8211; how hard could it be to add <em>one more dimension<\/em>? But my grasp of complex maths proved far to tenuous.<\/p>\n<p>Later I discovered a nice Flash visualisation of a hypercube with source* so I managed to modify it to make a more interactive version.<\/p>\n<p>(*\u00a0I&#8217;m sorry to say since 2006 I&#8217;ve lost the attribution for the source, if you recognise it please let me know!)<\/p>\n<p>I added more controls to be able to control every aspect of the view &#8211; including the W dimension (which is probably the wrong name for it). The curious thing is that adding the extra dimension leads to the need for <em>two<\/em> new controls (like pitch, roll and yaw) which I&#8217;ve labelled XW and YW. I don&#8217;t really understand them, as they were reversed engineered from the mathematics but seemed to be needed to complete the control of all variables. If anyone can explain it I&#8217;d be very interested.<\/p>\n<p>The graphics are terrible, the UI is incomplete! It&#8217;s just dusted off.<\/p>\n<p>The keyboard controls are:<br \/>\nA-Z: Rotate X-axis \u00a0| \u00a0S-X: Rotate Y-Axis \u00a0| \u00a0D-C: Rotate Z-Axis<br \/>\nV-B: Rotate around XW Axis \u00a0| \u00a0N-J: Rotate around YW Axis\u00a0(I think!)<\/p>\n<p><object width=\"1024\" height=\"800\" classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" codebase=\"http:\/\/download.macromedia.com\/pub\/shockwave\/cabs\/flash\/swflash.cab#version=6,0,40,0\"><param name=\"src\" value=\"https:\/\/scipilot.org\/blog\/wp-content\/uploads\/2014\/03\/4d_v41.swf\" \/><embed width=\"1024\" height=\"800\" type=\"application\/x-shockwave-flash\" src=\"https:\/\/scipilot.org\/blog\/wp-content\/uploads\/2014\/03\/4d_v41.swf\" \/><\/object><\/p>\n<p><a href=\"https:\/\/scipilot.org\/blog\/wp-content\/uploads\/2014\/03\/4d_v41.swf\">Click the Autopilot and set the periods to have make a trippy screensaver.<\/a><\/p>\n<p><a href=\"https:\/\/scipilot.org\/blog\/wp-content\/uploads\/2014\/03\/4d_v41.swf\">View the SWF here<\/a><\/p>\n<p>Download\u00a0<a href=\"https:\/\/scipilot.org\/blog\/wp-content\/uploads\/2014\/03\/4DHypercubeFlash.zip\">Source zip<\/a><\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hopefully I&#8217;m not infringing any trademarks with the term 4D games, but many years ago I was fascinated with the idea of why the human brain (except Stephen Hawking&#8217;s) cannot think in more than three dimensions. I&#8217;d seen a number &hellip; <a href=\"https:\/\/scipilot.org\/blog\/2014\/03\/14\/dusted-off-4d-games\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[16,3],"tags":[38,8,6,39],"class_list":["post-103","post","type-post","status-publish","format-standard","hentry","category-dusted-off","category-projects","tag-4d","tag-dusty","tag-flash","tag-visualisation"],"_links":{"self":[{"href":"https:\/\/scipilot.org\/blog\/wp-json\/wp\/v2\/posts\/103","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/scipilot.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/scipilot.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/scipilot.org\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/scipilot.org\/blog\/wp-json\/wp\/v2\/comments?post=103"}],"version-history":[{"count":8,"href":"https:\/\/scipilot.org\/blog\/wp-json\/wp\/v2\/posts\/103\/revisions"}],"predecessor-version":[{"id":115,"href":"https:\/\/scipilot.org\/blog\/wp-json\/wp\/v2\/posts\/103\/revisions\/115"}],"wp:attachment":[{"href":"https:\/\/scipilot.org\/blog\/wp-json\/wp\/v2\/media?parent=103"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/scipilot.org\/blog\/wp-json\/wp\/v2\/categories?post=103"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/scipilot.org\/blog\/wp-json\/wp\/v2\/tags?post=103"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}