<?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/"
	xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>3 f . S t u d i o s</title>
	<atom:link href="http://3fstudios.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://3fstudios.wordpress.com</link>
	<description>home to a student game development team + game design documents</description>
	<lastBuildDate>Sun, 09 Mar 2008 01:59:13 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='3fstudios.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/18f384a7ff50977f1690220ac5f700eb?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>3 f . S t u d i o s</title>
		<link>http://3fstudios.wordpress.com</link>
	</image>
			<item>
		<title>Visual Effects</title>
		<link>http://3fstudios.wordpress.com/2008/02/23/visual-effects/</link>
		<comments>http://3fstudios.wordpress.com/2008/02/23/visual-effects/#comments</comments>
		<pubDate>Sat, 23 Feb 2008 02:43:42 +0000</pubDate>
		<dc:creator>3fstudios</dc:creator>
				<category><![CDATA[TDD - Visual & Audio Effects]]></category>

		<guid isPermaLink="false">http://3fstudios.wordpress.com/?p=269</guid>
		<description><![CDATA[Visual effects provide an important role to making the game more exciting and enjoyable for the players. Visual effects can generally be categorized into 2 main parts namely, Environmental and Special effects. Since all of the game play sequences takes place in the dungeons, sewers and rooms, we will take into considerations these scenes for [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3fstudios.wordpress.com&blog=2632535&post=269&subd=3fstudios&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Visual effects provide an important role to making the game more exciting and enjoyable for the players. Visual effects can generally be categorized into 2 main parts namely, Environmental and Special effects. Since all of the game play sequences takes place in the dungeons, sewers and rooms, we will take into considerations these scenes for our visual effects planning.</p>
<p>Environmental Effects:</p>
<ul>
<li>Ceilings / Walls</li>
<li>Fog / Mist</li>
<li>Shadows</li>
</ul>
<p>Special Effects:</p>
<ul>
<li>Explosions</li>
<li>Smoke / Steam</li>
<li>Others (to be implemented)</li>
</ul>
<table width="100%">
<tr>
<td style="border-bottom:1px dashed #aaaaaa;width:100%;">&nbsp;</td>
</tr>
<tr>
<td style="width:100%;">&nbsp;</td>
</tr>
</table>
<p><b>Environmental Effects – Ceilings &amp; Walls</b></p>
<p>The ceilings of the underground military facility and dungeons can be done using similar techniques to creating a sky environment, but less complicated. A box or a ceiling plane can be used for the ceilings in all the three locations. Additionally, a hemisphere/dome can be used as an approach for hallways or corridors. This is to create an illusion that the path is long.</p>
<p align="center">
<table border="0" cellpadding="0" cellspacing="10">
<tr>
<td><a href="http://3fstudios.files.wordpress.com/2008/02/veffects01.jpg" title="veffects01.jpg"><img src="http://3fstudios.files.wordpress.com/2008/02/veffects01.thumbnail.jpg" alt="veffects01.jpg" /></a></td>
<td><a href="http://3fstudios.files.wordpress.com/2008/02/hud03.jpg" title="hud03.jpg"><img src="http://3fstudios.files.wordpress.com/2008/02/hud03.thumbnail.jpg" alt="hud03.jpg" /></a></td>
<td align="center"><a href="http://3fstudios.files.wordpress.com/2008/02/hud04.jpg" title="hud04.jpg"><img src="http://3fstudios.files.wordpress.com/2008/02/hud04.thumbnail.jpg" alt="hud04.jpg" /></a></td>
</tr>
</table>
<table width="100%">
<tr>
<td style="border-bottom:1px dashed #aaaaaa;width:100%;">&nbsp;</td>
</tr>
<tr>
<td style="width:100%;">&nbsp;</td>
</tr>
</table>
<p><b>Environmental Effects – Fog &amp; Mist</b></p>
<p>Creating fogs and mists in the dungeon intensify the atmosphere the players will go through.  Mist can also be implemented using Particle Systems, which is explained in the later section. There are basically 2 types of fog: Distance-based fog and Vertex-based fog (also known as volumetric fog).</p>
<p>Distance-based Fog:</p>
<ul>
<li>Based on viewpoint, giving the starting depth and ending depth to the hardware API. Might not be the best method for implementing fog but it’s simple to use</li>
<li>Can reduce polygon count by eliminating objects in distance, but using the fog to cover them</li>
</ul>
<p align="center"><a href="http://3fstudios.files.wordpress.com/2008/02/veffects02.jpg" title="veffects02.jpg"><img src="http://3fstudios.files.wordpress.com/2008/02/veffects02.thumbnail.jpg" alt="veffects02.jpg" /></a></p>
<p>Vertex-based Fog (volumetric fog):</p>
<ul>
<li>Not view-dependent</li>
<li>Uses starting and ending depth but applied to Y-axis (for height), instead of Distance-based fog which applies to Z-axis. Coordinates of the fog are also to be provided for current vertices that are being rendered. These can be done through OpenGL extension</li>
<li>Fogs will stay in the positions we allocate throughout the entire game play</li>
</ul>
<table width="100%">
<tr>
<td style="border-bottom:1px dashed #aaaaaa;width:100%;">&nbsp;</td>
</tr>
<tr>
<td style="width:100%;">&nbsp;</td>
</tr>
</table>
<p><b>Environmental Effects – Shadows</b></p>
<p>Shadowing gives the perception of depth of the objects, which increase the realism. There are various types of shadowing such as shadow volumes, light maps, projected planar shadows and hybrid approaches. We will be implementing projected planar shadows as our major technique for shadowing. If time permits, shadow mapping using light will also be implemented.</p>
<p>Projected Planar Shadows:</p>
<ul>
<li>Uses geometry to cast a shadow from an object</li>
<li>‘Flatten’ the 3D model and cast it in black onto the ground plane</li>
<li>Shadow effects only applicable to planes</li>
<li>Ability to support positional or directional lightings</li>
</ul>
<p align="center"><a href="http://3fstudios.files.wordpress.com/2008/02/veffects03.jpg" title="veffects03.jpg"><img src="http://3fstudios.files.wordpress.com/2008/02/veffects03.thumbnail.jpg" alt="veffects03.jpg" /></a></p>
<p>A simple trick we can use to implement projected planar shadow is:</p>
<ul>
<li>Get ground equation, Ax + By + Cz + D = 0</li>
<li>Get light position (x,y,z,w)</li>
<li>Use projective transformation to obtain a ‘flatten’ image of the object model</li>
<li>Change color to black and concatenate with the object model</li>
</ul>
<p align="center"><a href="http://3fstudios.files.wordpress.com/2008/02/veffects04.jpg" title="veffects04.jpg"><img src="http://3fstudios.files.wordpress.com/2008/02/veffects04.thumbnail.jpg" alt="veffects04.jpg" /></a></p>
<table width="100%">
<tr>
<td style="border-bottom:1px dashed #aaaaaa;width:100%;">&nbsp;</td>
</tr>
<tr>
<td style="width:100%;">&nbsp;</td>
</tr>
</table>
<p><b>Special Effects – Smoke, Steam and Explosion</b></p>
<p>These visual effects can be implemented using sprites, a 2D/3D image or animation used to integrate into a larger scene. Sprites are usually used for moving objects and can create an effective illusion when the animation changes, or exist for a short period of time, or has similar appearance from many viewing angles – which fits well for creating smoke and steam, and other effects such as fire or special symbols.<br />
Particle system, which is also commonly used to create these special effects and others abstract visual effects such as glowing trails and spells casting effects, can also be used.</p>
<table border="0" cellpadding="0" cellspacing="10">
<tr>
<td><a href="http://3fstudios.files.wordpress.com/2008/02/veffects05.jpg" title="veffects05.jpg"><img src="http://3fstudios.files.wordpress.com/2008/02/veffects05.thumbnail.jpg" alt="veffects05.jpg" /></a></td>
<td><a href="http://3fstudios.files.wordpress.com/2008/02/veffects06.jpg" title="veffects06.jpg"><img src="http://3fstudios.files.wordpress.com/2008/02/veffects06.thumbnail.jpg" alt="veffects06.jpg" /></a></td>
<td><a href="http://3fstudios.files.wordpress.com/2008/02/veffects07.jpg" title="veffects07.jpg"><img src="http://3fstudios.files.wordpress.com/2008/02/veffects07.thumbnail.jpg" alt="veffects07.jpg" /></a></td>
</tr>
</table>
<p>A particle system’s position and motion in 3D is typically controlled by an emitter, which is the source of the particles. Its location will determine where the particles generate and how they proceed. A particle system’s update loop can be split into 2 parts:</p>
<p>Simulation Stage:</p>
<ul>
<li>Each particle spawned in specific 3D space based on assigned values</li>
<li>At each update, check if lifetime of particle has exceeded. If so remove particle, else particle will move to new position</li>
</ul>
<p>Rendering Stage:</p>
<ul>
<li>After update is completed, each particle is rendered, also known as billboarding</li>
<li>3D mesh objects can then be used to replace the particles, giving the end result of the visual effects</li>
</ul>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/3fstudios.wordpress.com/269/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/3fstudios.wordpress.com/269/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/3fstudios.wordpress.com/269/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/3fstudios.wordpress.com/269/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/3fstudios.wordpress.com/269/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/3fstudios.wordpress.com/269/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/3fstudios.wordpress.com/269/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/3fstudios.wordpress.com/269/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/3fstudios.wordpress.com/269/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/3fstudios.wordpress.com/269/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/3fstudios.wordpress.com/269/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/3fstudios.wordpress.com/269/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3fstudios.wordpress.com&blog=2632535&post=269&subd=3fstudios&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://3fstudios.wordpress.com/2008/02/23/visual-effects/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a793590a91b5f22e9f8ffd68a2c9f060?s=96&#38;d=identicon" medium="image">
			<media:title type="html">3fstudios</media:title>
		</media:content>

		<media:content url="http://3fstudios.files.wordpress.com/2008/02/veffects01.thumbnail.jpg" medium="image">
			<media:title type="html">veffects01.jpg</media:title>
		</media:content>

		<media:content url="http://3fstudios.files.wordpress.com/2008/02/hud03.thumbnail.jpg" medium="image">
			<media:title type="html">hud03.jpg</media:title>
		</media:content>

		<media:content url="http://3fstudios.files.wordpress.com/2008/02/hud04.thumbnail.jpg" medium="image">
			<media:title type="html">hud04.jpg</media:title>
		</media:content>

		<media:content url="http://3fstudios.files.wordpress.com/2008/02/veffects02.thumbnail.jpg" medium="image">
			<media:title type="html">veffects02.jpg</media:title>
		</media:content>

		<media:content url="http://3fstudios.files.wordpress.com/2008/02/veffects03.thumbnail.jpg" medium="image">
			<media:title type="html">veffects03.jpg</media:title>
		</media:content>

		<media:content url="http://3fstudios.files.wordpress.com/2008/02/veffects04.thumbnail.jpg" medium="image">
			<media:title type="html">veffects04.jpg</media:title>
		</media:content>

		<media:content url="http://3fstudios.files.wordpress.com/2008/02/veffects05.thumbnail.jpg" medium="image">
			<media:title type="html">veffects05.jpg</media:title>
		</media:content>

		<media:content url="http://3fstudios.files.wordpress.com/2008/02/veffects06.thumbnail.jpg" medium="image">
			<media:title type="html">veffects06.jpg</media:title>
		</media:content>

		<media:content url="http://3fstudios.files.wordpress.com/2008/02/veffects07.thumbnail.jpg" medium="image">
			<media:title type="html">veffects07.jpg</media:title>
		</media:content>
	</item>
		<item>
		<title>Audio Effects</title>
		<link>http://3fstudios.wordpress.com/2008/02/23/audio-effects/</link>
		<comments>http://3fstudios.wordpress.com/2008/02/23/audio-effects/#comments</comments>
		<pubDate>Sat, 23 Feb 2008 02:00:31 +0000</pubDate>
		<dc:creator>3fstudios</dc:creator>
				<category><![CDATA[TDD - Visual & Audio Effects]]></category>

		<guid isPermaLink="false">http://3fstudios.wordpress.com/?p=277</guid>
		<description><![CDATA[FMOD 3.75 will be used as the audio engine for “Cross Worlds”. It is a powerful cross-platform audio engine that allows us to use it easily with the current audio technologies in our software. With the new ‘Lite-C FMOD wrapper plugin DLL’, it is compatible with any edition of A7 Engine (3D Game Studio). It [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3fstudios.wordpress.com&blog=2632535&post=277&subd=3fstudios&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>FMOD 3.75 will be used as the audio engine for “Cross Worlds”. It is a powerful cross-platform audio engine that allows us to use it easily with the current audio technologies in our software. With the new ‘Lite-C FMOD wrapper plugin DLL’, it is compatible with any edition of A7 Engine (3D Game Studio). It is free for non-commercial use.</p>
<p>The features available from FMOD 3.75 are:</p>
<ul>
<li>3D sound support</li>
<li>HD / disc / internet streams</li>
<li>Channel operations and analysis</li>
<li>Runtime audio special effects</li>
<li>Audio CD</li>
<li>Library of audio samples</li>
</ul>
<p>FMOD supports virtually any types of audio format. For our game, videos such as the opening and ending game videos and in-game short clips, we will use mpg and avi. For game sound effects and background music, wav and mp3 will do the job nicely. These formats are flexible and can be changed during the game development process.</p>
<p>As the game only consists of a single level, the media files will be played from the hard disk, after installation. Should there be future developments made to the game such as additional levels, power skills and more intriguing and complex puzzles, the game will also increased in memory and hard disk size. Players will have the option to choose between Full installation (music and videos played from hard disk), Medium installation (music played from hard disk, videos from CD) or Minimum installation (music and videos to be played from CD).</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/3fstudios.wordpress.com/277/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/3fstudios.wordpress.com/277/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/3fstudios.wordpress.com/277/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/3fstudios.wordpress.com/277/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/3fstudios.wordpress.com/277/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/3fstudios.wordpress.com/277/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/3fstudios.wordpress.com/277/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/3fstudios.wordpress.com/277/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/3fstudios.wordpress.com/277/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/3fstudios.wordpress.com/277/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/3fstudios.wordpress.com/277/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/3fstudios.wordpress.com/277/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3fstudios.wordpress.com&blog=2632535&post=277&subd=3fstudios&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://3fstudios.wordpress.com/2008/02/23/audio-effects/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a793590a91b5f22e9f8ffd68a2c9f060?s=96&#38;d=identicon" medium="image">
			<media:title type="html">3fstudios</media:title>
		</media:content>
	</item>
		<item>
		<title>Networking</title>
		<link>http://3fstudios.wordpress.com/2008/02/22/networking/</link>
		<comments>http://3fstudios.wordpress.com/2008/02/22/networking/#comments</comments>
		<pubDate>Fri, 22 Feb 2008 08:43:10 +0000</pubDate>
		<dc:creator>3fstudios</dc:creator>
				<category><![CDATA[TDD - Networking]]></category>

		<guid isPermaLink="false">http://3fstudios.wordpress.com/2008/02/22/networking/</guid>
		<description><![CDATA[“Cross Worlds” is designed for ‘Single-player’ or ‘Two-player’ mode. Selection of number of players will be done at the Main Menu screen. In Single player mode, you will be given a choice to select one of the two main characters to start off with. But as the game progress, the two characters will join forces [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3fstudios.wordpress.com&blog=2632535&post=268&subd=3fstudios&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>“Cross Worlds” is designed for ‘Single-player’ or ‘Two-player’ mode. Selection of number of players will be done at the Main Menu screen. In Single player mode, you will be given a choice to select one of the two main characters to start off with. But as the game progress, the two characters will join forces to battle against the evil in hope to save the world. You can alternate between the two characters, realized the different potential powers they have which can be useful for solving the different tasks ahead.<br />
For Two-player mode, the connection is done like that of a server-to-client relationship. At the Two-player mode menu screen, there will be three options: Create Game, Join Game and Quit. The host (server) will create the game by selecting ‘Create Game’ and waits for a player to join the game. The other player (client), upon entering ‘Join Game’, will have to key in the IP address of the host. The game will proceed upon successful connection between the two computers.</p>
<p align="center"><a href="http://3fstudios.files.wordpress.com/2008/02/network01.jpg" title="network01.jpg"><img src="http://3fstudios.files.wordpress.com/2008/02/network01.thumbnail.jpg" alt="network01.jpg" /></a></p>
<p>For implementation, DirectPlay9 being the latest version of network communication library from Microsoft for computer game development, can be applied. It allows applications to communicate with each other regardless of the underlying protocol. DirectPlay9 has primary and secondary interfaces. The former allows access to server, client and peer-to-peer functionalities, while the latter has functions such as various lobby interfaces that allow players to find and prepare games, and also has various network address translation (NAT) interfaces that make it easier for players behind routers to host games.</p>
<p align="center"><a href="http://3fstudios.files.wordpress.com/2008/02/network02.jpg" title="network02.jpg"><img src="http://3fstudios.files.wordpress.com/2008/02/network02.thumbnail.jpg" alt="network02.jpg" /></a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/3fstudios.wordpress.com/268/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/3fstudios.wordpress.com/268/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/3fstudios.wordpress.com/268/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/3fstudios.wordpress.com/268/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/3fstudios.wordpress.com/268/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/3fstudios.wordpress.com/268/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/3fstudios.wordpress.com/268/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/3fstudios.wordpress.com/268/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/3fstudios.wordpress.com/268/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/3fstudios.wordpress.com/268/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/3fstudios.wordpress.com/268/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/3fstudios.wordpress.com/268/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3fstudios.wordpress.com&blog=2632535&post=268&subd=3fstudios&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://3fstudios.wordpress.com/2008/02/22/networking/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a793590a91b5f22e9f8ffd68a2c9f060?s=96&#38;d=identicon" medium="image">
			<media:title type="html">3fstudios</media:title>
		</media:content>

		<media:content url="http://3fstudios.files.wordpress.com/2008/02/network01.thumbnail.jpg" medium="image">
			<media:title type="html">network01.jpg</media:title>
		</media:content>

		<media:content url="http://3fstudios.files.wordpress.com/2008/02/network02.thumbnail.jpg" medium="image">
			<media:title type="html">network02.jpg</media:title>
		</media:content>
	</item>
		<item>
		<title>Triggers</title>
		<link>http://3fstudios.wordpress.com/2008/02/22/triggers/</link>
		<comments>http://3fstudios.wordpress.com/2008/02/22/triggers/#comments</comments>
		<pubDate>Fri, 22 Feb 2008 04:51:55 +0000</pubDate>
		<dc:creator>3fstudios</dc:creator>
				<category><![CDATA[TDD - AI and Game Logic / Interactivity]]></category>

		<guid isPermaLink="false">http://3fstudios.wordpress.com/?p=250</guid>
		<description><![CDATA[The following is a series of diagrams that depicts the triggering sequence for various issues concerning the game play.


&#160;


&#160;


Characters:

The player has to avoid security camera detection in order to infiltrate the premises. The AI implemented will trigger the enemy combat alert event once the cameras detect the Hero. If Hero is spotted by the enemy, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3fstudios.wordpress.com&blog=2632535&post=250&subd=3fstudios&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>The following is a series of diagrams that depicts the triggering sequence for various issues concerning the game play.<b></b></p>
<table width="90%">
<tr>
<td style="border-bottom:1px dashed #aaaaaa;width:100%;">&nbsp;</td>
</tr>
<tr>
<td style="width:100%;">&nbsp;</td>
</tr>
</table>
<p><b>Characters:</b></p>
<p align="center"><a href="http://3fstudios.files.wordpress.com/2008/02/triggers01.jpg" title="triggers01.jpg"><img src="http://3fstudios.files.wordpress.com/2008/02/triggers01.thumbnail.jpg" alt="triggers01.jpg" /></a></p>
<p>The player has to avoid security camera detection in order to infiltrate the premises. The AI implemented will trigger the enemy combat alert event once the cameras detect the Hero. If Hero is spotted by the enemy, the enemy combat alert will also trigger.</p>
<table width="100%">
<tr>
<td style="border-bottom:1px dashed #aaaaaa;width:100%;">&nbsp;</td>
</tr>
<tr>
<td style="width:100%;">&nbsp;</td>
</tr>
</table>
<p><b> Quest &amp; Sub-quests:</b></p>
<p><u>Overall Map of Mission Level 2 :</u></p>
<p align="center"><a href="http://3fstudios.files.wordpress.com/2008/02/triggers02.jpg" title="triggers02.jpg"><img src="http://3fstudios.files.wordpress.com/2008/02/triggers02.thumbnail.jpg" alt="triggers02.jpg" /></a></p>
<p><u>Mission Level 2: Save Point</u></p>
<p align="center"><a href="http://3fstudios.files.wordpress.com/2008/02/triggers03.jpg" title="triggers03.jpg"><img src="http://3fstudios.files.wordpress.com/2008/02/triggers03.thumbnail.jpg" alt="triggers03.jpg" /></a></p>
<p><u>Mission Level 2a: Military Facility Corridor</u></p>
<p align="center"><a href="http://3fstudios.files.wordpress.com/2008/02/triggers04.jpg" title="triggers04.jpg"><img src="http://3fstudios.files.wordpress.com/2008/02/triggers04.thumbnail.jpg" alt="triggers04.jpg" /></a></p>
<p><u>Mission Level 2b: Military Facility Room #1</u></p>
<p align="center"><a href="http://3fstudios.files.wordpress.com/2008/02/triggers05.jpg" title="triggers05.jpg"><img src="http://3fstudios.files.wordpress.com/2008/02/triggers05.thumbnail.jpg" alt="triggers05.jpg" /></a></p>
<p><u>Mission Level 2c: Military Facility Room #2</u></p>
<p align="center"><a href="http://3fstudios.files.wordpress.com/2008/02/triggers06.jpg" title="triggers06.jpg"><img src="http://3fstudios.files.wordpress.com/2008/02/triggers06.thumbnail.jpg" alt="triggers06.jpg" /></a></p>
<p><u>Mission Level 2d: Military Facility Room #3</u></p>
<p align="center"> <a href="http://3fstudios.files.wordpress.com/2008/02/triggers07.jpg" title="triggers07.jpg"><img src="http://3fstudios.files.wordpress.com/2008/02/triggers07.thumbnail.jpg" alt="triggers07.jpg" /></a></p>
<p><u>Mission Level 2e: Final Encounter Boss Room</u></p>
<p align="center"> <a href="http://3fstudios.files.wordpress.com/2008/02/triggers08.jpg" title="triggers08.jpg"><img src="http://3fstudios.files.wordpress.com/2008/02/triggers08.thumbnail.jpg" alt="triggers08.jpg" /></a></p>
<table width="100%">
<tr>
<td style="border-bottom:1px dashed #aaaaaa;width:100%;">&nbsp;</td>
</tr>
<tr>
<td style="width:100%;">&nbsp;</td>
</tr>
</table>
<p><u>Environmental:</u></p>
<p align="center"><a href="http://3fstudios.files.wordpress.com/2008/02/triggers09.jpg" title="triggers09.jpg"><img src="http://3fstudios.files.wordpress.com/2008/02/triggers09.thumbnail.jpg" alt="triggers09.jpg" /></a></p>
<p>When Hero accidentally stepped on a puddle of water, sound of water splashing will triggered. Thus, enemies around the radius of 5 meters who heard the sound will be triggered into the enemy detection alert. The enemies will patrol around the point of which the sound is triggered, if the Hero is spotted, the enemies will then be triggered into combat alert mode. Or else, after 10 seconds of patrolling, the enemies will return to it original patrolling route. Regardless of either the Hero or the enemy firing, the sound of gunshot will be triggered. Thus, enemies patrolling who heard the sound within the radius of 5 meters will be triggered into enemy combat alert. These triggers are implemented to make the game play as realistic as possible.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/3fstudios.wordpress.com/250/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/3fstudios.wordpress.com/250/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/3fstudios.wordpress.com/250/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/3fstudios.wordpress.com/250/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/3fstudios.wordpress.com/250/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/3fstudios.wordpress.com/250/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/3fstudios.wordpress.com/250/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/3fstudios.wordpress.com/250/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/3fstudios.wordpress.com/250/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/3fstudios.wordpress.com/250/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/3fstudios.wordpress.com/250/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/3fstudios.wordpress.com/250/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3fstudios.wordpress.com&blog=2632535&post=250&subd=3fstudios&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://3fstudios.wordpress.com/2008/02/22/triggers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a793590a91b5f22e9f8ffd68a2c9f060?s=96&#38;d=identicon" medium="image">
			<media:title type="html">3fstudios</media:title>
		</media:content>

		<media:content url="http://3fstudios.files.wordpress.com/2008/02/triggers01.thumbnail.jpg" medium="image">
			<media:title type="html">triggers01.jpg</media:title>
		</media:content>

		<media:content url="http://3fstudios.files.wordpress.com/2008/02/triggers02.thumbnail.jpg" medium="image">
			<media:title type="html">triggers02.jpg</media:title>
		</media:content>

		<media:content url="http://3fstudios.files.wordpress.com/2008/02/triggers03.thumbnail.jpg" medium="image">
			<media:title type="html">triggers03.jpg</media:title>
		</media:content>

		<media:content url="http://3fstudios.files.wordpress.com/2008/02/triggers04.thumbnail.jpg" medium="image">
			<media:title type="html">triggers04.jpg</media:title>
		</media:content>

		<media:content url="http://3fstudios.files.wordpress.com/2008/02/triggers05.thumbnail.jpg" medium="image">
			<media:title type="html">triggers05.jpg</media:title>
		</media:content>

		<media:content url="http://3fstudios.files.wordpress.com/2008/02/triggers06.thumbnail.jpg" medium="image">
			<media:title type="html">triggers06.jpg</media:title>
		</media:content>

		<media:content url="http://3fstudios.files.wordpress.com/2008/02/triggers07.thumbnail.jpg" medium="image">
			<media:title type="html">triggers07.jpg</media:title>
		</media:content>

		<media:content url="http://3fstudios.files.wordpress.com/2008/02/triggers08.thumbnail.jpg" medium="image">
			<media:title type="html">triggers08.jpg</media:title>
		</media:content>

		<media:content url="http://3fstudios.files.wordpress.com/2008/02/triggers09.thumbnail.jpg" medium="image">
			<media:title type="html">triggers09.jpg</media:title>
		</media:content>
	</item>
		<item>
		<title>Pathfinding</title>
		<link>http://3fstudios.wordpress.com/2008/02/22/pathfinding/</link>
		<comments>http://3fstudios.wordpress.com/2008/02/22/pathfinding/#comments</comments>
		<pubDate>Fri, 22 Feb 2008 03:02:34 +0000</pubDate>
		<dc:creator>3fstudios</dc:creator>
				<category><![CDATA[TDD - AI and Game Logic / Interactivity]]></category>

		<guid isPermaLink="false">http://3fstudios.wordpress.com/2008/02/23/pathfinding/</guid>
		<description><![CDATA[The path finding algorithm takes into consideration 2 factors:

Current location
Location of event (event may be an mouse click or trigger)

When path finding is activated, calculations will be made to find the optimal path to the event. Once the calculations are completed, the AI will follow the designated path to the source of the event. While [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3fstudios.wordpress.com&blog=2632535&post=278&subd=3fstudios&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>The path finding algorithm takes into consideration 2 factors:</p>
<ul>
<li>Current location</li>
<li>Location of event (event may be an mouse click or trigger)</li>
</ul>
<p>When path finding is activated, calculations will be made to find the optimal path to the event. Once the calculations are completed, the AI will follow the designated path to the source of the event. While moving along the path, other algorithms will be run to check the field of view to determine if it should continue to follow the designated path or to enter combat mode or other modes.</p>
<p>Some algorithms that will be taken into consideration are shortest-path and fastest-path. Comparisons will be made between the 2 to determine which algorithm to adopt. If time permits, the AI will be given the choice to choose from multiple paths to introduce the random factor so as to increase replay value.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/3fstudios.wordpress.com/278/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/3fstudios.wordpress.com/278/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/3fstudios.wordpress.com/278/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/3fstudios.wordpress.com/278/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/3fstudios.wordpress.com/278/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/3fstudios.wordpress.com/278/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/3fstudios.wordpress.com/278/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/3fstudios.wordpress.com/278/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/3fstudios.wordpress.com/278/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/3fstudios.wordpress.com/278/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/3fstudios.wordpress.com/278/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/3fstudios.wordpress.com/278/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3fstudios.wordpress.com&blog=2632535&post=278&subd=3fstudios&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://3fstudios.wordpress.com/2008/02/22/pathfinding/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a793590a91b5f22e9f8ffd68a2c9f060?s=96&#38;d=identicon" medium="image">
			<media:title type="html">3fstudios</media:title>
		</media:content>
	</item>
		<item>
		<title>Combat AI</title>
		<link>http://3fstudios.wordpress.com/2008/02/22/combat-ai/</link>
		<comments>http://3fstudios.wordpress.com/2008/02/22/combat-ai/#comments</comments>
		<pubDate>Fri, 22 Feb 2008 02:21:55 +0000</pubDate>
		<dc:creator>3fstudios</dc:creator>
				<category><![CDATA[TDD - AI and Game Logic / Interactivity]]></category>

		<guid isPermaLink="false">http://3fstudios.wordpress.com/?p=279</guid>
		<description><![CDATA[The game’s AI will be based on the “game modes” that the user has chosen. There are basically 2 levels of Intelligence, level 1- 2 that controls the calculations affecting the combat rules during engagement of two subjects. By default, the game starts in “Normal Mode” (intelligence level 1).
Basic Combat AI:

Take cover/prone down when gun [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3fstudios.wordpress.com&blog=2632535&post=279&subd=3fstudios&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>The game’s AI will be based on the “game modes” that the user has chosen. There are basically 2 levels of Intelligence, level 1- 2 that controls the calculations affecting the combat rules during engagement of two subjects. By default, the game starts in “Normal Mode” (intelligence level 1).</p>
<p>Basic Combat AI:</p>
<ul>
<li>Take cover/prone down when gun shot is heard, move line of sight to the direction</li>
<li>Fire back when enemy is spotted</li>
</ul>
<p>Level 2, “Hard Mode”:</p>
<ul>
<li>increase in accuracy</li>
<li>less damage taken for self</li>
<li>increased damage dealt to opponent</li>
</ul>
<p align="center"><a href="http://3fstudios.files.wordpress.com/2008/02/ai01.jpg" title="ai01.jpg"><img src="http://3fstudios.files.wordpress.com/2008/02/ai01.thumbnail.jpg" alt="ai01.jpg" /></a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/3fstudios.wordpress.com/279/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/3fstudios.wordpress.com/279/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/3fstudios.wordpress.com/279/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/3fstudios.wordpress.com/279/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/3fstudios.wordpress.com/279/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/3fstudios.wordpress.com/279/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/3fstudios.wordpress.com/279/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/3fstudios.wordpress.com/279/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/3fstudios.wordpress.com/279/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/3fstudios.wordpress.com/279/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/3fstudios.wordpress.com/279/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/3fstudios.wordpress.com/279/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3fstudios.wordpress.com&blog=2632535&post=279&subd=3fstudios&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://3fstudios.wordpress.com/2008/02/22/combat-ai/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a793590a91b5f22e9f8ffd68a2c9f060?s=96&#38;d=identicon" medium="image">
			<media:title type="html">3fstudios</media:title>
		</media:content>

		<media:content url="http://3fstudios.files.wordpress.com/2008/02/ai01.thumbnail.jpg" medium="image">
			<media:title type="html">ai01.jpg</media:title>
		</media:content>
	</item>
		<item>
		<title>Character AI</title>
		<link>http://3fstudios.wordpress.com/2008/02/22/character-ai/</link>
		<comments>http://3fstudios.wordpress.com/2008/02/22/character-ai/#comments</comments>
		<pubDate>Fri, 22 Feb 2008 01:28:09 +0000</pubDate>
		<dc:creator>3fstudios</dc:creator>
				<category><![CDATA[TDD - AI and Game Logic / Interactivity]]></category>

		<guid isPermaLink="false">http://3fstudios.wordpress.com/?p=281</guid>
		<description><![CDATA[The following describes the options that the various in-game Character AIs will take during different situations.
Main Lead (Single-player mode, for the uncontrolled lead):

Walk
Run
Crouch
Interact with environment (i.e. Attack, Ask AI to stay at a position)

Boss:

Attack 1: Tail swipe (attack targets behind)
Attack 2: Fury swipe (single target, x2 hit)
Attack 3: Fireball (ranged magic attack)

Guards:

Patrol
Engage in combat
Sound Alarm
Pursue

 [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3fstudios.wordpress.com&blog=2632535&post=281&subd=3fstudios&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>The following describes the options that the various in-game Character AIs will take during different situations.</p>
<p>Main Lead (Single-player mode, for the uncontrolled lead):</p>
<ul>
<li>Walk</li>
<li>Run</li>
<li>Crouch</li>
<li>Interact with environment (i.e. Attack, Ask AI to stay at a position)</li>
</ul>
<p>Boss:</p>
<ul>
<li>Attack 1: Tail swipe (attack targets behind)</li>
<li>Attack 2: Fury swipe (single target, x2 hit)</li>
<li>Attack 3: Fireball (ranged magic attack)</li>
</ul>
<p>Guards:</p>
<ul>
<li>Patrol</li>
<li>Engage in combat</li>
<li>Sound Alarm</li>
<li>Pursue</li>
</ul>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/3fstudios.wordpress.com/281/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/3fstudios.wordpress.com/281/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/3fstudios.wordpress.com/281/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/3fstudios.wordpress.com/281/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/3fstudios.wordpress.com/281/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/3fstudios.wordpress.com/281/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/3fstudios.wordpress.com/281/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/3fstudios.wordpress.com/281/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/3fstudios.wordpress.com/281/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/3fstudios.wordpress.com/281/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/3fstudios.wordpress.com/281/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/3fstudios.wordpress.com/281/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3fstudios.wordpress.com&blog=2632535&post=281&subd=3fstudios&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://3fstudios.wordpress.com/2008/02/22/character-ai/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a793590a91b5f22e9f8ffd68a2c9f060?s=96&#38;d=identicon" medium="image">
			<media:title type="html">3fstudios</media:title>
		</media:content>
	</item>
		<item>
		<title>Game Physics</title>
		<link>http://3fstudios.wordpress.com/2008/02/21/game-physics/</link>
		<comments>http://3fstudios.wordpress.com/2008/02/21/game-physics/#comments</comments>
		<pubDate>Thu, 21 Feb 2008 08:31:19 +0000</pubDate>
		<dc:creator>3fstudios</dc:creator>
				<category><![CDATA[TDD - Game Physics and Collision Detection]]></category>

		<guid isPermaLink="false">http://3fstudios.wordpress.com/?p=224</guid>
		<description><![CDATA[All matter in this universe follows certain laws of motion. Similarly in a game, these laws can be simulated by the variables to the equation can be changed to add the excite factor to the game.
The physics engine that will be utilized to develop the game is the 3D Game Studio 7’s in build physics [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3fstudios.wordpress.com&blog=2632535&post=224&subd=3fstudios&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>All matter in this universe follows certain laws of motion. Similarly in a game, these laws can be simulated by the variables to the equation can be changed to add the excite factor to the game.</p>
<p>The physics engine that will be utilized to develop the game is the 3D Game Studio 7’s in build physics library. As such, there will not be a need to use other third-party physics libraries (also called physics engine) such as PhysX, Havok, TrueAxis, Novodex and Ogre.</p>
<p>However, there are several issues that need to be taken care of while working with the physics engine,</p>
<ul>
<li>Entities need to be registered as physics objects to enable collision detection</li>
<li>Only MDL and WMB can be physics objects</li>
</ul>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/3fstudios.wordpress.com/224/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/3fstudios.wordpress.com/224/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/3fstudios.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/3fstudios.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/3fstudios.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/3fstudios.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/3fstudios.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/3fstudios.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/3fstudios.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/3fstudios.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/3fstudios.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/3fstudios.wordpress.com/224/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3fstudios.wordpress.com&blog=2632535&post=224&subd=3fstudios&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://3fstudios.wordpress.com/2008/02/21/game-physics/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a793590a91b5f22e9f8ffd68a2c9f060?s=96&#38;d=identicon" medium="image">
			<media:title type="html">3fstudios</media:title>
		</media:content>
	</item>
		<item>
		<title>Motion &amp; Projectile Physics</title>
		<link>http://3fstudios.wordpress.com/2008/02/21/motion-projectile-physics/</link>
		<comments>http://3fstudios.wordpress.com/2008/02/21/motion-projectile-physics/#comments</comments>
		<pubDate>Thu, 21 Feb 2008 08:03:34 +0000</pubDate>
		<dc:creator>3fstudios</dc:creator>
				<category><![CDATA[TDD - Game Physics and Collision Detection]]></category>

		<guid isPermaLink="false">http://3fstudios.wordpress.com/?p=225</guid>
		<description><![CDATA[Motion revolves around the three Newton&#8217;s Laws. Things to observe in moving objects include the inertia, gravitational force and friction.
In real-life situations, objects moving up-hill will require more energy and hence move slower. Similarly, these motion physics will be considered for application to in-game objects that require motion. Below is a simple example that describes [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3fstudios.wordpress.com&blog=2632535&post=225&subd=3fstudios&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Motion revolves around the three Newton&#8217;s Laws. Things to observe in moving objects include the inertia, gravitational force and friction.</p>
<p>In real-life situations, objects moving up-hill will require more energy and hence move slower. Similarly, these motion physics will be considered for application to in-game objects that require motion. Below is a simple example that describes such motion through the use of a C-Script that is usable with the 3D Game Studio 7 Engine.</p>
<p><i>Referenced from Lite-C Workshop 19 physics engine:</i></p>
<p><font color="blue">ph_setgravity (vector(0, 0, -386));</font> <font color="teal">// set the gravity</font></p>
<p><font color="blue">phent_settype (ball, PH_RIGID, PH_SPHERE);</font> <font color="teal">// set the physics entity type</font></p>
<p><font color="blue">phent_setmass (ball, 3, PH_SPHERE);</font> <font color="teal">// and its mass</font></p>
<p><font color="blue">phent_setfriction (ball, 80);</font> <font color="teal">// set the friction</font></p>
<p><font color="blue">phent_setdamping (ball, 40, 40);</font> <font color="teal">// set the damping</font></p>
<p><font color="blue">phent_setelasticity (ball, 50, 20);</font> <font color="teal">// set the elasticity</font></p>
<p><font color="blue">phent_addtorqueglobal (ball, ball_speed);</font> <font color="teal">// add a torque (an angular force) to the ball</font></p>
<p>For implementation of projectiles, calculations will be based on Newton’s First Law 1 of Inertia.</p>
<table border="0" cellpadding="0" cellspacing="10">
<tr>
<td><a href="http://3fstudios.files.wordpress.com/2008/02/physics02.jpg" title="physics02.jpg"><img src="http://3fstudios.files.wordpress.com/2008/02/physics02.thumbnail.jpg" alt="physics02.jpg" /></a></td>
<td><a href="http://3fstudios.files.wordpress.com/2008/02/physics03.jpg" title="physics03.jpg"><img src="http://3fstudios.files.wordpress.com/2008/02/physics03.thumbnail.jpg" alt="physics03.jpg" height="109" width="109" /></a></td>
</tr>
</table>
<p><i>Quote from Wikipedia:</i><br />
<i><font color="teal">“If no net force acts on a particle, then it is possible to select a set of reference frames, called inertial reference frames, observed from which the particle moves without any change in velocity. This law is often simplified into the sentence &#8220;An object will stay at rest or continue at a constant velocity unless acted upon by an external unbalanced force&#8221;.</font></i></p>
<p>Therefore actual realization of the projectile feature will follow the subsequent flow,</p>
<p><a href="http://3fstudios.files.wordpress.com/2008/02/physics01.jpg" title="physics01.jpg"></a></p>
<div style="text-align:center;"><a href="http://3fstudios.files.wordpress.com/2008/02/physics01.jpg" title="physics01.jpg"><img src="http://3fstudios.files.wordpress.com/2008/02/physics01.thumbnail.jpg" alt="physics01.jpg" /></a></div>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/3fstudios.wordpress.com/225/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/3fstudios.wordpress.com/225/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/3fstudios.wordpress.com/225/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/3fstudios.wordpress.com/225/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/3fstudios.wordpress.com/225/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/3fstudios.wordpress.com/225/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/3fstudios.wordpress.com/225/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/3fstudios.wordpress.com/225/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/3fstudios.wordpress.com/225/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/3fstudios.wordpress.com/225/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/3fstudios.wordpress.com/225/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/3fstudios.wordpress.com/225/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3fstudios.wordpress.com&blog=2632535&post=225&subd=3fstudios&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://3fstudios.wordpress.com/2008/02/21/motion-projectile-physics/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a793590a91b5f22e9f8ffd68a2c9f060?s=96&#38;d=identicon" medium="image">
			<media:title type="html">3fstudios</media:title>
		</media:content>

		<media:content url="http://3fstudios.files.wordpress.com/2008/02/physics02.thumbnail.jpg" medium="image">
			<media:title type="html">physics02.jpg</media:title>
		</media:content>

		<media:content url="http://3fstudios.files.wordpress.com/2008/02/physics03.thumbnail.jpg" medium="image">
			<media:title type="html">physics03.jpg</media:title>
		</media:content>

		<media:content url="http://3fstudios.files.wordpress.com/2008/02/physics01.thumbnail.jpg" medium="image">
			<media:title type="html">physics01.jpg</media:title>
		</media:content>
	</item>
		<item>
		<title>Combat Physics</title>
		<link>http://3fstudios.wordpress.com/2008/02/21/combat-physics/</link>
		<comments>http://3fstudios.wordpress.com/2008/02/21/combat-physics/#comments</comments>
		<pubDate>Thu, 21 Feb 2008 07:38:51 +0000</pubDate>
		<dc:creator>3fstudios</dc:creator>
				<category><![CDATA[TDD - Game Physics and Collision Detection]]></category>

		<guid isPermaLink="false">http://3fstudios.wordpress.com/?p=229</guid>
		<description><![CDATA[This can also be classified as collision physics. When two physics objects collide, both would have a collision response. Also, a different response will be produced if a physics object collided with a non-physics object. Likewise, different collision response occur no matter which object collides and requires variable adjustment. Shown below is a block of [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3fstudios.wordpress.com&blog=2632535&post=229&subd=3fstudios&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>This can also be classified as collision physics. When two physics objects collide, both would have a collision response. Also, a different response will be produced if a physics object collided with a non-physics object. Likewise, different collision response occur no matter which object collides and requires variable adjustment. Shown below is a block of collision response codes that simulate such response.</p>
<p><i>Referenced from a Lite-C example: Enemy moves back when hit by player with sword</i><br />
<font color="blue"><br />
ACTION enemy_dummy {<br />
my.shadow = on;<br />
my.entity_type = 2;<br />
my.enable_scan = on;<br />
WHILE (1) {<br />
IF (my.hit_by_player == 1) {<br />
my.move_x = player.move_x;<br />
my.move_y = player.move_y;<br />
my.move_z = player.move_z;</font></p>
<p><font color="blue">	c_move(my,nullvector,my.move_x,use_aabb | ignore_passable | glide);<br />
IF (player.animblend == blend || player.animblend &lt; attack_a || my.animblend &gt; attack_f) { my.hit_by_player = 0; }<br />
}<br />
IF (player.animblend &gt;= stand &amp;&amp; target_enemy == my &amp;&amp; player_lock_on == 0) &amp;&amp; (player.animblend &lt; attack_a || player.animblend &gt; attack_f) { target_enemy = null; }<br />
IF (target_enemy == my &amp;&amp; vec_dist(my.x,player.x) &gt; 200) { target_enemy = null; }<br />
wait(1);<br />
}<br />
}<br />
</font></p>
<p>Damage dealt is calculated differently when a target is hit differently on different parts of its model/mesh.</p>
<p>The damage count will be higher on vital area such as, the head region. This is where 2 hits are enough to dispatch a target regardless of its remaining life points, except for the case of the final boss character.</p>
<p>Hits on non-vital areas will require about 4-5 hits to successfully take down a target with full life points. However, the exact damage roll will be dependant on the “Damage rating” of the weapon being used divided by the target’s armor bonus.</p>
<p align="center"><i>Formula 3:<br />
<font color="teal">Life Span = Current Life Span – (Weapon damage / armor)</font></i></p>
<p>Shown below is a simple flow of how the combat physics will be implemented.<a href="http://3fstudios.files.wordpress.com/2008/02/physics04.jpg" title="physics04.jpg"></a></p>
<div style="text-align:center;"><a href="http://3fstudios.files.wordpress.com/2008/02/physics04.jpg" title="physics04.jpg"><img src="http://3fstudios.files.wordpress.com/2008/02/physics04.thumbnail.jpg" alt="physics04.jpg" /></a></div>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/3fstudios.wordpress.com/229/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/3fstudios.wordpress.com/229/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/3fstudios.wordpress.com/229/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/3fstudios.wordpress.com/229/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/3fstudios.wordpress.com/229/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/3fstudios.wordpress.com/229/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/3fstudios.wordpress.com/229/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/3fstudios.wordpress.com/229/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/3fstudios.wordpress.com/229/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/3fstudios.wordpress.com/229/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/3fstudios.wordpress.com/229/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/3fstudios.wordpress.com/229/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=3fstudios.wordpress.com&blog=2632535&post=229&subd=3fstudios&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://3fstudios.wordpress.com/2008/02/21/combat-physics/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a793590a91b5f22e9f8ffd68a2c9f060?s=96&#38;d=identicon" medium="image">
			<media:title type="html">3fstudios</media:title>
		</media:content>

		<media:content url="http://3fstudios.files.wordpress.com/2008/02/physics04.thumbnail.jpg" medium="image">
			<media:title type="html">physics04.jpg</media:title>
		</media:content>
	</item>
	</channel>
</rss>