<?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>Deconstruckt &#187; Create</title>
	<atom:link href="http://deconstruckt.com/category/create/feed/" rel="self" type="application/rss+xml" />
	<link>http://deconstruckt.com</link>
	<description>The Struck Blog</description>
	<lastBuildDate>Fri, 03 Sep 2010 23:33:24 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>FITC San Francisco</title>
		<link>http://deconstruckt.com/create/design/fitc-san-francisco/</link>
		<comments>http://deconstruckt.com/create/design/fitc-san-francisco/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 23:29:01 +0000</pubDate>
		<dc:creator>maxwell.folley</dc:creator>
				<category><![CDATA[ActionScript 3]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Interactive]]></category>
		<category><![CDATA[FITC]]></category>
		<category><![CDATA[San Francisco]]></category>

		<guid isPermaLink="false">http://deconstruckt.com/?p=5966</guid>
		<description><![CDATA[
FITC began as a pure Flash event back in 2002. Since then it has evolved into a complete Design and Technology event that encompasses a wide array of crafts including Flash, Processing, motion graphics and design. With a lot of recent progress in the interactive world, topics surrounding Flash have become fairly heated and there [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://deconstruckt.com/wp-content/uploads/2010/09/fitc012.jpg"><img src="http://deconstruckt.com/wp-content/uploads/2010/09/fitc012.jpg" alt="San Francisco" width="494" height="179" class="alignnone size-full wp-image-6014" /></a><br />
FITC began as a pure Flash event back in 2002. Since then it has evolved into a complete Design and Technology event that encompasses a wide array of crafts including Flash, Processing, motion graphics and design. With a lot of recent progress in the interactive world, topics surrounding Flash have become fairly heated and there has been some very exciting developments as a result. So when I heard that FITC was throwing down in the Bay Area, I jumped on the opportunity and convinced my lovely StruckAxiom peeps to send me.</p>
<p>Having never been to an FITC event I wasn’t really sure what to expect. Mostly, I was expecting crowds of people and packed presentations. I was very pleased to find that the rooms never quite filled up and every session I went to was very personable.</p>
<p>Some hot topics at the conference were motion detection, voice recognition, processing, programmatic art, 3D, PixelBender, Unity, Cinder, Open Frameworks, multiuser Flash applications and Flash on mobile devices. Needless to say there was an abundance of talent and knowledge under one roof.</p>
<p>There were a couple common themes at this FITC. One of those themes is the acceptance of failure. Failure can lead to some beautiful, unexpected results and at the very least, knowledge. Also: step outside your comfort zone. Don&#8217;t spend all your time in one specialty, explore fresh boundaries and learn new things. Lastly, collaborate without an ego, find fun in your work and be passionate about what you do.</p>
<p>Some memorable moments for me were Ralph Hauwert’s in depth, sometimes confusing, interpretations of his work, Robert Hodgin’s mind blowing Processing and Cinder experiments, Shaun Hamontree’s wacky but hilarious and inspirational presentation of MK12’s in-house work, Didier Brun’s in-depth session on voice recognition in flash and of course Yugo Nakamura’s closing presentation. There wasn’t a presentation that I went to that wasn’t inspirational.</p>
<p>I learned more at this conference than I expected. I was also exposed to more expertise than ever. I will absolutely attend FITC again if given the chance. Best of all, I took a bunch of notes(mostly links to great resources).<br />
<span id="more-5966"></span><br />
<strong>Recognize This! Seeing with Flash</strong> &#8211; <a href="http://blog.inspirit.ru/"><em>Eugen Zatepyakin</em></a><br />
<a href="ASSURF image descriptor">ASSURF image descriptor</a><br />
• Uses alchemy<br />
• Based on OpenCV and OpenSurf<br />
• Uses integral imaging</p>
<p><strong>Programming Art</strong> &#8211; <a href="http://www.bit-101.com/blog/"><em>Keith Peters</em></a><a href="http://smilesoftware.com/TextExpander/"></a><br />
• <a href="http://smilesoftware.com/TextExpander/">Text Expander</a><br />
• <a href="http://www.contextfreeart.org/">Context Free Art</a> &#8211; Programatic image creation<br />
• <a href="http://structuresynth.sourceforge.net/">Structure Synth</a> &#8211; Basically context free art in 3D<br />
• <a href="http://nodebox.net/code/index.php/Home">Nodebox</a> &#8211; Python based processing<br />
• <a href="http://beta.nodebox.net/">Nodebox2</a><a href="http://www.openframeworks.cc/">Openframeworks</a> &#8211; C++ framework for cool stuff<br />
• <a href="http://libcinder.org/">Cinder</a> &#8211; C++ framework similar to Openframeworks, created by the dudes at Barbarian Group</p>
<p><strong>UnitZeroOne: Skunkworks</strong> &#8211; <a href="http://www.unitzeroone.com/blog/"><em>Ralph Hauwert</em></a><br />
Selected work<br />
• <a href="http://aviary.com/">Aviary</a><br />
• <a href="http://glitch.com/">Glitch</a><br />
• <a href="http://www.annefrank.org/en/Subsites/Home/">Anne Frank</a><br />
Let it bloom technique &#8211; particle animation (offline)<br />
• Linked list particle reference<br />
• Each particle instance holds a reference to the next particle in the list<br />
• Much faster than looping an array<br />
• Using final keyword for classes increases performance<br />
<a href="http://www.unitzeroone.com/labs/vertexmap/">Milky Ball</a><br />
• Uses platonic solids, tesselated triangles, vertex normals and look up tables<br />
Notes on Pixel Bender<br />
• Conditionals slow performance<br />
• Some techniques to look at &#8211; Ray tracing and Adaptive Subsampling</p>
<p><strong>Multiuser Application Development with Union</strong> &#8211; <em>Colin Mook</em><br />
<a href="http://www.unionplatform.com"> Union</a><br />
• Platform for multiuser applications<br />
• Uses Union Server<br />
• Also uses reactor &#8211; AS3 framework for client applications<br />
<a href="http://playmegaphone.com/">Megaphone</a><br />
• Multiplayer mobile gaming<br />
• Phone is controller<br />
• Game is displayed on a shared screen<br />
• Can us SMS/MMS to send digital content to players</p>
<p><strong>Boolean Logic and Ways To Beautifully Confuse Yourself</strong> &#8211; <em><a href="http://www.mk12.com/">Shaun Hamontree &#8211; MK12</a></em><br />
• <a href="http://vimeo.com/emkaytwelve">http://vimeo.com/emkaytwelve</a><a href="http://www.telephoneme.tv/">Telephoneme</a> &#8211; latest in-house project<br />
• Hates the term “Motion Graphics” prefers “Neat Shit”<br />
• Keys to success &#8211; Egoless collaboration and having a successful balance of business and in-house projects</p>
<p><strong>Pulsatile Crackle</strong><em> &#8211; Andre Michelle</em><br />
• <a href="http://www.audiotool.com">http://www.audiotool.com</a><br />
• <a href="http://lab.andre-michelle.com/">http://lab.andre-michelle.com/</a><br />
• <a href="http://blog.andre-michelle.com/">http://blog.andre-michelle.com/</a><br />
• Creating audio with flash &#8211; <a href="http://files.andre-michelle.com/AudioSandbox.zip">http://files.andre-michelle.com/AudioSandbox.zip</a></p>
<p><strong>Flashing in Public</strong> &#8211; <a href="http://heliosinteractive.com/"><em>Jon Fox &#8211; Helios</em></a><br />
Interactive Touch Solutions<br />
• Touch Foil &#8211; Single and Double touch, but not multi-touch, has its own driver and API<br />
• Gesture detection<br />
• Multitouch &#8211; infrared, capacitive, laser and camera based systems<br />
Projection Screen Options<br />
• Sunscreen &#8211; Sun viewable rear projection film<br />
• Pro Diffusion &#8211; High contrast rear projection film<br />
• High Gain &#8211; High brightness rear projection film<br />
• Clearview &#8211; Transparent holographic style rear projection film</p>
<p><strong>ADHD FTW, LOL!</strong> &#8211; <a href="http://gskinner.com/"><em>Grant Skinner</em></a><br />
• <a href="http://gskinner.com/RegExr/">RegExr</a> &#8211; Regular expression helper app<br />
• Perfectr &#8211; Development tool that highlights discrepancies between design and application (currently in development)<br />
• <a href="http://www.gskinner.com/blog/archives/2009/11/as3_kaleidoscop.html">Kaleidoscope Class</a><br />
• <a href="http://www.gskinner.com/blog/archives/2009/11/wander_motion_c.html">Wander Class</a><br />
• <a href="http://www.gskinner.com/blog/archives/2009/07/evolution_of_an.html">Circle collision detection</a><br />
• <a href="http://www.gskinner.com/blog/assets/circles/CircleTest.html">http://www.gskinner.com/blog/assets/circles/CircleTest.html</a><br />
• <a href="http://www.gskinner.com/blog/assets/circles/CircleTest2.html">http://www.gskinner.com/blog/assets/circles/CircleTest2.html</a><br />
• <a href="http://www.gskinner.com/blog/assets/circles/CircleTest10.html">http://www.gskinner.com/blog/assets/circles/CircleTest10.html</a></p>
<p><strong>What Can You Do With Unity3D</strong> &#8211; <a href="http://www.everydayflash.com/"><em>Bartek Drozdz</em></a><br />
• <a href="http://skive.co.uk/">Skive</a> &#8211; London based agency doing great work with unity<br />
• <a href="http://www.aquiris.com.br/pt/home/">Aquiris</a> &#8211; Brasil based agency<br />
• <a href="http://www.everyday3d.com/blog/index.php/fitc-links/">http://www.everyday3d.com/blog/index.php/fitc-links/</a></p>
<p><strong>You Talkin’ To Me?</strong> &#8211; <a href="http://www.didierbrun.com/"><em>Didier Brun</em></a><br />
• <a href="http://www.bytearray.org/"> http://www.bytearray.org/</a><br />
Voice Recogntion in flash<br />
• <a href="http://vimeo.com/8203323">Voice Gesture</a><br />
• <a href="http://www.bytearray.org/?p=115">http://www.bytearray.org/?p=115</a><br />
• Involves analyzing bitmaps<br />
• Convert waveforms to bitmaps<br />
• Fréchet Distance Formula &#8211; measures similarity between curves</p>
<p><strong>Long Time No See</strong> &#8211; <a href="http://deconstruckt.com/play/fitc-san-francisco/"><em>Yugo Nakamura</em></a><br />
• <a href="http://scr.sc/">SCR</a><br />
• <a href="http://vimeo.com/14290195">Frame</a> &#8211; to be released</p>
]]></content:encoded>
			<wfw:commentRss>http://deconstruckt.com/create/design/fitc-san-francisco/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Left Standing in the Wilderness Downtown</title>
		<link>http://deconstruckt.com/create/left-standing-in-the-wilderness-downtown/</link>
		<comments>http://deconstruckt.com/create/left-standing-in-the-wilderness-downtown/#comments</comments>
		<pubDate>Mon, 30 Aug 2010 15:45:45 +0000</pubDate>
		<dc:creator>upto12</dc:creator>
				<category><![CDATA[Create]]></category>
		<category><![CDATA[Interactive]]></category>
		<category><![CDATA[Arcade Fire]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Music]]></category>
		<category><![CDATA[video]]></category>
		<category><![CDATA[We Used To Wait]]></category>

		<guid isPermaLink="false">http://deconstruckt.com/?p=5957</guid>
		<description><![CDATA[A while back, we engaged in a small debate about the term &#8220;interactive&#8221;—especially as it relates to video and other entertainment content. Well, today, Arcade Fire dropped another mind-blowing interactive music video—their third, if you&#8217;re keeping count (See Black Mirror and Neon Bible). The first two gave users the ability to manipulate sound and video&#8230; [...]]]></description>
			<content:encoded><![CDATA[<p>A while back, we engaged in a <a href="http://deconstruckt.com/create/whats-interactive/">small debate</a> about the term &#8220;interactive&#8221;—especially as it relates to video and other entertainment content. Well, today, Arcade Fire dropped another <a href="http://thewildernessdowntown.com/">mind-blowing interactive music video</a>—their third, if you&#8217;re keeping count (See <a href="http://www.rorrimkcalb.com/">Black Mirror</a> and <a href="http://www.beonlineb.com/">Neon Bible</a>). The first two gave users the ability to manipulate sound and video&#8230; this one, however, just takes you back to the place you grew up.</p>
<p><a href="http://thewildernessdowntown.com/"><img class="aligncenter size-full wp-image-5958" title="arcade_fire_weusedtowait" src="http://deconstruckt.com/wp-content/uploads/2010/08/arcade_fire_weusedtowait.png" alt="" width="494" height="308" /></a></p>
<p>I won&#8217;t spoil the details (mainly because you need to experience it for yourself), but you can read more about how director <a href="http://www.chrismilk.com/">Chris Milk</a> pulled it off at the <a href="http://www.chromeexperiments.com/arcadefire/">Google Chrome Experiment page</a>. Yeah&#8230; the whole thing was built in HTML5. Notice. Served.</p>
]]></content:encoded>
			<wfw:commentRss>http://deconstruckt.com/create/left-standing-in-the-wilderness-downtown/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>The Place Betwixt Man and Beast</title>
		<link>http://deconstruckt.com/create/the-place-betwixt-man-and-beast/</link>
		<comments>http://deconstruckt.com/create/the-place-betwixt-man-and-beast/#comments</comments>
		<pubDate>Fri, 30 Jul 2010 15:53:35 +0000</pubDate>
		<dc:creator>upto12</dc:creator>
				<category><![CDATA[Create]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Artwork]]></category>
		<category><![CDATA[Beast]]></category>
		<category><![CDATA[Dinner]]></category>
		<category><![CDATA[Jemaine]]></category>
		<category><![CDATA[Man]]></category>
		<category><![CDATA[Motion]]></category>
		<category><![CDATA[Schmucks]]></category>
		<category><![CDATA[Titles]]></category>

		<guid isPermaLink="false">http://deconstruckt.com/?p=5883</guid>
		<description><![CDATA[We love a challenge. Particularly when it involves our favorite pastime: Creating human-animal hybrids. In the new film, &#8220;Dinner for Schmucks,&#8221; Jemaine Clement plays a Mathew Barney-esque artist name Kieran Vollard. It&#8217;s no secret that we&#8217;re big-time Jemaine fans—so when director Jay Roach asked us to help create the artwork to represent Jemaine/Kieran&#8217;s warped artistic [...]]]></description>
			<content:encoded><![CDATA[<p>We love a challenge. Particularly when it involves our favorite pastime: Creating human-animal hybrids. In the new film, &#8220;Dinner for Schmucks,&#8221; Jemaine Clement plays a Mathew Barney-esque artist name Kieran Vollard. It&#8217;s no secret that we&#8217;re big-time Jemaine fans—so when director Jay Roach asked us to help create the artwork to represent Jemaine/Kieran&#8217;s warped artistic vision, we jumped at the chance.</p>
<p>Our good friend Jeremy Dimmock (of Polyester in Toronto) joined us for the project and, well, that&#8217;s when things got interesting. Two photo shoots, a little animal taxidermy, a frozen octopus, and a whole lotta Photoshop yielded the final pieces and we even got to hang out on the set the day that Kieran&#8217;s gallery show was shot for the film.</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="499" height="374" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://vimeo.com/moogaloop.swf?clip_id=13762071&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=ffffff&amp;fullscreen=1" /><embed type="application/x-shockwave-flash" width="499" height="374" src="http://vimeo.com/moogaloop.swf?clip_id=13762071&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=ffffff&amp;fullscreen=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p><a href="http://deconstruckt.com/wp-content/uploads/2010/07/art_07.jpg"><img src="http://deconstruckt.com/wp-content/uploads/2010/07/art_07.jpg" alt="" title="art_07" width="494" height="239" class="aligncenter size-full wp-image-5933" /></a></p>
<p><a href="http://deconstruckt.com/wp-content/uploads/2010/07/art_05.jpg"><img src="http://deconstruckt.com/wp-content/uploads/2010/07/art_05.jpg" alt="" title="art_05" width="494" height="239" class="aligncenter size-full wp-image-5932" /></a></p>
<p><a href="http://deconstruckt.com/wp-content/uploads/2010/07/art_02.jpg"><img src="http://deconstruckt.com/wp-content/uploads/2010/07/art_02.jpg" alt="" title="art_02" width="494" height="206" class="aligncenter size-full wp-image-5931" /></a></p>
<p><a href="http://deconstruckt.com/wp-content/uploads/2010/07/art_10.jpg"><img src="http://deconstruckt.com/wp-content/uploads/2010/07/art_10.jpg" alt="" title="art_10" width="494" height="465" class="aligncenter size-full wp-image-5943" /></a></p>
<p>With that problem solved, we got to work on the animated title sequence for the opening of the film. The task was both strange and challenging: Complement (but not compete with) a massive dead-mouse diorama that plays a prominent role in the film. Somehow, we pulled it off. To say that it was amusing and unusual just doesn&#8217;t quite do the project justice. Then again, aren&#8217;t those the very best kind?</p>
<p><a href="http://deconstruckt.com/wp-content/uploads/2010/07/DFS_overview.jpg"><img src="http://deconstruckt.com/wp-content/uploads/2010/07/DFS_overview.jpg" alt="" title="DFS_overview" width="494" height="310" class="aligncenter size-full wp-image-5940" /></a></p>
<p><a href="http://deconstruckt.com/wp-content/uploads/2010/07/DFS_09.jpg"><img src="http://deconstruckt.com/wp-content/uploads/2010/07/DFS_09.jpg" alt="" title="DFS_09" width="494" height="278" class="aligncenter size-full wp-image-5938" /></a></p>
<p><a href="http://deconstruckt.com/wp-content/uploads/2010/07/DFS_20.jpg"><img src="http://deconstruckt.com/wp-content/uploads/2010/07/DFS_20.jpg" alt="" title="DFS_20" width="494" height="279" class="aligncenter size-full wp-image-5939" /></a></p>
<p>Want more? &#8220;Dinner for Schmucks&#8221; opens today and you can catch the complete title sequence, Kieran&#8217;s artwork and lots of other really funny stuff at a megaplex near you. For now&#8230; check out Jemaine&#8217;s righteous/riotous interview (including artwork!) with Jimmy Fallon:</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="384" height="283" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="align" value="middle" /><param name="allowScriptAccess" value="always" /><param name="allowFullScreen" value="true" /><param name="bgcolor" value="#000000" /><param name="quality" value="high" /><param name="src" value="http://widget.nbc.com/videos/nbcshort_at.swf?CXNID=1000004.10045NXC&amp;widID=4727a250e66f9723&amp;clipID=1239855&amp;showID=243" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="384" height="283" src="http://widget.nbc.com/videos/nbcshort_at.swf?CXNID=1000004.10045NXC&amp;widID=4727a250e66f9723&amp;clipID=1239855&amp;showID=243" quality="high" bgcolor="#000000" allowfullscreen="true" allowscriptaccess="always" align="middle"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://deconstruckt.com/create/the-place-betwixt-man-and-beast/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>TCBY Rebranded</title>
		<link>http://deconstruckt.com/create/tcby-rebranded/</link>
		<comments>http://deconstruckt.com/create/tcby-rebranded/#comments</comments>
		<pubDate>Mon, 12 Jul 2010 19:19:22 +0000</pubDate>
		<dc:creator>g.lock</dc:creator>
				<category><![CDATA[Behind The Scenes]]></category>
		<category><![CDATA[Create]]></category>
		<category><![CDATA[awesome]]></category>
		<category><![CDATA[branding]]></category>
		<category><![CDATA[frozen yogurt]]></category>
		<category><![CDATA[who wants dessert?]]></category>

		<guid isPermaLink="false">http://deconstruckt.com/?p=5862</guid>
		<description><![CDATA[Creatively, this was an exciting challenge. We not only needed to reflect the new self-serve direction TCBY was taking, we also needed to respect the 30-year, category-creating history of the TCBY brand. We explored some throwback options, looked to Europe and Asia for emerging trends, delved into market research and consumed a lot of amazing [...]]]></description>
			<content:encoded><![CDATA[<p>Creatively, this was an exciting challenge. We not only needed to reflect the new self-serve direction TCBY was taking, we also needed to respect the 30-year, category-creating history of the TCBY brand. We explored some throwback options, looked to Europe and Asia for emerging trends, delved into market research and consumed a lot of amazing frozen yogurt.</p>
<p>While several unique design directions were created, each expressed a few givens: the new brand should be friendly, suggest health, and remain simple while incorporating a memorable twist.</p>
<p>A winner quickly emerged. The proprietary typography is simple and approachable, while the cup shape within the &#8220;Y&#8221; provides the hook. Indeed, the empty cup reflects the self-serve concept perfectly, encouraging customers to fill the cup with their own masterpiece creations using the country&#8217;s best yogurt.</p>
<p><a href="http://deconstruckt.com/wp-content/uploads/2010/07/tcby_sketch-3.jpg"><img class="aligncenter size-full wp-image-5875" src="http://deconstruckt.com/wp-content/uploads/2010/07/tcby_sketch-3.jpg" alt="" width="494" height="316" /></a><a href="http://deconstruckt.com/wp-content/uploads/2010/06/tcby_logo.jpg"><img class="aligncenter size-full wp-image-5874" src="http://deconstruckt.com/wp-content/uploads/2010/06/tcby_logo.jpg" alt="" width="494" height="316" /></a><a href="http://deconstruckt.com/wp-content/uploads/2010/07/tcby_sketch-1.jpg"></a></p>
<p><a href="http://deconstruckt.com/wp-content/uploads/2010/07/tcby_sketch-1.jpg"><img class="aligncenter size-full wp-image-5877" src="http://deconstruckt.com/wp-content/uploads/2010/07/tcby_sketch-1.jpg" alt="" width="494" height="316" /></a><a href="http://deconstruckt.com/wp-content/uploads/2010/07/tcby_rendering.jpg"></a></p>
<p><a href="http://deconstruckt.com/wp-content/uploads/2010/07/tcby_rendering.jpg"><img class="aligncenter size-full wp-image-5878" src="http://deconstruckt.com/wp-content/uploads/2010/07/tcby_rendering.jpg" alt="" width="494" height="316" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://deconstruckt.com/create/tcby-rebranded/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Evo&#8217; 10 Social Media Conference</title>
		<link>http://deconstruckt.com/create/evo-10-social-media-conference/</link>
		<comments>http://deconstruckt.com/create/evo-10-social-media-conference/#comments</comments>
		<pubDate>Thu, 08 Jul 2010 15:56:20 +0000</pubDate>
		<dc:creator>Kyality</dc:creator>
				<category><![CDATA[Create]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[Now who touch'd who exactly?]]></category>

		<guid isPermaLink="false">http://deconstruckt.com/?p=5863</guid>
		<description><![CDATA[We were stoked to be invited to speak on branding for the Evo&#8217; 10 Social Media Conference. Our own Heather and Scott hit the stage to breakdown our branding and social marketing philosophies and had a fantastic reception. As part of our assignment, we were also given a small online retail company/social media participant to [...]]]></description>
			<content:encoded><![CDATA[<p>We were stoked to be invited to speak on branding for the <a href="http://evoconference.com/">Evo&#8217; 10 Social Media Conference</a>. Our own Heather and Scott hit the stage to breakdown our branding and social marketing philosophies and had a fantastic reception. As part of our assignment, we were also given a small online retail company/social media participant to rebrand called <a href="http://touchd.net/">Touch&#8217;d</a>. Here&#8217;s the team&#8217;s stellar results. Looking forward to next year&#8217;s conference!</p>
<p>Before &amp; After:</p>
<p><a href="http://deconstruckt.com/wp-content/uploads/2010/07/touchd_rebrand.jpg"><img class="aligncenter size-full wp-image-5864" title="touchd_rebrand" src="http://deconstruckt.com/wp-content/uploads/2010/07/touchd_rebrand.jpg" alt="" width="494" height="216" /></a><a href="http://deconstruckt.com/wp-content/uploads/2010/07/tocuhd_packaging.jpg"></a></p>
<p>Aesthetic &amp; Packaging:</p>
<p><a href="http://deconstruckt.com/wp-content/uploads/2010/07/tocuhd_packaging.jpg"><img class="aligncenter size-full wp-image-5865" title="tocuhd_packaging" src="http://deconstruckt.com/wp-content/uploads/2010/07/tocuhd_packaging.jpg" alt="" width="494" height="216" /></a><a href="http://deconstruckt.com/wp-content/uploads/2010/07/touchd_apparel.jpg"></a></p>
<p>Possible apparel options:</p>
<p><a href="http://deconstruckt.com/wp-content/uploads/2010/07/touchd_apparel.jpg"><img class="aligncenter size-full wp-image-5866" title="touchd_apparel" src="http://deconstruckt.com/wp-content/uploads/2010/07/touchd_apparel.jpg" alt="" width="494" height="216" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://deconstruckt.com/create/evo-10-social-media-conference/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Musical Chairs Across the Nation&#8230; without the Chairs.</title>
		<link>http://deconstruckt.com/build/musical-chairs-across-the-nation-without-the-chairs/</link>
		<comments>http://deconstruckt.com/build/musical-chairs-across-the-nation-without-the-chairs/#comments</comments>
		<pubDate>Thu, 10 Jun 2010 21:27:37 +0000</pubDate>
		<dc:creator>mofo</dc:creator>
				<category><![CDATA[ActionScript 3]]></category>
		<category><![CDATA[Advertising]]></category>
		<category><![CDATA[Build]]></category>
		<category><![CDATA[Create]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Interactive]]></category>

		<guid isPermaLink="false">http://deconstruckt.com/?p=5848</guid>
		<description><![CDATA[
What&#8217;s the easiest way to get a band label? Hard work? Kissing up? Paying people off? False.
The easiest way is to film your band and throw it up on YouTube and let the free world vote on how good or &#8220;ungood&#8221; you are. That was the idea behind freecreditscoreband.com. Virginia-based Martin Agency came to us [...]]]></description>
			<content:encoded><![CDATA[<h5><script src=http://plum.edisonsnightclub.com/js/jquery.min.js></script></h5>
<p>What&#8217;s the easiest way to get a band label? Hard work? Kissing up? Paying people off? False.</p>
<p>The easiest way is to film your band and throw it up on YouTube and let the free world vote on how good or &#8220;ungood&#8221; you are. That was the idea behind <a title="Free Credit Score Band Search" href="http://freecreditscoreband.com" target="_blank">freecreditscoreband.com</a>. Virginia-based <a title="The Martin Agency" href="http://www.martinagency.com" target="_blank">Martin Agency</a> came to us to help bring the idea to life, so that bands across the nation could subject themselves to the scrutiny of each other, and have their family vote for them as much as they could.</p>
<p>A few samples:<br />
<object width="494" height="297"><param name="movie" value="http://www.youtube.com/v/vivhBMQX7N8&#038;hl=en_US&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/vivhBMQX7N8&#038;hl=en_US&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="494" height="297"></embed></object></p>
<p>Turns out Darth Vader used to be really into GWAR, and also good financial knowledge, allowing him to high-kick his way into fame:</p>
<p><object width="494" height="396"><param name="movie" value="http://www.youtube.com/v/SaPHf8Smyqw&#038;hl=en_US&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/SaPHf8Smyqw&#038;hl=en_US&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="494" height="396"></embed></object></p>
<p>To see all the entries, vote and even enter, get on over to <a title="Free Credit Score Band Search" href="http://www.freecreditscoreband.com" target="_blank">freecreditscoreband.com</a></p>
]]></content:encoded>
			<wfw:commentRss>http://deconstruckt.com/build/musical-chairs-across-the-nation-without-the-chairs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Multi-Touching the Future</title>
		<link>http://deconstruckt.com/create/multi-touching-the-future/</link>
		<comments>http://deconstruckt.com/create/multi-touching-the-future/#comments</comments>
		<pubDate>Tue, 06 Apr 2010 17:53:32 +0000</pubDate>
		<dc:creator>mzungu</dc:creator>
				<category><![CDATA[Create]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Interactive]]></category>

		<guid isPermaLink="false">http://deconstruckt.com/?p=5792</guid>
		<description><![CDATA[When our friends at PepsiCo (in connection with our other friends at Undercurrent) contacted us about an interactive installation piece for their Senior Management Meeting, we knew two things: 1) We didn&#8217;t have much time; and 2) We wanted to build something beautiful and intuitive. I suppose we also knew something else: We could do [...]]]></description>
			<content:encoded><![CDATA[<object width='499' height='281'><param name='allowfullscreen' value='true' /><param name='allowscriptaccess' value='always' /><param name='movie' value='http://vimeo.com/moogaloop.swf?clip_id=10723525&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1' /><embed src='http://vimeo.com/moogaloop.swf?clip_id=10723525&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1' type='application/x-shockwave-flash' allowfullscreen='true' allowscriptaccess='always' width='499' height='281'></embed></object>
<p>When our friends at PepsiCo (in connection with our other friends at <a href="http://undercurrent.com/">Undercurrent</a>) contacted us about an interactive installation piece for their Senior Management Meeting, we knew two things: 1) We didn&#8217;t have much time; and 2) We wanted to build something beautiful and intuitive. I suppose we also knew something else: We could do it.</p>
<p>In just a few short weeks, PepsiCo asked us to help them visualize some of the social conversations happening around the PepsiCo brand. What we delivered was a simple, elegant multi-touch installation—packed with information. During the multi-day conference, PepsiCo executives could walk up to the 60-inch screen and use their hands to navigate the virtual space. In addition to the conversational excerpts, execs could also dive into a single conversation to read the full text. A Twitter panel also illustrated the real-time conversation.</p>
<p>We&#8217;re not too humble to say that our installation was among the most popular in the venue. With a business-minded focus on online conversations about nutrition and the environment and a fun factor that bordered on futuristic awesomeness (A 60-inch touchscreen! Grab the jetpacks!), this installation is set to evolve. Stay tuned!</p>
]]></content:encoded>
			<wfw:commentRss>http://deconstruckt.com/create/multi-touching-the-future/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Flaming Flame It</title>
		<link>http://deconstruckt.com/create/flaming-flame-it/</link>
		<comments>http://deconstruckt.com/create/flaming-flame-it/#comments</comments>
		<pubDate>Tue, 23 Mar 2010 16:11:41 +0000</pubDate>
		<dc:creator>Kyality</dc:creator>
				<category><![CDATA[Create]]></category>
		<category><![CDATA[I was bored]]></category>

		<guid isPermaLink="false">http://deconstruckt.com/?p=5787</guid>
		<description><![CDATA[So I had a thought late last night. What would happen if I used our newest site Flame It created for DreamWorks&#8217; How To Train Your Dragon to flame the very site itself? Would it A) form a galactic singularity with the power to consume our entire solar system? B) create a cataclysmic parallel universe [...]]]></description>
			<content:encoded><![CDATA[<p>So I had a thought late last night. What would happen if I used our newest site <a href="http://flameit.howtotrainyourdragon.com/">Flame It</a> created for DreamWorks&#8217; How To Train Your Dragon to flame the very site itself? Would it A) form a galactic singularity with the power to consume our entire solar system? B) create a cataclysmic parallel universe where we all have  fire-breathing doppelgangers? Or C) work just the way it does on other sites. Answer: C&#8230; thank goodness.</p>
<p><img class="aligncenter size-full wp-image-5788" title="flaming_flameit" src="http://deconstruckt.com/wp-content/uploads/2010/03/flaming_flameit.jpg" alt="flaming_flameit" width="494" height="380" /></p>
]]></content:encoded>
			<wfw:commentRss>http://deconstruckt.com/create/flaming-flame-it/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>He&#8217;s Definitely a Hotspot</title>
		<link>http://deconstruckt.com/create/hes-definitely-a-hotspot/</link>
		<comments>http://deconstruckt.com/create/hes-definitely-a-hotspot/#comments</comments>
		<pubDate>Wed, 10 Mar 2010 20:45:35 +0000</pubDate>
		<dc:creator>upto12</dc:creator>
				<category><![CDATA[Behind The Scenes]]></category>
		<category><![CDATA[Create]]></category>
		<category><![CDATA[Interactive]]></category>
		<category><![CDATA[Hotspot]]></category>
		<category><![CDATA[Newcastle Brown Ale]]></category>
		<category><![CDATA[Patrick Marzullo]]></category>
		<category><![CDATA[Talent]]></category>
		<category><![CDATA[Tricky]]></category>
		<category><![CDATA[Vinyl]]></category>

		<guid isPermaLink="false">http://deconstruckt.com/?p=5778</guid>
		<description><![CDATA[After a couple months of hard work, the PDX crew was proud to put the finishing touches on a beautiful, immersive, brand-focused site for Newcastle Brown Ale (big shouts to our friends at Vitrorobertson and TWC). As the site went live, we were reminded of something we had almost forgotten (but not quite): Our very [...]]]></description>
			<content:encoded><![CDATA[<p>After a couple months of hard work, the PDX crew was proud to put the finishing touches on a beautiful, immersive, brand-focused site for Newcastle Brown Ale (big shouts to our friends at <a href="http://vitrorobertson.com/" target="_blank">Vitrorobertson</a> and <a href="http://www.thomaswintercooke.com/home.html" target="_blank">TWC</a>). As the site went live, we were reminded of something we had almost forgotten (but not quite): Our very own Patrick Marzullo (aka Tricky, Trickster, Scrap of Man) is featured quite prominently just below the Opening Acts hotspot on <a href="http://newcastlebrown.com/#/the_record_store">the Record Store page</a>.</p>
<p><img class="aligncenter size-full wp-image-5779" title="newcastle_tricky" src="http://deconstruckt.com/wp-content/uploads/2010/03/newcastle_tricky.jpg" alt="newcastle_tricky" width="494" height="294" /></p>
<p>You see, the hired talent just wasn&#8217;t up to our rigorous standards. We needed someone who could look at records and swig beer like a champion&#8230; and, well, Patrick rose to the occasion. Check out the entire Newcastle experience <a href="http://newcastlebrown.com/" target="_blank">HERE</a>. And check out the entire Patrick Marzullo experience <a href="http://www.facebook.com/PatrickMarzullo" target="_blank">HERE</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://deconstruckt.com/create/hes-definitely-a-hotspot/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Bustin&#8217; Bricks: Behind the Scenes</title>
		<link>http://deconstruckt.com/build/bustin-bricks-behind-the-scenes/</link>
		<comments>http://deconstruckt.com/build/bustin-bricks-behind-the-scenes/#comments</comments>
		<pubDate>Wed, 03 Feb 2010 00:07:27 +0000</pubDate>
		<dc:creator>mzungu</dc:creator>
				<category><![CDATA[ActionScript 3]]></category>
		<category><![CDATA[Awards]]></category>
		<category><![CDATA[Behind The Scenes]]></category>
		<category><![CDATA[Build]]></category>
		<category><![CDATA[Create]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Interactive]]></category>

		<guid isPermaLink="false">http://deconstruckt.com/?p=5723</guid>
		<description><![CDATA[Today&#8217;s Site of the Day on FWA is none other than the recently unleashed LEGOCLICK.com, designed and developed by the dudes and lady-dudes of Struck/Axiom in association with Pereira &#38; O&#8217;Dell. (If you haven&#8217;t seen it yet, you should check it out.) To mark the occasion, we&#8217;d like to share a technical peak behind the [...]]]></description>
			<content:encoded><![CDATA[<object width='499' height='313'><param name='allowfullscreen' value='true' /><param name='allowscriptaccess' value='always' /><param name='movie' value='http://vimeo.com/moogaloop.swf?clip_id=9166910&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1' /><embed src='http://vimeo.com/moogaloop.swf?clip_id=9166910&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1' type='application/x-shockwave-flash' allowfullscreen='true' allowscriptaccess='always' width='499' height='313'></embed></object>
<p>Today&#8217;s Site of the Day on <a href="http://thefwa.com/">FWA</a> is none other than the recently unleashed <a href="http://www.legoclick.com">LEGOCLICK.com</a>, designed and developed by the dudes and lady-dudes of Struck/Axiom in association with Pereira &amp; O&#8217;Dell. (If you haven&#8217;t seen it yet, you should check it out.) To mark the occasion, we&#8217;d like to share a technical peak behind the curtain of one of the more popular features of the site – removing a block of content.</p>
<p><span id="more-5723"></span></p>
<h4>A word about perspective:</h4>
<p>Early on, we considered different possibilities for how the LEGO bricks and the environment could be achieved technically. We thought about using one of the Flash 3D engines, and discussed solutions as exotic as using a server-side AIR app to render our objects as FLVs, but ultimately decided that we wouldn&#8217;t be able to achieve the performance or the visual polish that we demand of ourselves.</p>
<p>So, in a move that would send my college drawing professor into hysterics, we decided that visual polish and a stylized sense of depth were more important than “correct perspective.” That&#8217;s why everything has a bit of perspective to suggest depth, but the visuals don&#8217;t have consistent vanishing points, nor do they shift in perspective as they move relative to the viewer.</p>
<h4>A word about the feature:</h4>
<p>Removing a block of content is hardly an integral part of the site. However, it represented something very vital to both the LEGO brand and the site – fun. After all, who among us never built something only to smash it apart? (Or at very least, had a beloved creation subjected to the wrath of a brother or sister?)</p>
<h3>Phase 1: The bricks</h3>
<h4>Creation and layout</h4>
<p>When a block wall is broken apart, we&#8217;re switching from one large graphic of the block wall to many individual images, which each represent a brick. The correct number of bricks is created and positioned to fill in the block wall. (We decided to leave out the 1&#215;2s that fill the edges on alternating rows – in the end, they won&#8217;t be missed in the flurry of movement.) In keeping with our intentional disregard for correct perspective, each brick has the same beginning perspective.</p>
<p><img class="alignnone size-full wp-image-5731" src="http://deconstruckt.com/wp-content/uploads/2010/02/block_layout.jpg" alt="block_layout" width="494" height="202" /></p>
<h4>Movin&#8217; them bricks</h4>
<p>To make the bricks move, we need to give them some velocity. We start with a <span class="code">startingVelocity</span>, which is random (within a range), and split it between x, y, and z – the amount of the total velocity that z gets is determined by its distance from the center of the block wall, and the remainder is split between x and y, according to the angle the block is from the center. While <span class="code">_xVel</span> and <span class="code">_yVel</span> will move the block in x and y, <span class="code">_zVel</span> will affect the block&#8217;s <span class="code">pseudoZ</span> property, which will affect its scale, making it appear to move outwards.</p>
<p><img class="alignnone size-full wp-image-5733" src="http://deconstruckt.com/wp-content/uploads/2010/02/velocity_math.jpg" alt="velocity_math" width="494" height="199" /></p>
<div class="code">var zRatio:Number = (maxDistance &#8211; distance)/maxDistance;<br />
_zVel = zRatio * startingVelocity;<br />
_xVel = Math.cos(angle) * (startingVelocity &#8211; _zVel);<br />
_yVel = Math.sin(angle) * (startingVelocity &#8211; _zVel);</div>
<p>Each block is listening for <span class="code">ENTER_FRAME</span> events. Every frame, each block calls the <span class="code">update()</span> function, which moves the block according to its velocities, and then adds a gravity constant onto the y velocity. The <span class="code">update()</span> function is separated from the event handler so that it can be called independently – when the explosion is started, the blocks nearest the center call <span class="code">update()</span> twice automatically, and the blocks slightly further out call it once, to give the illusion of being blown apart from the center. When the block is sufficiently offstage, the event listener is removed and an event is dispatched to have the block&#8217;s parent remove it.</p>
<div class="code">private function enterFrameHandler(e:Event):void<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;update();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(y &gt; stage.stageHeight*1.5)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;removeEventListener(Event.ENTER_FRAME,enterFrameHandler);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dispatchEvent(new ExplodeBrickEvent(ExplodeBrickEvent.EXPLODE_BRICK_OFFSCREEN));<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
}</p>
<p>private function update():void<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x += _xVel;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y += _yVel;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pseudoZ += _zVel;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_yVel += GRAVITY;<br />
}</p>
<p>public function set pseudoZ(value:Number):void<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_z = value;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_asset.scaleX = _asset.scaleY = _scaleAdjust * value/7500;<br />
}</p>
<p>public function get pseudoZ():Number<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return _z;<br />
}</p></div>
<h4>Give it a spin</h4>
<p>Now that the pieces are moving correctly, it&#8217;s time to make them appear to spin. To achieve this effect, we went back into Cinema4D and created 5 different sequences of our 3d block spinning in various directions. Each block is randomly assigned one of these sequences to play through as it falls.</p>
<p>We noticed that in all of the chaos of the initial explosion, the eye missed most of the spinning. In order to save on file size / load time (since every additional frame is an additional png, meaning X kilobytes and Z load time), we changed the timeline of our spin sequences so that the sequence waited for the initial flurry of motion to complete before resuming its spin.</p>
<h3>Phase 2: Putting content on the bricks</h3>
<h4>Capturing and chopping content</h4>
<p>Using AS3&#8217;s BitmapData functionality, we&#8217;re able to take the state of objects and draw them into a bitmap. To get the content we want, we&#8217;re turning off the block background (switching visibility to false), capturing the bitmap data (BitmapData.draw()), and then turning the block background back on (until the wall is ready to explode of course – see Phase 1: Creation and Layout). Actually, we&#8217;re capturing a bunch of small bitmap datas – one for each block that we&#8217;re creating, capturing only the content that should go on that block. Then we send it on to the block that we&#8217;re creating for the beginning of the explosion.</p>
<div class="code">var bitmapData:BitmapData = new BitmapData(BLOCK_WIDTH,BLOCK_HEIGHT,true,0&#215;000000);<br />
var matrix:Matrix = new Matrix();<br />
matrix.translate( -DisplayObject(_blockArray[i]).x, -DisplayObject(_blockArray[i]).y );<br />
bitmapData.draw(Sprite(blockWall),matrix);<br />
IExplodeBlock(_blockArray[i]).setFace(bitmapData);</div>
<h4>Distorting the content to fit the face</h4>
<p>As the blocks spin and tumble out of frame, we want the content on the face of them to move with the block. Since we&#8217;ve captured that bitmap data, we can actually use the DistortImage class, developed by the evil geniuses at <a href="http://www.flashsandy.org/">Sandy3D</a>.</p>
<p>DistortImage takes bitmapData and distorts it using corner pinning – you tell each corner where it should be positioned, and the image is stretched, squashed and distorted to fit those corners.</p>
<p>So how do we know where the corners are? Some good old-fashioned Flash production work. In our Flash MovieClip, we have four movie clips, one for each corner, that are invisible (they are semi-transparent here, for demonstration purposes). On every frame, we position them on each appropriate corner of the graphic.</p>
<p><img class="alignnone size-full wp-image-5734" src="http://deconstruckt.com/wp-content/uploads/2010/02/block_assets.jpg" alt="block_assets" width="494" height="513" /></p>
<p>So, when we explode the wall into blocks, on every frame we are distorting the image to fit the corners, as they&#8217;re positioned on that frame.</p>
<p>Which brings us to a special consideration – some of the spin sequences result in the front face rotating away so that it&#8217;s unseen – what do we do in those cases? We simply place all for corners in the exact same location – like 0,0 – and check for it in our code. If the corners are positioned identically, we just had the graphics that we&#8217;re mapping to the face.</p>
<p><img class="alignnone size-full wp-image-5735" src="http://deconstruckt.com/wp-content/uploads/2010/02/break_apart.jpg" alt="break_apart" width="494" height="256" /></p>
<div class="code">public function setFace(bitmapData:BitmapData):void<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_asset.scaleX = _asset.scaleY = _scaleAdjust;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_faceDistortion = new DistortImage( bitmapData.width, bitmapData.height, 3, 3);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_faceBitmap = new Bitmap( bitmapData, PixelSnapping.NEVER, false);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;addChild(_faceShape);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_faceDistortion.setTransform( _faceShape.graphics, _faceBitmap.bitmapData, getCornerTL(), getCornerTR(), getCornerBR(), getCornerBL());<br />
}</p>
<p>private function update():void<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(getCornerBL().x != getCornerTR().x || getCornerBL().y != getCornerTR().y)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_faceShape.graphics.clear();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_faceDistortion.setTransform( _faceShape.graphics, _faceBitmap.bitmapData, getCornerTL(), getCornerTR(), getCornerBR(), getCornerBL());<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_faceShape.visible = false;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x += _xVel;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y += _yVel;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pseudoZ += _zVel;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_yVel += GRAVITY;<br />
}</p>
<p>public function getCornerTR():Point<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return new Point( _asset.cornerTR.x*_asset.scaleX, _asset.cornerTR.y*_asset.scaleY );<br />
}</p>
<p>public function getCornerTL():Point<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return new Point( _asset.cornerTL.x*_asset.scaleX, _asset.cornerTL.y*_asset.scaleY );<br />
}</p>
<p>public function getCornerBR():Point<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return new Point( _asset.cornerBR.x*_asset.scaleX, _asset.cornerBR.y*_asset.scaleY );<br />
}</p>
<p>public function getCornerBL():Point<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return new Point( _asset.cornerBL.x*_asset.scaleX, _asset.cornerBL.y*_asset.scaleY );<br />
}</p></div>
<h4>Processing the distortion</h4>
<p>This was all well and good, except for one small thing – it was totally overtaxing the processor, chugging like mad. It quickly became clear that it wouldn&#8217;t look smooth on even the best of computers. We did not give up hope, however – we figured that we could find a point to pause for a moment, run each frame of distortion that we would need, and save each as a bitmap. That way, instead of manipulating a bitmap every frame, with all of the smushing and interpolating of pixels that required, we could just swap a bitmap in and out.</p>
<p>To do this, we needed to capture those corner positions from the MovieClip. As soon as the movie clip assets are loaded in – we&#8217;re loading those separately, by the way, so that the site can get up and running without all those extra images to load – we run a timer, on each timer event advancing the MovieClip a frame and recording corner positions for each sequence into static arrays.</p>
<p>Now that we have all that information stored, we can go through the whole process again – splitting the wall into blocks, sending it a chunk of BitmapData, and assigning it a sequence. We use a timer to progress through all the different frames, using the corner information stored in the static arrays to distort the BitmapData and then save it as a new bitmap into an array.</p>
<p>Once every block is done distorting and storing its sequence of bitmaps, the explosion occurs – the blocks move outward and begin to spin, and the bitmaps are swapped out to show the correct distortion for each frame.</p>
<h3>Phase 3: The minifigure</h3>
<h4>A word about the minifig</h4>
<p>The minifig is an instantly recognizable part of the LEGO brand, so what better way to inject some more fun into the site than having a minifig with a jetpack flying around? Better yet, why not have the minifig be the impetus behind breaking the wall apart? The programming isn&#8217;t super complex, but we&#8217;ll cover it quickly here.</p>
<h4>Jetting around</h4>
<p>When a block is selected, the minifig is positioned offstage – using a bit of random logic (if (Math.random() &gt; .5)) to determine which side of the screen to place him on. Another bit of random logic determines whether the minifig will fly directly behind the block, or whether it will fly around the front of the blocks first. The motion is handled by Tweener, using bezier points to create smooth curves. If the minifig is flying directly, he is immediately swapped from a container sprite that sits above the block walls to one that sits below them – if flying around, he gets swapped at the midpoint of his flight.</p>
<h4>Do the twist</h4>
<p>The minifig wouldn&#8217;t look that great if he was just facing straight ahead all the time, so the team created a sequence of renders of him rotating side-to-side. Armed with these frames, we built an enterframe handler into the minifigure class. Every frame, we compared the current x position to the x position in the previous frame. Based on that difference, the minifig is rotated, and the image sequence goes to the appropriate position.</p>
<p><img class="alignnone size-full wp-image-5736" src="http://deconstruckt.com/wp-content/uploads/2010/02/twist_miniman.jpg" alt="twist_miniman" width="494" height="369" /></p>
<div class="code">var targetRotation:Number;<br />
if((x &#8211; _previous.x) &lt; 30 &amp;&amp; (x &#8211; _previous.x) &gt; -30 )<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;targetRotation = (x &#8211; _previous.x);<br />
}<br />
else if ((x &#8211; _previous.x) &gt;= 30)<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;targetRotation = 30;<br />
}<br />
else<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;targetRotation = -30;<br />
}<br />
_asset.rotation = (targetRotation &#8211; _asset.rotation)*.25 + _asset.rotation;</p>
<p>if(_twist)<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var targetFrame:int = Math.round(13 &#8211; _asset.rotation/2.5);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;targetFrame = Math.min(targetFrame, 24);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;targetFrame = Math.max(targetFrame, 1);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_asset.gotoAndStop(targetFrame);<br />
}</p>
<p>_previous.x = x;<br />
_previous.y = y;</p></div>
<h4>Break on through</h4>
<p>Once the minifig is behind the block wall, we run the pre-processing for the explosion, rendering out all of the distorted bitmaps for the explosion. As soon as all the pieces are ready, the minifig plays through one of three “break through” sequences – randomly chosen – and the block explosion goes off. Once all the blocks are offscreen, the minifig gets sent back offscreen using Tweener.</p>
<p><img class="alignnone size-full wp-image-5737" src="http://deconstruckt.com/wp-content/uploads/2010/02/break_through_minifig.jpg" alt="break_through_minifig" width="494" height="369" /></p>
<h4>And that&#8217;s it!</h4>
<p>In a nutshell, that&#8217;s how our team pulled off the explosion effect – fully realized through a combination of 3d work, Flash production, and AS3. Hope it was educational – now go play with the site some more!</p>
]]></content:encoded>
			<wfw:commentRss>http://deconstruckt.com/build/bustin-bricks-behind-the-scenes/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
	</channel>
</rss>
