<?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>TODAY, CREATE. &#187; openFrameworks</title>
	<atom:link href="http://www.todaycreate.com/category/openframeworks/feed" rel="self" type="application/rss+xml" />
	<link>http://www.todaycreate.com</link>
	<description>Home of the daily creative output and exploration of ideas for Mike Creighton, artist and programmer.</description>
	<lastBuildDate>Sat, 29 Oct 2011 22:04:57 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Making Velocities Visible</title>
		<link>http://www.todaycreate.com/2010/04/11/making-velocities-visible</link>
		<comments>http://www.todaycreate.com/2010/04/11/making-velocities-visible#comments</comments>
		<pubDate>Mon, 12 Apr 2010 01:41:47 +0000</pubDate>
		<dc:creator>Mike Creighton</dc:creator>
				<category><![CDATA[Abstract]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[Flow]]></category>
		<category><![CDATA[Generative]]></category>
		<category><![CDATA[openFrameworks]]></category>
		<category><![CDATA[Particles]]></category>
		<category><![CDATA[Physics]]></category>
		<category><![CDATA[Realtime]]></category>

		<guid isPermaLink="false">http://www.todaycreate.com/?p=432</guid>
		<description><![CDATA[Below is a 60 second render from the data set captured from this drawing. Aesthetically, this is completely off the mark from what I&#8217;ve got in my mind&#8217;s eye. But in doing each of these exercises, I&#8217;m getting more familiar with C++ programming and openFrameworks and the various add-ons that exist out there. And I&#8217;m [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.todaycreate.com/wp-content/creations/2010/04/2010-04-11_making_velocities_visible.png" alt="Oil Pastel Test 01 - Render 03 Capture" border="0" /></p>
<p>Below is a 60 second render from the data set captured <a href="http://www.todaycreate.com/2010/04/05/flow-first-real-drawing-captured">from this drawing</a>.</p>
<p><object width="560" height="776"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=10855634&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=AAC132&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=10855634&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=AAC132&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="560" height="776"></embed></object></p>
<p>Aesthetically, this is completely off the mark from what I&#8217;ve got in my mind&#8217;s eye. But in doing each of these exercises, I&#8217;m getting more familiar with C++ programming and openFrameworks and the various add-ons that exist out there.</p>
<p>And I&#8217;m also refining my general goals for the first set of &#8220;pieces&#8221; I want to create with this <em>Flow</em> system:</p>
<ol>
<li>Show the energy and motion of each stroke. This needs to be visible even in a static render.</li>
<li>Avoid random as much as possible. The work needs to exhibit clear intention.</li>
<li>Create something dimensional, structural.</li>
<li>Work within &#8220;moments&#8221; of the data set, not its entirety.</li>
</ol>
<p>I&#8217;m going to try to make sure whatever it is I come up with adheres to these main goals for now.			</p>
]]></content:encoded>
			<wfw:commentRss>http://www.todaycreate.com/2010/04/11/making-velocities-visible/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Sperm</title>
		<link>http://www.todaycreate.com/2010/04/07/sperm</link>
		<comments>http://www.todaycreate.com/2010/04/07/sperm#comments</comments>
		<pubDate>Wed, 07 Apr 2010 07:36:42 +0000</pubDate>
		<dc:creator>Mike Creighton</dc:creator>
				<category><![CDATA[3D]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[Flow]]></category>
		<category><![CDATA[Generative]]></category>
		<category><![CDATA[openFrameworks]]></category>
		<category><![CDATA[Particles]]></category>
		<category><![CDATA[Physics]]></category>

		<guid isPermaLink="false">http://www.todaycreate.com/?p=429</guid>
		<description><![CDATA[This is so stupid. But it&#8217;s like a black triangle for me. It represents the following: I&#8217;ve somehow actually retained all I learned about C++. In fact, I see the language even clearer now, bizarrely. I can now make pointers to pointers to pointers of things and still get to the most deeply-nested data in [...]]]></description>
			<content:encoded><![CDATA[<p><object width="560" height="560"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=10742027&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=AAC132&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=10742027&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=AAC132&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="560" height="560"></embed></object></p>
<p>This is so stupid.</p>
<p>But it&#8217;s like a <a href="http://rampantgames.com/blog/2004/10/black-triangle.html">black triangle</a> for me. It represents the following:</p>
<ul>
<li>I&#8217;ve somehow actually retained all I learned about C++. In fact, I see the language even clearer now, bizarrely.</li>
<li>I can now make pointers to pointers to pointers of things and still get to the most deeply-nested data in that relationship (something I absolutely could not wrap my head around a couple months ago).</li>
<li>I successfully started using memo&#8217;s <a href="http://www.msavisuals.com/msaphysics">MSAPhysics library for openFrameworks</a>, which isn&#8217;t so different from toxi&#8217;s Verlet physics engine in <a href="http://toxiclibs.org/">his library</a>.</li>
<li>I can make stuff look like sperm.</li>
</ul>
<p>But seriously, this sperm thing is moving based on the data captured in the drawing from a few nights ago. </p>
<p>So, I&#8217;ve got the data. I&#8217;ve got the basic framework for traversing and manipulating the data. And I&#8217;ve got an idea of what I want to focus on (finally). And no, I&#8217;m not focusing on making stuff that looks like this.</p>
<p>But tonight was a good start in a solid direction.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.todaycreate.com/2010/04/07/sperm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Stroke Visualization</title>
		<link>http://www.todaycreate.com/2010/01/02/stroke-visualization</link>
		<comments>http://www.todaycreate.com/2010/01/02/stroke-visualization#comments</comments>
		<pubDate>Sun, 03 Jan 2010 04:31:42 +0000</pubDate>
		<dc:creator>Mike Creighton</dc:creator>
				<category><![CDATA[Abstract]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[Flow]]></category>
		<category><![CDATA[Generative]]></category>
		<category><![CDATA[openFrameworks]]></category>

		<guid isPermaLink="false">http://www.todaycreate.com/?p=378</guid>
		<description><![CDATA[Continuing from yesterday&#8217;s progress, this time around I&#8217;m visualizing the data set as actual strokes (ribbons) and trying to show amplify their velocities by increasing stroke width. It&#8217;s a basic drawing trick that you see all over the place. I guess I&#8217;m trying to wrap my head around the data set right now. I have [...]]]></description>
			<content:encoded><![CDATA[<p><object width="560" height="749"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=8509097&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=AAC132&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=8509097&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=AAC132&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="560" height="749"></embed></object></p>
<p>Continuing from yesterday&#8217;s progress, this time around I&#8217;m visualizing the data set as actual strokes (ribbons) and trying to show amplify their velocities by increasing stroke width. It&#8217;s a basic drawing trick that you see <em>all</em> over the place.</p>
<p>I guess I&#8217;m trying to wrap my head around the data set right now. I have a lot of ideas about where I could take this, but I&#8217;m not quite sure which one to pick.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.todaycreate.com/2010/01/02/stroke-visualization/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Test Render of Groggy Self Portrait</title>
		<link>http://www.todaycreate.com/2010/01/01/test-render-of-groggy-self-portrait</link>
		<comments>http://www.todaycreate.com/2010/01/01/test-render-of-groggy-self-portrait#comments</comments>
		<pubDate>Sat, 02 Jan 2010 05:41:13 +0000</pubDate>
		<dc:creator>Mike Creighton</dc:creator>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[Computer Vision]]></category>
		<category><![CDATA[Drawing]]></category>
		<category><![CDATA[Flow]]></category>
		<category><![CDATA[Generative]]></category>
		<category><![CDATA[openFrameworks]]></category>
		<category><![CDATA[Sketches]]></category>

		<guid isPermaLink="false">http://www.todaycreate.com/?p=376</guid>
		<description><![CDATA[+ View the piece on Flickr. Today I finished up a drawing &#8212; a bad self portrait. This is the first piece I&#8217;ve used as a data source for the new Flow Receiver capture system. It was drawn over a couple days / sessions. As soon as I finished it, I immediately exported the captured [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/mikecreighton/4235885644/" title="View the piece on Flickr."><img class="hasLargeImage" src="http://www.todaycreate.com/wp-content/creations/2010/01/2010-01-01_self_portrait_for_flow.jpg" alt="" border="0" /></a><span class="imageLinkHolder">+ <a href="http://www.flickr.com/photos/mikecreighton/4235885644/" title="View the piece on Flickr.">View the piece on Flickr.</a></span></p>
<p>Today I finished up a drawing &#8212; a bad self portrait. This is the first piece I&#8217;ve used as a data source for the new <strong><a href="http://www.todaycreate.com/2009/12/27/flow-receiver-completed">Flow Receiver</a></strong> capture system. It was drawn over a couple days / sessions. As soon as I finished it, I immediately exported the captured data, a 9MB XML file consisting of about 150,000 points.</p>
<p>Then I made the simplest visualization of the data I could. Using <a href="http://openframeworks.cc">openFrameworks</a> and the <a href="http://www.grinninglizard.com/tinyxml/">TinyXML</a> C++ library, I plotted a semi-transparent circle for each point in the data set. You can see the output rendered here:</p>
<p><object width="560" height="749"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=8494480&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=AAC132&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=8494480&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=AAC132&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="560" height="749"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.todaycreate.com/2010/01/01/test-render-of-groggy-self-portrait/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flow Lives, but Now with No Glove</title>
		<link>http://www.todaycreate.com/2009/11/02/flow-lives-but-now-with-no-glove</link>
		<comments>http://www.todaycreate.com/2009/11/02/flow-lives-but-now-with-no-glove#comments</comments>
		<pubDate>Mon, 02 Nov 2009 20:16:21 +0000</pubDate>
		<dc:creator>Mike Creighton</dc:creator>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[Color]]></category>
		<category><![CDATA[Computer Vision]]></category>
		<category><![CDATA[Flow]]></category>
		<category><![CDATA[openFrameworks]]></category>
		<category><![CDATA[Processing]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://www.todaycreate.com/?p=282</guid>
		<description><![CDATA[Last year, I started a pet project called &#8220;Flow&#8220;. The point of the project was to find some intersection with more traditional art-making techniques and my interests in the digital realm. Well, that itch has resurfaced, and I realized I was making things way too complicated. This time, I&#8217;ve turned to using some open source [...]]]></description>
			<content:encoded><![CDATA[<p>Last year, I started a pet project called &#8220;<a href="http://www.todaycreate.com/category/flow" title="TODAY, CREATE. &raquo; Flow">Flow</a>&#8220;. The point of the project was to find some intersection with more traditional art-making techniques and my interests in the digital realm.</p>
<p>Well, that itch has resurfaced, and I realized I was making things way too complicated. This time, I&#8217;ve turned to using some open source tools for the data capture portion of the project. Components include:</p>
<ul>
<li>Computer</li>
<li>Webcam</li>
<li><a href="http://nuicode.com/projects/tbeta" title="Community Core Vision - Overview - NUI Group Community Code">Community Core Vision</a> (CCV)</li>
<li><a href="http://www.pixtream.com.br/?page_id=53" title="CCV Color Tracking | pixtream.com.br">Color Tracking Patch for CCV</a></li>
<li><a href="http://www.tuio.org/?processing" title="TUIO Processing">Processing TUIO Client API</a></li>
</ul>
<p>It&#8217;s actually really simple to get set up. Here&#8217;s a little demo of how it all comes together.</p>
<p><object width="560" height="420"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=7399668&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=AAC132&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=7399668&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=AAC132&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="560" height="420"></embed></object></p>
<p>Next steps include making a client to listen for the <a href="http://www.tuio.org/" title="TUIO">TUIO</a> data generated by CCV. I&#8217;m probably going to opt for an AS3 AIR client, since it&#8217;ll be fastest for me to create. Then create a web application that captures and stores this data. This I&#8217;ll build in <a href="http://codeigniter.com/" title="CodeIgniter - Open source PHP web application framework">CodeIgniter</a>, again, since it&#8217;ll be fastest for me to create in this environment.</p>
<p>I&#8217;ve got a lot of stuff on my plate this month, and I want to participate in this month&#8217;s <a href="http://www.flickr.com/groups/1219303@N25/" title="Flickr: NaNoDrawMo 2009">NaNoDrawMo</a> on top of it. So, we&#8217;ll see where things net out.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.todaycreate.com/2009/11/02/flow-lives-but-now-with-no-glove/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Some Noise Tube Renders</title>
		<link>http://www.todaycreate.com/2009/09/15/some-noise-tube-renders</link>
		<comments>http://www.todaycreate.com/2009/09/15/some-noise-tube-renders#comments</comments>
		<pubDate>Wed, 16 Sep 2009 01:52:00 +0000</pubDate>
		<dc:creator>Mike Creighton</dc:creator>
				<category><![CDATA[3D]]></category>
		<category><![CDATA[Abstract]]></category>
		<category><![CDATA[Art]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[Color]]></category>
		<category><![CDATA[Generative]]></category>
		<category><![CDATA[Noise Tube]]></category>
		<category><![CDATA[openFrameworks]]></category>
		<category><![CDATA[Perlin]]></category>
		<category><![CDATA[Realtime]]></category>

		<guid isPermaLink="false">http://www.todaycreate.com/?p=276</guid>
		<description><![CDATA[+ View hi-res on Flickr. Some progress has occurred. C++ is becoming clearer. Here&#8217;s what progressed in the first couple images: I created a Tween class for animating values. It&#8217;s modeled after CASA Lib&#8217;s Tween class. I&#8217;ll probably be releasing it to the community soon. I hooked up my MIDI controllers to the piece, so [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/mikecreighton/3913144906/in/set-72157622348110646/"><img class="hasLargeImage" src="http://www.todaycreate.com/wp-content/creations/2009/09/noisetube_normals_lighting_01.jpg" alt="Noise Tube Progress Render" border="0" /></a><span class="imageLinkHolder">+ <a href="http://www.flickr.com/photos/mikecreighton/3913144906/in/set-72157622348110646/">View hi-res on Flickr.</a></span></p>
<p>Some progress has occurred. C++ is becoming clearer. Here&#8217;s what progressed  in the first couple images:</p>
<ol>
<li>I created a Tween class for animating values. It&#8217;s modeled after <a href="http://casalib.org" title="CASA Lib: An Open Source Code Library for ActionScript 2.0 &amp; 3.0">CASA Lib&#8217;s</a> Tween class. I&#8217;ll probably be releasing it to the community soon.</li>
<li>I hooked up my MIDI controllers to the piece, so I could have more control over tweaking values. I&#8217;m using a great add-on for openFrameworks called <a href="http://www.openframeworks.cc/forum/viewtopic.php?f=10&amp;t=2435" title="openframeworks.cc Forum: ofxMIDI Updates">ofxMIDI</a>.</li>
<li>Along the way, I learned how to implement openFrameworks event dispatchers and listeners. (Hint: search for &#8220;poco events&#8221; in the <a href="http://wiki.openframeworks.cc/" title="openFrameworks wiki">openFrameworks Wiki</a> if you want to learn how.)</li>
</ol>
<p>In doing all this, I was able to trigger light movements with a MIDI controller. I used my M-Audio Trigger Finger&#8217;s velocity-sensitive pads to animate two lights. Hard tap = fast movement.</p>
<p><a href="http://www.flickr.com/photos/mikecreighton/3912360723/in/set-72157622348110646/"><img class="hasLargeImage" src="http://www.todaycreate.com/wp-content/creations/2009/09/noisetube_normals_lighting_02.jpg" alt="Noise Tube Progress Render" border="0" /></a><span class="imageLinkHolder">+ <a href="http://www.flickr.com/photos/mikecreighton/3912360723/in/set-72157622348110646/">View hi-res on Flickr.</a></span></p>
<p>Here&#8217;s a video of the animated lights in action. Please excuse the stutters; while this does run at 30fps in realtime, SnapzPro isn&#8217;t able to keep up because of the CPU usage of the piece.</p>
<p><object width="560" height="315"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=6547134&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=AAC132&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=6547134&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=AAC132&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="560" height="315"></embed></object></p>
<p>Now after all this, I came to realize that I really wanted to be able to loop the Perlin noise that was creating the height map of the tube. Because, though you can&#8217;t see it, there&#8217;s an awful seam on the side facing away from the camera. By looping the noise, I could reliably look at it from all angles.</p>
<p>After some research, I came across a great library called <a href="http://libnoise.sourceforge.net/" title="libnoise: a portable, open-source, coherent noise-generating library for C++">libnoise</a>. Took me a little while to get it to compile, only to realize that while it did the job, it dropped my framerate from a respectable 45fps to 9fps. Definitely not suitable for realtime noise generation.</p>
<p>So I went back to the fastest Perlin noise generator I could find (<a href="http://www.flipcode.com/archives/Perlin_Noise_Class.shtml" title="flipcode - Perlin Noise Class">this class from John Ratcliff</a>), and I decided to live with the seam in the back.</p>
<p>Amidst all this, I also stumbled upon this awesome blog post about <a href="http://blog.wolfram.com/2009/09/11/twisted-architecture/" title="Wolfram Blog : Twisted Architecture">Twisted Architecture</a>. I thought it would be cool to implement something like that in my piece. So I did. But then I forgot about it.</p>
<p>It was only when I started twisting the &#8220;twist-associated&#8221; knob on my MIDI controller that the damn seam actually came to life. So, you can see how it starts to play out in the rest of the images here:</p>
<p><a href="http://www.flickr.com/photos/mikecreighton/3922512004/in/set-72157622348110646/"><img class="hasLargeImage" src="http://www.todaycreate.com/wp-content/creations/2009/09/noisetube_normals_lighting_03.jpg" alt="Noise Tube Progress Render" border="0" /></a><span class="imageLinkHolder">+ <a href="http://www.flickr.com/photos/mikecreighton/3922512004/in/set-72157622348110646/">View hi-res on Flickr.</a></span></p>
<p><a href="http://www.flickr.com/photos/mikecreighton/3921730079/in/set-72157622348110646/"><img class="hasLargeImage" src="http://www.todaycreate.com/wp-content/creations/2009/09/noisetube_normals_lighting_04.jpg" alt="Noise Tube Progress Render" border="0" /></a><span class="imageLinkHolder">+ <a href="http://www.flickr.com/photos/mikecreighton/3921730079/in/set-72157622348110646/">View hi-res on Flickr.</a></span></p>
<p><a href="http://www.flickr.com/photos/mikecreighton/3924822790/in/set-72157622348110646/"><img class="hasLargeImage" src="http://www.todaycreate.com/wp-content/creations/2009/09/noisetube_normals_lighting_05.jpg" alt="Noise Tube Progress Render" border="0" /></a><span class="imageLinkHolder">+ <a href="http://www.flickr.com/photos/mikecreighton/3924822790/in/set-72157622348110646/">View hi-res on Flickr.</a></span></p>
<p><a href="http://www.flickr.com/photos/mikecreighton/3924822920/in/set-72157622348110646/"><img class="hasLargeImage" src="http://www.todaycreate.com/wp-content/creations/2009/09/noisetube_normals_lighting_06.jpg" alt="Noise Tube Progress Render" border="0" /></a><span class="imageLinkHolder">+ <a href="http://www.flickr.com/photos/mikecreighton/3924822920/in/set-72157622348110646/">View hi-res on Flickr.</a></span></p>
<p>Also, in those last couple renders, I added a convex mesh to the background so that I could start incorporating background colors properly. Moreover, so I could get some light-generated gradients happening. More to come&#8230; more to come.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.todaycreate.com/2009/09/15/some-noise-tube-renders/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Noise Tube: Vertex Normals</title>
		<link>http://www.todaycreate.com/2009/09/05/noise-tube-vertex-normals</link>
		<comments>http://www.todaycreate.com/2009/09/05/noise-tube-vertex-normals#comments</comments>
		<pubDate>Sun, 06 Sep 2009 02:39:07 +0000</pubDate>
		<dc:creator>Mike Creighton</dc:creator>
				<category><![CDATA[3D]]></category>
		<category><![CDATA[Abstract]]></category>
		<category><![CDATA[Art]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[Generative]]></category>
		<category><![CDATA[Noise Tube]]></category>
		<category><![CDATA[openFrameworks]]></category>
		<category><![CDATA[Perlin]]></category>

		<guid isPermaLink="false">http://www.todaycreate.com/?p=270</guid>
		<description><![CDATA[+ View higher res image. + View higher res image. For those of you following me on Twitter today, you witnessed the pain I endured under the cruel, icy grip of OpenGL. That pain: learning how to compute vertex normals. But eight hours later, I managed to pull it off with the help of the [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.todaycreate.com/wp-content/creations/2009/09/noisetube_vertexnormals_01.jpg"><img class="hasLargeImage" src="http://www.todaycreate.com/wp-content/creations/2009/09/noisetube_vertexnormals_01_sm.jpg" alt="Noise Tube Vertex Normals Render" border="0" /></a><span class="imageLinkHolder">+ <a href="http://www.todaycreate.com/wp-content/creations/2009/09/noisetube_vertexnormals_01.jpg">View higher res image.</a></span></p>
<p><a href="http://www.todaycreate.com/wp-content/creations/2009/09/noisetube_vertexnormals_02.jpg"><img class="hasLargeImage" src="http://www.todaycreate.com/wp-content/creations/2009/09/noisetube_vertexnormals_02_sm.jpg" alt="Noise Tube Vertex Normals Render" border="0" /></a><span class="imageLinkHolder">+ <a href="http://www.todaycreate.com/wp-content/creations/2009/09/noisetube_vertexnormals_02.jpg">View higher res image.</a></span></p>
<p>For those of you following <a href="http://twitter.com/mikecreighton" title="View Mike Creighton on Twitter">me on Twitter</a> today, you witnessed the pain I endured under the cruel, icy grip of OpenGL.</p>
<p>That pain: learning how to compute vertex normals.</p>
<p>But eight hours later, I managed to pull it off with the help of the <a href="http://www.starstonesoftware.com/OpenGL/">OpenGL SuperBible</a>, <a href="http://www.gamedev.net/community/forums/topic.asp?topic_id=355340&#038;PageSize=25&#038;WhichPage=1">this thread</a>, and <a href="http://www.gamedev.net/reference/programming/features/normalheightfield/default.asp">this article</a>. Oh, and this amidst porting it to C++ (openFrameworks) for maximum control and speed.</p>
<p>Along the way, I learned how OpenGL lighting works. I was having such a hard time with it before because my form didn&#8217;t have its surface normals nor its vertex normals correctly calculated. So light wasn&#8217;t bouncing off it the way I expected. Now it&#8217;s all making good sense.</p>
<p>My next steps will be adding interactivity. I&#8217;m going to try to use my HP TouchSmart for touch input along with its webcam for vision input. Separately, I&#8217;ll try to make some sort of music visualizer out of this &#8212; or at least make it audio-responsive.</p>
<p>Check out a video from today:</p>
<p><object width="560" height="315"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=6450165&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=AAC132&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=6450165&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=AAC132&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="560" height="315"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.todaycreate.com/2009/09/05/noise-tube-vertex-normals/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

