<?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>bassistance.de</title>
	<atom:link href="http://bassistance.de/feed/" rel="self" type="application/rss+xml" />
	<link>http://bassistance.de</link>
	<description>Jörn Zaefferer on Bass, Geeks and Rock'n'Roll</description>
	<lastBuildDate>Wed, 25 Jan 2012 18:34:50 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>About planning</title>
		<link>http://bassistance.de/2012/01/25/about-planning/</link>
		<comments>http://bassistance.de/2012/01/25/about-planning/#comments</comments>
		<pubDate>Wed, 25 Jan 2012 18:34:50 +0000</pubDate>
		<dc:creator>Jörn</dc:creator>
				<category><![CDATA[Common]]></category>

		<guid isPermaLink="false">http://bassistance.de/?p=999</guid>
		<description><![CDATA[&#8220;[...] plans are useful, in the sense that they are proof that planning has taken place. The planning process forces people to think through the right issues. But as for the plans themselves, [they just don't work in practice]&#8221; &#8211; from Made To Stick by Chip and Dan Heath This provides a nice answer to [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>&#8220;[...] plans are useful, in the sense that they are proof that <em>planning</em> has taken place. The planning process forces people to think through the right issues. But as for the plans themselves, [they just don't work in practice]&#8221; <em>&#8211; from Made To Stick by Chip and Dan Heath</em></p></blockquote>
<p>This provides a nice answer to the odd notion that being agile is an excuse to do away with all planning. It explains the intuition that planning itself is useful, even if plans aren&#8217;t.</p>
<p>I&#8217;ve only just started reading that book, but odds are good that there&#8217;s plenty more gems in it like this one. Thanks to Glen Lipka for <a href="http://commadot.com/public-speaking-tips/">the recommendation</a>.</p>
<p>PS: I had to cripple the quote a bit, especially at the end, for it to make sense outside of the book&#8217;s context.</p>
]]></content:encoded>
			<wfw:commentRss>http://bassistance.de/2012/01/25/about-planning/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Ranting on Redirects</title>
		<link>http://bassistance.de/2012/01/12/ranting-on-redirects/</link>
		<comments>http://bassistance.de/2012/01/12/ranting-on-redirects/#comments</comments>
		<pubDate>Thu, 12 Jan 2012 17:22:23 +0000</pubDate>
		<dc:creator>Jörn</dc:creator>
				<category><![CDATA[Common]]></category>

		<guid isPermaLink="false">http://bassistance.de/?p=986</guid>
		<description><![CDATA[Redirects are a good to refactor the web: Instead of never changing anything, you can migrate to new URLs, and put redirects in place to keep old URLs alive. As anything, it can go very wrong. As a recent example, I just clicked on this particular link: http://yuilibrary.com/theater/nicholas-zakas/zakas-architecture/ I found that link in a post elsewhere. [...]]]></description>
			<content:encoded><![CDATA[<p>Redirects are a good to refactor the web: Instead of never changing anything, you can migrate to new URLs, and put redirects in place to keep old URLs alive. As anything, it can go very wrong.</p>
<p>As a recent example, I just clicked on this particular link: <a href="http://yuilibrary.com/theater/nicholas-zakas/zakas-architecture/">http://yuilibrary.com/theater/nicholas-zakas/zakas-architecture/</a></p>
<p>I found that link in a post elsewhere. When I click on it, I&#8217;m getting redirected to this page: <a href="http://yuilibrary.com/theater/">http://yuilibrary.com/theater/</a></p>
<p>That&#8217;s not what I was looking for. To add insult to injury, when I search for &#8220;architecture&#8221; in the search field on that page, the first result is exactly the same, that I started with, again redirecting me to the latter useless one. And no, I&#8217;m not going to page through 10 pages looking for that one video, f*** you very much. (PS: YouTube channel search <a href="http://www.youtube.com/user/yuilibrary/search?query=zakas">worked</a>)</p>
<p><img class="alignnone" src="http://i.imgur.com/JuDln.jpg" alt="" width="500" height="500" /></p>
<p>Speaking of redirects: If you own some smartphone, you may be aware that certain websites redirect you to their mobile site once they detect that you&#8217;re using a mobile browser. For example, when you open this link on an iPhone or Android phone: http://soundcloud.com/bassistance</p>
<p>You end up here: <a href="http://m.soundcloud.com/bassistance">http://m.soundcloud.com/bassistance</a></p>
<p>But when you open that mobile specific page in a desktop browser, there&#8217;s no redirect happening, that would bring you back to the non-mobile page. There&#8217;s only an opt-in, as with many mobile specific pages.</p>
<p>At least the Mobile SoundCloud page also works on desktop browsers, but there&#8217;s a lot worse examples. Amazon for example gives you only a very crippled site, so if I share an Amazon page from my smartphone with someone, they end up on that same mobile page, lacking 80% of what Amazon normally has.</p>
<p>Mobile YouTube just screws it up completely. Whenever sharing a link, you end up on the mobile front page, loosing all context you had.</p>
<p>I&#8217;ve got one more. Mozilla, not exactly on the evil side of the web, can of course screw up redirects just like anyone else. In this case, I attempted to open this page: <a href="https://developer.mozilla.org/en/aria/widgets/spinbutton">https://developer.mozilla.org/en/aria/widgets/spinbutton</a></p>
<p>What I end up on is this instead: <a href="https://developer.mozilla.org/de/">https://developer.mozilla.org/de/</a></p>
<p>What&#8217;s going on? Even though my system and browser is set to English, I&#8217;m getting redirected to a german site. I didn&#8217;t ask for that, and worse, it looses the deep link, as it redirects to the start page, not the one I actually wanted to open. So is it my fault for having added &#8220;German&#8221; to my list of preferred languages in my browser, as I need that for a specific project? Even though its set with a lower preference then English? I don&#8217;t think so.</p>
<p><img class="alignnone" src="http://i.imgur.com/PNpC1.jpg" alt="" width="512" height="384" /></p>
<p>So please, the next time you implement a redirect, think! Thanks for reading.</p>
<div></div>
]]></content:encoded>
			<wfw:commentRss>http://bassistance.de/2012/01/12/ranting-on-redirects/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Drafts</title>
		<link>http://bassistance.de/2012/01/12/drafts/</link>
		<comments>http://bassistance.de/2012/01/12/drafts/#comments</comments>
		<pubDate>Thu, 12 Jan 2012 11:15:58 +0000</pubDate>
		<dc:creator>Jörn</dc:creator>
				<category><![CDATA[Common]]></category>

		<guid isPermaLink="false">http://bassistance.de/?p=984</guid>
		<description><![CDATA[Here&#8217;s a list of post drafts I got saved in WordPress and didn&#8217;t publish: Alhazen, Rasputin, North Korea, Meta Humor, HR Exploitation++, Security Trolls, Introduction to JavaScript unit testing, Advanced JavaScript Basics, Things we don’t know, Node.js and cooperative multitasking, Chevelle, Silversun Pickups, Favorites: Opeth, Favorites: Tool, Favorites: King Crimson, Scala on Google App Engine, [...]]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s a list of post drafts I got saved in WordPress and didn&#8217;t publish:</p>
<p>Alhazen, Rasputin, North Korea, Meta Humor, HR Exploitation++, Security Trolls, Introduction to JavaScript unit testing, Advanced JavaScript Basics, Things we don’t know, Node.js and cooperative multitasking, Chevelle, Silversun Pickups, Favorites: Opeth, Favorites: Tool, Favorites: King Crimson, Scala on Google App Engine, Automated Testing</p>
<p>17 in total, with anything from music recommendations to tech stuff to articles about certain figures. Oldest from 2009, newest from just now.</p>
<p>Based on that, anything you&#8217;d like to see published? Something you&#8217;re interested in? Pick any three!</p>
]]></content:encoded>
			<wfw:commentRss>http://bassistance.de/2012/01/12/drafts/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Ye olde recordings, random</title>
		<link>http://bassistance.de/2012/01/09/ye-olde-recordings-random/</link>
		<comments>http://bassistance.de/2012/01/09/ye-olde-recordings-random/#comments</comments>
		<pubDate>Mon, 09 Jan 2012 18:18:24 +0000</pubDate>
		<dc:creator>Jörn</dc:creator>
				<category><![CDATA[Music]]></category>

		<guid isPermaLink="false">http://bassistance.de/?p=969</guid>
		<description><![CDATA[To add insult to injury, here are some more recordings, created between 2006 and 2009. To start, a Funk Jam Mix with Gerrit and Uwe. Up next, a never finished song, for some reason filed as &#8220;radioedit&#8221;, there&#8217;s just drum and bass, Uwe and me: This is an odd one. As far as I can [...]]]></description>
			<content:encoded><![CDATA[<p>To add insult to injury, here are some more recordings, created between 2006 and 2009.</p>
<p>To start, a Funk Jam Mix with Gerrit and Uwe.</p>
<p><iframe width="100%" height="166" class="html5player" scrolling="no" frameborder="no" src="http://w.soundcloud.com/player/?url=http%3A%2F%2Fapi.soundcloud.com%2Ftracks%2F32405175&#038;show_artwork=false"></iframe></p>
<p>Up next, a never finished song, for some reason filed as &#8220;radioedit&#8221;, there&#8217;s just drum and bass, Uwe and me:</p>
<p><iframe width="100%" height="166" class="html5player" scrolling="no" frameborder="no" src="http://w.soundcloud.com/player/?url=http%3A%2F%2Fapi.soundcloud.com%2Ftracks%2F32405569&#038;show_artwork=false"></iframe></p>
<p>This is an odd one. As far as I can remember, some VST drum computer, where I just changed patterns here and there, plus VST-based piano with some custom bass. Whatever.</p>
<p><iframe width="100%" height="166" class="html5player" scrolling="no" frameborder="no" src="http://w.soundcloud.com/player/?url=http%3A%2F%2Fapi.soundcloud.com%2Ftracks%2F32406267&#038;show_artwork=false"></iframe></p>
<p>Last but not least, a version of Pour Me A Glass, with an oldschool Remaining cast.</p>
<p><iframe width="100%" height="166" class="html5player" scrolling="no" frameborder="no" src="http://w.soundcloud.com/player/?url=http%3A%2F%2Fapi.soundcloud.com%2Ftracks%2F32406947&#038;show_artwork=false"></iframe></p>
<p>That&#8217;s it. Whatever comes next is going to be some new recordings. Hopefully sometime this year&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://bassistance.de/2012/01/09/ye-olde-recordings-random/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Ye olde recordings</title>
		<link>http://bassistance.de/2012/01/04/ye-olde-recordings/</link>
		<comments>http://bassistance.de/2012/01/04/ye-olde-recordings/#comments</comments>
		<pubDate>Wed, 04 Jan 2012 17:07:44 +0000</pubDate>
		<dc:creator>Jörn</dc:creator>
				<category><![CDATA[Music]]></category>

		<guid isPermaLink="false">http://bassistance.de/?p=964</guid>
		<description><![CDATA[Not exactly legendary, but fun nonetheless, are some old recordings that I&#8217;ve uploaded to SoundCloud. Previously they were embedded via some flash-based plugin, which stopped working a long time ago anyway. To bring those back to life, I&#8217;ve replaced them with the new html5-based SoundCloud widget. While I&#8217;ve got some more to upload, I&#8217;d like [...]]]></description>
			<content:encoded><![CDATA[<p>Not exactly legendary, but fun nonetheless, are some old recordings that I&#8217;ve uploaded to SoundCloud. Previously they were embedded via some flash-based plugin, which stopped working a long time ago anyway.</p>
<p>To bring those back to life, I&#8217;ve replaced them with the new html5-based SoundCloud widget. While I&#8217;ve got some more to upload, I&#8217;d like to share something for the time being.</p>
<p>There&#8217;s the <a href="http://bassistance.de/2006/03/29/roaring-hamster/">Roaring Hamster session</a>, which resulted in a set of four tracks, with one longplayer. If you&#8217;re reading this on the site, the set widget should show up below:</p>
<p><iframe width="100%" height="350" class="html5player" scrolling="no" frameborder="no" src="http://w.soundcloud.com/player/?url=http%3A%2F%2Fapi.soundcloud.com%2Fplaylists%2F1464534&#038;show_artwork=false"></iframe></p>
<p>A very different beast was &#8220;Die Gesellschaft des Elefanten&#8221;, consisting of multiple sessions. The jammix higlight is below, the rest <a href="http://bassistance.de/2006/05/07/die-gesellschaft-des-elefanten-jammix1/">inside the original post</a>.</p>
<p><iframe width="100%" height="166" class="html5player" scrolling="no" frameborder="no" src="http://w.soundcloud.com/player/?url=http%3A%2F%2Fapi.soundcloud.com%2Ftracks%2F30026818&#038;show_artwork=false"></iframe></p>
<p>Put away your high expectations and give it a shot!</p>
]]></content:encoded>
			<wfw:commentRss>http://bassistance.de/2012/01/04/ye-olde-recordings/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Locating sound, the cricket way</title>
		<link>http://bassistance.de/2012/01/02/locating-sound-the-cricket-way/</link>
		<comments>http://bassistance.de/2012/01/02/locating-sound-the-cricket-way/#comments</comments>
		<pubDate>Mon, 02 Jan 2012 11:32:47 +0000</pubDate>
		<dc:creator>Jörn</dc:creator>
				<category><![CDATA[Common]]></category>

		<guid isPermaLink="false">http://bassistance.de/?p=954</guid>
		<description><![CDATA[On the Locating Sound post, Gerd Riesselmann left this comment: Female crickets locate male crickets by the sounds they make. However, the head of a cricket is too small to locate the sound by measuring the time difference between the incoming signals. So how does the cricket locate sound? It does it by “hardwiring” movement [...]]]></description>
			<content:encoded><![CDATA[<p>On the <a href="http://bassistance.de/2011/12/23/locating-sound/">Locating Sound</a> post, Gerd Riesselmann left this comment:</p>
<blockquote><p>Female crickets locate male crickets by the sounds they make. However, the head of a cricket is too small to locate the sound by measuring the time difference between the incoming signals.</p>
<p>So how does the cricket locate sound?</p>
<p>It does it by “hardwiring” movement and sound recognition. Basically that is: If a sound reaches the right ear, a movement to the right is triggered. After that the system sleeps for sometime. Same for the left ear.</p>
<p>This makes the cricket move to the target in a zick-zack kind of way.</p>
<p>This exact behaviour has been implemented in a robot already: <a href="http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.106.1665&amp;rep=rep1&amp;type=pdf" rel="nofollow">http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.106.1665&amp;rep=rep1&amp;type=pdf</a></p></blockquote>
<p>The robot cricket is pretty cool:</p>
<p><img class="alignnone" title="Robot Cricket, from &quot;Robot phonotaxis in the wild: a biologically inspired approach to outdoor sound localization&quot;" src="http://bassistance.de/i/01e613.png" alt="" width="344" height="326" /></p>
<p>A bit larger then the average cricket though.</p>
<p>Another <strong>update</strong> from Gerd (via G+):</p>
<blockquote><p> I found it in the book &#8220;Die Entdeckung der Intelligenz &#8211; Können Ameisen denken?&#8221; by Holk Cruse, Jeffrey Dean and Helge Ritter. Unfortunately there is no English edition, as far as I know. The book contains quite a lot of examples of robots simulating animal behavior (they are called <em>Animaten</em> in German). The special cricket robot itself was mentioned in another book, though, but it seems I gave it away. And unfortunately I can&#8217;t remember it&#8217;s title.</p>
<p>Rereading the according chapter I unfortunately have to correct myself: Crickets have a special organ that physically measures the difference of sound pressures directly. Basically by allowing the sound to reach both the eardrums from both outside and inside, which makes the ear one organ with two eardrums and four entrances. One entrance leads to the front of the right, another to the front of the left eardrum, like for us. But an additional entrance leads from the right between the two eardrums, and yet another does the same from the left . The principle is called &#8220;coupled eardrums&#8221;</p>
<p>However, for crickets this is limited to a very narrow range of frequencies (that of male crickets, of course). It&#8217;s a very special solution. But frogs apply the same mechanisms to a broader range of frequencies. There&#8217;s a small paragraph on this in the Wikipedia article on sound locating: <em>&#8220;Ho showed that the coupled-eardrum system in frogs can produce increased interaural vibration disparities when only small arrival time and sound level differences were available to the animal’s head. Efforts to build directional microphones based on the coupled-eardrum structure are underway.&#8221;</em> The article mentions flies as using this system, too, so it seems to scale very well <img src='http://bassistance.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p></blockquote>
<p>Now you know!</p>
]]></content:encoded>
			<wfw:commentRss>http://bassistance.de/2012/01/02/locating-sound-the-cricket-way/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Locating sound</title>
		<link>http://bassistance.de/2011/12/23/locating-sound/</link>
		<comments>http://bassistance.de/2011/12/23/locating-sound/#comments</comments>
		<pubDate>Fri, 23 Dec 2011 13:52:16 +0000</pubDate>
		<dc:creator>Jörn</dc:creator>
				<category><![CDATA[Common]]></category>

		<guid isPermaLink="false">http://bassistance.de/?p=949</guid>
		<description><![CDATA[Did you know that sound travels four times faster under water? And we can therefore not locate a sound source like we can under regular conditions? Let&#8217;s take a peek at that in more detail and what we could do to build a workaround! To start, sound travels 1235km/h or 343m/s. The latter is more [...]]]></description>
			<content:encoded><![CDATA[<p>Did you know that sound travels four times faster under water? And we can therefore not locate a sound source like we can under regular conditions? Let&#8217;s take a peek at that in more detail and what we could do to build a workaround!</p>
<p>To start, <a href="http://en.wikipedia.org/wiki/Speed_of_sound">sound travels 1235km/h or 343m/s</a>. The latter is more useful for the upcoming calculations, so keep that in mind. Let&#8217;s say the distance between your ears is about 20cm, or 0.2m. Depending on the size of your head, its likely a bit less, or even a bit more. If sound travels 343m/s, it would take 0.2m/343m/s to travel from one ear to the other, so 0.58ms. In other words, half a millisecond is all we need to figure out from what direction a sound is coming, as that&#8217;s the maximum delay for a sound coming from one side to reach the other ear. But we can also locate sounds coming from front-left or front-right and inbetween, so we need even less then half a millisecond to locate a sound.</p>
<p>With that in mind, let&#8217;s take another look at sound under water. <a href="http://en.wikipedia.org/wiki/Speed_of_sound#Water">According to Wikipedia</a>, sound in fresh water travels with 1497m/s, in sea water even 1560m/s (at certain temperatures etc.). That&#8217;s 4.3 and 4.5 times faster then compared to sound in air. So our location hearing precision would have to be four times better to locate a sound under water, or need need some workaround that delays sound from reaching the other ear, depending on the direction.</p>
<p>Based on my experience with audio recording on specialized audio hardware and drivers, we usually have to deal with latencies of about one millisecond. Which is great for audio recording, compared to 100ms to 300ms that regular audio hardware and drivers get you, but way too much for the underwarter locating device. So we&#8217;d probably need a hardwired solution that could work with much lower latencies. If 0.58ms is the maximum we can deal with, half of that might be the lower bound, so 0.29ms. To adapt that to the 4.5 speed increase in salt water, we&#8217;d need a precision of 0.0725 milliseconds, or 72.5 microseconds. Considering that computers can measure in nanoseconds, that should be plenty for some optimized hardware.</p>
<p>On a somewhat related note: Consider a coordinate system with a single axis, x. You can position points anywhere on x. That&#8217;s what stereo sound is. Add another axis, y, and you can position a point on both x and y. You&#8217;ve got two dimensions. That&#8217;s what&#8217;s sold as &#8220;3D&#8221; sound. To get actual 3D, you&#8217;d have to add another axis. I haven&#8217;t ever seen any setup that has actual three dimensions. Why is that? Maybe because we&#8217;re not that good at actually hearing in three dimensions, as we&#8217;ve got only two ears?</p>
<p>So much for my two cents of anecdotal evidence on the topic, the <a href="http://en.wikipedia.org/wiki/Sound_localization">Sound Localization article</a> has a lot more actual detail (but also no fancy images). For some fun images, take a look at <a href="http://web.archive.org/web/20100410235208/http://www.cs.ucc.ie/~ianp/CS2511/HAP.html">this (archived) page</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://bassistance.de/2011/12/23/locating-sound/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>WordPress Open Graph Plugin</title>
		<link>http://bassistance.de/2011/12/19/wordpress-open-graph-plugin/</link>
		<comments>http://bassistance.de/2011/12/19/wordpress-open-graph-plugin/#comments</comments>
		<pubDate>Mon, 19 Dec 2011 11:32:08 +0000</pubDate>
		<dc:creator>Jörn</dc:creator>
				<category><![CDATA[Meta]]></category>

		<guid isPermaLink="false">http://bassistance.de/?p=946</guid>
		<description><![CDATA[Google Plus and Facebook are good to share content, but it shouldn&#8217;t live there. For a WordPress-based blog, integrating Facebook&#8217;s Open Graph metadata helps both the G+ and FB crawlers to display a good preview for your posts. A plugin that does a good job with that is WP Facebook Open Graph protocol. For links [...]]]></description>
			<content:encoded><![CDATA[<p>Google Plus and Facebook are good to share content, but it shouldn&#8217;t live there. For a WordPress-based blog, integrating Facebook&#8217;s Open Graph metadata helps both the G+ and FB crawlers to display a good preview for your posts. A plugin that does a good job with that is <a href="http://wordpress.org/extend/plugins/wp-facebook-open-graph-protocol/">WP Facebook Open Graph protocol</a>. For links to posts, it generates an excerpt to use as the description, and will look for images inside that post, which always helps to decorate shares.</p>
<p>As far as I can tell, there&#8217;s not much of a drawback for adding that plugin. It just adds a few meta elements, based on content that&#8217;s in the html anyway.</p>
]]></content:encoded>
			<wfw:commentRss>http://bassistance.de/2011/12/19/wordpress-open-graph-plugin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>3D ATST rendered in WebGL</title>
		<link>http://bassistance.de/2011/12/18/3d-atst-rendered-in-webgl/</link>
		<comments>http://bassistance.de/2011/12/18/3d-atst-rendered-in-webgl/#comments</comments>
		<pubDate>Sun, 18 Dec 2011 13:59:16 +0000</pubDate>
		<dc:creator>Jörn</dc:creator>
				<category><![CDATA[WebGL]]></category>

		<guid isPermaLink="false">http://bassistance.de/?p=938</guid>
		<description><![CDATA[On a quiet Sunday afternoon I actually managed to render one of my old 3D models in WebGL. And I didn&#8217;t even have to deal with WebGL at all, thanks to Three.js. The model I wanted to is an ATST, originally created for my Domino Star Wars project. I had the model exported as a [...]]]></description>
			<content:encoded><![CDATA[<p>On a quiet Sunday afternoon I actually managed to render one of my old 3D models in WebGL. And I didn&#8217;t even have to deal with WebGL at all, thanks to <a href="https://github.com/mrdoob/three.js">Three.js</a>.</p>
<p>The model I wanted to is an ATST, originally created for my <a href="http://vimeo.com/33213276">Domino Star Wars project</a>.</p>
<p><iframe src="http://player.vimeo.com/video/33213276" width="480" height="295" frameborder="0"></iframe></p>
<p>I had the model exported as a 3DS file, which I then imported into Blender, scaled down a bit, then exported to Three.js&#8217; ASCII JSON format. Figuring out how to use the Blender plugin took a bit of digging (<a href="https://github.com/mrdoob/three.js/pull/930">documented into a new readme</a>). From there I took one of the existing examples and replaced the loaded model with my own. And tada, a rotating 3D ATST, in your browser, if it supports WebGL</p>
<p><iframe src="http://jquery.bassistance.de/webgl/atst.html" width="600" height="600"></iframe><br />
<a href="http://jquery.bassistance.de/webgl/atst.html">3D ATST demo</a></p>
<p>If that doesn&#8217;t render for you, here&#8217;s a screenshot:</p>
<p><img class="alignnone" src="http://bassistance.de/i/7b0afc.png" alt="" width="586" height="592" /></p>
<p>This isn&#8217;t all too interesting yet, but an important first step.</p>
<p>For more WebGL resources, see my <a href="http://bassistance.de/2011/12/14/webgl-links/">WebGL Links post</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://bassistance.de/2011/12/18/3d-atst-rendered-in-webgl/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>WebGL Links</title>
		<link>http://bassistance.de/2011/12/14/webgl-links/</link>
		<comments>http://bassistance.de/2011/12/14/webgl-links/#comments</comments>
		<pubDate>Wed, 14 Dec 2011 10:29:48 +0000</pubDate>
		<dc:creator>Jörn</dc:creator>
				<category><![CDATA[WebGL]]></category>

		<guid isPermaLink="false">http://bassistance.de/?p=936</guid>
		<description><![CDATA[Here are some resources on WebGL, the OpenGL implementation that now runs in current Firefox and Chrome browsers. There&#8217;s a WebGL specification, and as usual, its intended for implementors of the spec, not for users of the API. Though at least this spec as actual usage examples, so if you&#8217;re looking for a specific detail, [...]]]></description>
			<content:encoded><![CDATA[<p>Here are some resources on WebGL, the OpenGL implementation that now runs in current Firefox and Chrome browsers.</p>
<ul>
<li>There&#8217;s a <a href="http://www.khronos.org/registry/webgl/specs/latest/">WebGL specification</a>, and as usual, its intended for implementors of the spec, not for users of the API. Though at least this spec as actual usage examples, so if you&#8217;re looking for a specific detail, this could be a good last resort.</li>
<li>An okay <a href="http://www.netmagazine.com/tutorials/get-started-webgl-draw-square">Getting Started tutorial</a> let&#8217;s you render, BEHOLD, a square. It makes use of vertex and fragment shaders, making the whole thing fairly complicated, but hey, its hardware accelerated and you&#8217;ll learn a lot of the low level basics.</li>
<li>A lot more resources can be found on <a href="http://planet-webgl.org/">Planet WebGL</a>, there I just found this cool <a href="http://oos.moxiecode.com/js_webgl/xwing/">X-Wing demo</a>.</li>
<li>Another site decicated to learning WebGL, <a href="http://learningwebgl.com/cookbook/index.php/Main_Page">The WebGL Cookbook</a>.</li>
</ul>
<div>And with that, a jump to WebGL libraries or &#8220;3d engines&#8221;, on various high or low levels:</div>
<div>
<ul>
<li><a href="http://www.glge.org/">GLGE</a> claims to be &#8220;WebGL for the lazy&#8221;</li>
<li><a href="http://www.ambiera.com/copperlicht/">CopperLicht</a> is just a &#8220;JavaScript 3D Engine&#8221;</li>
<li><a href="https://github.com/mrdoob/three.js">three.js</a> isn&#8217;t  focussed soley on WebGL, as it can also output to canvas and svg; it has a focus on being &#8220;for dummies&#8221;, so might be the best starting point</li>
<li><a href="https://github.com/evanw/lightgl.js/">lightgl.js</a> is yet another approach, being more low-level (without a scene graph! whatever that means).</li>
</ul>
<div>Related to the above three.js is probably, in some way, <a href="https://github.com/idflood/ThreeNodes.js">ThreeNodes.js</a>, which is kind of an IDE for WebGL.</div>
</div>
<div>One of these days I hope to convert my old 3D models to some format that I can load into one of these engines and bring them to your browser&#8230;</div>
]]></content:encoded>
			<wfw:commentRss>http://bassistance.de/2011/12/14/webgl-links/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
<!-- WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed! -->
