<story><title>Global Illumination in WebGL</title><url>https://playcanv.as/p/ZV4PW6wr/</url></story><parent_chain></parent_chain><comment><author>westoncb</author><text>I&amp;#x27;m surprised I never see playcanvas on HN. It&amp;#x27;s great technology that should be better known IMO.&lt;p&gt;I first came across it working on a project where I needed to load and animate a number of complex .fbx character models. Spent loads of time trying to do this with three.js (in 2017) + all manner of converters to different formats. I tried every supported loader and they were all broken in various ways.&lt;p&gt;Then somehow I found playcanvas and had the models loaded and working flawlessly in a very short period of time. That experience extended to basically everything else I tried with the system—it&amp;#x27;s well polished.&lt;p&gt;The editor UI is very nice, and yet remains lightweight in a way where I still feel more like I&amp;#x27;m working with something like three.js than e.g. Unity. I personally still prefer three.js for &lt;i&gt;most&lt;/i&gt; projects I work on, but it would be a very good option for certain projects and I always keep it in mind. It&amp;#x27;s also open source: &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;playcanvas&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;playcanvas&lt;/a&gt;&lt;p&gt;The downside is for the free tier you get their logo on your app, and you can&amp;#x27;t hide the source (and anyone can fork your project). On the up-side, the pricing was something like $15&amp;#x2F;month last time I checked.&lt;p&gt;For a very simple example, here&amp;#x27;s an asteroids game I spent a few days making with it: &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;playcanvas.com&amp;#x2F;project&amp;#x2F;479850&amp;#x2F;overview&amp;#x2F;rocks&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;playcanvas.com&amp;#x2F;project&amp;#x2F;479850&amp;#x2F;overview&amp;#x2F;rocks&lt;/a&gt;   (you can play or jump into the editor and modify from that link.)</text></comment>
<story><title>Global Illumination in WebGL</title><url>https://playcanv.as/p/ZV4PW6wr/</url></story><parent_chain></parent_chain><comment><author>gavanwoolery</author><text>Neat, dont have time to dive in the source right now but whats the trick? Light probes?
Edit: Ah, nevermind its one click away:&lt;p&gt;&amp;quot;Illumination technique used here is:&lt;p&gt;Realtime direct shadowmapping with time blended lighmaps for global illumination on: walls, ceiling and floor.&lt;p&gt;For furniture we use spherical harmonics L2 with spatial and time blending for ambient light.&lt;p&gt;Reflections made with time blended box projected cubemaps for image based lighting on physically based materials.&lt;p&gt;Post processing done with color grading by LUT (lookup tables) and vignette.&amp;quot;</text></comment>