<?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>SavageLook.com &#187; particles</title>
	<atom:link href="http://savagelook.com/blog/tag/particles/feed" rel="self" type="application/rss+xml" />
	<link>http://savagelook.com/blog</link>
	<description>Blowing your mind, one line of code at a time</description>
	<lastBuildDate>Tue, 15 May 2012 13:27:01 +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>Away3D: SavageLook.com 1.0</title>
		<link>http://savagelook.com/blog/away3d/away3d-savagelook-com-1-0</link>
		<comments>http://savagelook.com/blog/away3d/away3d-savagelook-com-1-0#comments</comments>
		<pubDate>Sun, 08 Aug 2010 14:43:01 +0000</pubDate>
		<dc:creator>Tony Lukasavage</dc:creator>
				<category><![CDATA[Away3D]]></category>
		<category><![CDATA[Blog]]></category>
		<category><![CDATA[Featured]]></category>
		<category><![CDATA[Portfolio]]></category>
		<category><![CDATA[particles]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[tween]]></category>

		<guid isPermaLink="false">http://savagelook.com/blog/?p=105</guid>
		<description><![CDATA[The first (Away)3D version of my site, and some lessons learned along the way <p><a href="http://savagelook.com/blog/away3d/away3d-savagelook-com-1-0">Away3D: SavageLook.com 1.0</a> is a post from: <a href="http://savagelook.com/blog">SavageLook.com</a></p>
]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p style="text-align: left;"><a rel="shadowbox;height=600;width=800;" href="http://www.savagelook.com/projects/savagelook_1.0/index.html"><img class="aligncenter size-full wp-image-106" title="savagelook_1.0" src="http://savagelook.com/blog/wp-content/uploads/2010/06/savagelook_1.0.jpg" alt="" width="480" height="319" /></a>Originally this project was the main page for savagelook.com, but I decided it to shuffle to &#8220;projects&#8221; on my blog.  While it is was a very cool showcase of the things I had learned so far using <a href="http://away3d.com/" target="_blank">Away3D</a>, <a href="http://flintparticles.org/" target="_blank">Flint particles</a>, <a href="http://www.libspark.org/wiki/saqoosha/FLARToolKit/en" target="_blank">FLARToolkit</a>, <a href="http://words.transmote.com/wp/flarmanager/" target="_blank">FLARManager</a>, <a href="http://www.greensock.com/tweenmax/" target="_blank">TweenMax </a>&amp; <a href="http://www.greensock.com/timelinemax/" target="_blank">TimelineMax</a>, its not really practical for a main interface&#8230; yet.  Here&#8217;s the things I learned in this initial undertaking that I plan to apply to all future projects involving Away3D(Lite), particularly when the average user is the target audience:</p>
<ul>
<li><strong>Performance ALWAYS has to be on your mind</strong>.  There&#8217;s nothing more annoying to users than low frame rates.  Many of my next points relate directly to this.</li>
<li><strong>Use Renderer.BASIC as your view&#8217;s renderer whenever feasible</strong>.  You will take an immediate performance hit trying to use the smarter z-sorting renderers (CORRECT_Z_ORDER or INTERSECTING_OBJECTS)</li>
<li><strong>Control the size of the view</strong>.  While a resizeable view that fills the browser seem great, you can take a nasty performance hit on high resolutions.  For example, this project runs like a champ with a standard 800&#215;600 or 1024&#215;768 resolution.  When I jump it up to  1680&#215;1050, though, things start to get a little choppy.</li>
<li><strong>3D particles are a whore on resources</strong>.  Fake 3D effects with 2D whenever possible.  You can literally get 100x (or more) particles in 2D and maintain the same frame rate as 3D.</li>
<li><strong>Use simultaneous tweens judiciously</strong>.  There were noticeable slow downs in my intro animations when more than one tween was operating at a time.</li>
<li><strong>Learn your z-sorting and plan it from the beginning</strong>.  I can&#8217;t tell you how much time I wasted restructuring my scene and code because I didn&#8217;t take the time to learn Frustum clipping, ownCanvas, pushback, pushfront, and screenZoffset before starting.</li>
<li><strong>Interactivity and camera motion impacts performance.</strong> Static scenes will allow for far more polys at a good frame rate than dynamic ones.  Keeping the camera static or using mouseEnabled = false on your objects may help.</li>
<li><strong>Users expect 2D dialogs and text.</strong> Use them whenever feasible to convey information to the user.</li>
<li><strong>Make sure you clean up your unused objects</strong>.  &#8221;scene.removeChild(obj)&#8221; and &#8220;obj = null&#8221; should become your best friend.</li>
<li><strong>Reuse objects and materials whenever possible</strong>.  Its a lot easier and less expensive to toggle the visibility of a relatively simple object rather than destroy and recreate it every time.</li>
<li><strong>Only render when you need to</strong>.  When I use 2D layout for the &#8220;Bio&#8221; section, I stop rendering the covered 3D scene to help performance.</li>
<li><strong>Use texture baking or similar techniques to fake lighting</strong>.  Real-time lighting, while cool, chews up a lot of resources.  If it isn&#8217;t critical, fake it.</li>
<li><strong>Materials with alphas process slower.</strong></li>
<li><strong>When all else fails, hit the </strong><a href="http://groups.google.com/group/away3d-dev?hl=en" target="_blank"><strong>Away3D Dev list</strong></a><strong>.</strong> It may not have the fastest responses, but there&#8217;s no better place to get help and guidance.</li>
</ul>
<p>I&#8217;m sure there&#8217;s lots more I picked up in the process, but that&#8217;s a pretty good assessment.  Hopefully this helps anyone getting started on their own Away3D projects.</p>
<p>I don&#8217;t have any specific plans to make version 2.0 of the savagelook.com 3D interface, but I&#8217;ve got a few ideas rolling around in my head.  The key factors will be simplicity, speed, more pseudo-3D effects using 2D, and use of Away3DLite.  I&#8217;m hoping to really represent Away3D next time.</p>
<p><a href="http://savagelook.com/blog/away3d/away3d-savagelook-com-1-0">Away3D: SavageLook.com 1.0</a> is a post from: <a href="http://savagelook.com/blog">SavageLook.com</a></p>
<div class="shr-publisher-105"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://savagelook.com/blog/away3d/away3d-savagelook-com-1-0/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! -->
