<?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; svg</title>
	<atom:link href="http://drawlogic.com/tag/svg/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>EaselJS html5 Flash-like Javascript Library by Grant Skinner</title>
		<link>http://drawlogic.com/2010/12/17/easeljs-html5-flash-like-javascript-library-by-grant-skinner/</link>
		<comments>http://drawlogic.com/2010/12/17/easeljs-html5-flash-like-javascript-library-by-grant-skinner/#comments</comments>
		<pubDate>Sat, 18 Dec 2010 06:11:47 +0000</pubDate>
		<dc:creator>drawk</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[canvas]]></category>
		<category><![CDATA[easeljs]]></category>
		<category><![CDATA[frameworks]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[JAVASCRIPT]]></category>
		<category><![CDATA[libraries]]></category>
		<category><![CDATA[svg]]></category>
		<category><![CDATA[webgl]]></category>

		<guid isPermaLink="false">http://drawlogic.com/?p=934</guid>
		<description><![CDATA[EaselJS is a new library from Grant Skinner that somewhat mimics the Flash display list/display object heirarchy.  It is the result of the game Pirates Love Daisies which demonstrates some great gameplay in html5. The API is loosely based on Flash’s display list, and should be easy to pick up for both JS and AS3 [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://easeljs.com">EaselJS</a> is a <a href="http://gskinner.com/blog/archives/2010/12/easel-js-simplifies-working-with-canvas-in-html5.html">new library from Grant Skinner that somewhat mimics the Flash display list/display object heirarchy</a>.  It is the result of the game <a href="http://pirateslovedaisies.com/">Pirates Love Daisies</a> which demonstrates some great gameplay in html5.</p>
<blockquote><p>The API is loosely based on Flash’s display list, and should be easy to pick up for both JS and AS3 developers.<strong> In our preliminary testing, Easel appears to be fully compatible with iOS, Android, and all major browsers that support the canvas element.</strong></p></blockquote>
<p>Lots of great javascript libraries have been made public including such contributions as this, <a href="https://github.com/mrdoob/three.js/">Three.js</a> (3d canvas/svg/webgl), <a href="http://letteringjs.com/">Lettering.js</a> (typography), <a href="http://kolber.github.com/audiojs/">audio.js</a> (audio) and many many others, a complete pipeline is emerging. EaselJS adds to that a helpful flash like api for html5 (&lt;canvas&gt; + javascript).</p>
<p>The API contains these familiar classes for Flash/AS3 developers:</p>
<blockquote>
<h3>DisplayObject</h3>
<p>Abstract base class for all display elements in Easel. Exposes all of the display properties (ex. x, y, rotation, scaleX, scaleY, alpha, shadow, etc) that are common to all display objects.</p>
<h3>Stage</h3>
<p>The root level display container for display elements. Each time tick() is called on Stage, it will update and render the display list to its associated canvas.</p>
<h3>Container</h3>
<p>A nestable display container, which lets you aggregate display objects and manipulate them as a group.</p>
<h3>Bitmap</h3>
<p>Draws an image, video or canvas to the canvas according to its display properties.</p>
<h3>BitmapSequence</h3>
<p>Displays animated or dynamic sprite sheets (images with multiple frames on a grid), and provides APIs for managing playback and sequencing.</p>
<h3>Shape</h3>
<p>Renders vector drawing instructions within the context of the display list.</p></blockquote>
<ul>
<li><a href="http://easeljs.com">EaselJS</a></li>
<li><a href="http://gskinner.com/blog/archives/2010/12/easel-js-simplifies-working-with-canvas-in-html5.html">Grant Skinner Post on EaselJS</a></li>
<li>EaselJS Examples: <a href="http://easeljs.com/examples/game/game.html">game</a>, <a href="http://easeljs.com/examples/sparkles.html">sparkles</a>, <a href="http://easeljs.com/examples/dragAndDrop.html">rollover / drag &amp; drop</a>, <a href="http://easeljs.com/examples/localToGlobal.html">localToGlobal</a>, <a href="http://easeljs.com/examples/globalToLocal1.html">globalToLocal</a>, <a href="http://easeljs.com/examples/bitmapSequences.html">sprite sheets</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://drawlogic.com/2010/12/17/easeljs-html5-flash-like-javascript-library-by-grant-skinner/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Adobe Demos Flash to HTML5 Conversion Tool</title>
		<link>http://drawlogic.com/2010/10/29/adobe-demos-flash-to-html5-conversion-tool/</link>
		<comments>http://drawlogic.com/2010/10/29/adobe-demos-flash-to-html5-conversion-tool/#comments</comments>
		<pubDate>Sat, 30 Oct 2010 04:45:31 +0000</pubDate>
		<dc:creator>drawk</dc:creator>
				<category><![CDATA[ADOBE]]></category>
		<category><![CDATA[STANDARDS]]></category>
		<category><![CDATA[TECHNOLOGY]]></category>
		<category><![CDATA[canvas]]></category>
		<category><![CDATA[exporter]]></category>
		<category><![CDATA[FLASH]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[illustrator]]></category>
		<category><![CDATA[svg]]></category>

		<guid isPermaLink="false">http://drawlogic.com/?p=912</guid>
		<description><![CDATA[John Nack from Adobe has been presenting Adobe tools exporters to html5 recently.  One is a Flash to html5 convertion tool. It looks good for converting flash vector assets to html5, but you could also use the Illustrator exporter to html5 (canvas/svg) for static assets. This converter doesn&#8217;t appear to do anything for scripted animation [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blogs.adobe.com/jnack/">John Nack from Adobe</a> has been presenting Adobe tools exporters to html5 recently.  One is a <a href="http://blogs.adobe.com/jnack/2010/10/adobe-demos-flash-to-html5-conversion-tool.html">Flash to html5 convertion tool</a>. It looks good for converting flash vector assets to html5, but you could also use the<a href="http://blogs.adobe.com/jnack/2010/09/illustrator-cs5-gains-html5-chops.html"> Illustrator exporter to html5</a> (canvas/svg) for static assets.</p>
<p>This converter doesn&#8217;t appear to do anything for scripted animation or code, just exporting assets via old skool timeline. But this is definitely the right idea.</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="480" height="385" 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://www.youtube.com/v/ryZP00_KhYE?fs=1&amp;hl=en_US" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="480" height="385" src="http://www.youtube.com/v/ryZP00_KhYE?fs=1&amp;hl=en_US" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://drawlogic.com/2010/10/29/adobe-demos-flash-to-html5-conversion-tool/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Three.js &#8211; Javascript 3D Engine with Canvas and SVG Renderers</title>
		<link>http://drawlogic.com/2010/04/25/three-js-javascript-3d-engine-with-canvas-and-svg-renderers/</link>
		<comments>http://drawlogic.com/2010/04/25/three-js-javascript-3d-engine-with-canvas-and-svg-renderers/#comments</comments>
		<pubDate>Mon, 26 Apr 2010 03:16:12 +0000</pubDate>
		<dc:creator>drawk</dc:creator>
				<category><![CDATA[3D ENGINES]]></category>
		<category><![CDATA[JAVASCRIPT]]></category>
		<category><![CDATA[PROGRAMMING]]></category>
		<category><![CDATA[TECHNOLOGY]]></category>
		<category><![CDATA[3d]]></category>
		<category><![CDATA[canvas]]></category>
		<category><![CDATA[ENGINE]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[renderer]]></category>
		<category><![CDATA[svg]]></category>

		<guid isPermaLink="false">http://drawlogic.com/?p=777</guid>
		<description><![CDATA[A new Javascript 3D Engine that can render to Canvas and SVG has been released by mr. doob. Mr. doob is a well known Flash developer that has added many great experiments and cool contributions without being stuck to one technology, making some great interactive projects in javascript, chrome experiments and html5 (canvas/svg) in addition to the [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://mrdoob.com/122/threejs" target="_blank"><img class="alignright" title="Three.js cube" src="http://i81.photobucket.com/albums/j223/drawkbox/cube.png" alt="" width="200" height="150" /></a>A new <a href="http://github.com/mrdoob/three.js" target="_self">Javascript 3D Engine that can render to Canvas and SVG</a> has been released by <a href="http://mrdoob.com/" target="_self">mr. doob</a>.</p>
<p>Mr. doob is a well known Flash developer that has added many great experiments and cool contributions without being stuck to one technology, making some great interactive projects in javascript, <a href="http://mrdoob.com/blog/post/644" target="_blank">chrome experiments</a> and html5 (canvas/svg) in addition to the work in Flash with toolkits like Papervision 3D.  Recently the <a href="http://mrdoob.com/120/Harmony" target="_blank">Harmony html5/javascript sketching project</a> generated lots of interest for an html5 sketching app.</p>
<p><a href="http://github.com/mrdoob/three.js" target="_blank">Three.js</a> is great because it is a 3d engine built with renderers in SVG and Canvas makes to a really good base for modular, cross platform 3d engine right now (as soon as IE9 joins the party). For a while a good javascript rendering library will need to support multiple renderers for browser differences in performance and supported dependencies like canvas, svg and webgl.  Three.js has that reality as part of the design. </p>
<blockquote><p>Currently the engine only supports particles and triangles/quads with flat colors. The aim is to keep the code as simple and modular as possible.</p>
<p>At the moment the engine can render using &lt;canvas&gt; and &lt;svg&gt;. WebGL rendering would come at a later stage but feel free to fork the project and have a go.</p>
<p>Although this allows 3D for iPhoneOS and Android platforms the performance on these devices is not too good.</p></blockquote>
<ul>
<li><a href="http://mrdoob.com/blog/post/693" target="_blank">Blog post on the Three.js project</a></li>
<li><a href="http://github.com/mrdoob/three.js" target="_self">Three.js at github</a></li>
<li>Demos
<ul>
<li><a href="http://mrdoob.com/lab/javascript/three/geometry/cube.html" target="_self">Cube</a></li>
<li><a href="http://mrdoob.com/lab/javascript/three/particles/random.html" target="_self">Random</a></li>
<li><a href="http://mrdoob.com/lab/javascript/three/particles/waves.html" target="_self">Waves</a></li>
<li><a href="http://mrdoob.com/lab/javascript/three/particles/floor.html" target="_self">Floor</a></li>
</ul>
</li>
</ul>
<p>Sample Code:</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #003366; font-weight: bold;">var</span> camera<span style="color: #339933;">,</span> scene<span style="color: #339933;">,</span> renderer<span style="color: #339933;">;</span>
&nbsp;
    init<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    setInterval<span style="color: #009900;">&#40;</span>loop<span style="color: #339933;">,</span> <span style="color: #CC0000;">1000</span> <span style="color: #339933;">/</span> <span style="color: #CC0000;">60</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
    <span style="color: #003366; font-weight: bold;">function</span> init<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        camera <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> Camera<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;">1000</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        scene <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> Scene<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        renderer <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> CanvasRenderer<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        renderer.<span style="color: #660066;">setSize</span><span style="color: #009900;">&#40;</span>window.<span style="color: #660066;">innerWidth</span><span style="color: #339933;">,</span> window.<span style="color: #660066;">innerHeight</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        <span style="color: #000066; font-weight: bold;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">var</span> i <span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span> i <span style="color: #339933;">&lt;</span> <span style="color: #CC0000;">1000</span><span style="color: #339933;">;</span> i<span style="color: #339933;">++</span><span style="color: #009900;">&#41;</span>
        <span style="color: #009900;">&#123;</span>
            <span style="color: #003366; font-weight: bold;">var</span> particle <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> Particle<span style="color: #009900;">&#40;</span> <span style="color: #003366; font-weight: bold;">new</span> ColorMaterial<span style="color: #009900;">&#40;</span>Math.<span style="color: #660066;">random</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">*</span> 0x808008 <span style="color: #339933;">+</span> 0x808080<span style="color: #339933;">,</span> <span style="color: #CC0000;">1</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            particle.<span style="color: #660066;">size</span> <span style="color: #339933;">=</span> Math.<span style="color: #660066;">random</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">*</span> <span style="color: #CC0000;">10</span> <span style="color: #339933;">+</span> <span style="color: #CC0000;">5</span><span style="color: #339933;">;</span>
            particle.<span style="color: #660066;">position</span>.<span style="color: #660066;">x</span> <span style="color: #339933;">=</span> Math.<span style="color: #660066;">random</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">*</span> <span style="color: #CC0000;">2000</span> <span style="color: #339933;">-</span> <span style="color: #CC0000;">1000</span><span style="color: #339933;">;</span>
            particle.<span style="color: #660066;">position</span>.<span style="color: #660066;">y</span> <span style="color: #339933;">=</span> Math.<span style="color: #660066;">random</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">*</span> <span style="color: #CC0000;">2000</span> <span style="color: #339933;">-</span> <span style="color: #CC0000;">1000</span><span style="color: #339933;">;</span>
            particle.<span style="color: #660066;">position</span>.<span style="color: #660066;">z</span> <span style="color: #339933;">=</span> Math.<span style="color: #660066;">random</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">*</span> <span style="color: #CC0000;">2000</span> <span style="color: #339933;">-</span> <span style="color: #CC0000;">1000</span><span style="color: #339933;">;</span>
            particle.<span style="color: #660066;">updateMatrix</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
            scene.<span style="color: #660066;">add</span><span style="color: #009900;">&#40;</span> particle <span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span>
&nbsp;
        document.<span style="color: #660066;">body</span>.<span style="color: #660066;">appendChild</span><span style="color: #009900;">&#40;</span>renderer.<span style="color: #660066;">viewport</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;">function</span> loop<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
        renderer.<span style="color: #660066;">render</span><span style="color: #009900;">&#40;</span>scene<span style="color: #339933;">,</span> camera<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #009900;">&#125;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://drawlogic.com/2010/04/25/three-js-javascript-3d-engine-with-canvas-and-svg-renderers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Gordon: An open source Flash™ runtime written in pure JavaScript</title>
		<link>http://drawlogic.com/2010/01/13/gordon-an-open-source-flash%e2%84%a2-runtime-written-in-pure-javascript/</link>
		<comments>http://drawlogic.com/2010/01/13/gordon-an-open-source-flash%e2%84%a2-runtime-written-in-pure-javascript/#comments</comments>
		<pubDate>Thu, 14 Jan 2010 04:22:48 +0000</pubDate>
		<dc:creator>drawk</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[canvas]]></category>
		<category><![CDATA[FLASH]]></category>
		<category><![CDATA[JAVASCRIPT]]></category>
		<category><![CDATA[player]]></category>
		<category><![CDATA[runtime]]></category>
		<category><![CDATA[svg]]></category>

		<guid isPermaLink="false">http://drawlogic.com/?p=718</guid>
		<description><![CDATA[Gordon, a flash runtime written in javascript, is an interesting project that recreates the Flash Player into svg using javascript from a flash source swf file. UPDATE: Also check out smokescreen for the same, html5/javascript interpreting SWF files. This is an interesting direction. There are most likely many things that do not work about this [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignright" title="Gordon: Flash in javascript" src="http://i81.photobucket.com/albums/j223/drawkbox/gordon-iphone.jpg" alt="" width="320" height="480" /><a href="http://github.com/tobeytailor/gordon" target="_blank">Gordon, a flash runtime written in javascript</a>, is an interesting project that recreates the Flash Player into svg using javascript from a flash source swf file.</p>
<p><strong>UPDATE: Also </strong><a href="http://smokescreen.us/demos/sb45demo.html"><strong>check out smokescreen</strong></a><strong> for the same, html5/javascript interpreting SWF files.</strong></p>
<p>This is an interesting direction. There are most likely many things that do not work about this approach for existing content. But it is also a <strong>neat way to create new content that might be simple enough to play on desktop and a mobile version</strong>.</p>
<p><a href="http://paulirish.com/work/gordon/demos/" target="_blank"><strong>All these examples</strong></a><strong> work on an iPhone or iPod Touch.</strong></p>
<ul>
<li><a href="http://github.com/tobeytailor/gordon" target="_blank">Gordon on github</a> by <a href="http://twitter.com/tobeytailor" target="_blank">Tobias Schneider</a></li>
<li><a href="http://paulirish.com/work/gordon/demos/" target="_blank">Demos posted for viewing</a> by Paul Irish</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://drawlogic.com/2010/01/13/gordon-an-open-source-flash%e2%84%a2-runtime-written-in-pure-javascript/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
	</channel>
</rss>

