<?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>Dreaming in Flash &#187; Articles</title>
	<atom:link href="http://www.dreaminginflash.com/category/articles/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.dreaminginflash.com</link>
	<description>There is no universally agreed-upon biological definition of dreaming</description>
	<lastBuildDate>Wed, 12 Oct 2011 17:29:38 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Interview with Rob Bateman (Away3D)</title>
		<link>http://www.dreaminginflash.com/2008/05/21/interview-with-rob-bateman-away3d/</link>
		<comments>http://www.dreaminginflash.com/2008/05/21/interview-with-rob-bateman-away3d/#comments</comments>
		<pubDate>Wed, 21 May 2008 13:11:08 +0000</pubDate>
		<dc:creator>Idoru</dc:creator>
				<category><![CDATA[3D]]></category>
		<category><![CDATA[Articles]]></category>
		<category><![CDATA[Away3d]]></category>
		<category><![CDATA[Flash 10]]></category>
		<category><![CDATA[Interviews]]></category>
		<category><![CDATA[Pixel Bender]]></category>
		<category><![CDATA[3d Engines]]></category>
		<category><![CDATA[Rob Bateman]]></category>

		<guid isPermaLink="false">http://www.dreaminginflash.com/?p=140</guid>
		<description><![CDATA[
Dreaming in Flash interviewed Rob Bateman, The Chief architect and co-founder of the Away3D engine, on his views about the upcoming release of Flash Player 10 and how it will affect Away3D.

Dreaming in Flash: Can you tell us a little bit on your role on Away3d team?
Rob Bateman: I'm Chief architect and co-founder of the [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-medium wp-image-141" title="Away3d" src="http://www.dreaminginflash.com/wp-content/uploads/2008/05/temple2-300x188.jpg" alt="" width="300" height="188" /></p>
<p>Dreaming in Flash interviewed <a href="http://infiniteturtles.co.uk/">Rob Bateman</a>, The Chief architect and co-founder of the <a href="http://away3d.com/" target="_blank">Away3D</a> engine, on his views about the upcoming release of Flash Player 10 and how it will affect Away3D.<br />
<span id="more-140"></span></p>
<p><strong>Dreaming in Flash: Can you tell us a little bit on your role on Away3d team?</strong></p>
<p><strong>Rob Bateman</strong>: I'm Chief architect and co-founder of the framework. Around March last year, myself and Alexander Zadorozhny created a branch of Papervision that fulfilled some specific needs of 3d projects we were both working on at the time (the needs were perspective correction and corrective z-sorting. Lighting also came soon after). To accomplish these extensions we ended up re-writing a lot of the core classes of the papervision engine, however the outward facing structure appears very similar - the reason why a lot of people still refer to Away3d as a "papervision branch".</p>
<p>Since then our development team has increased to 8, with a core group of 4 who commit code regularly. I write a lot of code but also help steer our development schedule in directions we feel will most benefit the engine and the community. For example, we are currently on the verge of releasing a new update that contains a lot more documentation and source code demos - something that has been requested by the community on our site and mailing list.</p>
<p><strong>DIF: Did Adobe approach you for the 3D features, and if so what features did you ask for, and which ones made it?</strong></p>
<p><strong>Rob</strong>: Adobe have really been very distant from us and our needs. I think Papervision had more of a dialogue with them over the last few months, and some of the new features in the player clearly are included with 3d in mind, so we're not really complaining! I would have liked to have seen a pixel z-buffer in there along with the perspective bitmap transformations (which whould have completely banished any z-sorting problems of the past) but i guess you can't have everything. What's there is still very useful, and will certainly be put to good use in upcoming releases of Away3d.</p>
<p><strong>DIF: What is for you personally the coolest new feature?</strong></p>
<p><strong>Rob</strong>: Pixel bender is by far the coolest feature, not only in the creation of custom filters for 3d shader objects, but also in terms of the hacking potential! We'll certainly be exploring a few avenues of possible uses over the next month or so...</p>
<p><strong>DIF: What's the most relevant feature for Away3D</strong></p>
<p><strong>Rob</strong>:drawTriangles is going to help with render speed no end, because the drawing operations of flash were always the bottleneck in the past. The drawTriangles extension to the graphics api allows you to push a single array of drawing commands to the rasteriser, rather than having to call thousands of drawing methods. So your draw loop is reduced to simply manipulating an array of vector data, which is infinitely more preferable.</p>
<p><strong>DIF: What can we expect,in terms of performance and improvements, of the next Away3D version?</strong></p>
<p><strong>Rob</strong>: Well, the next version of Away3d (2.1.0) be realeased by the end of this week. This will have fully documented classes, more demos, better management of primitives, better management of events, and a few other useful enhancements. It's a dot release in the truest sense because there are few new features, but a recent poll on our website showed that "new features" is currently at the bottom of what people actually want! Demos, tutorials and docs were all at the top, so that's what we'll be delivering this time round. We'll also be looking for a lot more user involvement over the next month or so in the development of the flash 10 version of Away3d (3.0), which will be developed in a public branch that anyone can hack and provide patches for as the upgrade develops.</p>
<p>Preliminary tests for speed improvements are good, but i wouldn't like to put a figure on what they will be exactly at this point as it's still early days. It's fairly clear that the biggest savings will be in the area of shading though - pixel bender does give phenomenal power to the graphics of the flash player and we expect to be taking full advantage of that new feature.</p>
<p><strong>DIF: Do you have a planned schedule for start working on Away3d 3.0 as soon as FP10 releases?</strong></p>
<p><strong>Rob</strong>: Our schedules can be a bit haphazard, as a lot depends on what time we have available each month for work on the engine. As a rule of thumb, we try to release a new version on a monthly / month and a half basis, so after our 2.1 release well be expecting to have something ready for our 2.2 release at the end of June. Away3d 3.0 will be a parallel development that will release incremental update to the current codebase in it's own svn branch. While Away3d has no problems with running in Flash 10, obviuosly there are a great deal of new features in the player to be utilised, so i see this as an ongoing conversion rather than a completely new codebase. The framework of Away3d is built to be very adaptable, so there will be little need to change much of the outside appearance of the engine - obviously we want to keep the amount of new user learning to a minimum.</p>
<p><strong>DIF: How will the new features affect the interactivity in Away3D?</strong></p>
<p><strong>Rob</strong>: The interactivity of the new 3d api in Flash 10 is great news for designers but slightly less fantastic for us. Essentially the ability extends to flat planes rotated with the rotationX Y and Z of the displayobject, something that we do not use because Away3d (and all the 3 engines for that matter) are based on drawing triangles. Aside from some special case 3d objects where we can taken advantage of these new features (such as flat 2d sprite objects), well be sticking to the current interactivity method on a 3d mesh unless we discover some as yet undisclosed features about interactivity in that area.</p>
<p><strong>DIF: What do you make of the new Pixel Bender, and what will it bring to Away3d?</strong></p>
<p><strong>Rob</strong>: Pixel bender will be most useful for creating shaded triangles with phong, normal maps, environmental shading etc. because it removes the need for multiple triangle layering. Previously the only way to get a shaded effect was to render a shader triangle directly over a texture triangle with a blendmode. With this barrier removed, shaded materials become a lot less processor intensive and a lot more useable, so i would say that this is the biggest contribution pixel bender will make!</p>
<p><strong>DIF: Will Away3D support vector based 3d?</strong></p>
<p><strong>Rob</strong>: Away3d already supports line based vectors with it's wire primitive objects and the linesegment class. We are aware there are a few developers out there who would like to see more vector classes in the framework, so we are definitely considering the extension of this side of the engine in future to allow for curves (and possibly surface-based rendering) as well as lines.</p>
<p>We'd like to thank Rob for the time he took for this, and we wish him the utmost success with Away3D, we'll be sure to pitch in with some demos.<br />
Reference links:<br />
<a href="http://infiniteturtles.co.uk/" target="_blank">http://infiniteturtles.co.uk/</a><br />
<a href="http://away3d.com/" target="_blank">http://away3d.com/</a></p>

]]></content:encoded>
			<wfw:commentRss>http://www.dreaminginflash.com/2008/05/21/interview-with-rob-bateman-away3d/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Frameworks, my take on it</title>
		<link>http://www.dreaminginflash.com/2008/05/20/frameworks-my-take-on-it/</link>
		<comments>http://www.dreaminginflash.com/2008/05/20/frameworks-my-take-on-it/#comments</comments>
		<pubDate>Tue, 20 May 2008 20:13:56 +0000</pubDate>
		<dc:creator>Idoru</dc:creator>
				<category><![CDATA[Actionscript3]]></category>
		<category><![CDATA[Adobe AIR]]></category>
		<category><![CDATA[Adobe Flex]]></category>
		<category><![CDATA[Articles]]></category>
		<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[Cairngorm]]></category>
		<category><![CDATA[Frameworks]]></category>
		<category><![CDATA[Mate]]></category>
		<category><![CDATA[pureMVC]]></category>

		<guid isPermaLink="false">http://www.dreaminginflash.com/2008/05/20/frameworks-my-take-on-it/</guid>
		<description><![CDATA[Flash and Flex frameworks.
Lately I've working on three big projects that would require the usage of a framework, and not wanting to extend my own framework, that consists mostly of accumulated libraries over time, I decided to give the most prominent ones a go.
So I started by checking out what was on the market, I [...]]]></description>
			<content:encoded><![CDATA[<p>Flash and Flex frameworks.</p>
<p>Lately I've working on three big projects that would require the usage of a framework, and not wanting to extend my own framework, that consists mostly of accumulated libraries over time, I decided to give the most prominent ones a go.</p>
<p>So I started by checking out what was on the market, I found as-hive, pureMVC, Cairngorm and Mate ( there are a few more but somehow I didn't feel they were mature enough to be used.<br />
<span id="more-139"></span><br />
Now for a little background on this quest for the framework, and few of my personal opinions on the whole framework  business.<br />
The point of a framework is to aid you in the making of your application/website, this can be the handling of repetitive tasks for you, providing a strict way of coding and thus giving you a common ground of understanding with your peers. Also it's meant to  enable you to code more efficiently, make your code more readable and produce a scalable product that you can, even at a later date, modify without breaking everything.<br />
What they are NOT meant to do is to force a coding style that makes feel restricted, uncomfortable with and most important they shouldn't be extra work. It feels pretty pointless to have to code 3 times as more to have the same functionality, some of you might immediately argue "but what about scalability?" well sometimes that's not everything, in the real work time matters.</p>
<p>Ok, now that we got that out of the way let's move on to the frameworks.<br />
The project that required me to start first was a PV3D website that heavily relies on dynamic content. So I checked out pureMVC and as-hive and quickly decided to go with pureMVC.<br />
So then I went on to the forums and examples pages and tried to read all that mattered to me, plus I found nice diagrams that help you out alot in the beginning.<br />
As I delved more into the project I realized that some extending and heavy integration of PV3D and pureMVC would be required in order to make things easy for me, plus the project relies on the URL to know where it is and react accordingly, this was easy enough, simple and clear.</p>
<p>So my opinion on pureMVC is that it's the perfect framework for AS3 projects because it's easily extensible, highly functional, doesn't force you to adopt a specific style but still requires you to have rules and standards.</p>
<p>The next project is an AIR Application that will mimic some of the functionality of Powerpoint so I immediately thought of Cairngorm, but then I heard about Mate (pronounced mah-tey) and it seemed like the perfect solution.</p>
<p>So having already started development with Cairngorm when I heard about Mate, it felt like a risk to change, but nevertheless a risk worthwhile taking should Mate be more practical and provide me with a faster environment in which to code.<br />
Well Mate does look great on paper ( and I printed the architecture) but somehow it feels like it still hasn't achieved critical mass to be used, now don't get me wrong it's a great framework and I'm sure that with some extra work I'd be in love with it, but at the moment I just didn't have the time to try and figure out somethings on my own and the forums don't have that many topics, plus the examples are far too simple. So I'm sticking with Cairgnorm for the time being.<br />
Cairgorm is a must know for any Flex developer, it's the official framework which means that plenty of clients will feel more comfortable with ,or even ask for it.</p>
<p>That said I started using Cairngorm and eventually grew to like it, I liked the ViewModelLocator and the self dispatching event model, and it did eventually make my work easier.</p>
<p>And to finalize I'll go into no frameworks at all because sometimes a framework is just an overkill, some might say that it's always the best solution, but not always. Sometimes we just need to develop a small application/website and using a framework is actually extra work than just making it the fastest way possible and if it needs updates after they should be easy enough, if they aren't, well you can always refactor it into a framework based app. This works well for me because of years of accumulated libraries that provide me with most of the common tasks i need, many of them published here on DIF.</p>
<p>So that's enough and if you read all the way here congratulations, and please leave me your thoughts.</p>

]]></content:encoded>
			<wfw:commentRss>http://www.dreaminginflash.com/2008/05/20/frameworks-my-take-on-it/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
	</channel>
</rss>

