<?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>*drawlogic &#187; projection</title>
	<atom:link href="http://drawlogic.com/tag/projection/feed/" rel="self" type="application/rss+xml" />
	<link>http://drawlogic.com</link>
	<description>interactive and game development technologies for the web - flash, flex, unity3d, silverlight, javascript</description>
	<lastBuildDate>Thu, 22 Dec 2011 21:55:20 +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>as3isolib Actionscript 3 Isometric Library for Flash/Flex</title>
		<link>http://drawlogic.com/2008/10/11/as3isolib-actionscript-3-isometric-library/</link>
		<comments>http://drawlogic.com/2008/10/11/as3isolib-actionscript-3-isometric-library/#comments</comments>
		<pubDate>Sat, 11 Oct 2008 22:03:58 +0000</pubDate>
		<dc:creator>drawk</dc:creator>
				<category><![CDATA[ACTIONSCRIPT]]></category>
		<category><![CDATA[ACTIONSCRIPT3]]></category>
		<category><![CDATA[ARCHITECT]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[DEVELOPMENT]]></category>
		<category><![CDATA[ENGINE]]></category>
		<category><![CDATA[FLASH]]></category>
		<category><![CDATA[FLEX]]></category>
		<category><![CDATA[GAMEDEV]]></category>
		<category><![CDATA[GAMES]]></category>
		<category><![CDATA[isometric]]></category>
		<category><![CDATA[LIBRARIES]]></category>
		<category><![CDATA[OPEN SOURCE]]></category>
		<category><![CDATA[PROGRAMMING]]></category>
		<category><![CDATA[RENDERING]]></category>
		<category><![CDATA[TECHNOLOGY]]></category>
		<category><![CDATA[TOOLS]]></category>
		<category><![CDATA[game]]></category>
		<category><![CDATA[iso]]></category>
		<category><![CDATA[orthographic]]></category>
		<category><![CDATA[projection]]></category>

		<guid isPermaLink="false">http://drawk.wordpress.com/?p=300</guid>
		<description><![CDATA[as3isolib is a great isometric library for actionscript 3 by Justin Opitz.  This is a lower level isometric library that could be used in building your own isometric gaming engine or learning more about the popular isometric view in games or other flash content. From building basic blocks&#8230; To constructing sprites and objects with individual [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://code.google.com/p/as3isolib/" target="_blank"><img class="alignnone" title="as3isolib" src="http://farm4.static.flickr.com/3395/3176701049_4402a77d96_o.jpg" alt="" width="381" height="107" /><br />
as3isolib is a great isometric library for actionscript 3</a> by <a href="http://jwopitz.wordpress.com/2008/10/01/as3isolib-alpha-released/" target="_blank">Justin Opitz</a>.  This is a lower level isometric library that could be used in building your own isometric gaming engine or learning more about the popular isometric view in games or other flash content.</p>
<p><strong>From building basic blocks&#8230;</strong><a href="http://code.google.com/p/as3isolib/wiki/as3isolib_tutorial_002" target="_blank"><br />
<img class="alignnone" style="border:0 none;" title="as3isolib tutorial 2" src="http://farm4.static.flickr.com/3031/2931958161_04e53f2f74_o.png" alt="" width="325" height="298" /></a></p>
<p><strong>To constructing sprites and objects with individual iso objects with their own bounding boxes.</strong></p>
<p><a href="http://code.google.com/p/as3isolib/wiki/as3isolib_tutorial_004" target="_blank"><img class="alignnone" title="as3isolib" src="http://farm3.static.flickr.com/2327/2931958153_99f408d6f6_o.png" alt="" width="365" height="350" /></a><br />
This sample shows a two piece tree, a common issue with sprites in isometric is where to slice them up.  This sample shows a tree with the leaves able to be in front of a character so that you could walk under the tree and be in front of the trunk but covered by the trees.  Essentially height is respected.</p>
<p>Sample code for the tree tutorial:</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #003366; font-weight: bold;">package</span>
<span style="color: #009900;">&#123;</span>
<span style="color: #003366; font-weight: bold;">import</span> as3isolib.<span style="color: #660066;">display</span>.<span style="color: #660066;">IsoSprite</span><span style="color: #339933;">;</span>
<span style="color: #003366; font-weight: bold;">import</span> as3isolib.<span style="color: #660066;">display</span>.<span style="color: #660066;">primitive</span>.<span style="color: #660066;">IsoBox</span><span style="color: #339933;">;</span>
<span style="color: #003366; font-weight: bold;">import</span> as3isolib.<span style="color: #660066;">display</span>.<span style="color: #660066;">scene</span>.<span style="color: #660066;">IsoGrid</span><span style="color: #339933;">;</span>
<span style="color: #003366; font-weight: bold;">import</span> as3isolib.<span style="color: #660066;">display</span>.<span style="color: #660066;">scene</span>.<span style="color: #660066;">IsoScene</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #003366; font-weight: bold;">import</span> flash.<span style="color: #660066;">display</span>.<span style="color: #660066;">Loader</span><span style="color: #339933;">;</span>
<span style="color: #003366; font-weight: bold;">import</span> flash.<span style="color: #660066;">display</span>.<span style="color: #660066;">Sprite</span><span style="color: #339933;">;</span>
<span style="color: #003366; font-weight: bold;">import</span> flash.<span style="color: #660066;">events</span>.<span style="color: #660066;">Event</span><span style="color: #339933;">;</span>
<span style="color: #003366; font-weight: bold;">import</span> flash.<span style="color: #660066;">net</span>.<span style="color: #660066;">URLRequest</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #003366; font-weight: bold;">public</span> <span style="color: #003366; font-weight: bold;">class</span> IsoApplication <span style="color: #003366; font-weight: bold;">extends</span> Sprite
<span style="color: #009900;">&#123;</span>
 <span style="color: #003366; font-weight: bold;">private</span> <span style="color: #003366; font-weight: bold;">var</span> scene<span style="color: #339933;">:</span>IsoScene<span style="color: #339933;">;</span>
 <span style="color: #003366; font-weight: bold;">private</span> <span style="color: #003366; font-weight: bold;">var</span> assets<span style="color: #339933;">:</span>Object<span style="color: #339933;">;</span>
&nbsp;
 <span style="color: #003366; font-weight: bold;">private</span> <span style="color: #003366; font-weight: bold;">var</span> loader<span style="color: #339933;">:</span>Loader
&nbsp;
 <span style="color: #003366; font-weight: bold;">private</span> <span style="color: #003366; font-weight: bold;">function</span> loadAssets <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #000066; font-weight: bold;">void</span>
 <span style="color: #009900;">&#123;</span>
  loader <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> Loader<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  loader.<span style="color: #660066;">contentLoaderInfo</span>.<span style="color: #660066;">addEventListener</span><span style="color: #009900;">&#40;</span>Event.<span style="color: #660066;">INIT</span><span style="color: #339933;">,</span> loader_initHandler<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  loader.<span style="color: #660066;">load</span><span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">new</span> URLRequest<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;assets/swf/assets.swf&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
 <span style="color: #009900;">&#125;</span>
&nbsp;
 <span style="color: #003366; font-weight: bold;">private</span> <span style="color: #003366; font-weight: bold;">function</span> loader_initHandler <span style="color: #009900;">&#40;</span>evt<span style="color: #339933;">:</span>Event<span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #000066; font-weight: bold;">void</span>
 <span style="color: #009900;">&#123;</span>
  buildScene<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
 <span style="color: #009900;">&#125;</span>
&nbsp;
 <span style="color: #003366; font-weight: bold;">private</span> <span style="color: #003366; font-weight: bold;">function</span> buildScene <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #000066; font-weight: bold;">void</span>
 <span style="color: #009900;">&#123;</span>
  scene <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> IsoScene<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  scene.<span style="color: #660066;">hostContainer</span> <span style="color: #339933;">=</span> <span style="color: #000066; font-weight: bold;">this</span><span style="color: #339933;">;</span>
  scene.<span style="color: #660066;">container</span>.<span style="color: #660066;">x</span> <span style="color: #339933;">=</span> <span style="color: #CC0000;">200</span><span style="color: #339933;">;</span>
  scene.<span style="color: #660066;">container</span>.<span style="color: #660066;">y</span> <span style="color: #339933;">=</span> <span style="color: #CC0000;">200</span><span style="color: #339933;">;</span>
&nbsp;
  <span style="color: #003366; font-weight: bold;">var</span> treeTrunkClass<span style="color: #339933;">:</span><span style="color: #003366; font-weight: bold;">Class</span> <span style="color: #339933;">=</span> loader.<span style="color: #660066;">contentLoaderInfo</span>.<span style="color: #660066;">applicationDomain</span>.<span style="color: #660066;">getDefinition</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;TreeTrunk&quot;</span><span style="color: #009900;">&#41;</span> <span style="color: #000066; font-weight: bold;">as</span> <span style="color: #003366; font-weight: bold;">Class</span><span style="color: #339933;">;</span>
  <span style="color: #003366; font-weight: bold;">var</span> treeLeavesClass<span style="color: #339933;">:</span><span style="color: #003366; font-weight: bold;">Class</span> <span style="color: #339933;">=</span> loader.<span style="color: #660066;">contentLoaderInfo</span>.<span style="color: #660066;">applicationDomain</span>.<span style="color: #660066;">getDefinition</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;TreeLeaves&quot;</span><span style="color: #009900;">&#41;</span> <span style="color: #000066; font-weight: bold;">as</span> <span style="color: #003366; font-weight: bold;">Class</span><span style="color: #339933;">;</span>
&nbsp;
  <span style="color: #003366; font-weight: bold;">var</span> grid<span style="color: #339933;">:</span>IsoGrid <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> IsoGrid<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  grid.<span style="color: #660066;">showOrigin</span> <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">false</span><span style="color: #339933;">;</span>
  scene.<span style="color: #660066;">addChild</span><span style="color: #009900;">&#40;</span>grid<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
  <span style="color: #003366; font-weight: bold;">var</span> s0<span style="color: #339933;">:</span>IsoSprite <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> IsoSprite<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  s0.<span style="color: #660066;">setSize</span><span style="color: #009900;">&#40;</span><span style="color: #CC0000;">25</span><span style="color: #339933;">,</span> <span style="color: #CC0000;">25</span><span style="color: #339933;">,</span> <span style="color: #CC0000;">65</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  s0.<span style="color: #660066;">moveTo</span><span style="color: #009900;">&#40;</span><span style="color: #CC0000;">50</span><span style="color: #339933;">,</span> <span style="color: #CC0000;">50</span><span style="color: #339933;">,</span> <span style="color: #CC0000;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  s0.<span style="color: #660066;">sprites</span> <span style="color: #339933;">=</span> <span style="color: #009900;">&#91;</span>treeTrunkClass<span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
  scene.<span style="color: #660066;">addChild</span><span style="color: #009900;">&#40;</span>s0<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
  <span style="color: #003366; font-weight: bold;">var</span> s1<span style="color: #339933;">:</span>IsoSprite <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> IsoSprite<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  s1.<span style="color: #660066;">setSize</span><span style="color: #009900;">&#40;</span><span style="color: #CC0000;">125</span><span style="color: #339933;">,</span> <span style="color: #CC0000;">125</span><span style="color: #339933;">,</span> <span style="color: #CC0000;">100</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  s1.<span style="color: #660066;">moveTo</span><span style="color: #009900;">&#40;</span><span style="color: #CC0000;">0</span><span style="color: #339933;">,</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">,</span> <span style="color: #CC0000;">75</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  s1.<span style="color: #660066;">sprites</span> <span style="color: #339933;">=</span> <span style="color: #009900;">&#91;</span>treeLeavesClass<span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
  scene.<span style="color: #660066;">addChild</span><span style="color: #009900;">&#40;</span>s1<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
  scene.<span style="color: #660066;">render</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
 <span style="color: #009900;">&#125;</span>
&nbsp;
 <span style="color: #003366; font-weight: bold;">public</span> <span style="color: #003366; font-weight: bold;">function</span> IsoApplication <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
 <span style="color: #009900;">&#123;</span>
  loadAssets<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
 <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<h3>current features</h3>
<ul>
<li>simple scene creation</li>
<li>3 primitive types</li>
<li>base class for displaying user-created content</li>
<li>plenty of styling option on vector based primitives</li>
<li>integrates well with a variety of tween engines</li>
<li>standard 3D isometric positional sorting</li>
</ul>
<p>So get busy building the flash version of roller coaster tycoon&#8230;</p>
<ul>
<li><a href="http://code.google.com/p/as3isolib/wiki/features" target="_blank">Features of the library</a></li>
<li><a href="http://as3isolib.googlecode.com/svn/trunk/asdoc/index.html" target="_blank">Online docs</a></li>
<li><a href="http://code.google.com/p/as3isolib/wiki/features" target="_blank">Download as3isolib at Google Cod</a></li>
<li><a href="http://code.google.com/p/as3isolib/wiki/as3isolib_tutorial_001" target="_blank">as3isolib_tutorial_001 &#8211; Intro single block</a></li>
<li><a href="http://code.google.com/p/as3isolib/wiki/as3isolib_tutorial_002" target="_blank">as3isolib_tutorial_002 &#8211; Multiple blocks</a></li>
<li><a href="http://code.google.com/p/as3isolib/wiki/as3isolib_tutorial_003" target="_blank">as3isolib_tutorial_003 &#8211; Customizing sides</a></li>
<li><a href="http://code.google.com/p/as3isolib/wiki/as3isolib_tutorial_004" target="_blank">as3isolib_tutorial_004 &#8211; Sprites and construction</a></li>
<li><a href="http://jwopitz.wordpress.com/2008/10/01/as3isolib-alpha-released/" target="_blank">Blog post about the release</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://drawlogic.com/2008/10/11/as3isolib-actionscript-3-isometric-library/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>AS3 Zupko&#8217;s Reflections and Shadows with Raycasting in Papervision 3D</title>
		<link>http://drawlogic.com/2008/08/24/as3-zupkos-reflections-in-papervision-3d/</link>
		<comments>http://drawlogic.com/2008/08/24/as3-zupkos-reflections-in-papervision-3d/#comments</comments>
		<pubDate>Mon, 25 Aug 2008 03:34:07 +0000</pubDate>
		<dc:creator>drawk</dc:creator>
				<category><![CDATA[3d]]></category>
		<category><![CDATA[3D ENGINES]]></category>
		<category><![CDATA[ACTIONSCRIPT]]></category>
		<category><![CDATA[ACTIONSCRIPT3]]></category>
		<category><![CDATA[ARCHITECT]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[DEVELOPMENT]]></category>
		<category><![CDATA[EFFECTS]]></category>
		<category><![CDATA[ENGINE]]></category>
		<category><![CDATA[FLASH]]></category>
		<category><![CDATA[FLEX]]></category>
		<category><![CDATA[GAMEDEV]]></category>
		<category><![CDATA[isometric]]></category>
		<category><![CDATA[OPEN SOURCE]]></category>
		<category><![CDATA[PAPERVISION]]></category>
		<category><![CDATA[PROGRAMMING]]></category>
		<category><![CDATA[RENDERING]]></category>
		<category><![CDATA[TECHNOLOGY]]></category>
		<category><![CDATA[orthographic]]></category>
		<category><![CDATA[projection]]></category>
		<category><![CDATA[reflections]]></category>

		<guid isPermaLink="false">http://drawk.wordpress.com/?p=257</guid>
		<description><![CDATA[The Zupko show continues with reflections in Papervision 3D [demo]. Be sure to check out the shadow demo that this is based on: After posting my shadow experiment, Patrick Matte posed a question wondering if I would be able to do real-time reflections in a similar manner. The next day I had it done, along [...]]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://blog.zupko.info/?p=156" target="_blank">Zupko show continues with reflections in Papervision 3D</a> [<a href="http://lab.zupko.info/reflection/realz/" target="_blank">demo</a>].</p>
<p><a href="http://blog.zupko.info/?p=156" target="_blank"><img class="alignnone" src="http://farm4.static.flickr.com/3275/2794490873_b5e178b5b5_o.png" alt="" width="450" height="279" /></a></p>
<p><strong>Be sure to check out the <a href="http://blog.zupko.info/?p=146" target="_blank">shadow demo</a> that this is based on:</strong></p>
<p><a href="http://lab.zupko.info/RayCasting/" target="_blank"><img class="alignnone" src="http://farm4.static.flickr.com/3207/2794506215_17e26385ed_o.png" alt="" width="450" height="279" /></a></p>
<blockquote><p>After posting my <a href="http://blog.zupko.info/?p=146" target="_blank">shadow experiment</a>, Patrick Matte posed a question wondering if I would be able to do real-time reflections in a similar manner. The next day I had it done, along with some nice iterations along the way: orthographic and perspective projection (I can release those later if anyone really wants them). I&#8217;ve been sitting on it every since and finally decided I would take the time to write a little description into how its done and give the code to those who are interested (and I fixed up some code for backface culling in the reflection this morning).</p></blockquote>
<ul>
<li><a href="http://lab.zupko.info/reflection/realz/" target="_blank">View the reflections demo</a></li>
<li><a href="http://blog.zupko.info/?p=156" target="_blank">View the reflections post</a></li>
<li><a href="http://blog.zupko.info/?p=146" target="_blank">View the shadow demo</a></li>
<li><a href="http://blog.zupko.info/?p=156" target="_blank">View the shadow post<br />
</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://drawlogic.com/2008/08/24/as3-zupkos-reflections-in-papervision-3d/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

