<?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>code-spot &#187; Tools</title>
	<atom:link href="http://code-spot.co.za/category/tools/feed/" rel="self" type="application/rss+xml" />
	<link>http://code-spot.co.za</link>
	<description>a programming blog</description>
	<lastBuildDate>Sun, 27 Feb 2011 07:18:03 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
		<item>
		<title>Experimental Tool for Removing Unwanted Artefacts in Textures</title>
		<link>http://code-spot.co.za/2010/04/15/experimental-tool-for-removing-unwanted-artefacts-in-textures/</link>
		<comments>http://code-spot.co.za/2010/04/15/experimental-tool-for-removing-unwanted-artefacts-in-textures/#comments</comments>
		<pubDate>Thu, 15 Apr 2010 13:36:40 +0000</pubDate>
		<dc:creator>herman.tulleken</dc:creator>
				<category><![CDATA[Downloads]]></category>
		<category><![CDATA[Game Development]]></category>
		<category><![CDATA[Image Processing]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[filtering]]></category>
		<category><![CDATA[game tools]]></category>

		<guid isPermaLink="false">http://code-spot.co.za/?p=849</guid>
		<description><![CDATA[Many textures used for 3D art start from photographs. Ideally, such textures should be uniformly lit so that the texture does not interfere with the lighting applied by the 3D software. Often, lighting artefacts must be removed by hand. This can be tedious and time consuming. The tool provided here aims to automate this process. [...]


Related posts:<ol><li><a href='http://code-spot.co.za/2009/05/27/how-to-turn-xsi-mod-tool-into-a-level-editor-for-your-xna-games-example-updated-for-xna-30/' rel='bookmark' title='Permanent Link: How to Turn XSI Mod Tool into a Level Editor for your XNA Games: Example Updated for XNA 3.0.'>How to Turn XSI Mod Tool into a Level Editor for your XNA Games: Example Updated for XNA 3.0.</a></li>
<li><a href='http://code-spot.co.za/2009/04/08/how-to-turn-xsi-mod-tool-into-a-level-editor-for-your-xna-games-updated-for-xna-30/' rel='bookmark' title='Permanent Link: How to Turn XSI Mod Tool into a  Level Editor for your XNA Games: Updated for XNA 3.0.'>How to Turn XSI Mod Tool into a  Level Editor for your XNA Games: Updated for XNA 3.0.</a></li>
<li><a href='http://code-spot.co.za/2009/10/24/guerrilla-tool-development/' rel='bookmark' title='Permanent Link: Guerrilla Tool Development'>Guerrilla Tool Development</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><img style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" title="texture" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/texture.png" border="0" alt="texture" width="491" height="321" /></p>
<p>Many textures used for 3D art start from photographs. Ideally, such textures should be uniformly lit so that the texture does not interfere with the lighting applied by the 3D software. Often, lighting artefacts must be removed by hand. This can be tedious and time consuming.</p>
<p>The tool provided here aims to automate this process. It is still in an experimental phase, so it is very crude. Below you can see some of the before and after pictures.</p>
<p><span id="more-849"></span></p>
<p>I will say more about how these work in a later post.</p>
<p>If you want to give it a try, go <a href="http://code-spot.co.za/image-restoration-tool/" class="broken_link">here</a> to download (caveats: command-line only; Windows only; requires ImageMagick.)</p>
<table border="0" cellspacing="0" cellpadding="2" width="500">
<tbody>
<tr>
<td width="250" valign="top"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="hair" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/hair.jpg" border="0" alt="hair" width="240" height="240" /></td>
<td width="250" valign="top"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="hair_std_" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/hair_std_.png" border="0" alt="hair_std_" width="240" height="240" /></td>
</tr>
<tr>
<td width="250" valign="top"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="pebbles" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/pebbles.jpg" border="0" alt="pebbles" width="240" height="209" /></td>
<td width="250" valign="top"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="pebbles_minmax" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/pebbles_minmax.png" border="0" alt="pebbles_minmax" width="240" height="209" /></td>
</tr>
<tr>
<td width="250" valign="top"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="paper" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/paper.jpg" border="0" alt="paper" width="240" height="320" /></td>
<td width="250" valign="top"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="paper_mean_" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/paper_mean_.png" border="0" alt="paper_mean_" width="240" height="320" /></td>
</tr>
<tr>
<td width="250" valign="top"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="metal" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/metal.jpg" border="0" alt="metal" width="240" height="117" /></td>
<td width="250" valign="top"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="metal_mean_" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/metal_mean_.png" border="0" alt="metal_mean_" width="240" height="117" /></td>
</tr>
<tr>
<td width="250" valign="top"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="metal2" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/metal2.jpg" border="0" alt="metal2" width="240" height="109" /></td>
<td width="250" valign="top"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="metal2_mean_" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/metal2_mean_.png" border="0" alt="metal2_mean_" width="240" height="109" /></td>
</tr>
<tr>
<td width="250" valign="top"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="machinery" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/machinery.jpg" border="0" alt="machinery" width="240" height="240" /></td>
<td width="250" valign="top"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="machinery_minmax" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/machinery_minmax.png" border="0" alt="machinery_minmax" width="240" height="240" /></td>
</tr>
<tr>
<td width="250" valign="top"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="paint" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/paint.jpg" border="0" alt="paint" width="240" height="180" /></td>
<td width="250" valign="top"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="paint_mean_" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/paint_mean_.png" border="0" alt="paint_mean_" width="240" height="180" /></td>
</tr>
<tr>
<td width="250" valign="top"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="wood" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/wood.jpg" border="0" alt="wood" width="240" height="320" /></td>
<td width="250" valign="top"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="wood_std_" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/wood_std_.png" border="0" alt="wood_std_" width="240" height="320" /></td>
</tr>
<tr>
<td width="250" valign="top"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="color" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/color.jpg" border="0" alt="color" width="240" height="213" /></td>
<td width="250" valign="top"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="color_mean_2" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/color_mean_2.png" border="0" alt="color_mean_2" width="240" height="213" /></td>
</tr>
<tr>
<td width="250" valign="top"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="color" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/color.jpg" border="0" alt="color" width="240" height="213" /></td>
<td width="250" valign="top"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="color_mean_value_" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/color_mean_value_.png" border="0" alt="color_mean_value_" width="240" height="213" /></td>
</tr>
<tr>
<td width="250" valign="top"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="scene" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/scene.jpg" border="0" alt="scene" width="240" height="240" /></td>
<td width="250" valign="top"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="scene_mean" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/scene_mean.png" border="0" alt="scene_mean" width="240" height="240" /></td>
</tr>
<tr>
<td width="250" valign="top"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="grass" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/grass.jpg" border="0" alt="grass" width="240" height="160" /></td>
<td width="250" valign="top"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="grass_mean_" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/grass_mean_.png" border="0" alt="grass_mean_" width="240" height="160" /></td>
</tr>
</tbody>
</table>
<p>The tool can also improve artefacts in tileable textures:</p>
<p><strong>BEFORE </strong>(distracting horizontal striping)</p>
<p><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="texture1" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/texture1.png" border="0" alt="texture1" width="500" height="375" /></p>
<p><strong>AFTER</strong> (reduced striping)</p>
<p><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="texture2" src="http://code-spot.co.za/blog/wp-content/uploads/2010/04/texture2.png" border="0" alt="texture2" width="500" height="375" /></p>


<p>Related posts:<ol><li><a href='http://code-spot.co.za/2009/05/27/how-to-turn-xsi-mod-tool-into-a-level-editor-for-your-xna-games-example-updated-for-xna-30/' rel='bookmark' title='Permanent Link: How to Turn XSI Mod Tool into a Level Editor for your XNA Games: Example Updated for XNA 3.0.'>How to Turn XSI Mod Tool into a Level Editor for your XNA Games: Example Updated for XNA 3.0.</a></li>
<li><a href='http://code-spot.co.za/2009/04/08/how-to-turn-xsi-mod-tool-into-a-level-editor-for-your-xna-games-updated-for-xna-30/' rel='bookmark' title='Permanent Link: How to Turn XSI Mod Tool into a  Level Editor for your XNA Games: Updated for XNA 3.0.'>How to Turn XSI Mod Tool into a  Level Editor for your XNA Games: Updated for XNA 3.0.</a></li>
<li><a href='http://code-spot.co.za/2009/10/24/guerrilla-tool-development/' rel='bookmark' title='Permanent Link: Guerrilla Tool Development'>Guerrilla Tool Development</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://code-spot.co.za/2010/04/15/experimental-tool-for-removing-unwanted-artefacts-in-textures/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Guerrilla Tool Development</title>
		<link>http://code-spot.co.za/2009/10/24/guerrilla-tool-development/</link>
		<comments>http://code-spot.co.za/2009/10/24/guerrilla-tool-development/#comments</comments>
		<pubDate>Sat, 24 Oct 2009 16:18:45 +0000</pubDate>
		<dc:creator>herman.tulleken</dc:creator>
				<category><![CDATA[Game Development]]></category>
		<category><![CDATA[Snippet]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[ai editor]]></category>
		<category><![CDATA[Dev.Mag]]></category>
		<category><![CDATA[level editor]]></category>
		<category><![CDATA[tool development]]></category>

		<guid isPermaLink="false">http://code-spot.co.za/?p=750</guid>
		<description><![CDATA[Tools for editing game levels and AI for your own games are nice to have, but it is not always practical to implement these for small projects, nor is it affordable to buy them off-the-shelf or bundled with expensive middleware. In the Dev.Mag article Guerrilla Tool Development, I give some ideas for getting some useful [...]


Related posts:<ol><li><a href='http://code-spot.co.za/about-me/' rel='bookmark' title='Permanent Link: About Me'>About Me</a></li>
<li><a href='http://code-spot.co.za/2009/04/08/how-to-turn-xsi-mod-tool-into-a-level-editor-for-your-xna-games-updated-for-xna-30/' rel='bookmark' title='Permanent Link: How to Turn XSI Mod Tool into a  Level Editor for your XNA Games: Updated for XNA 3.0.'>How to Turn XSI Mod Tool into a  Level Editor for your XNA Games: Updated for XNA 3.0.</a></li>
<li><a href='http://code-spot.co.za/2009/05/27/how-to-turn-xsi-mod-tool-into-a-level-editor-for-your-xna-games-example-updated-for-xna-30/' rel='bookmark' title='Permanent Link: How to Turn XSI Mod Tool into a Level Editor for your XNA Games: Example Updated for XNA 3.0.'>How to Turn XSI Mod Tool into a Level Editor for your XNA Games: Example Updated for XNA 3.0.</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><img style="border-right: 0px; border-top: 0px; display: inline; margin: 0px 10px 0px 0px; border-left: 0px; border-bottom: 0px" title="guerrilla_tools" src="http://code-spot.co.za/blog/wp-content/uploads/2009/10/guerrilla_tools1.png" border="0" alt="guerrilla_tools" width="142" height="142" align="left" /> Tools for editing game levels and AI for your own games are nice to have, but it is not always practical to implement these for small projects, nor is it affordable to buy them off-the-shelf or bundled with expensive middleware.</p>
<p>In the Dev.Mag article <a href="http://devmag.org.za/2009/10/23/guerrilla-tool-development/">Guerrilla Tool Development</a>, I give some ideas for getting some useful tools on a tight budget. Check it out!</p>


<p>Related posts:<ol><li><a href='http://code-spot.co.za/about-me/' rel='bookmark' title='Permanent Link: About Me'>About Me</a></li>
<li><a href='http://code-spot.co.za/2009/04/08/how-to-turn-xsi-mod-tool-into-a-level-editor-for-your-xna-games-updated-for-xna-30/' rel='bookmark' title='Permanent Link: How to Turn XSI Mod Tool into a  Level Editor for your XNA Games: Updated for XNA 3.0.'>How to Turn XSI Mod Tool into a  Level Editor for your XNA Games: Updated for XNA 3.0.</a></li>
<li><a href='http://code-spot.co.za/2009/05/27/how-to-turn-xsi-mod-tool-into-a-level-editor-for-your-xna-games-example-updated-for-xna-30/' rel='bookmark' title='Permanent Link: How to Turn XSI Mod Tool into a Level Editor for your XNA Games: Example Updated for XNA 3.0.'>How to Turn XSI Mod Tool into a Level Editor for your XNA Games: Example Updated for XNA 3.0.</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://code-spot.co.za/2009/10/24/guerrilla-tool-development/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to Turn XSI Mod Tool into a Level Editor for your XNA Games: Example Updated for XNA 3.0.</title>
		<link>http://code-spot.co.za/2009/05/27/how-to-turn-xsi-mod-tool-into-a-level-editor-for-your-xna-games-example-updated-for-xna-30/</link>
		<comments>http://code-spot.co.za/2009/05/27/how-to-turn-xsi-mod-tool-into-a-level-editor-for-your-xna-games-example-updated-for-xna-30/#comments</comments>
		<pubDate>Wed, 27 May 2009 12:08:41 +0000</pubDate>
		<dc:creator>herman.tulleken</dc:creator>
				<category><![CDATA[Downloads]]></category>
		<category><![CDATA[Snippet]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[art pipeline]]></category>
		<category><![CDATA[editor]]></category>
		<category><![CDATA[game tools]]></category>
		<category><![CDATA[level editor]]></category>
		<category><![CDATA[XNA]]></category>
		<category><![CDATA[XSI Mod Tool]]></category>

		<guid isPermaLink="false">http://code-spot.co.za/?p=593</guid>
		<description><![CDATA[The example for the tutorial How to Turn XSI Mod Tool into a Level Editor for your XNA Games: Updated for XNA 3.0 have also been updated to work with XNA 3.0. The XSI plug-in has also been tested in the new Mod Tool (7.5). Download XSIModToolLevelEditor3.zip (5.2 MB). Related posts:How to Turn XSI Mod Tool into [...]


Related posts:<ol><li><a href='http://code-spot.co.za/2009/04/08/how-to-turn-xsi-mod-tool-into-a-level-editor-for-your-xna-games-updated-for-xna-30/' rel='bookmark' title='Permanent Link: How to Turn XSI Mod Tool into a  Level Editor for your XNA Games: Updated for XNA 3.0.'>How to Turn XSI Mod Tool into a  Level Editor for your XNA Games: Updated for XNA 3.0.</a></li>
<li><a href='http://code-spot.co.za/2009/10/24/guerrilla-tool-development/' rel='bookmark' title='Permanent Link: Guerrilla Tool Development'>Guerrilla Tool Development</a></li>
<li><a href='http://code-spot.co.za/2008/10/29/force-field-editor-v10/' rel='bookmark' title='Permanent Link: Force Field Editor v1.0'>Force Field Editor v1.0</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><img class="size-full wp-image-595 alignleft" title="xsixna_small_header1" src="http://code-spot.co.za/blog/wp-content/uploads/2009/05/xsixna_small_header1.png" alt="xsixna_small_header1" width="142" height="142" />The example for the tutorial <a href="http://code-spot.co.za/2009/04/08/how-to-turn-xsi-mod-tool-into-a-level-editor-for-your-xna-games-updated-for-xna-30/">How to Turn XSI Mod Tool into a Level Editor for your XNA Games: Updated for XNA 3.0</a> have also been updated to work with XNA 3.0. The XSI plug-in has also been tested in the new Mod Tool (7.5).</p>
<h2>Download</h2>
<p><a href="http://www.code-spot.co.za/downloads/tutorials/XSIModToolLevelEditor3.zip">XSIModToolLevelEditor3.zip (5.2 MB)</a>.</p>


<p>Related posts:<ol><li><a href='http://code-spot.co.za/2009/04/08/how-to-turn-xsi-mod-tool-into-a-level-editor-for-your-xna-games-updated-for-xna-30/' rel='bookmark' title='Permanent Link: How to Turn XSI Mod Tool into a  Level Editor for your XNA Games: Updated for XNA 3.0.'>How to Turn XSI Mod Tool into a  Level Editor for your XNA Games: Updated for XNA 3.0.</a></li>
<li><a href='http://code-spot.co.za/2009/10/24/guerrilla-tool-development/' rel='bookmark' title='Permanent Link: Guerrilla Tool Development'>Guerrilla Tool Development</a></li>
<li><a href='http://code-spot.co.za/2008/10/29/force-field-editor-v10/' rel='bookmark' title='Permanent Link: Force Field Editor v1.0'>Force Field Editor v1.0</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://code-spot.co.za/2009/05/27/how-to-turn-xsi-mod-tool-into-a-level-editor-for-your-xna-games-example-updated-for-xna-30/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Force Field Editor v1.0</title>
		<link>http://code-spot.co.za/2008/10/29/force-field-editor-v10/</link>
		<comments>http://code-spot.co.za/2008/10/29/force-field-editor-v10/#comments</comments>
		<pubDate>Wed, 29 Oct 2008 15:46:01 +0000</pubDate>
		<dc:creator>herman.tulleken</dc:creator>
				<category><![CDATA[Downloads]]></category>
		<category><![CDATA[Game Development]]></category>
		<category><![CDATA[Simulation]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[AI]]></category>
		<category><![CDATA[compression]]></category>
		<category><![CDATA[editor]]></category>
		<category><![CDATA[force field]]></category>
		<category><![CDATA[quadtree]]></category>
		<category><![CDATA[vector field]]></category>

		<guid isPermaLink="false">http://code-spot.co.za/?p=161</guid>
		<description><![CDATA[Vector fields are used in certain AI and simulation techniques. The tool below allows you to paint a vector field. These files can be saved in XML format, that can easily be loaded into another application. There are five brushes: The Set Direction brush keeps the size of the underlying vector the same, but changes [...]


Related posts:<ol><li><a href='http://code-spot.co.za/2010/06/15/region-quadtrees-in-c/' rel='bookmark' title='Permanent Link: Region Quadtrees in C++'>Region Quadtrees in C++</a></li>
<li><a href='http://code-spot.co.za/2008/12/07/random-steering-7-components-for-a-toolkit/' rel='bookmark' title='Permanent Link: Random Steering &#8211; 7 Components for a Toolkit'>Random Steering &#8211; 7 Components for a Toolkit</a></li>
<li><a href='http://code-spot.co.za/2008/10/06/quadtrees/' rel='bookmark' title='Permanent Link: Quadtrees'>Quadtrees</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><img src="http://code-spot.co.za/blog/wp-content/uploads/2008/10/pull.png" alt="pull" width="500" height="357" /></p>
<p>Vector fields are used in certain AI and simulation techniques. The tool below allows you to paint a vector field. These files can be saved in XML format, that can easily be loaded into another application.</p>
<p><span id="more-161"></span></p>
<p>There are five brushes:</p>
<ul>
<li>The Set Direction brush keeps the size of the underlying vector the same, but changes the size to a constant value.</li>
<li>The Set Size brush keeps the size of the underlying vector the same, but changes the direction to a constant angle.</li>
<li>The Attract brush draws all the vectors closer to the mouse cursor.</li>
<li>The Repel brush pushes all vectors away from the mouse cursor.</li>
<li>The Comb brush moves vectors in the same direction as the mouse.</li>
</ul>
<p>The XML file arranges the field into a quadtree. The quadtree compression can be viewed from the program.</p>
<table border="0" cellspacing="0" cellpadding="2" width="500">
<tbody>
<tr>
<td width="250" valign="top"><img src="http://code-spot.co.za/blog/wp-content/uploads/2008/10/normal.png" alt="normal" width="240" height="240" /></td>
<td width="250" valign="top"><img src="http://code-spot.co.za/blog/wp-content/uploads/2008/10/compressed.png" alt="compressed" width="240" height="240" /></td>
</tr>
</tbody>
</table>
<p>To change the brush size, use the &#8216;[' and ']&#8216; keys.</p>
<p>To change the brush options, use the &#8216;-&#8217; or &#8216;=&#8217; keys.</p>
<p>This is the first version of this program, so there are many missing features. For example, the size of the field can not be changed yet. If you find it useful, let me know in the comments!</p>
<h2>Download</h2>
<h3>Windows Executable</h3>
<p><a href="http://www.code-spot.co.za/downloads/tools/force_field_editor_v1_0.exe">force_field_editor_v1_0.exe 3.3 MB</a></p>
<p>Requires <a href="http://java.com/en/download/manual.jsp">Java Runtime Environment</a>.</p>


<p>Related posts:<ol><li><a href='http://code-spot.co.za/2010/06/15/region-quadtrees-in-c/' rel='bookmark' title='Permanent Link: Region Quadtrees in C++'>Region Quadtrees in C++</a></li>
<li><a href='http://code-spot.co.za/2008/12/07/random-steering-7-components-for-a-toolkit/' rel='bookmark' title='Permanent Link: Random Steering &#8211; 7 Components for a Toolkit'>Random Steering &#8211; 7 Components for a Toolkit</a></li>
<li><a href='http://code-spot.co.za/2008/10/06/quadtrees/' rel='bookmark' title='Permanent Link: Quadtrees'>Quadtrees</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://code-spot.co.za/2008/10/29/force-field-editor-v10/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

