index.html 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  5. <meta name="description" content="A collection of hobbies and amusing web toys and prototypes." />
  6. <meta name="keywords"
  7. content="eyeofmidas eye of midas game development programmer javascript processing impactjs" />
  8. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  9. <title>EyeOfMidas.com</title>
  10. <!--sharing tags -->
  11. <meta property="og:title" content="Eye of Midas" />
  12. <meta property="og:description" content="A collection of hobbies and amusing web toys and prototypes." />
  13. <meta property="og:url" content="https://eyeofmidas.com/" />
  14. <meta property="og:image" content="https://eyeofmidas.com/images/eom_preview.gif" />
  15. <meta property="og:video" content="https://eyeofmidas.com/images/eom_preview.mp4" />
  16. <meta property="og:type" content="video.other" />
  17. <link rel="stylesheet" type="text/css" href="./css/main.css" />
  18. <link rel="stylesheet" type="text/css" href="./css/simplecarousel.css" />
  19. <link rel="stylesheet" crossorigin href="./night-and-day/assets/index-P1oR9gqR.css">
  20. <link href="https://fonts.googleapis.com/css?family=Roboto|Oswald" rel="stylesheet" />
  21. </head>
  22. <body>
  23. <header id="background-container">
  24. <canvas id="background"></canvas>
  25. <canvas id="asteroids-background"></canvas>
  26. <h1>Eye Of Midas</h1>
  27. </header>
  28. <nav>
  29. <ul>
  30. <li><a href="./">Home</a></li>
  31. <li><a href="https://eyeofmidas.wordpress.com/" target="_blank">Developer Blog</a></li>
  32. <li><a href="https://tddnetwork.org/" target="_blank">TDD Network Forum</a></li>
  33. <li><a href="#prototypes">Prototypes</a></li>
  34. <li><a href="#contact">Contact</a></li>
  35. </ul>
  36. </nav>
  37. <main>
  38. <section id="prototype-section">
  39. <h2 id="prototypes">Prototypes</h2>
  40. <div class="project">
  41. <div class="teaser">
  42. <a href="./threejs/portal" target="_blank">
  43. <video autoplay loop muted>
  44. <source src="./images/portal.mp4" type="video/mp4">
  45. </video>
  46. </a>
  47. </div>
  48. <div class="description">
  49. <h3><a href="./threejs/portal" target="_blank">Portal with Baked Lighting</a></h3>
  50. <p>The capstone project of the ThreeJS Journey course</p>
  51. </div>
  52. </div>
  53. <div class="project">
  54. <div class="teaser">
  55. <canvas class="night-and-day"></canvas>
  56. </div>
  57. <div class="description">
  58. <h3>Night and Day</h3>
  59. <p>A breakout battle between two colors, as defined by random contrast bot RSS feed</p>
  60. </div>
  61. </div>
  62. <div class="project">
  63. <div class="teaser">
  64. <a href="./rogueengine/vaporwave" target="_blank">
  65. <img src="./images/vaporwave.png"
  66. alt="A 3d rendered scene of a wireframe valley between mountains with a yellow to magenta sunset in the distance." />
  67. </a>
  68. </div>
  69. <div class="description">
  70. <h3><a href="./rogueengine/vaporwave" target="_blank">Vaporwave</a></h3>
  71. <p>View of an animated vaporwave scene.</p>
  72. </div>
  73. </div>
  74. <div class="project">
  75. <div class="teaser">
  76. <a href="./rogueengine/shipshot" target="_blank">
  77. <video autoplay loop muted>
  78. <source src="./images/shipshot.mp4" type="video/mp4">
  79. </video>
  80. </a>
  81. </div>
  82. <div class="description">
  83. <h3><a href="./rogueengine/shipshot" target="_blank">ShipShot</a></h3>
  84. <p>A KenneyJam attempt to make a pirate sailing game using RogueEngine.</p>
  85. </div>
  86. </div>
  87. <div class="project">
  88. <div class="teaser">
  89. <a href="./rogueengine/spacestation" target="_blank">
  90. <img src="./images/spacestation.png"
  91. alt="a 3d rendered scene of a view out the window of a science fiction space station, looking at the Earth." />
  92. </a>
  93. </div>
  94. <div class="description">
  95. <h3><a href="./rogueengine/spacestation" target="_blank">Space Station</a></h3>
  96. <p>View of a rotating Earth from a space station, complete with calming engine noises.</p>
  97. </div>
  98. </div>
  99. <div class="project">
  100. <div class="teaser">
  101. <a href="./rogueengine/simcity" target="_blank">
  102. <video autoplay loop muted>
  103. <source src="./images/wreckingball.mp4" type="video/mp4">
  104. </video>
  105. </a>
  106. </div>
  107. <div class="description">
  108. <h3><a href="./rogueengine/simcity" target="_blank">Wrecking Ball</a></h3>
  109. <p>A RogueEngine demo using Rapier physics where you roll a ball around and knock over buildings.
  110. </p>
  111. </div>
  112. </div>
  113. <div class="project">
  114. <div class="teaser">
  115. <a href="http://eyeofmidas.net/honeycomb" target="_blank"><img src="./images/honeycomb.png"
  116. alt="a rendered scene of beehives and flowers, with yellow and red bee-balls flying between them" /></a>
  117. </div>
  118. <div class="description">
  119. <h3><a href="http://eyeofmidas.net/honeycomb" target="_blank">ThreeJS bee-themed Conquest/RTS</a>
  120. </h3>
  121. <p>A rough prototype to experiment with RTS-style controls in a 3D environment</p>
  122. </div>
  123. </div>
  124. <div class="project">
  125. <div class="teaser">
  126. <a href="https://eyeofmidas.github.io/2020js13k/">
  127. <video autoplay loop muted>
  128. <source src="./images/p4ck3t.mp4" type="video/mp4">
  129. </video>
  130. </a>
  131. </div>
  132. <div class="description">
  133. <h3><a href="https://eyeofmidas.github.io/2020js13k/">P4ck3t</a></h3>
  134. <p>A js13k game entry with it's primary mechanic based on a "pipes" style game.</p>
  135. </div>
  136. </div>
  137. <div class="project">
  138. <div class="teaser">
  139. <a href="http://ganache.eyeofmidas.net/" target="_blank">
  140. <video autoplay loop muted>
  141. <source src="./images/ganache.mp4" type="video/mp4">
  142. </video>
  143. </a>
  144. </div>
  145. <div class="description">
  146. <h3><a href="http://ganache.eyeofmidas.net/" target="_blank">Multiplayer Websocket RPG</a></h3>
  147. <p>A tile-based game that uses websockets to enable multiplayer</p>
  148. </div>
  149. </div>
  150. <div class="project">
  151. <div class="teaser">
  152. <a href="https://github.com/EyeOfMidas/impact-midas" target="_blank">
  153. <!--<img src="./files/lights_gameplay.gif" alt="an animated image of the a grid of black or white squares, with the player solving the puzzle of converting them all to white" style="display: inline-block;" />
  154. <img src="./files/swarm_gameplay.gif" alt="an animated image of several bubble-bees moving randomly, with the user practicing attention skills by keeping track of specific ones" style="display: none;" />
  155. <img src="./files/weighty_gameplay.gif" alt="an animated image of a logic puzzle with a series of symbols on scales. The user solves the problem by deducing which symbol is heaviest or lightest" style="display: none;" />-->
  156. <video autoplay loop style="display: inline-block;">
  157. <source src="./images/lights_gameplay.mp4" type="video/mp4">
  158. </video>
  159. <video autoplay loop style="display: none;">
  160. <source src="./images/swarm_gameplay.mp4" type="video/mp4">
  161. </video>
  162. <video autoplay loop style="display: none;">
  163. <source src="./images/weighty_gameplay.mp4" type="video/mp4">
  164. </video>
  165. </a>
  166. <button class="image-carousel"></button>
  167. </div>
  168. <div class="description">
  169. <h3><a href="https://github.com/EyeOfMidas/impact-midas" target="_blank">ImpactJS Game Suite</a>
  170. </h3>
  171. <p>A few brain-training games made in ImpactJS</p>
  172. </div>
  173. </div>
  174. <div class="project">
  175. <div class="teaser">
  176. <a href="https://eyeofmidas.github.io/canvas-asteroids/asteroids.html" target="_blank">
  177. <video autoplay loop>
  178. <source src="./images/asteroids.mp4" type="video/mp4">
  179. </video>
  180. </a>
  181. </div>
  182. <div class="description">
  183. <h3><a href="https://eyeofmidas.github.io/canvas-asteroids/asteroids.html" target="_blank">Canvas
  184. Asteroids</a></h3>
  185. <p>A quick tutorial HTML5 Canvas game recreating Asteroids</p>
  186. </div>
  187. </div>
  188. <div class="project">
  189. <div class="teaser">
  190. <a href="https://github.com/EyeOfMidas/text-adventure" target="_blank"><img
  191. src="./images/textadventure.png"
  192. alt="a black console with descriptive white text, representing a text-based game in the browser" /></a>
  193. </div>
  194. <div class="description">
  195. <h3><a href="https://github.com/EyeOfMidas/text-adventure" target="_blank">Text Adventure</a></h3>
  196. <p>A pure-javascript implementation of a text-based game.</p>
  197. </div>
  198. </div>
  199. <!-- Archived -->
  200. <!--<div class="project">
  201. <div class="teaser">
  202. <a href="https://github.com/EyeOfMidas/eightfootjs" target="_blank"><img src="./images/slots.png" alt="a green three-wheel slot machine with various shape patterns on each wheel" /></a>
  203. </div>
  204. <div class="description">
  205. <h3><a href="https://github.com/EyeOfMidas/eightfootjs" target="_blank">Canvas Game Engine</a></h3>
  206. <p>An HTML5 Canvas game framework/library to build games quickly (assets, scaling, animation, sound)</p>
  207. </div>
  208. </div>-->
  209. <div class="project">
  210. <div class="teaser">
  211. <a href="./canvas/gravitywell/" target="_blank">
  212. <video autoplay loop>
  213. <source src="./images/gravitywell.mp4" type="video/mp4">
  214. </video>
  215. </a>
  216. </div>
  217. <div class="description">
  218. <h3><a href="./canvas/gravitywell/" target="_blank">Gravity Well clone</a></h3>
  219. <p>An HTML5 canvas remake of a game in the 90s</p>
  220. </div>
  221. </div>
  222. <!-- Archived -->
  223. <!--<div class="project">
  224. <div class="teaser">
  225. <div id="boxes-container">
  226. <canvas></canvas>
  227. </div>
  228. </div>
  229. <div class="description">
  230. <h3>Boxes</h3>
  231. <p>Fast rendering HTML canvas box particles</p>
  232. </div>
  233. </div>-->
  234. <!-- Archived -->
  235. <!--<div class="project">
  236. <div class="teaser">
  237. <a href="https://github.com/EyeOfMidas/retro-retrospective" target="_blank"><img src="./images/retroretrospective.png" alt="A retrospective board done in a retro 70s style, showing 4 sections: last sprint, things we did well, things we did poorly, solutions" /></a>
  238. </div>
  239. <div class="description">
  240. <h3><a href="https://github.com/EyeOfMidas/retro-retrospective" target="_blank">Retro Retrospective</a></h3>
  241. <p>A pure-native retrospective tool for development teams, done in a 70s style</p>
  242. </div>
  243. </div>-->
  244. <div class="project">
  245. <div class="teaser">
  246. <a href="https://github.com/EyeOfMidas/tavern-name-generator" target="_blank"><img
  247. src="./images/tavernname.png"
  248. alt="a wooden board with the name of a randomly generated tavern on it: Triangular Bear Pub. A Generate button is displayed below." /></a>
  249. </div>
  250. <div class="description">
  251. <h3><a href="https://github.com/EyeOfMidas/tavern-name-generator" target="_blank">Tavern Name
  252. Generator</a></h3>
  253. <p>A simple generator for making creative D&D themed taverns</p>
  254. </div>
  255. </div>
  256. <div class="project">
  257. <div class="teaser">
  258. <a href="./vgs" target="_blank"><img src="./images/vgs.png"
  259. alt="a white page with the instructions Just start typing! Try VGS and a list of various Tribes voice commands" /></a>
  260. </div>
  261. <div class="description">
  262. <h3><a href="./vgs" target="_blank">Tribes VGS Audio Chat</a></h3>
  263. <p>HTML5 audio async loading controlled in the style of Tribes VGS</p>
  264. </div>
  265. </div>
  266. <div class="project">
  267. <div class="teaser">
  268. <a href="http://eyeofmidas.net/mudmapper/" target="_blank"><img src="./images/mudmapper.png"
  269. alt="A gray field with a set of squiggle-connected white boxes. Each box has the name of a room: temple, street, guild. A drop-down menu shows the ability to add new rooms" /></a>
  270. </div>
  271. <div class="description">
  272. <h3><a href="http://eyeofmidas.net/mudmapper/" target="_blank">Mud Mapper</a></h3>
  273. <p>Browser-based editor for building out maps for MUDs</p>
  274. </div>
  275. </div>
  276. <!-- Archived -->
  277. <!--
  278. <div class="project">
  279. <div class="teaser">
  280. <a href="processing/?p=powercontrol&w=400&h=600"><video autoplay loop>
  281. <source src="./files/powercontrol.mp4" type="video/mp4"></video></a>
  282. </div>
  283. <div class="description">
  284. <h3><a href="processing/?p=powercontrol&w=400&h=600">Power Control</a></h3>
  285. <p>I replicated the FTL power control system in Processing</p>
  286. </div>
  287. </div>
  288. <div class="project">
  289. <div class="teaser">
  290. <a href="processing/?p=raverlights&w=640&h=360"><img src="./images/brownian.png" alt="a black image with colorful curving lines randomly positioned" /></a>
  291. </div>
  292. <div class="description">
  293. <h3><a href="processing/?p=raverlights&w=640&h=360">Raver Lights</a></h3>
  294. <p>Brownian motion smoothed to bezier curves, now with fancy colors!</p>
  295. </div>
  296. </div>
  297. <div class="project">
  298. <div class="teaser">
  299. <a href="processing/?p=orbitdemo&w=640&h=480"><img src="./images/orbit.png" alt="a large green circle outline with a small red rectangle in the center. A small gray circle outline with a yellow rectangle in it's center is circling it" /></a>
  300. </div>
  301. <div class="description">
  302. <h3><a href="processing/?p=orbitdemo&w=640&h=480">Orbit</a></h3>
  303. <p>A simple math demo to show orbits and movement along them.</p>
  304. </div>
  305. </div>
  306. <div class="project">
  307. <div class="teaser">
  308. <a href="processing/?p=torch&w=640&h=480"><img src="./images/torch.png" alt="a purple vector image of a horizontal flame, like a rocket tail" /></a>
  309. </div>
  310. <div class="description">
  311. <h3><a href="processing/?p=torch&w=640&h=480">Torch</a></h3>
  312. <p>A spaceship thrust tail</p>
  313. </div>
  314. </div>
  315. <div class="project">
  316. <div class="teaser">
  317. <a href="processing/?p=starsystem&w=640&h=480"><img src="./images/orbitphysics.png" alt="a large yellow circle outline with a tiny green circle outline orbiting it" /></a>
  318. </div>
  319. <div class="description">
  320. <h3><a href="processing/?p=starsystem&w=640&h=480">Orbit physics</a></h3>
  321. <p>A quick mathy prototype that shows how orbit physics should be calculated</p>
  322. </div>
  323. </div>
  324. <div class="project">
  325. <div class="teaser">
  326. <a href="processing/?p=creepyfish&w=800&h=600"><img src="./images/creepyfish.png" alt="a blue image with multiple white wireframe fish swimming about creepily" /></a>
  327. </div>
  328. <div class="description">
  329. <h3><a href="processing/?p=creepyfish&w=800&h=600">Creepyfish</a></h3>
  330. <p>A set of simple fish that don't move quite right. Still tweaking the numbers...</p>
  331. </div>
  332. </div>
  333. <div class="project">
  334. <div class="teaser">
  335. <a href="processing/?p=curvetween2&w=800&h=600"><img src="./images/curvetween.png" alt="a black image with a white ball moving along a curve. The origin, tangent and end points are connected using green lines, and the linear interpolation line is drawn in red." /></a>
  336. </div>
  337. <div class="description">
  338. <h3><a href="processing/?p=curvetween2&w=800&h=600">Curving Tween</a></h3>
  339. <p>Tweening a ball on an arcing line. Press "D" for debugging lines.</p>
  340. </div>
  341. </div>
  342. <div class="project">
  343. <div class="teaser">
  344. <a href="processing/?p=herd_immunity&w=800&h=600"><img src="./images/herdimmunity.png" alt="a white image with various color circles on it. Most circles are blue, but green circles are spreading out from the center" /></a>
  345. </div>
  346. <div class="description">
  347. <h3><a href="processing/?p=herd_immunity&w=800&h=600">Herd Immunity</a></h3>
  348. <p>Read an <a href="http://imgur.com/a/8M7q8" target="_blank">article</a> and tried to replicate the visualizations</p>
  349. </div>
  350. </div>-->
  351. </section>
  352. <section id="contact-section">
  353. <h2 id="contact">Contact</h2>
  354. <img src="https://www.gravatar.com/avatar/ae68a9c7e7e2599bfc3983256513892b?size=300"
  355. alt="a portrait of Midas wearing large headphones and round sunglasses. Reflected in the blue mirror sunglasses is a computer screen displaying program code." />
  356. <ul>
  357. <li>Gmail: eyeofmidas@gmail.com</li>
  358. <li>GTalk: eyeofmidas@gmail.com</li>
  359. <li>LinkedIn: <a href="https://www.linkedin.com/in/eyeofmidas/">Profile</a></li>
  360. <li>Twitter: <a href="https://twitter.com/eyeofmidas">EyeOfMidas</a></li>
  361. <li>Mastodon: <a rel="me" href="https://mastodon.gamedev.place/@eyeofmidas">EyeOfMidas</a></li>
  362. <li>Github: <a href="https://github.com/eyeofmidas/">EyeOfMidas</a></li>
  363. </ul>
  364. </section>
  365. </main>
  366. <footer>
  367. <ul>
  368. <li><a href="/scifi">Science Fiction Short Stories</a></li>
  369. </ul>
  370. <a href="https://eyeofmidas.com" target="_blank"><img src="./images/eom_linkicon.svg"
  371. alt="The Eye of Midas 88x31" /></a>
  372. <p>Website Provided by <a href="http://copperwirehosting.com" target="_blank">Copper Wire Hosting</a></p>
  373. </footer>
  374. <script src="./js/star.js"></script>
  375. <script src="./js/starfield.js"></script>
  376. <script src="./js/starfieldgame.js"></script>
  377. <!-- Archived -->
  378. <!--<script src="./js/box.js"></script>
  379. <script src="./js/circle.js"></script>
  380. <script src="./js/triangle.js"></script>
  381. <script src="./js/starshape.js"></script>
  382. <script src="./js/binaryfloater.js"></script>
  383. <script src="./js/boxgame.js"></script>-->
  384. <script src="./js/simplecarousel.js"></script>
  385. <script type="module">
  386. import { AsteroidToy } from './js/asteroidtoy.js';
  387. document.addEventListener("DOMContentLoaded", function (event) {
  388. var starfieldgame = new StarfieldGame();
  389. starfieldgame.create("background-container");
  390. /* Archived */
  391. //var boxbackground = new BoxGame();
  392. //boxbackground.create("boxes-container");
  393. var asteroidToy = new AsteroidToy("asteroids-background");
  394. asteroidToy.init();
  395. });
  396. </script>
  397. <script type="module" crossorigin src="./night-and-day/assets/index-MyYpA6PZ.js"></script>
  398. <!-- Google tag (gtag.js) -->
  399. <script async src="https://www.googletagmanager.com/gtag/js?id=G-H4BYTFBKJT"></script>
  400. <script>
  401. window.dataLayer = window.dataLayer || [];
  402. function gtag() { dataLayer.push(arguments); }
  403. gtag('js', new Date());
  404. gtag('config', 'G-H4BYTFBKJT');
  405. </script>
  406. </body>
  407. <!-- deploy test 11 -->
  408. </html>