<?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>jMonkeyEngine.org &#187; jME3</title>
	<atom:link href="http://jmonkeyengine.org/tag/jme3/feed/" rel="self" type="application/rss+xml" />
	<link>http://jmonkeyengine.org</link>
	<description>jMonkeyEngine Community</description>
	<lastBuildDate>Tue, 24 Apr 2012 04:55:55 +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>Beta 1 Game Contest</title>
		<link>http://jmonkeyengine.org/2011/11/06/beta-1-game-contest/</link>
		<comments>http://jmonkeyengine.org/2011/11/06/beta-1-game-contest/#comments</comments>
		<pubDate>Sun, 06 Nov 2011 18:20:28 +0000</pubDate>
		<dc:creator>Skye Book</dc:creator>
				<category><![CDATA[Site & Project]]></category>
		<category><![CDATA[contest]]></category>
		<category><![CDATA[game]]></category>
		<category><![CDATA[jME3]]></category>

		<guid isPermaLink="false">http://jmonkeyengine.org/?p=2388</guid>
		<description><![CDATA[The Beta Release is out! And to complement that, the jME staff has decided to host a contest! This mini-game contest will have the aim of everyone having fun participating and making a good game to showcase jME&#8217;s capabilities. There won’t be any genre or restrictions for the mini-game, only that it shouldn’t be too [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignright" src="http://skyebook.net/stuff/trophy.png" alt="" width="107" height="162" />The Beta Release is out! And to complement that, the jME staff has decided to host a contest!</p>
<p>This mini-game contest will have the aim of everyone having fun participating and making a good game to showcase jME&#8217;s capabilities. There won’t be any genre or restrictions for the mini-game, only that it shouldn’t be too complex for the player to understand and play. The contest will take place between the 7th of November 2011, and the 31st December 2011 (inclusive dates). Below, you can find additional information, including the rules. Any questions are welcomed. Have fun participating, and good luck!<br />
<span id="more-2388"></span><br />
Judges: @memonick, @namo, @sbook.</p>
<p>Prizes: To be announced.</p>
<p>Please see the official <a href="http://jmonkeyengine.org/groups/beta-1-game-contest/forum/topic/contest-rules-1/">Contest Rules Thread</a> for all of the info!</p>
<p>Good luck to all!<br />
The jME Core Team</p>
<div style="height:33px;" class="really_simple_share robots-nocontent snap_nopreview"><div class="really_simple_share_facebook_like" style="width:120px;"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fjmonkeyengine.org%2F2011%2F11%2F06%2Fbeta-1-game-contest%2F&amp;layout=button_count&amp;show_faces=false&amp;width=120&amp;action=like&amp;colorscheme=light&amp;send=false&amp;height=27" 
						scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:120px; height:27px;" allowTransparency="true"></iframe></div><div class="really_simple_share_google1" style="width:90px;"><div class="g-plusone" data-size="medium" data-href="http://jmonkeyengine.org/2011/11/06/beta-1-game-contest/" ></div></div><div class="really_simple_share_twitter" style="width:120px;"><a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal" 
						data-text="Beta 1 Game Contest" data-url="http://jmonkeyengine.org/2011/11/06/beta-1-game-contest/" 
						data-via=""  ></a></div></div>
		<div style="clear:both;"></div>]]></content:encoded>
			<wfw:commentRss>http://jmonkeyengine.org/2011/11/06/beta-1-game-contest/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Making 3079: An action RPG</title>
		<link>http://jmonkeyengine.org/2011/10/28/making-3079-an-action-rpg/</link>
		<comments>http://jmonkeyengine.org/2011/10/28/making-3079-an-action-rpg/#comments</comments>
		<pubDate>Fri, 28 Oct 2011 23:19:39 +0000</pubDate>
		<dc:creator>phr00t</dc:creator>
				<category><![CDATA[Spotlight]]></category>
		<category><![CDATA[3079]]></category>
		<category><![CDATA[commercial game]]></category>
		<category><![CDATA[game]]></category>
		<category><![CDATA[game development]]></category>
		<category><![CDATA[jME3]]></category>
		<category><![CDATA[Minecraft]]></category>
		<category><![CDATA[sdk]]></category>

		<guid isPermaLink="false">http://jmonkeyengine.org/?p=2301</guid>
		<description><![CDATA[Quick Background I&#8217;ve always been into procedurally generated game development. Interestingly enough, my first big procedurally generated game was 3059 (a 2D &#8220;ASCII art&#8221; roguelike game). I went on to create FreeUniverse (a space action/trader game), Gentrieve (a procedurally generated Super Metroid game) and DroidCraft (Minecraft-like game for Android). Wanting to get into 3D programming [...]]]></description>
			<content:encoded><![CDATA[<h2>Quick Background</h2>
<p><a href="http://i.imgur.com/oLOiQ.png"><img class="alignright" src="http://i.imgur.com/oLOiQ.png" alt="" width="240" height="170" /></a>I&#8217;ve always been into procedurally generated game development. Interestingly enough, my first big procedurally generated game was <a href="http://people.umass.edu/jvight/3059/" target="_blank">3059</a> (a 2D &#8220;ASCII art&#8221; roguelike game). I went on to create <a href="http://www.dsource.org/projects/freeuniverse/" target="_blank">FreeUniverse</a> (a space action/trader game), <a href="https://sites.google.com/site/gentrieve/" target="_blank">Gentrieve</a> (a procedurally generated Super Metroid game) and <a href="https://sites.google.com/site/androiddroidcraft/home" target="_blank">DroidCraft</a> (Minecraft-like game for Android). Wanting to get into 3D programming (and back to my futuristic &#8220;roguelike&#8221; roots), I started <a href="https://sites.google.com/site/free3069/Story" target="_blank">3069</a>. I had planned an open, block-like world full of monsters, quests and items well before the Minecraft-era hit. I decided to use the Ogre3D engine, which turned out to be more difficult than expected. In the end, 3069 did get completed, but it wasn&#8217;t what I originally hoped for.<br />
<span id="more-2301"></span></p>
<h2>3079&#8242;s Conception</h2>
<p>While taking a break from desktop game development, I played some great games: Fallout 3, Just Cause 2 and Minecraft. I loved Fallout 3&#8242;s action and role-playing elements, Just Cause 2&#8242;s grappling hook and Minecraft&#8217;s open, block-like world. Still wanting to create a solid 3D game, I decided to make another sequel to 3059 and 3069: 3079. Now running Linux, I needed a cross-platform development environment and I wanted to try a new, fresh 3D engine designed for games. I decided on Java and did a simple Google search for &#8220;3d engine java&#8221; &#8212; jMonkeyEngine was right at the top. Little did I know at the time how well jMonkeyEngine would work out!</p>
<p><object width="591" height="332"><param name="movie" value="http://www.youtube.com/v/2FCM3ngFAbE?version=3&#038;feature=oembed"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/2FCM3ngFAbE?version=3&#038;feature=oembed" type="application/x-shockwave-flash" width="591" height="332" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<h2>Just another Minecraft game?</h2>
<p>As the developer of <a href="http://mythruna.com/" target="_blank">Mythruna</a> can attest to, it is a challenge to bypass the knee-jerk reaction of &#8220;it&#8217;s just another Minecraft clone.&#8221; To differentiate my game from Minecraft, I decided to focus on character abilities, artificial intelligence, action and questing (things Minecraft lacks) instead of crafting and mining (which Minecraft excels in). I also wanted the game to start in the sky, showing off the limitless ceiling while at the same time avoiding the &#8220;you start in an open field&#8221; Minecraft-like start. I do all this because I want players to know 3079 is not just another Minecraft clone &#8212; it actually plays much more like Fallout 3. Nevertheless, I&#8217;m continuing to look into ways to distinguish my game further.</p>
<h2>Development</h2>
<p><a href="http://i.imgur.com/jmWSs.png"><img class="alignright" src="http://i.imgur.com/jmWSs.png" alt="" width="240" height="170" /></a>Performace, performance and performance. I started 3079 with the goal of making the fastest and leanest 3D voxel engine possible. At first, my engine was slow and inefficient. I had a node and separate mesh for every block and I was trying to use dynamic lighting. Once I figured out how to use Texture Atlases, I combined 40x40x40 &#8220;blocks&#8221; into a single dynamically-generated &#8220;chunk&#8221; mesh using a single material. I later ditched dynamic lighting and &#8220;baked&#8221; lighting into my textures. I did this by having a large grid of block textures, each with 16 different shades of brightness. I then set the correct shaded texture (using UV mapping) when dynamically generating the &#8220;chunk&#8221; mesh. This improved performance quite a bit &#8212; leaving more room for artificial intelligence (AI) processing. Figuring out how to connect &#8220;chunk&#8221; edges, especially edges of chunks that haven&#8217;t been generated yet, was quite the challenge; using specifically calculated random number seeds proved to be very important. Lighting also was a challenge &#8212; I didn&#8217;t get it &#8220;quite right&#8221; until very late in development. It wasn&#8217;t until I got performance greatly under control using the Java profiler before getting soft, ray-traced lighting to work (lots of internal caching going on!). All in all, programming the AI was the most fun &#8212; because making characters &#8220;act as expected&#8221; is always an interesting challenge!</p>
<h2>Conclusion</h2>
<p>I am very happy with 3079. Of course, it isn&#8217;t &#8220;finished.&#8221; I gave it the &#8220;BETA&#8221; label, because I still want to explore things like networking, &#8220;the look&#8221; and more unique tools and locations. I believe I really nailed performance and memory consumption which should give me quite the wiggle room to add more to the game. If you are interested in playing 3079, you can get a free demo at <a href="http://3079.phr00t.com/" target="_blank">http://3079.phr00t.com/</a>.</p>
<h2>My thoughts on jME3</h2>
<p>Using jME3 was <em>almost</em> a breeze. Getting started was very easy after installing the jMonkeyEngine 3 SDK and downloading the first tutorial project. I especially liked how SimpleApplication included the flying camera and graphics configuration window &#8212; I could immediately get started on my game without having to re-invent the wheel here. The forum community was also very helpful and I greatly appreciate all the prompt help I received. Once I started using the nighly SVN (to get daily jME3 updates with Alpha-4), problems I had with the engine were fixed in only a day or two. Now that jME3 BETA is here, things are stable enough where I don&#8217;t need to use the nightly SVN.</p>
<p>jME3 was a whole package. It wasn&#8217;t just a library you add to your current NetBeans installation &#8212; it was a whole SDK <img src='http://jmonkeyengine.org/wp-includes/images/smilies/chimpanzee-wink.gif' alt=';-)' class='wp-smiley' />  There are a few plugins for the SDK that I used, like the model importer and desktop deployment tool. However, there are many others I didn&#8217;t get to &#8212; like the vehicle and terrain editors (which I&#8217;m sure many would find useful).</p>
<h4>jME3 Pros:</h4>
<p>+ Small learning curve: jMonkeyEngine 3 SDK + tutorial project (using SimpleApplication) = easiest start to a 3D engine ever!<br />
+ Performance: jME3 takes care of view culling &amp; scene management in an efficient manner<br />
+ Java platform: cross-platform support!</p>
<h4>jME3 Cons:</h4>
<p>+ Not &#8220;stable&#8221; yet: jME3 is progressing very well, but isn&#8217;t fully mature yet. I had to create my own shader for proper fog effects because they haven&#8217;t been implemented yet, and some bugs were difficult to work around until they got fixed in nightly releases</p>
<div style="height:33px;" class="really_simple_share robots-nocontent snap_nopreview"><div class="really_simple_share_facebook_like" style="width:120px;"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fjmonkeyengine.org%2F2011%2F10%2F28%2Fmaking-3079-an-action-rpg%2F&amp;layout=button_count&amp;show_faces=false&amp;width=120&amp;action=like&amp;colorscheme=light&amp;send=false&amp;height=27" 
						scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:120px; height:27px;" allowTransparency="true"></iframe></div><div class="really_simple_share_google1" style="width:90px;"><div class="g-plusone" data-size="medium" data-href="http://jmonkeyengine.org/2011/10/28/making-3079-an-action-rpg/" ></div></div><div class="really_simple_share_twitter" style="width:120px;"><a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal" 
						data-text="Making 3079: An action RPG" data-url="http://jmonkeyengine.org/2011/10/28/making-3079-an-action-rpg/" 
						data-via=""  ></a></div></div>
		<div style="clear:both;"></div>]]></content:encoded>
			<wfw:commentRss>http://jmonkeyengine.org/2011/10/28/making-3079-an-action-rpg/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>MonkeyZone – a jME3 game from the core</title>
		<link>http://jmonkeyengine.org/2011/02/13/monkeyzone-a-jme3-game-from-the-core/</link>
		<comments>http://jmonkeyengine.org/2011/02/13/monkeyzone-a-jme3-game-from-the-core/#comments</comments>
		<pubDate>Sun, 13 Feb 2011 00:42:21 +0000</pubDate>
		<dc:creator>Normen Hansen</dc:creator>
				<category><![CDATA[Spotlight]]></category>
		<category><![CDATA[BasicGame]]></category>
		<category><![CDATA[battlezone]]></category>
		<category><![CDATA[controls]]></category>
		<category><![CDATA[devblog]]></category>
		<category><![CDATA[game]]></category>
		<category><![CDATA[game development]]></category>
		<category><![CDATA[jME3]]></category>
		<category><![CDATA[monkeyzone]]></category>
		<category><![CDATA[template]]></category>

		<guid isPermaLink="false">http://jmonkeyengine.org/?p=1355</guid>
		<description><![CDATA[Dear Monkeys, With jME3 nearing its first stable release and many monkeys already getting their hands wet with creating games we thought it would be good to implement a demo game with jME3 to a) showcase jME3 and one possible way to implement a game with it and to b) verify the jME3 API in [...]]]></description>
			<content:encoded><![CDATA[<p>Dear Monkeys,</p>
<p>With jME3 nearing its first stable release and many monkeys already getting their hands wet with creating games we thought it would be good to implement a demo game with jME3 to a) showcase jME3 and one possible way to implement a game with it and to b) verify the jME3 API in terms of usability ourselves. Furthermore the game is planned to stay as a community project that will be extended and improved to further test and showcase jME3.</p>
<p>So I wrapped up my ideas and started off with a blank BasicGame project in jMonkeyPlatform and one week later I already had a first version of a game including networking running. Yes, one week. I was baffled myself about how efficiently and fast one can write games in jME3. In that one week I got more done than in one full year messing with jME2 RenderStates <img src='http://jmonkeyengine.org/wp-includes/images/smilies/chimpanzee-wink.gif' alt=';)' class='wp-smiley' />  Have a look at the first results:</p>
<p><object width="591" height="443"><param name="movie" value="http://www.youtube.com/v/98yITEoJvqE?version=3"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/98yITEoJvqE?version=3" type="application/x-shockwave-flash" width="591" height="443" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>It looks very simple and plain but in the background most of the system detailed below is already implemented and the best thing is the design makes it possible for others to edit maps, vehicles etc. in <span class="domtooltips">jMP<span class="domtooltips_tooltip" style="display: none">The jMonkeyPlatform, a full-fledged IDE with plugins for editing jME3 content and assets. Integral part of the jME3 SDK.</span></span> w/o changing the code, allowing designers to contribute easily, if you feel like contributing assets or working on parts of the game code, drop me a note!</p>
<p>So keep your eyes open for updates and news and in the meantime read about the game implementation details below.</p>
<p><span id="more-1355"></span></p>
<div style="float: right; margin-right: 10px;"><div id='toc' class='post-1355'><div id='toc_title'>Table of contents</div>
<ul><li><a href="#The-Game">The Game</a></li>
<li><a href="#Implementation-Details">Implementation Details</a>
<ul><li><a href="#Manager-Classes">Manager Classes</a></li>
<li><a href="#Use-of-Controls">Use of Controls</a></li>
<li><a href="#Artificial-Intelligence">Artificial Intelligence</a></li>
<li><a href="#Networking">Networking</a></li></ul></li>
<li><a href="#Use-of-jMonkeyPlatform-tools">Use of jMonkeyPlatform tools</a></li>
<li><a href="#The-Future">The Future</a></li>
</ul>
</div></div>
<h3 id='The-Game'>The Game</h3>
<p>Since the time I started working with jME I always wanted to create a game like Activisions &#8220;BattleZone&#8221; from 1998. This was actually the initial reason I started working with jbullet physics and because the idea was floating around for some time its also the reason why @nehon created the awesome HoverTank model. BattleZone was a FPS game with RTS elements or vice versa, however you want to look at it <img src='http://jmonkeyengine.org/wp-includes/images/smilies/chimpanzee-smile.gif' alt=':)' class='wp-smiley' />  To get an impression of the original game, have a look at some <a href="http://www.youtube.com/watch?v=zYgqxLRp2zI">gameplay of the original version</a>.</p>
<h3 id='Implementation-Details'>Implementation Details</h3>
<p>MonkeyZone is a physics-based networking game. Both clients and server run the physics simulation, the clients send input data from the human and AI players to the server where they are used to control the entities and also broadcast to the clients. Additionally the server sends sync data in intervals for all objects in the game to prevent drifting.<br />
When a human user or an AI presses a button/performs an action the actual logic is done on the server and the results are broadcast as data messages for the entities. When the entity is controlled by an AI the actual AI code that determines where the entity should move and when it should perform an action is executed on the client.</p>
<p><strong>Note</strong> that the way MonkeyZone is implemented is just one of the many possible ways to do a game like this in jME. Some things might be done more efficiently, some might be done in another way completely. MonkeyZone tries to do things the way that are most appropriate to implement the game at hand and it shows nicely how jME3 and the standard Java API can make game development easier and faster. Also note that the way MonkeyZone is designed is <strong>not scalable to a MMO style game</strong>, it will only work in a FPS style environment where the whole game world can be loaded at once.</p>
<h5>Terminology</h5>
<p>The game uses certain terms that might be familiar to you but maybe used in another way, so heres a quick rundown on the terms being used.</p>
<table>
<tbody>
<tr>
<td>Player</td>
<td>Logical human or AI player that can enter entities and generally act, only exists as PlayerData &#8220;database&#8221; with an id.</td>
</tr>
<tr>
<td>Entity</td>
<td>Spatial with UserData, a world object like character, vehicle, box or factory. The base form is defined only by a String pointing to the j3o which already has all userdata like hitpoints, speed etc.</td>
</tr>
<tr>
<td>User</td>
<td>Human player using client</td>
</tr>
<tr>
<td>Group</td>
<td>Group of players that play together (human and AI), for now thats the same as client_id of human player for all AIControl&#8217;d players originating from that client.</td>
</tr>
<tr>
<td>Client</td>
<td>Computer connected to server</td>
</tr>
</tbody>
</table>
<h4 id='Manager-Classes'>Manager Classes</h4>
<p>The <a href="http://code.google.com/p/monkeyzone/source/browse/trunk/src/com/jme3/monkeyzone/WorldManager.java">WorldManager</a> does the main work of organizing players, entities and the world and synchronizing them between the server and client. Both client and server use this class. Some other managers like <a href="http://code.google.com/p/monkeyzone/source/browse/trunk/src/com/jme3/monkeyzone/ClientEffectsManager.java">ClientEffectsManager</a> only exist on the client or server and manage e.g. effects display.</p>
<p>The gameplay is largely controlled by the <a href="http://code.google.com/p/monkeyzone/source/browse/trunk/src/com/jme3/monkeyzone/ServerGameManager.java">ServerGameManager</a> which does gameplay logic on the server, combined with the actions issued by the AI and user on the client (see below) it implements the gameplay. It extensively uses the functions exposed by the WorldManager to perform actions and gather data. This is also the class where the actions of the players are actually executed on the server to determine the outcome (ray testing for shooting etc.).</p>
<h4 id='Use-of-Controls'>Use of Controls</h4>
<p>Controls are used extensively in MonkeyZone for many aspects of the game. When a player enters an entity the Spatials Controls are configured based on the player that enters. For example when the human user enters an entity, Controls that update the user interface (<a href="http://code.google.com/p/monkeyzone/source/browse/trunk/src/com/jme3/monkeyzone/controls/DefaultHUDControl.java">DefaultHUDControl</a>) or user input (<a href="http://code.google.com/p/monkeyzone/source/browse/trunk/src/com/jme3/monkeyzone/controls/UserInputControl.java">UserInputControl</a>) are added to the current entity Spatial.</p>
<h5>As entity capabilities</h5>
<p>Controls attached to Spatials are generally used like an &#8220;array of capabilities&#8221; that the entity posesses. So when an entity has a VehicleControl its expected to be a vehicle, when its got a CharacterControl its expected to be a character.<br />
Other Controls work completely on their own, like <a href="http://code.google.com/p/monkeyzone/source/browse/trunk/src/com/jme3/monkeyzone/controls/CharacterAnimControl.java">CharacterAnimControl</a> which just uses the CharacterControl of the entity to check if the character is running, jumping etc. and then animates the entity if it has an AnimControl.</p>
<h5>To abstract</h5>
<p>Furthermore theres special interfaces for Controls that allow abstraction of different Controls into one base interface. For example <a href="http://code.google.com/p/monkeyzone/source/browse/trunk/src/com/jme3/monkeyzone/controls/ManualControl.java">ManualControl</a> and <a href="http://code.google.com/p/monkeyzone/source/browse/trunk/src/com/jme3/monkeyzone/controls/AutonomousControl.java">AutonomousControl</a> are interfaces for controls that manage the movement of a spatial in a generalized way. This way AI code and e.g. the UserInputControl only have to check for a valid AutonomousControl or ManualControl on the spatial to control and move it. The details of the movement are handled by classes like <a href="http://code.google.com/p/monkeyzone/source/browse/trunk/src/com/jme3/monkeyzone/controls/ManualVehicleControl.java">ManualVehicleControl</a> and <a href="http://code.google.com/p/monkeyzone/source/browse/trunk/src/com/jme3/monkeyzone/controls/AutonomousCharacterControl.java">AutonomousCharacterControl</a>.</p>
<h5>For AI functions</h5>
<p>A special Control called CommandControl handles the Commands that can be executed by user controlled players, see below.</p>
<h4 id='Artificial-Intelligence'>Artificial Intelligence</h4>
<p>MonkeyZone includes simple AI functions based on a command queue.</p>
<h5>Commands</h5>
<p>To implement autonomous AI players MonkeyZone uses a system of <a href="http://code.google.com/p/monkeyzone/source/browse/trunk/src/com/jme3/monkeyzone/ai/Command.java">Commands</a> that are managed by a <a href="http://code.google.com/p/monkeyzone/source/browse/trunk/src/com/jme3/monkeyzone/controls/CommandControl.java">CommandControl</a> that is attached to each AI player entity controlled by the user. This CommandControl manages a list of Commands that are executed based on priority. For example theres a <a href="http://code.google.com/p/monkeyzone/source/browse/trunk/src/com/jme3/monkeyzone/ai/commands/MoveCommand.java">MoveCommand</a>, a <a href="http://code.google.com/p/monkeyzone/source/browse/trunk/src/com/jme3/monkeyzone/ai/commands/FollowCommand.java">FollowCommand</a> and an <a href="http://code.google.com/p/monkeyzone/source/browse/trunk/src/com/jme3/monkeyzone/ai/commands/AttackCommand.java">AttackCommand</a>, Commands can however implement more complete behavior than that, e.g. the complete logic for a scavenging entity.</p>
<h5>Triggers</h5>
<p>The <a href="http://code.google.com/p/monkeyzone/source/browse/trunk/src/com/jme3/monkeyzone/ai/SphereTrigger.java">SphereTrigger</a> is a TriggerControl that is also attached to each AI players current entity. It consists of a GhostControl that checks the overlapping entities around the entity its attached to. It can be assigned a command that is checked with every entity entering the SphereTrigger and executed if applicable (e.g. normal &#8220;attack enemy&#8221; mode).</p>
<h5>NavMesh</h5>
<p>For each map a navigation mesh is generated that allows the entities to navigate the terrain. Autonomous entities automatically get a <a href="http://code.google.com/p/monkeyzone/source/browse/trunk/src/com/jme3/monkeyzone/controls/NavigationControl.java">NavigationControl</a> based on the current map. The AutonomousControl implementations automatically recognize the NavigationControl attached to the Spatial and use it for navigation. The <a href="http://code.google.com/p/monkeyzone/source/browse/trunk/src/com/jme3/monkeyzone/controls/NavMeshNavigationControl.java">NavMeshNavigationControl</a> implementation contains a reference to the levels NavMesh and implements a navigation algorithm similar to the A* algorithm.</p>
<h4 id='Networking'>Networking</h4>
<p>Networking is realized in the <a href="http://code.google.com/p/monkeyzone/source/browse/trunk/src/com/jme3/network/physicssync/PhysicsSyncManager.java">PhysicsSyncManager</a> which we hope to extend to a state where it can serve as a general sync system for physics based network games.<br />
The sync manager basically puts a timestamp on every message sent from the server and then buffers all arriving messages on the client within a certain time window. This allows to compensate for messages arriving too soon or too late within the constraints of the buffer, a future version might step the clients physics space different to compensate for network delays without &#8220;snapping&#8221;.</p>
<p><a href="http://i.imgur.com/Gtc5a.jpg"><img class="alignright" title="Editing in jMonkeyPlatform" src="http://i.imgur.com/Gtc5a.jpg" alt="" width="222" height="240" /></a></p>
<h3 id='Use-of-jMonkeyPlatform-tools'>Use of jMonkeyPlatform tools</h3>
<p>All assets used in the game, like entity models and loaded maps can be preconfigured and edited using jMonkeyPlatform. For example, to add a new vehicle type, a vehicle is created in the <span class="domtooltips">jMP<span class="domtooltips_tooltip" style="display: none">The jMonkeyPlatform, a full-fledged IDE with plugins for editing jME3 content and assets. Integral part of the jME3 SDK.</span></span> vehicle editor and UserData like Speed, HitPoints etc. is applied directly in the editor. When the model is loaded in the game it is automatically configured based on these settings, the same accounts for maps that are loaded, special Nodes that mark e.g. player start locations are recognized automatically etc.</p>
<h5>UserData</h5>
<p>Entities that are loaded from disk have certain UserData like HitPoints, Speed etc. that is used to configure the entity at runtime. <span class="domtooltips">jMP<span class="domtooltips_tooltip" style="display: none">The jMonkeyPlatform, a full-fledged IDE with plugins for editing jME3 content and assets. Integral part of the jME3 SDK.</span></span> allows adding and editing this UserData so entity properties are editable visually.</p>
<h5>Physics</h5>
<p>VehicleControls, CharacterControls and RigidBodyControls with mesh collision shape for terrain and objects are generated in <span class="domtooltips">jMP<span class="domtooltips_tooltip" style="display: none">The jMonkeyPlatform, a full-fledged IDE with plugins for editing jME3 content and assets. Integral part of the jME3 SDK.</span></span> and saved in the entity j3o file. When an entity is loaded, the type of entity is identified based on the available controls and UserData and it is configured accordingly.</p>
<h3 id='The-Future'>The Future</h3>
<p>I hope to get to talk about MonkeyZone some more when it gets more mature, for now have a look at the code and feel free to ask about it, if you want any new features, you are free to implement them <img src='http://jmonkeyengine.org/wp-includes/images/smilies/chimpanzee-wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>MonkeyZone is <a href="http://code.google.com/p/monkeyzone/">hosted at GoogleCode</a>, where you can checkout the jMonkeyPlatform project via svn:</p>
<p><code>Team-&gt;Subversion-&gt;Checkout</code> and enter the URL <code>http://monkeyzone.googlecode.com/svn/trunk/</code><br />
After downloading and opening the project, run a server first and then a client.</p>
<p>Cheers,<br />
The jMonkeyEngine Team</p>
<div style="height:33px;" class="really_simple_share robots-nocontent snap_nopreview"><div class="really_simple_share_facebook_like" style="width:120px;"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fjmonkeyengine.org%2F2011%2F02%2F13%2Fmonkeyzone-a-jme3-game-from-the-core%2F&amp;layout=button_count&amp;show_faces=false&amp;width=120&amp;action=like&amp;colorscheme=light&amp;send=false&amp;height=27" 
						scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:120px; height:27px;" allowTransparency="true"></iframe></div><div class="really_simple_share_google1" style="width:90px;"><div class="g-plusone" data-size="medium" data-href="http://jmonkeyengine.org/2011/02/13/monkeyzone-a-jme3-game-from-the-core/" ></div></div><div class="really_simple_share_twitter" style="width:120px;"><a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal" 
						data-text="MonkeyZone – a jME3 game from the core" data-url="http://jmonkeyengine.org/2011/02/13/monkeyzone-a-jme3-game-from-the-core/" 
						data-via=""  ></a></div></div>
		<div style="clear:both;"></div>]]></content:encoded>
			<wfw:commentRss>http://jmonkeyengine.org/2011/02/13/monkeyzone-a-jme3-game-from-the-core/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>New advanced water effect for jMonkeyEngine 3</title>
		<link>http://jmonkeyengine.org/2011/01/15/new-advanced-water-effect-for-jmonkeyengine-3/</link>
		<comments>http://jmonkeyengine.org/2011/01/15/new-advanced-water-effect-for-jmonkeyengine-3/#comments</comments>
		<pubDate>Sat, 15 Jan 2011 16:29:41 +0000</pubDate>
		<dc:creator>nehon</dc:creator>
				<category><![CDATA[Feature]]></category>
		<category><![CDATA[Filter]]></category>
		<category><![CDATA[jME3]]></category>
		<category><![CDATA[nehon]]></category>
		<category><![CDATA[post processing]]></category>
		<category><![CDATA[TestPostWater]]></category>
		<category><![CDATA[TestPostWaterLake]]></category>
		<category><![CDATA[Water]]></category>

		<guid isPermaLink="false">http://jmonkeyengine.org/?p=1211</guid>
		<description><![CDATA[Some of you may have seen it on the forum, but JME3 now has a brand new Water effect This effect is based on Wojciech Toman&#8217;s Rendering Water as a Post-process Effect published on gamedev.net. Explanations In this article the author uses the effect in a deferred rendering process, taking advantage of the pre-computed position buffer and [...]]]></description>
			<content:encoded><![CDATA[<p>Some of you may have seen it on the forum, but JME3 now has a brand new Water effect</p>
<p><object width="591" height="332"><param name="movie" value="http://www.youtube.com/v/AWlUzgRN3Pc?version=3"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/AWlUzgRN3Pc?version=3" type="application/x-shockwave-flash" width="591" height="332" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>This effect is based on Wojciech Toman&#8217;s <a href="http://www.gamedev.net/page/reference/index.html/_//feature/fprogramming/rendering-water-as-a-post-process-effect-r2642" target="_blank">Rendering <em>Water</em> as a <em>Post</em>-<em>process</em> Effect</a> published on gamedev.net.</p>
<p><span id="more-1211"></span></p>
<h3>Explanations</h3>
<p>In this article the author uses the effect in a deferred rendering process, taking advantage of the pre-computed position buffer and back buffer (a texture representing the screen&#8217;s pixels position in view space, and a texture of the rendered scene).</p>
<p>After some calculation this allows to reconstruct the position in world space for each pixel on the screen. If a pixel is under a given water height, let&#8217;s render it as a blue pixel!</p>
<p>Blue pixel? Not exactly, we want waves, we want ripples, we want foam, we want reflection and refraction.</p>
<p>The GD.net article describes how those effects are achieved, but the main idea is to generate waves from a height map, create ripples from a normal map, blend in the foam texture when the water depth is below a certain height, compute the refraction color with a clever color extinction algorithm, and then, display the reflection and specular effect by computing a Fresnel term (like in standard water effect). In addition this effect, allow to blend the water shore with the ground to avoid the hard edges effect of classic water effects based on grids or quads.</p>
<h3>How did we implement it in jME3?</h3>
<p>jME3 default behavior is to use a forward rendering process, so there is no position buffer rendered that we can take advantage of. But while rendering the main scene to a frame buffer in the FilterPostPorcessor, we can write the hardware depth buffer to a texture, with nearly no additional cost.</p>
<p>I won&#8217;t go into the details of this, but there are several ways of reconstructing the world space position of a pixel from the depth buffer. The computational cost is higher than just fetching the position form a position buffer, but the bandwidth and the memory required is a lot lower.</p>
<p>So.., we have the rendered scene in a texture, and we can reconstruct the position in world space of each pixel&#8230; We&#8217;re good to go!</p>
<h3>Usage</h3>
<p>There are two tests cases in the jME3 repository :  <a href="http://code.google.com/p/jmonkeyengine/source/browse/branches/jme3/src/test/jme3test/water/TestPostWater.java?r=6429" target="_blank">TestPostWater</a> that is the <span class="domtooltips">test case<span class="domtooltips_tooltip" style="display: none">A small, self-contained application class that shows the effects of a problem. It should use only default assets so that it can be posted in the forum in code tags and run as-is by the developers.</span></span> shown in the video above, and <a href="http://code.google.com/p/jmonkeyengine/source/browse/branches/jme3/src/test/jme3test/water/TestPostWaterLake.java?r=6429" target="_blank">TestPostWaterLake </a>that is a test with a more calm and muddy water pond.</p>
<p>Those test cases demonstrate two main characteristics of this effect :</p>
<ul>
<li>OMFG!! friggin awesome!!!</li>
<li>Highly configurable effect that can render any type of water</li>
</ul>
<p>Enjoy little monkeys!</p>
<p>Nehon</p>
<div style="height:33px;" class="really_simple_share robots-nocontent snap_nopreview"><div class="really_simple_share_facebook_like" style="width:120px;"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fjmonkeyengine.org%2F2011%2F01%2F15%2Fnew-advanced-water-effect-for-jmonkeyengine-3%2F&amp;layout=button_count&amp;show_faces=false&amp;width=120&amp;action=like&amp;colorscheme=light&amp;send=false&amp;height=27" 
						scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:120px; height:27px;" allowTransparency="true"></iframe></div><div class="really_simple_share_google1" style="width:90px;"><div class="g-plusone" data-size="medium" data-href="http://jmonkeyengine.org/2011/01/15/new-advanced-water-effect-for-jmonkeyengine-3/" ></div></div><div class="really_simple_share_twitter" style="width:120px;"><a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal" 
						data-text="New advanced water effect for jMonkeyEngine 3" data-url="http://jmonkeyengine.org/2011/01/15/new-advanced-water-effect-for-jmonkeyengine-3/" 
						data-via=""  ></a></div></div>
		<div style="clear:both;"></div>]]></content:encoded>
			<wfw:commentRss>http://jmonkeyengine.org/2011/01/15/new-advanced-water-effect-for-jmonkeyengine-3/feed/</wfw:commentRss>
		<slash:comments>21</slash:comments>
		</item>
		<item>
		<title>Interview with solo developer of Marble Mania, the first jME3 game</title>
		<link>http://jmonkeyengine.org/2010/12/04/interview-with-solo-developer-of-marble-mania-the-first-jme3-game/</link>
		<comments>http://jmonkeyengine.org/2010/12/04/interview-with-solo-developer-of-marble-mania-the-first-jme3-game/#comments</comments>
		<pubDate>Sat, 04 Dec 2010 16:16:50 +0000</pubDate>
		<dc:creator>Erlend Sogge Heggen</dc:creator>
				<category><![CDATA[Interview]]></category>
		<category><![CDATA[Creativ]]></category>
		<category><![CDATA[Dennis Franke]]></category>
		<category><![CDATA[game]]></category>
		<category><![CDATA[indie]]></category>
		<category><![CDATA[interview]]></category>
		<category><![CDATA[jME3]]></category>
		<category><![CDATA[Marble Mania]]></category>
		<category><![CDATA[marbles]]></category>
		<category><![CDATA[niftygui]]></category>
		<category><![CDATA[physics]]></category>
		<category><![CDATA[spidermonkey]]></category>

		<guid isPermaLink="false">http://jmonkeyengine.org/?p=1087</guid>
		<description><![CDATA[The very first complete jME3-powered game around is right around the corner. Just in time before official launch, I got in touch with Dennis Franke @Creativ who singlehandedly developed Marble Mania over the past several months. Want to know what it&#8217;s been like to develop a game with jMonkeyEngine 3, all the while with the [...]]]></description>
			<content:encoded><![CDATA[<p>The very first <em>complete</em> jME3-powered game around is right around the corner. Just in time before official launch, I got in touch with Dennis Franke @Creativ who singlehandedly developed <a href="http://marblemania.net/">Marble Mania</a> over the past several months. Want to know what it&#8217;s been like to develop a game with jMonkeyEngine 3, all the while with the <em>alpha</em> tag still on it? Here&#8217;s the interview.</p>
<p><object width="591" height="332"><param name="movie" value="http://www.youtube.com/v/ohYz8lhyt5s?version=3"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/ohYz8lhyt5s?version=3" type="application/x-shockwave-flash" width="591" height="332" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p><span id="more-1087"></span></p>
<p style="padding-left: 30px;"><strong>Please make a brief introduction of yourself. -What’s your background in programming / game development? -When and how did you start your journey with jME?</strong></p>
<p style="padding-left: 30px;"><em>My Name is Dennis Franke, 21 years old and I&#8217;m currently living in Braunschweig, Germany, and I study Computer Science at the TU Braunschweig. I started programming when I was about 13 years old with HTML and PHP and continued programming with PHP for about 5 years. After learning C++ and Visual Basic for a short period of time I switched to Java and stayed with it until now. Besides some small 2D Games with Java I made my first small 3D-Game with Java3D, but since Java3D is pretty much dead and there weren&#8217;t that many people that could help me, I decided to use JMonkeyEngine instead.<br />
My first Game with JMonkeyEngine 2 was a small Game about the TV-Series Scrubs where you could walk around in the hospital and do a few Missions.<br />
When I saw jME3 come out I decided to do another Game with the JME and so I started working on Return of the Warlord, but I never really finished it, since the Basis of RotW was a little messed up and after a short break I started with the first Prototype of Marble Mania.</em></p>
<p style="padding-left: 30px;"><strong>By itself an impressive one-man effort, Marble Mania is the first complete game powered by jMonkeyEngine 3. What possessed you make a game with early alpha software?</strong></p>
<p style="padding-left: 30px;"><em>Since I already knew from my experience with jME2 that the Community is really friendly and always helps I figured why not do some testing with jME3 and after the first few tests I really liked jME3 and so I also used it for  Return of the Warlord and Marble Mania and until now I didn&#8217;t regret my Decision to use jME3. Most of the time there were only small changes to the API and so I never really had trouble after updating my Source with the SVN. Only a couple of times it took some time to fix some Issues I had after updating.<br />
In my Opinion jMonkeyEngine 3 is already really stable and there are only minor changes to the API, so I can advice everyone thinking about using jME3 to do so.</em></p>
<p style="padding-left: 30px;"><strong>How many hours do you reckon you’ve put into this game? When did the initial design stage begin?</strong></p>
<p style="padding-left: 30px;"><em>I had the initial Idea for Marble Mania at the end of last Semester, which would be somewhere around July. During the Semester break I wrote the first small Prototype and collected some Ideas, for example the Skills were actually not planned in my first Prototype. Since then I&#8217;ve spent a LOT of time working on Marble Mania. I don&#8217;t have an exact number, but if I would have to guess I would say I spent at least 100 Hours working on Marble Mania.</em></p>
<p style="padding-left: 30px;"><strong>What are your plans for the game?</strong></p>
<p style="padding-left: 30px;"><em>For now my Plan is to get a stable Version ready and online and do some Marketing for Marble Mania, so that some People are actually playing it. My Goal is, that there are most of the time a few People playing so that you can just start the Game and there are already People online and you can just start playing against someone else, without having to wait until somebody else joins the Game.<br />
Everything more than this goal is just a bonus for me.</em></p>
<p style="padding-left: 30px;"><em>I&#8217;m also planning some fun stuff for the Release of Marble Mania, but I&#8217;ll let you know more about that later.</em></p>
<p style="padding-left: 30px;"><strong>What kind of work took up the majority of your time; toolsets, graphics, game logic or something else entirely?</strong></p>
<p style="padding-left: 30px;"><em>Most of my time I spend working on the game logic and creating the game design of Marble Mania and right now I&#8217;m spending most of my time working on the Network-Layer for Marble Mania, because there are a couple of bugs left in SpiderMonkey that are holding me back from releasing a (hopefully) stable Version. But the Bugs should be fixed pretty soon and then I should be able to get a stable Version out there.</em></p>
<p style="padding-left: 30px;"><em>The graphics for Marble Mania were actually done pretty quick, because I&#8217;m really bad at designing graphics and I thought I would just create some placeholders for now and change them later, but after I saw the graphics in the Game I enjoyed the look of it and so I decided to keep them.</em></p>
<p style="padding-left: 30px;"><strong>Along with being an early jME3 adopter, you were maybe the <em>first</em> developer to adopt SpiderMonkey. How would you say SM matched up against your initial networking implementation, and what pros and cons are there to speak of?</strong></p>
<p style="padding-left: 30px;"><em>Compared to my own network implementation, which was still in a really early state, SpiderMonkey is much faster and SpiderMonkey also has some nice Features that make working with it much easier. Most of the time they are only some small Features, e.g. I enjoyed that I could add a Message-Listener for an specific Message.</em></p>
<p style="padding-left: 30px;"><em>SM also needs much less Heap Space than my own Implementation, which was based on Threads and java.io instead of java.nio. Thus I had to create a Thread for each Client which needed a lot of Heap Space.</em></p>
<p style="padding-left: 30px;"><em>Based on my experience with SpiderMonkey it is going to be a really cool feature of jMonkeyEngine.</em></p>
<p style="padding-left: 30px;"><strong>You used NiftyGUI for your interface. Any constructive feedback to offer the library’s author?</strong></p>
<p style="padding-left: 30px;"><em>I really enjoyed working with Nifty GUI, because in my Opinion it is really intuitive, but I had some trouble getting used to the layout in Nifty GUI.<br />
I&#8217;m not quite sure wether there is some new Documentation online, but when I started working with Nifty GUI there wasn&#8217;t that much documentation about the layout in Nifty GUI.</em></p>
<p style="padding-left: 30px;"><em>Another thing is, that I find it kind of complicated to change for example the Images for a button or a textfield, so I would really appreciate it if the author could change it, so that it&#8217;s easier to change the Image, for example by defining the image in the XML-File.</em></p>
<p style="padding-left: 30px;"><em>Other than that I had lots of fun working with Nifty GUI and was impressed how easy it is to create a good-looking Menu with Nifty GUI.</em></p>
<p style="padding-left: 30px;"><strong>Could you go into some detail about your art pipeline?</strong></p>
<p style="padding-left: 30px;"><em>I&#8217;m not quite sure wether you really want to call it an art pipeline, because I didn&#8217;t really do that much art for Marble Mania, but I did some Prototypes to test the gameplay and see what it looks like and if it could be fun to play.</em></p>
<p style="padding-left: 30px;"><em>I also made some drawings of the different menus and for the Level-Design I did some paper-prototypes to check wether they could be fun or not and since they only contain basic shapes I decided to code the levels directly into the Source instead of importing them, which gives me much more possibilities than having to write everything into the importer.</em></p>
<p style="padding-left: 30px;"><em>All other art in Marble Mania was created pretty much on the fly when I needed them, so there isn&#8217;t really an art pipeline.</em></p>
<p style="padding-left: 30px;"><strong>Best and worst parts of jMonkeyEngine 3.0?</strong></p>
<p style="padding-left: 30px;"><em>Best parts:<br />
- Already pretty stable (only minor changes to the API)<br />
- Easy to start with<br />
- Great Physics-Implementation<br />
- Easy to create a GUI with Nifty GUI<br />
- Great Network-Layer</em></p>
<p style="padding-left: 30px;"><em>Worst parts:<br />
- The new Material-System is kind of confusing in the beginning</em></p>
<p>A big thanks to Dennis Franke for taking the time aside to answer the questions for this interview.</p>
<p>Go check out the <a href="http://jmonkeyengine.org/groups/marble-mania/">Marble Mania project</a> listing here on jmonkeyengine.org to keep up with the latest tweets and blogposts from the developer site <a href="http://bazinga-productions.com/">Bazinga Productions</a>.</p>
<div style="height:33px;" class="really_simple_share robots-nocontent snap_nopreview"><div class="really_simple_share_facebook_like" style="width:120px;"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fjmonkeyengine.org%2F2010%2F12%2F04%2Finterview-with-solo-developer-of-marble-mania-the-first-jme3-game%2F&amp;layout=button_count&amp;show_faces=false&amp;width=120&amp;action=like&amp;colorscheme=light&amp;send=false&amp;height=27" 
						scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:120px; height:27px;" allowTransparency="true"></iframe></div><div class="really_simple_share_google1" style="width:90px;"><div class="g-plusone" data-size="medium" data-href="http://jmonkeyengine.org/2010/12/04/interview-with-solo-developer-of-marble-mania-the-first-jme3-game/" ></div></div><div class="really_simple_share_twitter" style="width:120px;"><a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal" 
						data-text="Interview with solo developer of Marble Mania, the first jME3 game" data-url="http://jmonkeyengine.org/2010/12/04/interview-with-solo-developer-of-marble-mania-the-first-jme3-game/" 
						data-via=""  ></a></div></div>
		<div style="clear:both;"></div>]]></content:encoded>
			<wfw:commentRss>http://jmonkeyengine.org/2010/12/04/interview-with-solo-developer-of-marble-mania-the-first-jme3-game/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>jMonkeyEngine3 SDK Alpha-3 released!</title>
		<link>http://jmonkeyengine.org/2010/11/23/jmonkeyengine3-sdk-alpha-3-released/</link>
		<comments>http://jmonkeyengine.org/2010/11/23/jmonkeyengine3-sdk-alpha-3-released/#comments</comments>
		<pubDate>Tue, 23 Nov 2010 01:10:21 +0000</pubDate>
		<dc:creator>Normen Hansen</dc:creator>
				<category><![CDATA[Official Release]]></category>
		<category><![CDATA[alpha3]]></category>
		<category><![CDATA[jME3]]></category>
		<category><![CDATA[release]]></category>

		<guid isPermaLink="false">http://jmonkeyengine.org/?p=804</guid>
		<description><![CDATA[We&#8217;re happy to announce the release of jMonkeyEngine3 SDK Alpha-3! This release sees many additions like terrain and networking and also jMonkeyPlatform has been improved with many additions and fixes. To celebrate the achievements, we have created a new video for this release, showing some of the code examples and jMonkeyPlatform in action. Enjoy: The [...]]]></description>
			<content:encoded><![CDATA[<p>We&#8217;re happy to announce the release of jMonkeyEngine3 SDK Alpha-3!</p>
<p>This release sees many additions like terrain and networking and also jMonkeyPlatform has been improved with many additions and fixes. To celebrate the achievements, we have created a new video for this release, showing some of the code examples and jMonkeyPlatform in action. Enjoy:</p>
<p><object width="591" height="332"><param name="movie" value="http://www.youtube.com/v/Ar1QhVFyZRY?version=3"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/Ar1QhVFyZRY?version=3" type="application/x-shockwave-flash" width="591" height="332" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p><span id="more-804"></span><br />
The newly added terrain and networking systems have been tested by users of the nightly version and most bugs have been squished already. See a list of the most important changes in jMonkeyEngine3 SDK Alpha-3:</p>
<p><strong>jMonkeyEngine</strong><br />
- <a href="http://jmonkeyengine.org/2010/09/21/terramonkey-alpha-released/">Terrain system</a><br />
- <a href="http://jmonkeyengine.org/2010/09/15/introducing-spidermonkey-in-jmonkeyengine-3/">Networking System</a><br />
- Blur filter<br />
- <a href="http://jmonkeyengine.org/groups/development-discussion-jme3/forum/topic/jme3-now-glows/">Glow map textures</a><br />
- Bullet physics now an AppState (easily create/switch multiple physics spaces)<br />
- More/Updated tests<br />
- Local updates (no more rootNode.updateGeometricState())<br />
- Fixes (AssetLinkNode, Collision etc..)</p>
<p><strong>jMonkeyPlatform</strong><br />
- Welcome Screen<br />
- <a href="http://jmonkeyengine.org/groups/jmonkeyplatform/forum/topic/new-model-import-wizard-for-jmonkeyplatform/">Model Import Wizard</a><br />
- <a href="http://jmonkeyengine.org/2010/10/29/jme3-assetpacks-a-new-way-to-share-jme3-assets/">Asset Packs</a><br />
- <a href="http://jmonkeyengine.org/groups/jmonkeyplatform/forum/topic/afraid-to-switch-to-jmp-for-coding-introducing-asset-only-projects-for-jmp/">Codeless projects</a> (manage other IDE projects assets in <span class="domtooltips">jMP<span class="domtooltips_tooltip" style="display: none">The jMonkeyPlatform, a full-fledged IDE with plugins for editing jME3 content and assets. Integral part of the jME3 SDK.</span></span>)<br />
- <a href="http://jmonkeyengine.org/2010/10/06/neotextureeditor-for-jmonkeyplatform-is-here-more-plugins-coming/">NeoTextureEditor</a> &amp; NeoTexture plugin (via Contribution Update Center)<br />
- <a href="http://jmonkeyengine.org/groups/jmonkeyplatform/forum/topic/new-applet-and-desktop-deployment-options-in-jmonkeyplatform/">Desktop and Applet Deployment</a><br />
- <a href="http://jmonkeyengine.org/groups/jmonkeyplatform/forum/topic/niftygui-previews-now-work/">NiftyGUI XML Previews</a><br />
- Terrain Support (Editor WIP)<br />
- Binary Ogre files support<br />
- Improved Help System (Docs are stored local, search works now)<br />
- Add jMonkeyEngine3 wiki content to Help System<br />
- Bugfixes (e.g. edit-resistant example projects etc.)</p>
<p><strong>Uninstalling jMonkeyPlatform Alpha-2</strong><br />
For all existing users its recommended that you uninstall your current version of jMonkeyPlatform without deleting the settings folder and then install Alpha-3.</p>
<p>Windows:<br />
- Select jMonkeyPlatform in your installed software list and uninstall it<br />
- (Alternatively) Double-click the uninstall.exe in the jmonkeyplatform folder<br />
- Go through the uninstall wizard</p>
<p>Linux:<br />
- Run the uninstall.sh file in the jMonkeyPlatform install folder<br />
- Go through the uninstall wizard</p>
<p>MacOSX:<br />
- Right click the jMonkeyPlatform application and select &#8220;show contents&#8221;<br />
- Double-click the uninstall.command file in the folder that opens<br />
- Go through the uninstall wizard<br />
- Delete the empty jMonkeyPlatform application.</p>
<p><strong>Downloading jMonkeyPlatform Alpha-3</strong><br />
Download jMonkeyEngine3 SDK Alpha-3 in our <a href="http://jmonkeyengine.org/downloads/">download section</a>.</p>
<p>Happy coding,<br />
The jMonkeyEngine Team</p>
<div style="height:33px;" class="really_simple_share robots-nocontent snap_nopreview"><div class="really_simple_share_facebook_like" style="width:120px;"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fjmonkeyengine.org%2F2010%2F11%2F23%2Fjmonkeyengine3-sdk-alpha-3-released%2F&amp;layout=button_count&amp;show_faces=false&amp;width=120&amp;action=like&amp;colorscheme=light&amp;send=false&amp;height=27" 
						scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:120px; height:27px;" allowTransparency="true"></iframe></div><div class="really_simple_share_google1" style="width:90px;"><div class="g-plusone" data-size="medium" data-href="http://jmonkeyengine.org/2010/11/23/jmonkeyengine3-sdk-alpha-3-released/" ></div></div><div class="really_simple_share_twitter" style="width:120px;"><a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal" 
						data-text="jMonkeyEngine3 SDK Alpha-3 released!" data-url="http://jmonkeyengine.org/2010/11/23/jmonkeyengine3-sdk-alpha-3-released/" 
						data-via=""  ></a></div></div>
		<div style="clear:both;"></div>]]></content:encoded>
			<wfw:commentRss>http://jmonkeyengine.org/2010/11/23/jmonkeyengine3-sdk-alpha-3-released/feed/</wfw:commentRss>
		<slash:comments>24</slash:comments>
		</item>
		<item>
		<title>Introducing SpiderMonkey in jMonkeyEngine 3</title>
		<link>http://jmonkeyengine.org/2010/09/15/introducing-spidermonkey-in-jmonkeyengine-3/</link>
		<comments>http://jmonkeyengine.org/2010/09/15/introducing-spidermonkey-in-jmonkeyengine-3/#comments</comments>
		<pubDate>Wed, 15 Sep 2010 19:27:12 +0000</pubDate>
		<dc:creator>Lars Wesselius</dc:creator>
				<category><![CDATA[Feature]]></category>
		<category><![CDATA[feature]]></category>
		<category><![CDATA[jME3]]></category>
		<category><![CDATA[Levia]]></category>
		<category><![CDATA[library]]></category>
		<category><![CDATA[networking]]></category>
		<category><![CDATA[spidermonkey]]></category>

		<guid isPermaLink="false">http://jmonkeyengine.org/?p=514</guid>
		<description><![CDATA[Two news items combined into one today. But first, an introduction: SpiderMonkey is a high performance Java networking engine. It is efficient, yet simple to use. Setting up a client/server mechanism requires no more than basic Java knowledge. The same goes for sending and receiving objects – in other words: Every monkey can use it! [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Two news items combined into one today. But first, an introduction:</strong></p>
<blockquote><p><a href="http://jmonkeyengine.org/groups/spidermonkey/">SpiderMonkey</a> is a high performance Java networking engine. It is efficient, yet simple to use. Setting up a client/server mechanism requires no more than basic Java knowledge. The same goes for sending and receiving objects – in other words: Every monkey can use it!</p></blockquote>
<p><span id="more-514"></span></p>
<h3>jME3 now has a default networking engine</h3>
<p>Let&#8217;s start with that SpiderMonkey is now part of jMonkeyEngine 3! This means that you monkeys can now use networking straight out of the box. You can find SpiderMonkey in the latest SVN revision &#8211; let us know if you run in to any problems; we&#8217;re always happy to assist you!</p>
<h3>SpiderMonkey 0.9 &#8211; first alpha</h3>
<p>This is also the right time to announce the 0.9 alpha version of SpiderMonkey! After about a month&#8217;s work, I feel it&#8217;s far enough to put it out there. With the help of pgi, Ractoc, and Creativ, we&#8217;ve managed to get SpiderMonkey as bug free as possible. There are, of course, always more bugs to be found &#8211; that&#8217;s where you come in <img src='http://jmonkeyengine.org/wp-includes/images/smilies/chimpanzee-wink.gif' alt=';)' class='wp-smiley' /> </p>
<ul>
<li>JAR <a href="http://codeninja.me/SpiderMonkey/SpiderMonkey0.9_Alpha.jar" target="_blank">here</a></li>
<li><a href="http://codeninja.me/SpiderMonkey/SpiderMonkey0.9_Alpha.jar" target="_blank"></a>original source <a href="http://codeninja.me/SpiderMonkey/SpiderMonkey0.9_src_Alpha.jar" target="_blank">here</a>, new source <a href="http://code.google.com/p/jmonkeyengine/source/browse/#svn/branches/jme3/src/networking/com/jme3/network">here</a> (so fetch the latest source if you&#8217;re already set up with jME3).</li>
<li><a href="http://codeninja.me/SpiderMonkey/SpiderMonkey0.9_src_Alpha.jar" target="_blank"></a>documentation <a href="http://codeninja.me/SpiderMonkey/docs/" target="_blank">here</a></li>
<li><a href="http://codeninja.me/SpiderMonkey/docs/" target="_blank"></a>support <a href="http://jmonkeyengine.org/groups/spidermonkey/forum/">here</a></li>
</ul>
<p><em>Do note:</em> SpiderMonkey will still be available as a separate JAR if you choose to use it outside of jME. Happy networking!</p>
<p><em>~ Lars Wesselius &#8220;Levia&#8221;</em></p>
<div style="height:33px;" class="really_simple_share robots-nocontent snap_nopreview"><div class="really_simple_share_facebook_like" style="width:120px;"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fjmonkeyengine.org%2F2010%2F09%2F15%2Fintroducing-spidermonkey-in-jmonkeyengine-3%2F&amp;layout=button_count&amp;show_faces=false&amp;width=120&amp;action=like&amp;colorscheme=light&amp;send=false&amp;height=27" 
						scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:120px; height:27px;" allowTransparency="true"></iframe></div><div class="really_simple_share_google1" style="width:90px;"><div class="g-plusone" data-size="medium" data-href="http://jmonkeyengine.org/2010/09/15/introducing-spidermonkey-in-jmonkeyengine-3/" ></div></div><div class="really_simple_share_twitter" style="width:120px;"><a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal" 
						data-text="Introducing SpiderMonkey in jMonkeyEngine 3" data-url="http://jmonkeyengine.org/2010/09/15/introducing-spidermonkey-in-jmonkeyengine-3/" 
						data-via=""  ></a></div></div>
		<div style="clear:both;"></div>]]></content:encoded>
			<wfw:commentRss>http://jmonkeyengine.org/2010/09/15/introducing-spidermonkey-in-jmonkeyengine-3/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>jMonkeyEngine 3 SDK Alpha-2 Released!</title>
		<link>http://jmonkeyengine.org/2010/08/29/jmonkeyengine-3-sdk-alpha-2-released/</link>
		<comments>http://jmonkeyengine.org/2010/08/29/jmonkeyengine-3-sdk-alpha-2-released/#comments</comments>
		<pubDate>Sun, 29 Aug 2010 19:23:15 +0000</pubDate>
		<dc:creator>Normen Hansen</dc:creator>
				<category><![CDATA[Official Release]]></category>
		<category><![CDATA[jME3]]></category>
		<category><![CDATA[jmonkeyplatform]]></category>

		<guid isPermaLink="false">http://jmonkeyengine.com/blog/?p=366</guid>
		<description><![CDATA[The jMonkeyEngine team is happy to announce the release of jMonkeyEngine3 SDK Alpha-2! Many improvements have been made to the core jMonkeyEngine as well as to the jMonkeyPlatform since Alpha-1 and generally jME3 is gaining more and more steam. We are happy to see many new users and even contributors and that tells us that [...]]]></description>
			<content:encoded><![CDATA[<p>The jMonkeyEngine team is happy to announce the release of jMonkeyEngine3 SDK Alpha-2!</p>
<p>Many improvements have been made to the core jMonkeyEngine as well as to the jMonkeyPlatform since Alpha-1 and generally jME3 is gaining more and more steam. We are happy to see many new users and even contributors and that tells us that we are on the right way. Everybody is very determined to make the jME3 SDK a premier OpenGL and game development tool and we are just as eager as you to see a beta soon <img src='http://jmonkeyengine.org/wp-includes/images/smilies/chimpanzee-wink.gif' alt=';)' class='wp-smiley' /> .</p>
<p><span id="more-374"></span></p>
<p>See a partial list of changes hee:</p>
<h4>jMonkeyEngine</h4>
<ul>
<li> PSSM / SSAO</li>
<li> Picking / Collision fixed</li>
<li> New Input System</li>
<li> Many Physics improvements, esp. Vehicle</li>
<li>Physics load/save</li>
<li>First implementation of a water shader (<a href="http://www.jmonkeyengine.com/forum/index.php?topic=14740.0">WIP</a>)</li>
<li>Many small bug fixes and added methods</li>
</ul>
<div><strong>jMonkeyPlatform</strong></div>
<ul>
<li> Way faster <span class="domtooltips">jMP<span class="domtooltips_tooltip" style="display: none">The jMonkeyPlatform, a full-fledged IDE with plugins for editing jME3 content and assets. Integral part of the jME3 SDK.</span></span> due to fixed logging bug</li>
<li> Material (j3m) editing in <span class="domtooltips">jMP<span class="domtooltips_tooltip" style="display: none">The jMonkeyPlatform, a full-fledged IDE with plugins for editing jME3 content and assets. Integral part of the jME3 SDK.</span></span> (<a href="http://www.youtube.com/watch?v=Feu3-mrpolc">video</a>)</li>
<li> Improved <span class="domtooltips">SceneComposer<span class="domtooltips_tooltip" style="display: none">A plugin in the jMonkeyEngine3 SDK, allows editing the content of j3o files which represent a complete scene or model.</span></span> (see video below)</li>
<li> Linking of models into scenes (see video below)</li>
<li> Physics support in SceneExplorer</li>
<li> Texture editing tool</li>
<li> Online Documentation for <span class="domtooltips">jMP<span class="domtooltips_tooltip" style="display: none">The jMonkeyPlatform, a full-fledged IDE with plugins for editing jME3 content and assets. Integral part of the jME3 SDK.</span></span> and jME3 via &#8220;F1&#8243;</li>
<li>GLSL Code Editor (Contribution Center)</li>
<li> Collada Import (Contribution Center, Alpha)</li>
</ul>
<p><object width="591" height="332"><param name="movie" value="http://www.youtube.com/v/ntPAmtsQ6eM?version=3"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/ntPAmtsQ6eM?version=3" type="application/x-shockwave-flash" width="591" height="332" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>This is the first release that introduces a new installer and by using advanced compression, we were able to reduce the release download size to 75MB, including <span class="domtooltips">jMP<span class="domtooltips_tooltip" style="display: none">The jMonkeyPlatform, a full-fledged IDE with plugins for editing jME3 content and assets. Integral part of the jME3 SDK.</span></span>, jME and all test data.</p>
<p><span class="domtooltips">jMP<span class="domtooltips_tooltip" style="display: none">The jMonkeyPlatform, a full-fledged IDE with plugins for editing jME3 content and assets. Integral part of the jME3 SDK.</span></span> alpha-2 also introduces the &#8220;<a href="http://www.jmonkeyengine.com/forum/index.php?topic=14675.0">jMonkeyPlatform User Contributions</a>&#8221; update center. If you go to &#8220;Tools&#8221;-&gt;&#8221;Plugins&#8221;-&gt;&#8221;Available Plugins&#8221; you can install some new plugins to <span class="domtooltips">jMP<span class="domtooltips_tooltip" style="display: none">The jMonkeyPlatform, a full-fledged IDE with plugins for editing jME3 content and assets. Integral part of the jME3 SDK.</span></span> that are not part of the core <span class="domtooltips">jMP<span class="domtooltips_tooltip" style="display: none">The jMonkeyPlatform, a full-fledged IDE with plugins for editing jME3 content and assets. Integral part of the jME3 SDK.</span></span> but have been contributed by users or are packaged from external libraries/projects (Category <span class="domtooltips">jMP<span class="domtooltips_tooltip" style="display: none">The jMonkeyPlatform, a full-fledged IDE with plugins for editing jME3 content and assets. Integral part of the jME3 SDK.</span></span> User Contributions).</p>
<p>Download jMonkeyEngine3 SDK Alpha-2 for your OS now:</p>
<ul>
<li><a href="http://jmonkeyengine.googlecode.com/files/jME3_SDK_Alpha2-Windows.exe">Windows</a></li>
<li><a href="http://jmonkeyengine.googlecode.com/files/jME3_SDK_Alpha2-MacOSX.tgz">MacOSX</a></li>
<li><a href="http://jmonkeyengine.googlecode.com/files/jME3_SDK_Alpha2-Linux.sh">Linux</a></li>
</ul>
<p>If you have problems after installing, delete your jMonkeyPlatform settings folder:</p>
<p>Windows: <tt>C:\Users\&lt;username&gt;\AppData\Roaming\.jmonkeyplatform</tt><br />
Windows (alt): <tt>C:\Users\&lt;username&gt;\.jmonkeyplatform\</tt><br />
MacOSX: <tt>/Users/&lt;username&gt;/Library/Application Support/jmonkeyplatform</tt><br />
Ubuntu:  <tt>/home/&lt;username&gt;/.jmonkeyplatform</tt></p>
<p>Happy coding,</p>
<p>the jMonkeyEngine Team</p>
<div style="height:33px;" class="really_simple_share robots-nocontent snap_nopreview"><div class="really_simple_share_facebook_like" style="width:120px;"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fjmonkeyengine.org%2F2010%2F08%2F29%2Fjmonkeyengine-3-sdk-alpha-2-released%2F&amp;layout=button_count&amp;show_faces=false&amp;width=120&amp;action=like&amp;colorscheme=light&amp;send=false&amp;height=27" 
						scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:120px; height:27px;" allowTransparency="true"></iframe></div><div class="really_simple_share_google1" style="width:90px;"><div class="g-plusone" data-size="medium" data-href="http://jmonkeyengine.org/2010/08/29/jmonkeyengine-3-sdk-alpha-2-released/" ></div></div><div class="really_simple_share_twitter" style="width:120px;"><a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal" 
						data-text="jMonkeyEngine 3 SDK Alpha-2 Released!" data-url="http://jmonkeyengine.org/2010/08/29/jmonkeyengine-3-sdk-alpha-2-released/" 
						data-via=""  ></a></div></div>
		<div style="clear:both;"></div>]]></content:encoded>
			<wfw:commentRss>http://jmonkeyengine.org/2010/08/29/jmonkeyengine-3-sdk-alpha-2-released/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Screen Space Ambient Occlusion for jMonkeyEngine 3.0</title>
		<link>http://jmonkeyengine.org/2010/08/16/screen-space-ambient-occlusion-for-jmonkeyengine-3-0/</link>
		<comments>http://jmonkeyengine.org/2010/08/16/screen-space-ambient-occlusion-for-jmonkeyengine-3-0/#comments</comments>
		<pubDate>Mon, 16 Aug 2010 22:54:03 +0000</pubDate>
		<dc:creator>nehon</dc:creator>
				<category><![CDATA[Feature]]></category>
		<category><![CDATA[core]]></category>
		<category><![CDATA[jME3]]></category>
		<category><![CDATA[nehon]]></category>
		<category><![CDATA[SSAO]]></category>

		<guid isPermaLink="false">http://jmonkeyengine.com/blog/?p=321</guid>
		<description><![CDATA[Everybody in the 3D computer graphics neighborhood has heard about SSAO, but what is really hiding behind those four letters? If you want to know, this paper is for you. This is a quick abstract on the technique, with a focus on how it has been implemented for JME3. What is ambient occlusion? Ambient occlusion [...]]]></description>
			<content:encoded><![CDATA[<p style="margin-top: 0pt; margin-bottom: 0pt; text-align: center;"><img class="aligncenter size-full wp-image-325" title="ssao blog post" src="http://jmonkeyengine.org/wp-content/uploads/2010/08/ssao-article.png" alt="ssao blog post" width="480" height="286" /></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">Everybody in the 3D computer graphics neighborhood has heard about SSAO, but what is really hiding behind those four letters?</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;"><br />
</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">If you want to know, this paper is for you. This is a quick abstract on the technique, with a focus on how it has been implemented for JME3.</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-family: Arial; font-size: 15px;"><span id="more-321"></span></span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;"><br />
</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: bold; font-style: normal; text-decoration: none; vertical-align: baseline;">What is ambient occlusion?</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: bold; font-style: normal; text-decoration: none; vertical-align: baseline;"><br />
</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">Ambient occlusion refers to the shadows that nearby objects cast on each other under an ambient lighting. It‘s an approximation of how light would radiate in a real life scene.</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">It usually entails casting rays from each point of a surface in random directions; lighten the point if the ray reached the background, darken it if the ray reached an object.</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">As you might have guessed, this method put a heavy burden on the CPU, and is not yet exploitable in real time 3D.</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">However in 2007 Perumaal Shanmugam and Okan Arikan</span><span style="font-size: 11pt; font-family: Arial; color: #0000cc; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;"> </span><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">released a paper on a hardware accelerated implementation available <a href="http://sites.google.com/site/perumaal/" target="_blank">here</a>.</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="text-decoration: underline;"><br />
</span></p>
<div style="background-color: transparent; font-family: 'Times New Roman'; line-height: normal; font-size: small; margin: 0px;">
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: bold; font-style: normal; text-decoration: none; vertical-align: baseline;">What about the “Screen Space” thing?</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: bold; font-style: normal; text-decoration: none; vertical-align: baseline;"><br />
</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">First time SSAO acronym popped out was in <a href="http://delivery.acm.org/10.1145/1290000/1281671/p97-mittring.pdf?key1=1281671&amp;key2=9942678811&amp;coll=ACM&amp;dl=ACM&amp;CFID=15151515&amp;CFTOKEN=6184618" target="_blank">this paper by Crytek</a></span><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;"> in 2007 (chapter 8.5.4.3) </span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">They explain how they managed to implement ambient occlusion in the Cry Engine 2 for the game Crysis, by comparing depth for each pixel 3D position neighborhood in a full screen quad pass. This is a credible alternative to the “real” AO implementation that makes it usable in real time 3D graphics.</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;">
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;"><br />
</span></p>
</div>
<div style="background-color: transparent; font-family: 'Times New Roman'; line-height: normal; font-size: small; margin: 0px;">
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: bold; font-style: normal; text-decoration: none; vertical-align: baseline;">What about jMonkey Engine 3.0?</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: bold; font-style: normal; text-decoration: none; vertical-align: baseline;"><br />
</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">Since then, there are a lot of implementations available on the Internet (some of them available in the reference section), but a particularly clever implementation got my attention in <a href="http://www.gamedev.net/reference/articles/article2753.asp" target="_blank">A simple and practical approach to SSAO</a> </span><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">by José María Méndez on GameDev.net. It’s fast, simple, and gives very good results.</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;"><br />
</span></p>
</div>
<div style="background-color: transparent; font-family: 'Times New Roman'; line-height: normal; font-size: small; margin: 0px;">
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">The idea is, for each pixel of the scene, we take a random sample of pixels around it and calculate it’s occlusion factor using the distance</span><span style="font-size: 13pt; font-family: Verdana; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;"> </span><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">between samples and angular difference between the receiver´s normal and the receiver to occluder direction. For more details I suggest you read the paper.</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;"><br />
</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">I made a GLSL version of this implementation with little adaptations to it :</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">- I only use front faces as this is faster and gives sufficiently good results.</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">- I don’t sample a position buffer as advised by the author because it requires extra memory and an extra scene render pass. Moreover I wanted to take advantage of the fact that JME3 can sample for “free” a depth texture of the scene during the main render pass. I reconstruct the 3D position of each pixel from depth using the one frustum corner method.</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">- For the random sampling, instead of using a random texture, I use a random function suggested by Martin Upitis in <a href="http://www.gamedev.net/community/forums/topic.asp?topic_id=556187&amp;whichpage=9&amp;#3638736" target="_blank">this game-dev thread</a></span><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">. It’s a little faster and gives a more regular repartition of the samples, thus avoiding the common “grainy” look of SSAO. It also gives a smoother result so the AO looks good on the rendered scene even without an additional blur pass. However it makes some banding artifacts, and for high quality render purpose, I will probably implement an optional blur pass for the filter.</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;"><br />
</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">jME3 has a SceneProcessor system that allow the addition of custom scene processing to a view-port (Shadow processing for example). I had already implemented a 2D filtering post processor (more info in <a href="http://www.jmonkeyengine.com/forum/index.php?topic=14273.msg102612" target="_blank">this post</a></span><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">), so I just implemented an SSAOFilter for this processor.</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">I had to adapt the processor in order to allow a filter to compute a pre-rendering pass (here for the normal buffer sampling).</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">So now SSAO can be stacked with any other 2D filter on a scene.</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;"><br />
</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: bold; font-style: normal; text-decoration: none; vertical-align: baseline;">What will monkeys have to do to use this awesome feature?</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: bold; font-style: normal; text-decoration: none; vertical-align: baseline;"><br />
</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">- Create a FilterPostProcessor and add it to the view-port.</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">- Create a SSAOFilter and add it to the processor</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">- Maybe play a little with SSAO configuration parameters, but that’s more of an artist duty.</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;"><br />
</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: italic; text-decoration: none; vertical-align: baseline;">Voilà!!</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-family: Arial; font-size: medium;"><span><em><span style="font-family: 'Times New Roman';"><span style="font-style: normal; font-size: x-small;"><br />
</span></span></em></span></span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;">
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;">By Rémy Bouquet aka nehon</p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: italic; text-decoration: none; vertical-align: baseline;"><br />
</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: bold; font-style: normal; text-decoration: none; vertical-align: baseline;">References</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;">
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;">
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-family: Arial; font-size: 15px;">Forum History</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><a href="http://www.jmonkeyengine.com/forum/index.php?topic=14393.0">http://www.jmonkeyengine.com/forum/index.php?topic=14393.0</a></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><a href="http://www.jmonkeyengine.com/forum/index.php?topic=14624.0">http://www.jmonkeyengine.com/forum/index.php?topic=14624.0</a></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;">
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;">
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">Nvidia SSAO implementation </span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><a href="http://developer.download.nvidia.com/SDK/10.5/direct3d/samples.html" target="_blank"><span style="text-decoration: underline;">http://developer.download.nvidia.com/SDK/10.5/direct3d/samples.html</span></a></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="text-decoration: underline;"><br />
</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">Presentations from NVIDIA :</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><a href="http://developer.download.nvidia.com/presentations/2008/GDC/GDC08_Ambient_Occlusion.pdf" target="_blank"><span style="text-decoration: underline;">http://developer.download.nvidia.com/presentations/2008/GDC/GDC08_Ambient_Occlusion.pdf</span></a></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><a href="http://developer.download.nvidia.com/presentations/2008/SIGGRAPH/HBAO_SIG08b.pdf" target="_blank"><span style="text-decoration: underline;">http://developer.download.nvidia.com/presentations/2008/SIGGRAPH/HBAO_SIG08b.pdf</span></a></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><a href="http://developer.download.nvidia.com/SDK/10.5/direct3d/Source/ScreenSpaceAO/doc/ScreenSpaceAO.pdf" target="_blank"><span style="text-decoration: underline;">http://developer.download.nvidia.com/SDK/10.5/direct3d/Source/ScreenSpaceAO/doc/ScreenSpace AO.pdf</span></a></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="text-decoration: underline;"><br />
</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><span style="font-size: 11pt; font-family: Arial; color: #000000; background-color: transparent; font-weight: normal; font-style: normal; text-decoration: none; vertical-align: baseline;">StarCraft2 SSAO implementaion</span></p>
<p style="text-align: justify; margin-top: 0pt; margin-bottom: 0pt;"><a href="http://developer.amd.com/gpu_assets/S2008-Filion-McNaughton-StarCraftII.pdf" target="_blank"><span style="text-decoration: underline;">http://developer.amd.com/gpu_assets/S2008-Filion-McNaughton-StarCraftII.pdf</span></a></p>
</div>
<div style="height:33px;" class="really_simple_share robots-nocontent snap_nopreview"><div class="really_simple_share_facebook_like" style="width:120px;"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fjmonkeyengine.org%2F2010%2F08%2F16%2Fscreen-space-ambient-occlusion-for-jmonkeyengine-3-0%2F&amp;layout=button_count&amp;show_faces=false&amp;width=120&amp;action=like&amp;colorscheme=light&amp;send=false&amp;height=27" 
						scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:120px; height:27px;" allowTransparency="true"></iframe></div><div class="really_simple_share_google1" style="width:90px;"><div class="g-plusone" data-size="medium" data-href="http://jmonkeyengine.org/2010/08/16/screen-space-ambient-occlusion-for-jmonkeyengine-3-0/" ></div></div><div class="really_simple_share_twitter" style="width:120px;"><a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal" 
						data-text="Screen Space Ambient Occlusion for jMonkeyEngine 3.0" data-url="http://jmonkeyengine.org/2010/08/16/screen-space-ambient-occlusion-for-jmonkeyengine-3-0/" 
						data-via=""  ></a></div></div>
		<div style="clear:both;"></div>]]></content:encoded>
			<wfw:commentRss>http://jmonkeyengine.org/2010/08/16/screen-space-ambient-occlusion-for-jmonkeyengine-3-0/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Which do I choose: Old yet steady jME2, or new and developing jME3?</title>
		<link>http://jmonkeyengine.org/2010/08/08/which-do-i-choose-old-yet-steady-jme2-or-new-and-developing-jme3/</link>
		<comments>http://jmonkeyengine.org/2010/08/08/which-do-i-choose-old-yet-steady-jme2-or-new-and-developing-jme3/#comments</comments>
		<pubDate>Sun, 08 Aug 2010 18:28:53 +0000</pubDate>
		<dc:creator>Erlend Sogge Heggen</dc:creator>
				<category><![CDATA[Site & Project]]></category>
		<category><![CDATA[collaborative writing]]></category>
		<category><![CDATA[comparison]]></category>
		<category><![CDATA[documentation]]></category>
		<category><![CDATA[jme2]]></category>
		<category><![CDATA[jme2-or-jme3]]></category>
		<category><![CDATA[jME3]]></category>

		<guid isPermaLink="false">http://jmonkeyengine.com/blog/?p=306</guid>
		<description><![CDATA[Lately the question of &#8216;which version of jME should I choose?&#8217; has been coming up frequently, mostly to our great delight of course. However unless we give newcomers some straightforward principles for them to make an informed decision for their project, we&#8217;re gonna keep repeating ourselves. That&#8217;s why I started this collaborative mini-event. Most of [...]]]></description>
			<content:encoded><![CDATA[<p>Lately the question of &#8216;which version of jME should I choose?&#8217; has been coming up frequently, mostly to our great delight of course. However unless we give newcomers some straightforward principles for them to make an informed decision for their project, we&#8217;re gonna keep repeating ourselves. That&#8217;s why I started this <a href="http://www.jmonkeyengine.com/forum/index.php?topic=14502.0">collaborative mini-event</a>. Most of the suggestions actually came in through online chats, but the event was a success none the less. The comparison as of today is posted below, but please refer to the <a href="http://www.jmonkeyengine.com/wiki/doku.php/choose-jme2-or-jme3">Do I Choose jME2 or jME3</a> wiki page for up-to-date information. As a bonus, I finally updated the <a href="http://www.jmonkeyengine.com/wiki/doku.php/compare-jme2-jme3">technical comparison</a> to a wiki page as well, courtesy of Kirill&#8217;s previous writeup.</p>
<p><span id="more-371"></span></p>
<div style="float: left;width: 320px;margin-right: 15px">
<h2>Why choose jME2?</h2>
<h3>Stability right now</h3>
<p>jME2 has been deemed stable since 2009, with no major feature additions or reworks since 2008. Although there are plans for a final point version release (2.1), jME2 is practically in complete feature freeze.</p>
<h3>Support for low-end computers</h3>
<p>jME2 fully supports OpenGL 1, while jME3 does not. Coupled with careful programming this means you can achieve very low hardware requirements for your project.</p>
<h3>Abundance of Community Tools</h3>
<p>With well written utilities like SceneMonitor, SceneWorker, HottBJ exporter as well as others ensure that you aren&#8217;t starting your path to jME enlightenment with a blank slate.</p>
<h3>Thoroughly documented</h3>
<p>There are literally hundreds of pages of <a href="http://www.jmonkeyengine.com/wiki/doku.php" target="_blank">documentation for jMonkeyEngine 2.0</a>, detailing development practices with the engine from beginners&#8217; levels through intermediate to advanced. Do note however that as jME3 grows more popular this documentation will be maintained by the community alone (see &#8216;Ever-improving documentation&#8217; in the jME3 section below).</div>
<div style="float: left;width: 320px;margin-right: 15px">
<h2>Why choose jME3?</h2>
<h3>Current- &amp; next-generation graphics</h3>
<p>From the beginning, jME3 was designed with modern principles and hardware in mind. Being shader based and only supporting OpenGL 2 or higher, jME3 is meant for the higher end of today&#8217;s computers, and what&#8217;s yet to come.</p>
<h3>Actively developed</h3>
<p>As opposed to it&#8217;s legacy counterpart, jME3 is very actively developed by a team of core developers and a huge community of contributors. Any aspect of jME3 can be brought up for debate at any time.<br />
P.S. The earlier you get involved the greater the chance you can have a changing impact on the project.</p>
<h3>Ever-improving documentation</h3>
<p>The majority of new docs created today are <a href="http://www.jmonkeyengine.com/wiki/doku.php/jme3" target="_blank">documentation for jMonkeyEngine3</a>. While naturally part of a grand community effort, these docs benefit greatly from the added support and continued iteration by core team members.</p>
<h3>jMonkeyPlatform</h3>
<p>With jMonkeyPlatform jME3 is the first jME version with a dedicated platform for application development, deployment, asset management and composition tools.</p>
<h3>Integrated Physics</h3>
<p>jME3 is also the first jME version to include a physics implementation by default. It is based on bullet physics and is developed and maintained by the core team.</p>
<h3>We&#8217;ll be so happy to have you!</h3>
<p>Naturally we are thrilled every time someone has decided to adopt jME3 for their [game-] development needs. Prospectively speaking, this means more testing, more commits, more buzz, more projects, more innovation; better community.</p></div>
<div style="clear: both"><span style="color: #ffffff">&gt;&gt;&gt;</span></div>
<p>For something strictly technical, check the official <a href="http://www.jmonkeyengine.com/forum/index.php?topic=13057.0" target="_blank">comparison</a> of the two engines.</p>
<div style="height:33px;" class="really_simple_share robots-nocontent snap_nopreview"><div class="really_simple_share_facebook_like" style="width:120px;"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fjmonkeyengine.org%2F2010%2F08%2F08%2Fwhich-do-i-choose-old-yet-steady-jme2-or-new-and-developing-jme3%2F&amp;layout=button_count&amp;show_faces=false&amp;width=120&amp;action=like&amp;colorscheme=light&amp;send=false&amp;height=27" 
						scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:120px; height:27px;" allowTransparency="true"></iframe></div><div class="really_simple_share_google1" style="width:90px;"><div class="g-plusone" data-size="medium" data-href="http://jmonkeyengine.org/2010/08/08/which-do-i-choose-old-yet-steady-jme2-or-new-and-developing-jme3/" ></div></div><div class="really_simple_share_twitter" style="width:120px;"><a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal" 
						data-text="Which do I choose: Old yet steady jME2, or new and developing jME3?" data-url="http://jmonkeyengine.org/2010/08/08/which-do-i-choose-old-yet-steady-jme2-or-new-and-developing-jme3/" 
						data-via=""  ></a></div></div>
		<div style="clear:both;"></div>]]></content:encoded>
			<wfw:commentRss>http://jmonkeyengine.org/2010/08/08/which-do-i-choose-old-yet-steady-jme2-or-new-and-developing-jme3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

