<?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>AS3 Game Gears</title>
	<atom:link href="http://www.as3gamegears.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.as3gamegears.com</link>
	<description>Boost your tools!</description>
	<lastBuildDate>Thu, 23 Feb 2012 03:05:43 +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>Assets Pack #9 – Painterly Spell Icons</title>
		<link>http://www.as3gamegears.com/assets/assets-pack-9-painterly-spell-icons/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=assets-pack-9-painterly-spell-icons</link>
		<comments>http://www.as3gamegears.com/assets/assets-pack-9-painterly-spell-icons/#comments</comments>
		<pubDate>Thu, 23 Feb 2012 03:05:43 +0000</pubDate>
		<dc:creator>Dovyski</dc:creator>
				<category><![CDATA[Assets]]></category>
		<category><![CDATA[CC BY 3.0]]></category>

		<guid isPermaLink="false">http://www.as3gamegears.com/?p=493</guid>
		<description><![CDATA[This is the Painterly Spell Icons pack (original link) created by John W. Bjerk, from jwbjerk.com and contributor of opengameart.org. According to the author, each spell comes in three power levels.  Additionally most spells have several (up to nine) color variations. The colors were &#8230; <a href="http://www.as3gamegears.com/assets/assets-pack-9-painterly-spell-icons/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><a href="http://static.as3gamegears.com/downloads/Painterly-Spell-Icons-By-John-W-Bjerk.zip"><img class="aligncenter size-full wp-image-495" title="Painterly Spell Icons by John W. Bjerk" src="http://www.as3gamegears.com/wp-content/uploads/2012/02/painterly_spell_icons.png" alt="Painterly Spell Icons by John W. Bjerk" width="630" height="250" /></a></p>
<p style="text-align: left;">This is the <a href="http://static.as3gamegears.com/downloads/Painterly-Spell-Icons-By-John-W-Bjerk.zip" target="_blank">Painterly Spell Icons</a> pack (<a href="http://opengameart.org/content/painterly-spell-icons-part-4" target="_blank">original link</a>) created by <strong>John W. Bjerk</strong>, from <a href="http://www.jwbjerk.com/art/" target="_blank">jwbjerk.com</a> and contributor of <a href="http://opengameart.org" target="_blank">opengameart.org</a>. According to the author, each spell comes in three power levels.  Additionally most spells have several (up to nine) color variations.</p>
<p style="text-align: left;">The colors were chosen for their distinctness, and to support a wide range of possible classes of magic and or damage types.  For instance the red version of the &#8220;enchant weapon&#8221; spell could be used to add fire damage to weapons.</p>
<p style="text-align: left;">All icons are 256&#215;256, but have been designed to be easily recognizable down to 32&#215;32. The pack contains the following icons:</p>
<ul>
<li>Enchant Weapon: 9 colors</li>
<li>Protect: 9 colors</li>
<li>Evil Eye: 2 colors</li>
<li>Fireball: 4 colors</li>
<li>Heal: 3 colors</li>
<li>Beam of Light: 9 colors</li>
<li>Haste: 3 colors</li>
<li>Ice Shards: 3 colors</li>
<li>Lightning: 9 colors</li>
<li>Hurl Rock: 5 colors</li>
<li>Entangling Vines: 4 colors</li>
<li>Explosion: 5 colors</li>
<li>Horror: 3 colors</li>
<li>Leaf: 4 colors</li>
<li>Runes: 4 colors</li>
<li>Wild: 4 colors</li>
<li>Wind: 4 colors</li>
<li>Frames: 10 colors, 10 styles (not all styles have all colors)</li>
<li>Air Burst: 4 colors</li>
<li>Fire Arrows: 5 colors</li>
<li>Fog: 7 colors</li>
<li>Light: 7 colors</li>
<li>Link: 4 colors</li>
<li>Ice Needles: 5 colors</li>
<li>Rip: 5 colors</li>
<li>Shielding: 4 colors</li>
<li>Slice: 4 colors</li>
<li>Wind grasp: 5 colors</li>
</ul>
<p><strong>License</strong></p>
<p>This  pack is licensed under the <a href="http://creativecommons.org/licenses/by/3.0/" target="_blank">Creative Commons Attribution 3.0 Unported License</a>.</p>
<p><strong>Art attributions</strong></p>
<p>If you use this pack, please include the following attribution in a visible location along with any other credits:</p>
<pre>"Painterly Spell Icons" by J. W. Bjerk (eleazzaar) --
www.jwbjerk.com/art -- find this and other open art
at: http://opengameart.org</pre>
<p>When possible link to page that presents the original art collection. For this asset pack, it would be &#8221;<a href="http://opengameart.org/content/painterly-spell-icons-part-4" target="_blank">Painterly Spell Icons</a>&#8221; art by John W. Bjerk (opengameart.org).</p>
<p><strong>About the artist</strong></p>
<p style="background-color: #f1f1f1; padding: 3px;"><a href="http://www.jwbjerk.com/art/"><img class="alignleft  wp-image-411" title="John W. Bjerk" src="http://www.as3gamegears.com/wp-content/uploads/2012/02/jwbjerk.jpg" alt="John W. Bjerk" width="90" height="90" /></a><img alt="" /><strong>John W. Bjerk</strong><br />
I’m interested in a lot of things, primarily the intersection of technology &amp; art. (I love &amp; even dream in Photoshop!) I work as a Graphic Designer, sometimes wearing the geek or illustrator hat.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.as3gamegears.com/assets/assets-pack-9-painterly-spell-icons/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ARE2D</title>
		<link>http://www.as3gamegears.com/misc/are2d/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=are2d</link>
		<comments>http://www.as3gamegears.com/misc/are2d/#comments</comments>
		<pubDate>Wed, 22 Feb 2012 03:01:30 +0000</pubDate>
		<dc:creator>Dovyski</dc:creator>
				<category><![CDATA[Misc]]></category>
		<category><![CDATA[MIT]]></category>

		<guid isPermaLink="false">http://www.as3gamegears.com/?p=491</guid>
		<description><![CDATA[ARE2D (animation render engine) is a set of classes to create GPU or Bitmap animations. It has classes for GPU animation sprites, textfields and collision tests.]]></description>
			<content:encoded><![CDATA[<p><a href="http://code.google.com/p/animation-render-engine/" target="_blank">ARE2D</a> (animation render engine) is a set of classes to create GPU or Bitmap animations. It has classes for GPU animation sprites, textfields and collision tests.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.as3gamegears.com/misc/are2d/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>As3-Bloom</title>
		<link>http://www.as3gamegears.com/ui/as3-bloom/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=as3-bloom</link>
		<comments>http://www.as3gamegears.com/ui/as3-bloom/#comments</comments>
		<pubDate>Mon, 20 Feb 2012 10:04:33 +0000</pubDate>
		<dc:creator>Dovyski</dc:creator>
				<category><![CDATA[UI]]></category>
		<category><![CDATA[MIT]]></category>

		<guid isPermaLink="false">http://www.as3gamegears.com/?p=489</guid>
		<description><![CDATA[As-Bloom is a light weight user interface framework for developers. Some of its features include: Theme editor. Margin layout system. Brush skining system makes it easier to change any component&#8217;s style. Inproved class structure is more clear and easy to &#8230; <a href="http://www.as3gamegears.com/ui/as3-bloom/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://sindney.com/project/bloom/" target="_blank">As-Bloom</a> is a light weight user interface framework for developers. Some of its features include:</p>
<ul>
<li>Theme editor.</li>
<li>Margin layout system.</li>
<li>Brush skining system makes it easier to change any component&#8217;s style.</li>
<li>Inproved class structure is more clear and easy to learn for newbies.</li>
<li>Still small file size, little memory use.</li>
</ul>
<p><strong>Sample</strong></p>
<pre class="brush: as3">/**
 * Copyright (c) 2012 - 2100 Sindney
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 */
package
{
	import flash.display.Sprite;
	import flash.display.StageAlign;
	import flash.display.StageScaleMode;
	import flash.events.Event;
	import flash.events.MouseEvent;

	import bloom.containers.*;
	import bloom.core.Margin;
	import bloom.themes.*;
	import bloom.*;

	/**
	 * HelloWorld
	 *
	 * @author sindney
	 */
	[SWF(backgroundColor = 0x000000, frameRate = 40, width = 200, height = 620)]
	public class HelloWorld extends Sprite {

		public function HelloWorld() {
			super();
			stage.align = StageAlign.TOP_LEFT;
			stage.scaleMode = StageScaleMode.NO_SCALE;
			stage.showDefaultContextMenu = false;

			// setup theme first, we use colorTheme for example.
			ThemeBase.setTheme(new ColorTheme());

			// flow container object.
			var flowContainer:FlowContainer = new FlowContainer(this);
			flowContainer.direction = FlowContainer.VERTICALLY;
			flowContainer.move(10, 10);
			flowContainer.size(150, 600);

			var label:Label = new Label(flowContainer, "I'm a Label");
			// use component.margin to place object.
			label.margin.reset(5, 5, 0, 5);

			var button:Button = new Button(flowContainer, "I'm a Button", onButtonClick);

			var checkBox:CheckBox = new CheckBox(flowContainer, "I'm a CheckBox", true);
			checkBox.addEventListener(Event.CHANGE, onCheckBoxChanged);

			// with checkboxgroup, you can easily link a group of checkbox object(and he who extends checkbox).
			// set checkBoxGroup.index = -1 means there's no checkbox object currently.
			var checkBoxGroup:CheckBoxGroup = new CheckBoxGroup( -1);

			checkBox = new CheckBox(flowContainer, "CheckBox 0");
			checkBoxGroup.addChild(checkBox);

			checkBox = new CheckBox(flowContainer, "CheckBox 1");
			checkBoxGroup.addChild(checkBox);

			checkBox = new CheckBox(flowContainer, "CheckBox 2");
			checkBoxGroup.addChild(checkBox);

			// set target checkbox
			checkBoxGroup.index = 0;
			checkBoxGroup.addEventListener(Event.CHANGE, onCheckBoxGroupChanged);

			var numericStepper:NumericStepper = new NumericStepper(flowContainer, 50, 100, -100, 10);
			numericStepper.addEventListener(Event.CHANGE, onNumericStepperChanged);

			var slider:Slider = new Slider(flowContainer, Slider.HORIZONTALLY);
			slider = new Slider(flowContainer, Slider.VERTICALLY);

			var textInput:TextInput = new TextInput(flowContainer);
			var textBox:TextBox = new TextBox(flowContainer);

			var toggleButton:ToggleButton = new ToggleButton(flowContainer, "I'm a toggleButton");
			toggleButton.size(140, 20);

			var toggleSwitcher:ToggleSwitcher = new ToggleSwitcher(flowContainer, true);

			var progressBar:ProgressBar = new ProgressBar(flowContainer, 50);
		}

		private function onNumericStepperChanged(e:Event):void {
			trace("NumericStepper changed!");
		}

		private function onCheckBoxGroupChanged(e:Event):void {
			trace("CheckBoxGroup changed!");
		}

		private function onCheckBoxChanged(e:Event):void {
			trace("CheckBox changed!");
		}

		private function onButtonClick(e:MouseEvent):void {
			trace("Button clicked!");
		}

	}

}</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.as3gamegears.com/ui/as3-bloom/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Advanced Hi-Res-Stats</title>
		<link>http://www.as3gamegears.com/debug/advanced-hi-res-stats/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=advanced-hi-res-stats</link>
		<comments>http://www.as3gamegears.com/debug/advanced-hi-res-stats/#comments</comments>
		<pubDate>Fri, 17 Feb 2012 04:11:34 +0000</pubDate>
		<dc:creator>Dovyski</dc:creator>
				<category><![CDATA[Debug]]></category>
		<category><![CDATA[MIT]]></category>

		<guid isPermaLink="false">http://www.as3gamegears.com/?p=484</guid>
		<description><![CDATA[Advanced Hi-Res-Stats is a FPS and memory counter with advanced capabilities like dragging, minimize and in detail execution time monitoring. It is a fork of the original Hi-Res-Stats, by Mrdoob. Some of its features: fps counter. current and max memory counters. &#8230; <a href="http://www.as3gamegears.com/debug/advanced-hi-res-stats/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="https://github.com/MindScriptAct/Advanced-hi-res-stats" target="_blank">Advanced Hi-Res-Stats</a> is a FPS and memory counter with advanced capabilities like dragging, minimize and in detail execution time monitoring. It is a fork of the original <a title="Mrdoob stats" href="http://www.as3gamegears.com/profiling/mrdoob-stats/" target="_blank">Hi-Res-Stats</a>, by <a href="https://twitter.com/#!/mrdoob" target="_blank">Mrdoob</a>. Some of its features:</p>
<ul>
<li>fps counter.</li>
<li>current and max memory counters.</li>
<li>frame &#8216;work&#8217; time (in ms) counter.</li>
<li>Graph of fps,frame time,memory counters.</li>
<li>increase/decrease width of Stats graph with mouse wheel.</li>
<li>Monitoring feature. (shows frame code execution time and frame render time.)</li>
<li>Minimize stats to compact mode. (graph is still drawn in background.)</li>
<li>can be dragged.</li>
<li>buttons to change fps count and toggle monitoring feature, and minimize.</li>
<li>Context menu</li>
</ul>
<p><strong>Sample</strong></p>
<pre class="brush: as3">var stats:Stats = new Stats();
this.addChild(stats);
stats.width = 150;
stats.x = 10;
stats.y = 20;
//stats.isMinimized = true;
//stats.isDraggable = false;
stats.isMonitoring = true;
//stats.scale = 2;</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.as3gamegears.com/debug/advanced-hi-res-stats/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Introducing api.as3gamegears.com</title>
		<link>http://www.as3gamegears.com/blog/introducing-api-as3gamegears-com/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=introducing-api-as3gamegears-com</link>
		<comments>http://www.as3gamegears.com/blog/introducing-api-as3gamegears-com/#comments</comments>
		<pubDate>Thu, 16 Feb 2012 03:01:24 +0000</pubDate>
		<dc:creator>Dovyski</dc:creator>
				<category><![CDATA[AS3 Game Gears Blog]]></category>

		<guid isPermaLink="false">http://www.as3gamegears.com/?p=483</guid>
		<description><![CDATA[I am pleased to announce the availability of api.as3gamegears.com, a web API for accessing all As3GameGears data. The most important resource As3GameGears has is its data, a collection of tools with links, samples, licenses and more, all categorized. With that &#8230; <a href="http://www.as3gamegears.com/blog/introducing-api-as3gamegears-com/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I am pleased to announce the availability of <a href="http://api.as3gamegears.com" target="_blank">api.as3gamegears.com</a>, a web API for accessing all As3GameGears data.</p>
<p>The most important resource As3GameGears has is its <strong>data</strong>, a collection of tools with links, samples, licenses and more, all categorized. With that in mind, I thought it would be cool to make all that data accessible though an API.</p>
<p>I always wanted to create an API, but I never had anything worth sharing. Now that I have, I decided to make that side-project come true. First I got some design and structure inspiration from <a href="http://api.stackoverflow.com" target="_blank">StackOverflow API</a>, which I believe is a good API. After I used <a href="http://luracast.com/products/restler/" target="_blank">Restler</a> (multi-protocol REST API Server written in PHP) for the REST stuff. Finally I wrote some code to synchronize the API and As3GameGears databases.</p>
<p>It was a nice goal to accomplish. I&#8217;ve learned a lot about APIs and WordPress database structure. The next step is the development of some widgets, so I can use the API.</p>
<p>You can check the As3GameGears API source code at <a href="https://github.com/Dovyski/As3GameGears" target="_blank">Github</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.as3gamegears.com/blog/introducing-api-as3gamegears-com/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Nest3d</title>
		<link>http://www.as3gamegears.com/engines/3d-engines/nest3d/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=nest3d</link>
		<comments>http://www.as3gamegears.com/engines/3d-engines/nest3d/#comments</comments>
		<pubDate>Wed, 15 Feb 2012 13:56:48 +0000</pubDate>
		<dc:creator>Dovyski</dc:creator>
				<category><![CDATA[3D]]></category>
		<category><![CDATA[MIT]]></category>

		<guid isPermaLink="false">http://www.as3gamegears.com/?p=481</guid>
		<description><![CDATA[Nest3D is a light weight and flexible 3D engine. It is simple to use and has some features as mesh control, light management (e.g. ambient or directional) and shaders abstraction. Sample package { import flash.display.Sprite; import flash.display.StageAlign; import flash.display.StageScaleMode; import &#8230; <a href="http://www.as3gamegears.com/engines/3d-engines/nest3d/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://sindney.com/project/nest3d/" target="_blank">Nest3D</a> is a light weight and flexible 3D engine. It is simple to use and has some features as mesh control, light management (e.g. ambient or directional) and shaders abstraction.</p>
<p><strong>Sample</strong></p>
<pre class="brush: as3">package
{
	import flash.display.Sprite;
	import flash.display.StageAlign;
	import flash.display.StageScaleMode;
	import flash.events.Event;
	import flash.events.KeyboardEvent;

	import nest.object.Container3D;
	import nest.view.Camera3D;
	import nest.view.ViewPort;

	public class DemoBase extends Sprite {

		protected var keys:Array = new Array();

		protected var view:ViewPort;
		protected var camera:Camera3D;
		protected var scene:Container3D;

		protected var controller:ObjectController;

		protected var speed:Number = 2;

		public function DemoBase() {
			stage.scaleMode = StageScaleMode.NO_SCALE;
			stage.align = StageAlign.TOP_LEFT;
			stage.frameRate = 60;

			camera = new Camera3D();
			scene = new Container3D();
			view = new ViewPort(800, 600, stage.stage3Ds[0], camera, scene);

			controller = new ObjectController(camera, stage);
			addChild(view.diagram);
			view.addEventListener(Event.CONTEXT3D_CREATE, onContext3DCreated);
		}

		private function onContext3DCreated(e:Event):void {
			stage.addEventListener(Event.RESIZE, onResize);
			stage.addEventListener(KeyboardEvent.KEY_UP, onKeyUp);
			stage.addEventListener(KeyboardEvent.KEY_DOWN, onKeyDown);
			stage.addEventListener(Event.ENTER_FRAME, onEnterFrame);
		}

		private function onKeyDown(e:KeyboardEvent):void {
			keys[e.keyCode] = true;
		}

		private function onKeyUp(e:KeyboardEvent):void {
			keys[e.keyCode] = false;
		}

		private function onResize(e:Event):void {
			view.width = stage.stageWidth;
			view.height = stage.stageHeight;
		}

		protected function onEnterFrame(e:Event):void {
			if (keys[87]) camera.moveForward(speed);
			if (keys[83]) camera.moveForward( -speed);
			if (keys[68]) camera.moveSideways(speed);
			if (keys[65]) camera.moveSideways( -speed);

			view.calculate();
			view.diagram.message = "Objects: " + view.numObjects + "\nTriangles: " + view.numTriangles + "\nVertices: " + view.numVertices;
		}

	}

}</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.as3gamegears.com/engines/3d-engines/nest3d/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Emitter</title>
		<link>http://www.as3gamegears.com/particles/emitter/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=emitter</link>
		<comments>http://www.as3gamegears.com/particles/emitter/#comments</comments>
		<pubDate>Fri, 10 Feb 2012 02:29:20 +0000</pubDate>
		<dc:creator>Dovyski</dc:creator>
				<category><![CDATA[Particles]]></category>
		<category><![CDATA[MIT]]></category>

		<guid isPermaLink="false">http://www.as3gamegears.com/?p=479</guid>
		<description><![CDATA[Emitter is a particle FX engine developed by the same author of Stardust particle engine. Some features: Easy-to-use API. Comprehensive structure. Behavior and behavior triggers. Particles can be custom MovieClip symbols. Multiple sources for a single emitter. Four kinds of &#8230; <a href="http://www.as3gamegears.com/particles/emitter/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://code.google.com/p/emitter/" target="_blank">Emitter</a> is a particle FX engine developed by the same author of <a title="Stardust" href="http://www.as3gamegears.com/particles/stardust/">Stardust</a> particle engine. Some features:</p>
<ul>
<li>Easy-to-use API.</li>
<li>Comprehensive structure.</li>
<li>Behavior and behavior triggers.</li>
<li>Particles can be custom MovieClip symbols.</li>
<li>Multiple sources for a single emitter.</li>
<li>Four kinds of basic-shaped sources.</li>
<li>DisplayObjectSource for custom-shaped particle source.</li>
<li>Bursting &#8211; sudden massive particle spawning.</li>
<li>Gravitation simulation.</li>
<li>Bubblemotion simulation.</li>
<li>Deflector simulation.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.as3gamegears.com/particles/emitter/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Monitor</title>
		<link>http://www.as3gamegears.com/debug/monitor/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=monitor</link>
		<comments>http://www.as3gamegears.com/debug/monitor/#comments</comments>
		<pubDate>Wed, 08 Feb 2012 08:31:29 +0000</pubDate>
		<dc:creator>Dovyski</dc:creator>
				<category><![CDATA[Debug]]></category>
		<category><![CDATA[MIT]]></category>

		<guid isPermaLink="false">http://www.as3gamegears.com/?p=477</guid>
		<description><![CDATA[Monitor is a lightweight customizable property monitor. Some features: watch any property of any class customizable update rate customizable per-property color chat rendering for numeric values watch framerate, memory and Flash Player version ready to use framerate property Sample // &#8230; <a href="http://www.as3gamegears.com/debug/monitor/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="https://github.com/aerys/monitor" target="_blank">Monitor</a> is a lightweight customizable property monitor. Some features:</p>
<ul>
<li>watch any property of any class</li>
<li>customizable update rate</li>
<li>customizable per-property color</li>
<li>chat rendering for numeric values</li>
<li>watch framerate, memory and Flash Player version</li>
<li>ready to use framerate property</li>
</ul>
<p><strong>Sample</strong></p>
<pre class="brush: as3">// get a singleton Monitor object
var monitor : Monitor = Monitor.monitor;

// set the update (refresh) rate to 15 updates per second
monitor.updateRate = 15.;

// add the monitor to the display list
stage.addChild(monitor);

// watch the rotationX property of the camera object with a scale value of 1 / (PI / 2)
monitor.watch(camera, "rotationX", 0x55ff00, 1. / (Math.PI / 2.), true);
// watch the rotationY property of the camera object with a scale value of 1 / (2 * PI)
monitor.watch(camera, "rotationY", 0xff5500, 1. / (2. * Math.PI), true);
// watch the rotationZ property of the camera object with no scale value (=&gt; no chart rendering)
monitor.watch(camera, "rotationZ", 0x5599ff);

// watch multiple properties
monitor.watchProperties(physics,
                        ["processingTime", "speed"],
                        [0x00ff00, 0xff0000],
                        [1. / 40., 1. / 10.]);

// change the background color (0xAARRGGBB)
monitor.backgroundColor = 0x7f000000;</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.as3gamegears.com/debug/monitor/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>AwayPhysics</title>
		<link>http://www.as3gamegears.com/physics/3d-physics/awayphysics/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=awayphysics</link>
		<comments>http://www.as3gamegears.com/physics/3d-physics/awayphysics/#comments</comments>
		<pubDate>Mon, 06 Feb 2012 09:44:58 +0000</pubDate>
		<dc:creator>Dovyski</dc:creator>
				<category><![CDATA[3D]]></category>

		<guid isPermaLink="false">http://www.as3gamegears.com/?p=475</guid>
		<description><![CDATA[AwayPhysics is an extremely fast Alchemy port of the widely known Bullet Physics Engine. It is specifically designed for Away3D 4.x, providing an optimized, closely coupled physics library to Away3D users. Sample package { import away3d.containers.View3D; import away3d.debug.AwayStats; import away3d.entities.Mesh; &#8230; <a href="http://www.as3gamegears.com/physics/3d-physics/awayphysics/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="https://github.com/away3d/awayphysics-core-fp11" target="_blank">AwayPhysics</a> is an extremely fast Alchemy port of the widely known <a href="http://bulletphysics.org" target="_blank">Bullet Physics Engine</a>. It is specifically designed for <a title="Away3D" href="http://www.as3gamegears.com/engines/away3d/" target="_blank">Away3D</a> 4.x, providing an optimized, closely coupled physics library to Away3D users.</p>
<p><strong>Sample</strong></p>
<pre class="brush: as3">package {
	import away3d.containers.View3D;
	import away3d.debug.AwayStats;
	import away3d.entities.Mesh;
	import away3d.events.MouseEvent3D;
	import away3d.lights.PointLight;
	import away3d.materials.ColorMaterial;
	import away3d.primitives.Cone;
	import away3d.primitives.Cube;
	import away3d.primitives.Cylinder;
	import away3d.primitives.Plane;
	import away3d.primitives.Sphere;

	import awayphysics.collision.shapes.AWPBoxShape;
	import awayphysics.collision.shapes.AWPConeShape;
	import awayphysics.collision.shapes.AWPCylinderShape;
	import awayphysics.collision.shapes.AWPSphereShape;
	import awayphysics.collision.shapes.AWPStaticPlaneShape;
	import awayphysics.dynamics.AWPDynamicsWorld;
	import awayphysics.dynamics.AWPRigidBody;
	import awayphysics.debug.AWPDebugDraw;

	import flash.display.Sprite;
	import flash.events.Event;
	import flash.geom.Vector3D;

	[SWF(backgroundColor="#000000", frameRate="60", width="1024", height="768")]
	public class BasicTest extends Sprite {
		private var _view : View3D;
		private var _light : PointLight;
		private var _physicsWorld : AWPDynamicsWorld;
		private var _sphereShape : AWPSphereShape;
		private var _timeStep : Number = 1.0 / 60;

		private var debugDraw:AWPDebugDraw;

		public function BasicTest() {
			if (stage) init();
			else addEventListener(Event.ADDED_TO_STAGE, init);
		}

		private function init(e : Event = null) : void {
			removeEventListener(Event.ADDED_TO_STAGE, init);

			_view = new View3D();
			this.addChild(_view);
			this.addChild(new AwayStats(_view));

			_light = new PointLight();
			_light.y = 2500;
			_light.z = -4000;
			_view.scene.addChild(_light);

			_view.camera.lens.far = 10000;
			_view.camera.y = _light.y;
			_view.camera.z = _light.z;
			_view.camera.rotationX = 25;

			// init the physics world
			_physicsWorld = AWPDynamicsWorld.getInstance();
			_physicsWorld.initWithDbvtBroadphase();

			debugDraw = new AWPDebugDraw(_view, _physicsWorld);
			debugDraw.debugMode |= AWPDebugDraw.DBG_DrawTransform;

			// create ground mesh
			var material : ColorMaterial = new ColorMaterial(0x252525);
			material.lights = [_light];
			var ground : Plane = new Plane(material, 50000, 50000);
			ground.mouseEnabled = true;
			ground.mouseDetails = true;
			ground.addEventListener(MouseEvent3D.MOUSE_UP, onMouseUp);
			_view.scene.addChild(ground);

			// create ground shape and rigidbody
			var groundShape : AWPStaticPlaneShape = new AWPStaticPlaneShape(new Vector3D(0, 1, 0));
			var groundRigidbody : AWPRigidBody = new AWPRigidBody(groundShape, ground, 0);
			_physicsWorld.addRigidBody(groundRigidbody);

			// create a wall
			var wall : Cube = new Cube(material, 20000, 2000, 100);
			_view.scene.addChild(wall);

			var wallShape : AWPBoxShape = new AWPBoxShape(20000, 2000, 100);
			var wallRigidbody : AWPRigidBody = new AWPRigidBody(wallShape, wall, 0);
			_physicsWorld.addRigidBody(wallRigidbody);			

			wallRigidbody.position = new Vector3D(0, 1000, 2000);

			//material = new ColorMaterial(0xfc6a11);
			//material.lightPicker = new LightPickerBase();

			// create rigidbody shapes
			_sphereShape = new AWPSphereShape(100);
			var boxShape : AWPBoxShape = new AWPBoxShape(200, 200, 200);
			var cylinderShape : AWPCylinderShape = new AWPCylinderShape(100, 200);
			var coneShape : AWPConeShape = new AWPConeShape(100, 200);

			// create rigidbodies
			var mesh : Mesh;
			var body : AWPRigidBody;
			var numx : int = 2;
			var numy : int = 8;
			var numz : int = 1;
			for (var i : int = 0; i &lt; numx; i++ ) {
				for (var j : int = 0; j &lt; numz; j++ ) {
					for (var k : int = 0; k &lt; numy; k++ ) {
						// create boxes
						mesh = new Cube(material, 200, 200, 200);
						//_view.scene.addChild(mesh);
						body = new AWPRigidBody(boxShape, mesh, 1);
						body.friction = .9;
						body.ccdSweptSphereRadius = 0.5;
						body.ccdMotionThreshold = 1;
						body.position = new Vector3D(-1000 + i * 200, 100 + k * 200, j * 200);
						_physicsWorld.addRigidBody(body);

						// create cylinders
						mesh = new Cylinder(material, 100, 100, 200);
						//_view.scene.addChild(mesh);
						body = new AWPRigidBody(cylinderShape, mesh, 1);
						body.friction = .9;
						body.ccdSweptSphereRadius = 0.5;
						body.ccdMotionThreshold = 1;
						body.position = new Vector3D(1000 + i * 200, 100 + k * 200, j * 200);
						_physicsWorld.addRigidBody(body);

						// create the Cones
						mesh = new Cone(material, 100, 200);
						//_view.scene.addChild(mesh);
						body = new AWPRigidBody(coneShape, mesh, 1);
						body.friction = .9;
						body.ccdSweptSphereRadius = 0.5;
						body.ccdMotionThreshold = 1;
						body.position = new Vector3D(i * 200, 100 + k * 230, j * 200);
						_physicsWorld.addRigidBody(body);
					}
				}
			}

			stage.addEventListener(Event.ENTER_FRAME, handleEnterFrame);
		}

		private function onMouseUp(event : MouseEvent3D) : void {
			var pos : Vector3D = _view.camera.position;
			var mpos : Vector3D = new Vector3D(event.localX, event.localY, event.localZ);

			var impulse : Vector3D = mpos.subtract(pos);
			impulse.normalize();
			impulse.scaleBy(2000);

			// shoot a sphere
			var material : ColorMaterial = new ColorMaterial(0xb35b11);
			material.lights = [_light];

			var sphere : Sphere = new Sphere(material, 100);
			//_view.scene.addChild(sphere);

			var body : AWPRigidBody = new AWPRigidBody(_sphereShape, sphere, 2);
			body.position = pos;
			body.ccdSweptSphereRadius = 0.5;
			body.ccdMotionThreshold = 1;
			_physicsWorld.addRigidBody(body);

			body.applyCentralImpulse(impulse);
		}

		private function handleEnterFrame(e : Event) : void {
			_physicsWorld.step(_timeStep, 1, _timeStep);

			debugDraw.debugDrawWorld();
			_view.render();
		}
	}
}</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.as3gamegears.com/physics/3d-physics/awayphysics/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Napoleon: ND2D engine + Nape physics</title>
		<link>http://www.as3gamegears.com/blog/napoleon-nd2d-engine-nape-physics/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=napoleon-nd2d-engine-nape-physics</link>
		<comments>http://www.as3gamegears.com/blog/napoleon-nd2d-engine-nape-physics/#comments</comments>
		<pubDate>Fri, 03 Feb 2012 17:13:48 +0000</pubDate>
		<dc:creator>Dovyski</dc:creator>
				<category><![CDATA[AS3 Game Gears Blog]]></category>

		<guid isPermaLink="false">http://www.as3gamegears.com/?p=472</guid>
		<description><![CDATA[There is a lot of activity and cool stuff being done using the new Flash GPU capabilities. I&#8217;ve just discovered Napoleon, created by Mike Almond. It is an experiment to add Nape physics and some extra 2D object types to &#8230; <a href="http://www.as3gamegears.com/blog/napoleon-nd2d-engine-nape-physics/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>There is a lot of activity and cool stuff being done using the new Flash GPU capabilities. I&#8217;ve just discovered <a href="https://github.com/mikedotalmond/napoleon" target="_blank">Napoleon</a>, created by <a href="http://twitter.com/mikedotalmond " target="_blank">Mike Almond</a>. It is an experiment to add <a title="Nape" href="http://www.as3gamegears.com/physics/2d-physics/nape/" target="_blank">Nape</a> physics and some extra 2D object types to GPU accelerated engine <a title="ND2D" href="http://www.as3gamegears.com/engines/2d-engines/nd2d/" target="_blank">ND2D</a>.</p>
<p>The project is in early development, but it&#8217;s very promising. If you are interested, watch the project on <a href="https://github.com/mikedotalmond/napoleon" target="_blank">Github</a> and take a look at some <a href="http://mikedotalmond.github.com/napoleon/" target="_blank">demos</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.as3gamegears.com/blog/napoleon-nd2d-engine-nape-physics/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

