<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Syntopia &#187; WebGL</title>
	<atom:link href="http://blog.hvidtfeldts.net/index.php/category/webgl/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.hvidtfeldts.net</link>
	<description>Art + Culture + Technology</description>
	<lastBuildDate>Tue, 01 Jun 2010 04:59:16 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Shader Toy</title>
		<link>http://blog.hvidtfeldts.net/index.php/2010/02/shader-toy/</link>
		<comments>http://blog.hvidtfeldts.net/index.php/2010/02/shader-toy/#comments</comments>
		<pubDate>Wed, 10 Feb 2010 21:39:47 +0000</pubDate>
		<dc:creator>Mikael Christensen</dc:creator>
				<category><![CDATA[GPU]]></category>
		<category><![CDATA[Generative Art]]></category>
		<category><![CDATA[Mandelbulb]]></category>
		<category><![CDATA[WebGL]]></category>

		<guid isPermaLink="false">http://blog.hvidtfeldts.net/?p=343</guid>
		<description><![CDATA[For some time I&#8217;ve been wanting to play around with pixel (fragment) shaders, but I couldn&#8217;t find a proper playground.
Then I stumbled upon Shader Toy, by Inigo Quilez (whom I&#8217;ve mentioned several times on this blog). A couple of things make Shader Toy stand out:

It runs inside your browser. It uses the emerging WebGL standard, [...]]]></description>
			<content:encoded><![CDATA[<p>For some time I&#8217;ve been wanting to play around with pixel (fragment) shaders, but I couldn&#8217;t find a proper playground.</p>
<p>Then I stumbled upon <a href="http://www.iquilezles.org/apps/shadertoy/">Shader Toy</a>, by Inigo Quilez (whom I&#8217;ve mentioned <a href="http://blog.hvidtfeldts.net/?s=inigo">several times</a> on this blog). A couple of things make Shader Toy stand out:</p>
<p><img src="/media/st1.jpg" /></p>
<p><i>It runs inside your browser</i>. It uses the emerging <a href="http://en.wikipedia.org/wiki/WebGL">WebGL</a> standard, which is JavaScript bindings for OpenGL (ES) 2.0. OpenGL can be used directly inside a Canvas HTML element, including support for custom shaders. As Shader Toy demonstrates, this makes it possible to do some very impressive stuff, such as real-time GPU-accelerated raytracing inside an element on a web page. </p>
<p><img src="/media/st2.jpg" /></p>
<p><i>The examples are great</i>. While Shader Toy itself is mostly a thin wrapper around the WebGL functionality, the great thing about it is the example shaders: 2D fractals and Demo Scene effects, but also complex examples like the <a href="http://blog.hvidtfeldts.net/index.php/2008/08/generative-art-in-4kb/">Slisesix</a> 4K demo, and examples of raytracing, and complex fractals, like the Quaternion Julia set, and the Mandelbulb.</p>
<p>The only problem with WebGL is, that it is not supported by the current generation of browsers. </p>
<p>The good news is that the nightly builds of Firefox, Safari (WebKit), and Chromium (Google Chrome) all support it, and are quite easy to install: <a href="http://www.khronos.org/webgl/wiki/Getting_a_WebGL_Implementation">this</a> is a good place for more information. If you use the Chromium builds, you don&#8217;t have to worry about messing up your existing browser configuration &#8211; the nightly builds are standalone versions and can be run without installation.</p>
<p>There are lots of complex shader tools out there: for instance, NVIDIAs <a href="http://developer.nvidia.com/object/fx_composer_home.html">FX Composer</a>, AMDs <a href="http://developer.amd.com/GPU/RENDERMONKEY/Pages/default.aspx">Rendermonkey</a>, TyphoonLabs OpenGL <a hreg="http://www.opengl.org/sdk/tools/ShaderDesigner/">Shader Designer</a>, and <a href="http://lumina.sourceforge.net/">Lumina</a>, but Shader Toy makes it very easy to get started with shaders. And it provides a rare insight into how those amazing 4K demos were made.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.hvidtfeldts.net/index.php/2010/02/shader-toy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
