<?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; elastic</title>
	<atom:link href="http://drawlogic.com/tag/elastic/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, 17 May 2012 13:12:20 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>AS3SWF Tool and Flash Shapes Under the Hood</title>
		<link>http://drawlogic.com/2009/09/09/as3swf-tool-and-flash-shapes-under-the-hood/</link>
		<comments>http://drawlogic.com/2009/09/09/as3swf-tool-and-flash-shapes-under-the-hood/#comments</comments>
		<pubDate>Wed, 09 Sep 2009 17:19:15 +0000</pubDate>
		<dc:creator>drawk</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[ACTIONSCRIPT]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[as3swf]]></category>
		<category><![CDATA[avm2]]></category>
		<category><![CDATA[elastic]]></category>
		<category><![CDATA[FLASH]]></category>
		<category><![CDATA[machine]]></category>
		<category><![CDATA[optimize]]></category>
		<category><![CDATA[output]]></category>
		<category><![CDATA[PERFORMANCE]]></category>
		<category><![CDATA[racetrack]]></category>
		<category><![CDATA[swf]]></category>
		<category><![CDATA[virtual]]></category>

		<guid isPermaLink="false">http://drawlogic.com/?p=638</guid>
		<description><![CDATA[Claus Wahlers has a great post on some lower level Flash handling for shapes.  He posts about a tool called as3swf which helps to look into the raw shapes and vector drawing calls in the flash engine. The output of this tool gives the raw machine code/assembly like procedural output that is very similar to [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignright" title="as3swf" src="http://i81.photobucket.com/albums/j223/drawkbox/shape_rectangle_3.png" alt="" width="190" height="190" />Claus Wahlers has a <a href="http://wahlers.com.br/claus/blog/hacking-swf-1-shapes-in-flash/" target="_blank">great post on some lower level Flash handling for shapes</a>.  He posts about a tool called <a href="http://github.com/claus/as3swf/tree/master" target="_blank">as3swf</a> which helps to look into the raw shapes and vector drawing calls in the flash engine.</p>
<p>The output of this tool gives the raw machine code/assembly like procedural output that is very similar to other rendering engines. It actually makes me think of OpenGL a bit in the output switch based, procedural flow except this if for vector drawing rather than raster.</p>
<p><strong>Sample output</strong></p>
<pre style="font-family: Consolas,Monaco,'Courier New',Courier,monospace; font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; line-height: 18px; font-size-adjust: none; font-stretch: normal;">[83:DefineShape4] ID: 1
  FillStyles:
    [1] [SWFFillStyle] Type: 0 (solid), Color: 666666
  LineStyles:
    [1] [SWFLineStyle2] Width: 200, Color: ff0000
  ShapeRecords:
    [SWFShapeRecordStyleChange] MoveTo: 400,400, FillStyle1: 1, LineStyle: 1
    [SWFShapeRecordStraightEdge] Horizontal: 2000
    [SWFShapeRecordStraightEdge] Vertical: 2000
    [SWFShapeRecordStraightEdge] Horizontal: -2000
    [SWFShapeRecordStraightEdge] Vertical: -2000
    [SWFShapeRecordEnd]</pre>
<p>It is always good to know what is going on in lower levels to better code for projects that perform well.  Another great post on this is the<a href="http://drawlogic.com/2008/04/22/a-peek-into-the-as3-and-avm2-virtual-machine-and-elastic-racetrack/" target="_blank"> Elastic Racetrack of the AS3 and AVM2 virtual machine</a> which describes how the AVM2 handles drawing those low level shape calls in addition to handling script.</p>
<ul>
<li><a href="http://github.com/claus/as3swf/tree/master" target="_blank">as3swf </a>at github</li>
<li><a href="http://wahlers.com.br/claus/blog/hacking-swf-1-shapes-in-flash/" target="_blank">post on the tool </a>and more information on shapes in flash at a low level</li>
<li><a title="Permanent Link: Updated ‘Elastic Racetrack’ for Flash 9 and AVM2" rel="bookmark" href="http://www.craftymind.com/2008/04/18/updated-elastic-racetrack-for-flash-9-and-avm2/">‘Elastic Racetrack’ for Flash 9 and AVM2 </a>another lower level article how the flash player draws at runtime<a title="Permanent Link: Updated ‘Elastic Racetrack’ for Flash 9 and AVM2" rel="bookmark" href="http://www.craftymind.com/2008/04/18/updated-elastic-racetrack-for-flash-9-and-avm2/"><br />
</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://drawlogic.com/2009/09/09/as3swf-tool-and-flash-shapes-under-the-hood/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>A Peek into the AS3 and AVM2 Virtual Machine and &#8216;Elastic Racetrack&#8217;</title>
		<link>http://drawlogic.com/2008/04/22/a-peek-into-the-as3-and-avm2-virtual-machine-and-elastic-racetrack/</link>
		<comments>http://drawlogic.com/2008/04/22/a-peek-into-the-as3-and-avm2-virtual-machine-and-elastic-racetrack/#comments</comments>
		<pubDate>Wed, 23 Apr 2008 01:23:34 +0000</pubDate>
		<dc:creator>drawk</dc:creator>
				<category><![CDATA[ACTIONSCRIPT]]></category>
		<category><![CDATA[ACTIONSCRIPT3]]></category>
		<category><![CDATA[APPLICATIONS]]></category>
		<category><![CDATA[ARCHITECT]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[DEBUGGING]]></category>
		<category><![CDATA[DEVELOPMENT]]></category>
		<category><![CDATA[ENGINE]]></category>
		<category><![CDATA[FLASH]]></category>
		<category><![CDATA[FLEX]]></category>
		<category><![CDATA[GAMEDEV]]></category>
		<category><![CDATA[PERFORMANCE]]></category>
		<category><![CDATA[PROGRAMMING]]></category>
		<category><![CDATA[RENDERING]]></category>
		<category><![CDATA[STANDARDS]]></category>
		<category><![CDATA[TECHNOLOGY]]></category>
		<category><![CDATA[VIRTUAL MACHINES]]></category>
		<category><![CDATA[VISUALIZATION]]></category>
		<category><![CDATA[avm]]></category>
		<category><![CDATA[avm2]]></category>
		<category><![CDATA[cycle]]></category>
		<category><![CDATA[elastic]]></category>
		<category><![CDATA[racetrack]]></category>
		<category><![CDATA[render]]></category>
		<category><![CDATA[tick]]></category>

		<guid isPermaLink="false">http://drawk.wordpress.com/?p=198</guid>
		<description><![CDATA[Sean Christmann has a nice post on the AS3 AVM 2 &#8216;Elastic Racetrack&#8217; cycles or virtual machine tick that runs an ES4 based javascript version of actionscript which we all know and love. The post has some info on how the AVM2 cycles run and can provide benefits to understanding frame rates and how execution [...]]]></description>
			<content:encoded><![CDATA[<p><span class="entry-author-name"><a href="http://www.craftymind.com/2008/04/18/updated-elastic-racetrack-for-flash-9-and-avm2/" target="_blank">Sean Christmann has a nice post on the AS3 AVM 2 &#8216;Elastic Racetrack&#8217; cycles or virtual machine tick</a> that runs an ES4 based javascript version of actionscript which we all know and love.  The post has some info on how the AVM2 cycles run and can provide benefits to understanding frame rates and how execution is divided between script and render as well as player code from user code.</span></p>
<p><a href="http://www.craftymind.com/2008/04/18/updated-elastic-racetrack-for-flash-9-and-avm2/" target="_blank"><img src="http://drawk.files.wordpress.com/2008/04/elasticracetrackexport.png" alt="" /></a></p>
<p><a href="http://www.craftymind.com/2008/04/18/updated-elastic-racetrack-for-flash-9-and-avm2/" target="_blank"><img src="http://drawk.files.wordpress.com/2008/04/marshalledsliceexport.png" alt="" /></a></p>
<ul>
<li>Check out that and more at Craftymind like some other good stuff like <a href="http://www.craftymind.com/2008/04/09/kick-starting-the-garbage-collector-in-actionscript-3-with-air/" target="_blank">garbage collection in AIR with actionscript 3</a> (as3) and <a href="http://www.craftymind.com/2008/03/03/air-utils-saving-classes-to-disk-in-air/" target="_blank">serializing classes to files in AIR with AS3</a></li>
<li><a href="http://www.onflex.org/ted/2005/07/flash-player-mental-model-elastic.php" target="_blank">Original &#8216;Elastic Racetrack&#8217; Post by Ted on Flex in 2005</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://drawlogic.com/2008/04/22/a-peek-into-the-as3-and-avm2-virtual-machine-and-elastic-racetrack/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

