{"id":26385,"date":"2024-04-09T21:29:57","date_gmt":"2024-04-10T02:29:57","guid":{"rendered":"http:\/\/blog.kenperlin.com\/?p=26385"},"modified":"2024-04-09T21:29:57","modified_gmt":"2024-04-10T02:29:57","slug":"40-years-an-eclipse","status":"publish","type":"post","link":"http:\/\/blog.kenperlin.com\/?p=26385","title":{"rendered":"40 Years an Eclipse"},"content":{"rendered":"<p>Yesterday I posted an animated eclipse implemented as a procedural texture, in honor of that day&#8217;s great celestial event. It&#8217;s not a movie clip &#8212; it&#8217;s a live simulation running on your computer or phone.<\/p>\n<p>Interestingly, this eclipse simulation is actually something that I created exactly 40 years ago. In 1984 I introduced to the world what came to be known as procedural shader languages, in the course of which I created lots of examples.<\/p>\n<p>One of those examples was this procedurally generated eclipse. Originally it ran in my own custom shader language. Then around 18 years ago I re-implemented it in Java. More recently I re-implemented it yet again as a WebGL fragment shader.<\/p>\n<p>But the design and the algorithm has never changed. It&#8217;s the same procedural eclipse that I created back in April 1984. Except that back then it took 30 minutes a frame to compute. Now it just runs on your phone in real time, thanks to the wonder of Moore&#8217;s Law.<\/p>\n<p>In another 40 years, I wonder what simulations will run in real time that now take half an hour to compute. I can hardly wait!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Yesterday I posted an animated eclipse implemented as a procedural texture, in honor of that day&#8217;s great celestial event. It&#8217;s not a movie clip &#8212; it&#8217;s a live simulation running on your computer or phone. Interestingly, this eclipse simulation is actually something that I created exactly 40 years ago. In 1984 I introduced to the &hellip; <a href=\"http:\/\/blog.kenperlin.com\/?p=26385\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;40 Years an Eclipse&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[],"_links":{"self":[{"href":"http:\/\/blog.kenperlin.com\/index.php?rest_route=\/wp\/v2\/posts\/26385"}],"collection":[{"href":"http:\/\/blog.kenperlin.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.kenperlin.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.kenperlin.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.kenperlin.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=26385"}],"version-history":[{"count":1,"href":"http:\/\/blog.kenperlin.com\/index.php?rest_route=\/wp\/v2\/posts\/26385\/revisions"}],"predecessor-version":[{"id":26386,"href":"http:\/\/blog.kenperlin.com\/index.php?rest_route=\/wp\/v2\/posts\/26385\/revisions\/26386"}],"wp:attachment":[{"href":"http:\/\/blog.kenperlin.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=26385"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.kenperlin.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=26385"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.kenperlin.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=26385"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}