It uses a Lisp-based scene description language (with macros!) and WebRTC to form a P2P network of compute nodes, entirely in the browser, with near-native performance thanks to dynamic compilation to AsmJS.
edit: I reproduced your scene, give it a bit to render.
edit: Wow, you have a lot of neat scenes!
edit: And here you go. rendered at ~2.5 million samples a second, thanks JumboCargoCable whoever you are! (You can set your nick in the settings menu accessible via the gear icon in the top left.) https://i.imgur.com/UvdBhq1.jpg and scene http://bit.ly/2yYciCS though I think I made it too bright.
edit: Some people appear to have buggy systems that always return black pixels. :-(
edit: Could whoever is SilkyDoorGame please post their cpu, os and browser?
If you email hn@ycombinator.com we'll send you a repost invite. I don't want to do it now because once a particular theme (in this case ray tracers) has made the front page it's usually not a good idea to post another one too soon.
Yeah in retrospect my mistake was to bet on a single announcement post instead of a series of smaller posts over the months I developed it. That's the sort of thing you only realize is a mistake after you'd made it, though.
It's not strictly speaking a "scene description language", it just looks like that at first glance.
It's a fully capable compiled programming language, which I happen to have written a raytracer in. Check out the "pathtrace" tab.
The advantage is if there's some issue with the raytracer, you can fix it yourself. And you can use arbitrary scripts for making scenes. (Though the scene in memory must not exceed 32MB, which may limit you somewhat.)
The results (R,G,B) that you calculate are physical quantities (amount of photons, or Watts). But when you double the amount of photons, the human eye sees it like 40% brighter, not 2x brighter.
RGB values, that you give to the monitor (through the canvas), were constructed according to the human eye, so rgb(40,40,40) looks 2x brighter than rgb(20,20,20).
Long story short, when you have your physical Red value between 0 and 1, do Red = Math.pow(Red,1/2.2);
It uses a Lisp-based scene description language (with macros!) and WebRTC to form a P2P network of compute nodes, entirely in the browser, with near-native performance thanks to dynamic compilation to AsmJS.
It got 0 votes on Hacker News.
I'm not salty.
edit: Source on Github! https://github.com/FeepingCreature/jsfarm/
edit: I reproduced your scene, give it a bit to render.
edit: Wow, you have a lot of neat scenes!
edit: And here you go. rendered at ~2.5 million samples a second, thanks JumboCargoCable whoever you are! (You can set your nick in the settings menu accessible via the gear icon in the top left.) https://i.imgur.com/UvdBhq1.jpg and scene http://bit.ly/2yYciCS though I think I made it too bright.
edit: Some people appear to have buggy systems that always return black pixels. :-(
edit: Could whoever is SilkyDoorGame please post their cpu, os and browser?