<blockquote>2D graphics library published on <a href="https://github.com/androdlang/TFTShape">GitHub</a>.</blockquote>
<h6><img class="alignleft wp-image-675 size-full" src="http://johann.langhofer.net/wp-content/uploads/2018/11/screenshot_66925.png" alt="screenshot_66925" width="240" height="320" /> <img class="alignleft wp-image-674 size-full" src="http://johann.langhofer.net/wp-content/uploads/2018/11/screenshot_66902.png" alt="screenshot_66902" width="240" height="320" /> <img class="size-full wp-image-673 alignleft" src="http://johann.langhofer.net/wp-content/uploads/2018/11/screenshot_51387.png" alt="screenshot_51387" width="240" height="320" /> <img class="size-full wp-image-672 alignleft" src="http://johann.langhofer.net/wp-content/uploads/2018/11/screenshot_51372.png" alt="screenshot_51372" width="240" height="320" /> <img class="size-full wp-image-671 alignleft" src="http://johann.langhofer.net/wp-content/uploads/2018/11/screenshot_51345.png" alt="screenshot_51345" width="240" height="320" /> <img class="size-full wp-image-670 alignleft" src="http://johann.langhofer.net/wp-content/uploads/2018/11/screenshot_35854.png" alt="screenshot_35854" width="240" height="320" /> <img class="size-full wp-image-668 alignleft" src="http://johann.langhofer.net/wp-content/uploads/2018/11/screenshot_35845.png" alt="screenshot_35845" width="240" height="320" /> <img class="size-full wp-image-669 alignleft" src="http://johann.langhofer.net/wp-content/uploads/2018/11/screenshot_35853.png" alt="screenshot_35853" width="240" height="320" /> <img class="size-full wp-image-667 alignleft" src="http://johann.langhofer.net/wp-content/uploads/2018/11/screenshot_20287.png" alt="screenshot_20287" width="240" height="320" /> <img class="size-full wp-image-666 alignleft" src="http://johann.langhofer.net/wp-content/uploads/2018/11/screenshot_20266.png" alt="screenshot_20266" width="240" height="320" /> <img class="size-full wp-image-665 alignleft" src="http://johann.langhofer.net/wp-content/uploads/2018/11/screenshot_20260.png" alt="screenshot_20260" width="240" height="320" /> <img class="size-full wp-image-664 alignleft" src="http://johann.langhofer.net/wp-content/uploads/2018/11/screenshot_4598.png" alt="screenshot_4598" width="240" height="320" /> <img class="size-full wp-image-663 alignleft" src="http://johann.langhofer.net/wp-content/uploads/2018/11/screenshot_4572.png" alt="screenshot_4572" width="240" height="320" /> <img class="size-full wp-image-662 alignleft" src="http://johann.langhofer.net/wp-content/uploads/2018/11/screenshot_4571.png" alt="screenshot_4571" width="240" height="320" /> <img class="size-full wp-image-661 alignleft" src="http://johann.langhofer.net/wp-content/uploads/2018/11/screenshot_4564.png" alt="screenshot_4564" width="240" height="320" /> <img class="size-full wp-image-660 alignleft" src="http://johann.langhofer.net/wp-content/uploads/2018/11/screenshot_4559.png" alt="screenshot_4559" width="240" height="320" /></h6>
<h6><img class="size-full wp-image-659 aligncenter" src="http://johann.langhofer.net/wp-content/uploads/2018/11/screenshot_4554.png" alt="screenshot_4554" width="240" height="320" /></h6>
<h6></h6>
<blockquote>&nbsp;

&nbsp;

&nbsp;

&nbsp;

&nbsp;

&nbsp;

PBRComposer V1.00 released.
<img class="alignnone size-full wp-image-546" src="http://johann.langhofer.net/wp-content/uploads/2017/08/screen4.jpg" alt="screen4" width="1492" height="839" />
<a href="http://johann.langhofer.net/PBRComposer">LiveDemo (click 'Load' to recall presets)</a>
<a href="https://github.com/androdlang/PBRComposer">Project on GitHub</a>

<img class="alignnone size-full wp-image-547" src="http://johann.langhofer.net/wp-content/uploads/2017/08/screen6.jpg" alt="screen6" width="1996" height="476" />
<img class="alignnone size-full wp-image-549" src="http://johann.langhofer.net/wp-content/uploads/2017/08/screen10.jpg" alt="screen10" width="2720" height="470" />
<img class="alignnone size-full wp-image-564" src="http://johann.langhofer.net/wp-content/uploads/2017/08/demos.jpg" alt="demos" width="2100" height="2800" /></blockquote>
<blockquote>The following image was modeled with Blender, textures were generated with FilterForge 6.0 and rendered with Babylon.js (right click for better resolution)
<img class="alignnone size-full wp-image-531" src="http://johann.langhofer.net/wp-content/uploads/2017/08/amboss.jpg" alt="amboss" width="1372" height="799" />

<a href="http://johann.langhofer.net/candle/">Candles realtime simulation with pixi.js </a>
<img class="alignnone size-medium wp-image-509" src="http://johann.langhofer.net/wp-content/uploads/2017/03/screen-300x257.jpg" alt="screen" width="300" height="257" /></blockquote>
<blockquote><a href="http://johann.langhofer.net/escher/mirrorcubes.html">Mirror-Cubes </a>
<img class="alignnone size-medium wp-image-499" src="http://johann.langhofer.net/wp-content/uploads/2016/04/screen-300x207.jpg" alt="screen" width="300" height="207" /></blockquote>
Useful links:
<a href="http://thebookofshaders.com/">the book of shaders</a>
<a href="http://editor.thebookofshaders.com/">EDITOR the book of shaders</a>
<a href="http://www.cdglabs.org/Shadershop/">shadershop</a>
<a href="http://www.iquilezles.org/">!!iquilezles!!</a>