<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Jimi Makes Games</title>
	
	<link>http://murcho.alumnaie.net</link>
	<description>- because they don't make themselves....</description>
	<pubDate>Sun, 22 Nov 2009 00:44:04 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.5</generator>
	<language>en</language>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/JimiMakesGames" /><feedburner:info uri="jimimakesgames" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:browserFriendly></feedburner:browserFriendly><item>
		<title>Real-time Unity post processing shader woes.</title>
		<link>http://feedproxy.google.com/~r/JimiMakesGames/~3/8nLR8GMHO_w/</link>
		<comments>http://murcho.alumnaie.net/11/real-time-unity-post-processing-shader-woes/#comments</comments>
		<pubDate>Sun, 22 Nov 2009 00:43:29 +0000</pubDate>
		<dc:creator>jimi</dc:creator>
		
		<category><![CDATA[Game Programming]]></category>

		<category><![CDATA[Shaders]]></category>

		<guid isPermaLink="false">http://murcho.alumnaie.net/?p=162</guid>
		<description><![CDATA[


 I haven&#8217;t spoken much about the work I&#8217;ve been doing in my job at Prophecy Games, largely due to the fact I&#8217;ve been very busy with it.  Like all of us though, we do need some help from time to time.
I&#8217;ve been doing the shaders for our project, which can be quite complicated.  I&#8217;ve [...]]]></description>
			<content:encoded><![CDATA[<p style="float: right;margin: 4px;"><script type="text/javascript"><!--
google_ad_client = "pub-9954579481839234";
/* 234x60, created 1/2/09 */
google_ad_slot = "7157302892";
google_ad_width = 234;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></p><!-- This is a HTML comment, it will not display in any page. Feel free to remove this comment if it cause any inconvenient to you.
	Thanks for using digg digg, please visit http://www.mkyong.com/blog/digg-digg-wordpress-plugin for any comments and ideas, 
	
    Author : Yong Mook Kim
    Website : http://www.mkyong.com
	--><div style='float:left'><table><tr> <td><iframe src='http://digg.com/api/diggthis.php?w=new&amp;u=http://murcho.alumnaie.net/11/real-time-unity-post-processing-shader-woes/&amp;t=Real-time+Unity+post+processing+shader+woes.&amp;s=normal' height='80' width='52' frameborder='0' scrolling='no'></iframe></td></tr></table></div><p>I haven&#8217;t spoken much about the work I&#8217;ve been doing in my job at Prophecy Games, largely due to the fact I&#8217;ve been very busy with it.  Like all of us though, we do need some help from time to time.</p>
<p>I&#8217;ve been doing the <a title="A brief overview of Shaders" href="http://en.wikipedia.org/wiki/Shader" target="_blank">shaders</a> for our project, which can be quite complicated.  I&#8217;ve done pretty well I think, although I&#8217;m at a point where I need some help.  Basically this shader takes the normal and depth information from the scene, and uses that information to determine where a black outline should be drawn.  This creates a very cartoony look for the scene.<span id="more-162"></span></p>
<p>All was well with this shader, until I turned on anti-aliasing.  This actually caused the outline to flip upside down, however the rest of the scene is still rendered normally.  I&#8217;m posting it here so that I can get some help from the guys at Unity.  I will be updating this post once I have the solution to the problem, just in case anyone else runs into it as well.</p>
<p>Here&#8217;s the shader code.</p>
<p>Shader &#8220;Hidden/Edge Detect Normals XNA&#8221; {<br />
Properties {<br />
_MainTex (&#8221;", RECT) = &#8220;&#8221; {}<br />
_DepthNormalsTexture (&#8221;DepthNormalsTexture&#8221;, RECT) = &#8220;&#8221; {}<br />
_NormalThreshold (&#8221;NormalThreshold&#8221;, float) = 1.0<br />
_DepthThreshold (&#8221;DepthThreshold&#8221;, float) = 1.0<br />
_NormalSensitivity (&#8221;NormalSensitivity&#8221;, float) = 1.0<br />
_DepthSensitivity (&#8221;DepthSensitivity&#8221;, float) = 1.0<br />
_EdgeIntensity (&#8221;EdgeIntensity&#8221;, float) = 1.0<br />
_EdgeWidth (&#8221;EdgeWidth&#8221;, float) = 1.0<br />
_ScreenHeight (&#8221;", float) = 1.0<br />
_ScreenWidth (&#8221;", float) = 1.0<br />
}</p>
<p>SubShader {<br />
Pass {<br />
ZTest Always Cull Off ZWrite Off<br />
Fog { Mode off }</p>
<p>CGPROGRAM<br />
#pragma target 3.0<br />
#pragma vertex vert<br />
#pragma fragment frag<br />
#pragma fragmentoption ARB_precision_hint_fastest<br />
#include &#8220;UnityCG.cginc&#8221;</p>
<p>uniform samplerRECT _MainTex;<br />
uniform samplerRECT _DepthNormalsTexture;</p>
<p>uniform float4 _MainTex_TexelSize;<br />
uniform float4 _DepthNormalsTexture_TexelSize;<br />
uniform float _NormalThreshold;<br />
uniform float _DepthThreshold;<br />
uniform float _NormalSensitivity;<br />
uniform float _DepthSensitivity;<br />
uniform float _EdgeWidth;<br />
uniform float _EdgeIntensity;<br />
uniform float _ScreenHeight;<br />
uniform float _ScreenWidth;</p>
<p>struct v2f {<br />
float4 pos : POSITION;<br />
float2 uv : TEXCOORD0;<br />
};</p>
<p>v2f vert( appdata_img v )<br />
{<br />
v2f o;<br />
o.pos = mul (glstate.matrix.mvp, v.vertex);<br />
o.uv = MultiplyUV( glstate.matrix.texture[0], v.texcoord );<br />
return o;<br />
}</p>
<p>float4 frag (v2f i) : COLOR<br />
{<br />
float4 original = texRECT(_MainTex, i.uv);<br />
float2 edgeOffset = _EdgeWidth / float2(_ScreenWidth, _ScreenHeight);<br />
float2 offset = float2(1,1) * _DepthNormalsTexture_TexelSize.xy;<br />
float2 invOffset = float2(-1,1) * _DepthNormalsTexture_TexelSize.xy;<br />
// 4 samples from normals+depth buffer<br />
float4 normalD1 = texRECT(_DepthNormalsTexture, i.uv - offset);<br />
float4 normalD2 = texRECT(_DepthNormalsTexture, i.uv + offset);<br />
float4 normalD3 = texRECT(_DepthNormalsTexture, i.uv + invOffset);<br />
float4 normalD4 = texRECT(_DepthNormalsTexture, i.uv - invOffset);</p>
<p>float3 normal1;<br />
float depth1;<br />
float3 normal2;<br />
float depth2;<br />
float3 normal3;<br />
float depth3;<br />
float3 normal4;<br />
float depth4;</p>
<p>// Decode normal/depth data<br />
DecodeDepthNormal(normalD1, depth1, normal1);<br />
DecodeDepthNormal(normalD2, depth2, normal2);<br />
DecodeDepthNormal(normalD3, depth3, normal3);<br />
DecodeDepthNormal(normalD4, depth4, normal4);</p>
<p>//return float4(depth1, depth1, depth1, 1);</p>
<p>// Work out how much the normal and depth values are changing<br />
float4 diagonalDelta = abs(float4(normal1, depth1) - float4(normal2, depth2)) + abs(float4(normal3, depth3) - float4(normal4, depth4));</p>
<p>float4 normalDelta = dot(diagonalDelta.xyz, 1);<br />
float depthDelta = diagonalDelta.w;</p>
<p>// Filter out very small changes, in order to produce nice clean results<br />
normalDelta = saturate((normalDelta - _NormalThreshold) * _NormalSensitivity);<br />
depthDelta = saturate((depthDelta - _DepthThreshold) * _DepthSensitivity);</p>
<p>// Does this pixel lie on an edge?<br />
float edgeAmount = saturate(normalDelta + depthDelta) * _EdgeIntensity;</p>
<p>original *= (1 - edgeAmount);<br />
return original;<br />
}<br />
ENDCG<br />
}<br />
}</p>
<p>Fallback off</p>
<p>}</p>
<p></p><img src="http://feeds.feedburner.com/~r/JimiMakesGames/~4/8nLR8GMHO_w" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://murcho.alumnaie.net/11/real-time-unity-post-processing-shader-woes/feed/</wfw:commentRss>
		<feedburner:origLink>http://murcho.alumnaie.net/11/real-time-unity-post-processing-shader-woes/</feedburner:origLink></item>
		<item>
		<title>Unite 2009…… the Post-Mortem</title>
		<link>http://feedproxy.google.com/~r/JimiMakesGames/~3/yRgpS4z2Blg/</link>
		<comments>http://murcho.alumnaie.net/11/unite-2009-the-post-mortem/#comments</comments>
		<pubDate>Tue, 03 Nov 2009 00:36:14 +0000</pubDate>
		<dc:creator>jimi</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://murcho.alumnaie.net/?p=157</guid>
		<description><![CDATA[


 So Unite has finished, and I must say I had an amazing time.  There is something about the community surrounding the software that is like no other in software development.  Everyone seems ta have a &#8220;you scratch my back I&#8217;ll scratch yours&#8221; attitude, and that&#8217;s not just limited to the end users, that applies [...]]]></description>
			<content:encoded><![CDATA[<!-- This is a HTML comment, it will not display in any page. Feel free to remove this comment if it cause any inconvenient to you.
	Thanks for using digg digg, please visit http://www.mkyong.com/blog/digg-digg-wordpress-plugin for any comments and ideas, 
	
    Author : Yong Mook Kim
    Website : http://www.mkyong.com
	--><div style='float:left'><table><tr> <td><iframe src='http://digg.com/api/diggthis.php?w=new&amp;u=http://murcho.alumnaie.net/11/unite-2009-the-post-mortem/&amp;t=Unite+2009......+the+Post-Mortem&amp;s=normal' height='80' width='52' frameborder='0' scrolling='no'></iframe></td></tr></table></div><p>So Unite has finished, and I must say I had an amazing time.  There is something about the community surrounding the software that is like no other in software development.  Everyone seems ta have a &#8220;you scratch my back I&#8217;ll scratch yours&#8221; attitude, and that&#8217;s not just limited to the end users, that applies to the Unity developers as well.<span id="more-157"></span></p>
<p>I found I could talk to just about anyone at the conference, and everyone was willing to share their experiences of Unity with one another.  OK, this is starting to sound like a bit of a love in but it&#8217;s the truth.  There is an amazing community surrounding the software.</p>
<p>Some of the talks were excellent, and most will be available in video format on their website shortly.  I think the only major session they didn&#8217;t record was the &#8220;Road Map &amp; Wish List&#8221;, which they really didn&#8217;t want details of getting out onto the Internet.  So I won&#8217;t go into what was said, just that it was an open forum where the audience was able to discuss with the developers where Unity was going, and Unity listened to the users for suggestions on what they could do better, and what would be more useful parts of the engine to work on.</p>
<p>The individual talks covered a wide range of topics, from beginner to expert.  My favourite had to be the Post Processing Image Effects talk from Aras on the first day.  It gave me a lot of new ideas on how to push my shader coding skills.</p>
<p>So all in all, I&#8217;d recommend the Unite conference to anyone involved with Unity in any which way.  It was a lot of fun, I learnt a huge amount, and made some excellent contacts.  <a title="Jimi's in the first pic!" href="http://blogs.unity3d.com/2009/10/29/unite-09-day-2/" target="_blank">Plus I got on the Unity Blog!</a></p>
<img src="http://feeds.feedburner.com/~r/JimiMakesGames/~4/yRgpS4z2Blg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://murcho.alumnaie.net/11/unite-2009-the-post-mortem/feed/</wfw:commentRss>
		<feedburner:origLink>http://murcho.alumnaie.net/11/unite-2009-the-post-mortem/</feedburner:origLink></item>
		<item>
		<title>Unite 2009 Day 2…..the unveiling of Unity 2.6</title>
		<link>http://feedproxy.google.com/~r/JimiMakesGames/~3/p83Kt3ymVE8/</link>
		<comments>http://murcho.alumnaie.net/10/unite-2009-day-2the-unveiling-of-unity-26/#comments</comments>
		<pubDate>Thu, 29 Oct 2009 01:48:14 +0000</pubDate>
		<dc:creator>jimi</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://murcho.alumnaie.net/?p=155</guid>
		<description><![CDATA[ What a day.  The Keynote presentation today dropped some jaws.  First of all was the announcement of Unity 2.6, and a lot of new features available in it.  I could go on all day about those, but my favourite has got to be the new animation system.Not only can you now animate any variable [...]]]></description>
			<content:encoded><![CDATA[<!-- This is a HTML comment, it will not display in any page. Feel free to remove this comment if it cause any inconvenient to you.
	Thanks for using digg digg, please visit http://www.mkyong.com/blog/digg-digg-wordpress-plugin for any comments and ideas, 
	
    Author : Yong Mook Kim
    Website : http://www.mkyong.com
	--><div style='float:left'><table><tr> <td><iframe src='http://digg.com/api/diggthis.php?w=new&amp;u=http://murcho.alumnaie.net/10/unite-2009-day-2the-unveiling-of-unity-26/&amp;t=Unite+2009+Day+2.....the+unveiling+of+Unity+2.6&amp;s=normal' height='80' width='52' frameborder='0' scrolling='no'></iframe></td></tr></table></div><p>What a day.  The Keynote presentation today dropped some jaws.  First of all was the announcement of Unity 2.6, and a lot of new features available in it.  I could go on all day about those, but my favourite has got to be the new animation system.<span id="more-155"></span>Not only can you now animate any variable available in the editor, whether it&#8217;s a position, rotation, material value, etc&#8230;..you can also call script functions with key frames.  I think my head just about exploded when they showed that function.</p>
<p>The other major announcement was they are discontinuing the Unity Indie product, and in it&#8217;s place they are releasing Unity (yep just Unity), which is exactly the same as Unity Indie, has the same ability to release games and make money off it, but now it&#8217;s completely free.  This shift in their product approach will change the face of web based gaming, and the level of entry has been dropped even lower for students, hobbyists, and basically anyone that wants to try their hand at games development.</p>
<p>Once I&#8217;ve had a proper chance to spend some time in the editor I&#8217;ll write a more thorough post about the new features.  For now though, if you haven&#8217;t got Unity yet, go get it.  Now.  No really.  It&#8217;s FREE!!!!  <a title="CLICK IT ALREADY!!!!!!" href="http://unity3d.com/" target="_blank">Here&#8217;s a link, just click it.</a></p>
<img src="http://feeds.feedburner.com/~r/JimiMakesGames/~4/p83Kt3ymVE8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://murcho.alumnaie.net/10/unite-2009-day-2the-unveiling-of-unity-26/feed/</wfw:commentRss>
		<feedburner:origLink>http://murcho.alumnaie.net/10/unite-2009-day-2the-unveiling-of-unity-26/</feedburner:origLink></item>
		<item>
		<title>Unite 2009 Day 1</title>
		<link>http://feedproxy.google.com/~r/JimiMakesGames/~3/ZEXmyHdOyPw/</link>
		<comments>http://murcho.alumnaie.net/10/unite-2009-day-1/#comments</comments>
		<pubDate>Wed, 28 Oct 2009 02:11:18 +0000</pubDate>
		<dc:creator>jimi</dc:creator>
		
		<category><![CDATA[Games Industry]]></category>

		<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://murcho.alumnaie.net/?p=152</guid>
		<description><![CDATA[ So after some pre Unite drinks last night, and getting about 4 hours sleep in 48 hours, and trying to adjust to a new time zone, I woke up this morning feeling less than fresh.  That however wasn&#8217;t going to mean having a boring day.
I went along to the advanced Unity classes today, and [...]]]></description>
			<content:encoded><![CDATA[<!-- This is a HTML comment, it will not display in any page. Feel free to remove this comment if it cause any inconvenient to you.
	Thanks for using digg digg, please visit http://www.mkyong.com/blog/digg-digg-wordpress-plugin for any comments and ideas, 
	
    Author : Yong Mook Kim
    Website : http://www.mkyong.com
	--><div style='float:left'><table><tr> <td><iframe src='http://digg.com/api/diggthis.php?w=new&amp;u=http://murcho.alumnaie.net/10/unite-2009-day-1/&amp;t=Unite+2009+Day+1&amp;s=normal' height='80' width='52' frameborder='0' scrolling='no'></iframe></td></tr></table></div><p>So after some pre Unite drinks last night, and getting about 4 hours sleep in 48 hours, and trying to adjust to a new time zone, I woke up this morning feeling less than fresh.  That however wasn&#8217;t going to mean having a boring day.<span id="more-152"></span></p>
<p>I went along to the advanced Unity classes today, and got to see some amazing new features coming in Unity 2.6, including better API support for Post Processing effects, including Anti-Aliasing, and a new profiler which will allow very indepth analysis of what parts of your game are using the most processing time.</p>
<p>I learned a lot from their Performance Optimization class, which will hopefully allow me to push the size of our current levels far beyond what we have them limited to at the moment.  New distance based culling features will do a lot of this work for me.</p>
<p>I&#8217;ve also met a lot of interesting people from all around the world that use Unity, and have been amazed by the diverse range of games that come from this one engine.</p>
<p>Looking forward to tomorrow, many announcements about the company&#8217;s direction and future, along with what is in store for the end users should make for an interesting keynote presentation.</p>
<p>- Jimi</p>
<img src="http://feeds.feedburner.com/~r/JimiMakesGames/~4/ZEXmyHdOyPw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://murcho.alumnaie.net/10/unite-2009-day-1/feed/</wfw:commentRss>
		<feedburner:origLink>http://murcho.alumnaie.net/10/unite-2009-day-1/</feedburner:origLink></item>
		<item>
		<title>Unite 2009 San Francisco</title>
		<link>http://feedproxy.google.com/~r/JimiMakesGames/~3/gHvISutVVTA/</link>
		<comments>http://murcho.alumnaie.net/10/unite-2009-san-francisco/#comments</comments>
		<pubDate>Sun, 25 Oct 2009 22:38:08 +0000</pubDate>
		<dc:creator>jimi</dc:creator>
		
		<category><![CDATA[C#]]></category>

		<category><![CDATA[Game Programming]]></category>

		<category><![CDATA[Games Industry]]></category>

		<category><![CDATA[C++]]></category>

		<category><![CDATA[Unite]]></category>

		<category><![CDATA[Unity]]></category>

		<guid isPermaLink="false">http://murcho.alumnaie.net/?p=149</guid>
		<description><![CDATA[ So it&#8217;s been a long time since I touched my blog, but that mainly boils down to the fact that I got a job in the games industry, working as a programmer for Prophecy Games.  It&#8217;s been a lot of fun, and has kept me very busy.  I thought I&#8217;d breathe some life back [...]]]></description>
			<content:encoded><![CDATA[<!-- This is a HTML comment, it will not display in any page. Feel free to remove this comment if it cause any inconvenient to you.
	Thanks for using digg digg, please visit http://www.mkyong.com/blog/digg-digg-wordpress-plugin for any comments and ideas, 
	
    Author : Yong Mook Kim
    Website : http://www.mkyong.com
	--><div style='float:left'><table><tr> <td><iframe src='http://digg.com/api/diggthis.php?w=new&amp;u=http://murcho.alumnaie.net/10/unite-2009-san-francisco/&amp;t=Unite+2009+San+Francisco&amp;s=normal' height='80' width='52' frameborder='0' scrolling='no'></iframe></td></tr></table></div><p>So it&#8217;s been a long time since I touched my blog, but that mainly boils down to the fact that I got a job in the games industry, working as a programmer for Prophecy Games.  It&#8217;s been a lot of fun, and has kept me very busy.  I thought I&#8217;d breathe some life back into the blog though, as I&#8217;m about to go to the <a title="It's gonna be fun!" href="http://unity3d.com/unite/agenda" target="_blank">Unite 2009</a> conference in San Francisco.<span id="more-149"></span></p>
<p>So through work I have been using the <a title="Unity 3D" href="http://unity3d.com/" target="_blank">Unity</a> engine, which has been an interesting experience.  It&#8217;s a very different working head space from previous C++ engines I have worked in as you don&#8217;t actually compile builds very often.  It&#8217;s all done in a very easy to use editor, and all code is done in one of 3 languages, UnityScript (it&#8217;s JavaScript by syntax, but nothing like web JavaScript), C#, and Boo.  I work mainly in C#, but started out in UnityScript as almost all their documentation is laid out in this strange language.  After a few months of coding in this bizarre language we made the decision to switch to C#, which has made life a lot easier.  I&#8217;ve never really looked into Boo though, and from what I gather there isn&#8217;t a whole lot of people using the engine that use the language.</p>
<p>So I&#8217;m pretty excited about heading to their developer conference.  It will be my first time to the US, and my first professional developer conference.  I&#8217;ll try to find the time to keep the blog posts rolling in, and I also plan to get this blog more active again by putting up some more info about the Unity engine, possibly some tutorials as well.</p>
<p>Cya in San Fran!</p>
<p>- Jimi</p>
<img src="http://feeds.feedburner.com/~r/JimiMakesGames/~4/gHvISutVVTA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://murcho.alumnaie.net/10/unite-2009-san-francisco/feed/</wfw:commentRss>
		<feedburner:origLink>http://murcho.alumnaie.net/10/unite-2009-san-francisco/</feedburner:origLink></item>
		<item>
		<title>Coke’s Superbowl ad shows the changing tide.</title>
		<link>http://feedproxy.google.com/~r/JimiMakesGames/~3/9-Tnd8pIfIU/</link>
		<comments>http://murcho.alumnaie.net/02/cokes-superbowl-ad-shows-the-changing-tide/#comments</comments>
		<pubDate>Mon, 02 Feb 2009 23:35:08 +0000</pubDate>
		<dc:creator>jimi</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://murcho.alumnaie.net/?p=146</guid>
		<description><![CDATA[ Is this a sign of the world actually accepting video games?  Well maybe over in the USA, but I think this ad really shows that the big companies realize that video games are the norm for so many people now.  It looks like everyone has online avatars now.

My favourite is at 0:35, [...]]]></description>
			<content:encoded><![CDATA[<!-- This is a HTML comment, it will not display in any page. Feel free to remove this comment if it cause any inconvenient to you.
	Thanks for using digg digg, please visit http://www.mkyong.com/blog/digg-digg-wordpress-plugin for any comments and ideas, 
	
    Author : Yong Mook Kim
    Website : http://www.mkyong.com
	--><div style='float:left'><table><tr> <td><iframe src='http://digg.com/api/diggthis.php?w=new&amp;u=http://murcho.alumnaie.net/02/cokes-superbowl-ad-shows-the-changing-tide/&amp;t=Coke%27s+Superbowl+ad+shows+the+changing+tide.&amp;s=normal' height='80' width='52' frameborder='0' scrolling='no'></iframe></td></tr></table></div><p>Is this a sign of the world actually accepting video games?  Well maybe over in the USA, but I think this ad really shows that the big companies realize that video games are the norm for so many people now.  It looks like everyone has online avatars now.</p>
<p><span id="more-146"></span></p>
<p>My favourite is at 0:35, the little man walking straight into the wall.  The fact that is there shows Coke have actually done their research on games, and understand some of the silly things that go on inside them.<br />
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="src" value="http://www.youtube.com/v/zTXAFPlEdXo&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en&amp;feature=player_embedded&amp;fs=1" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/zTXAFPlEdXo&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en&amp;feature=player_embedded&amp;fs=1" allowfullscreen="true"></embed></object></p>
<p>I personally fell we have the Wii to thank for this.  They are everywhere, and while they may be <a title="Sega on Wii" href="http://kotaku.com/5079135/sega-wii-is-the-most-expensive-board-game-on-earth" target="_blank">the most expensive board game ever</a>, they are helping turn the general opinion of video games.  They aren&#8217;t evil, they are fun, and are incredible pieces of technology.</p>
<img src="http://feeds.feedburner.com/~r/JimiMakesGames/~4/9-Tnd8pIfIU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://murcho.alumnaie.net/02/cokes-superbowl-ad-shows-the-changing-tide/feed/</wfw:commentRss>
		<feedburner:origLink>http://murcho.alumnaie.net/02/cokes-superbowl-ad-shows-the-changing-tide/</feedburner:origLink></item>
		<item>
		<title>Technology dictates game design - Part 1</title>
		<link>http://feedproxy.google.com/~r/JimiMakesGames/~3/kwtvBtJS0u8/</link>
		<comments>http://murcho.alumnaie.net/01/technology-dictates-game-design-part-1/#comments</comments>
		<pubDate>Sun, 25 Jan 2009 01:33:43 +0000</pubDate>
		<dc:creator>jimi</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://murcho.alumnaie.net/?p=141</guid>
		<description><![CDATA[ I&#8217;ve been noticing over the last few years in particular that when a new technology comes out and makes a bunch of money for one game, every other game around crams the new tech into their game and hopes for the best.  Sometimes they get it right, but more often than not they are [...]]]></description>
			<content:encoded><![CDATA[<!-- This is a HTML comment, it will not display in any page. Feel free to remove this comment if it cause any inconvenient to you.
	Thanks for using digg digg, please visit http://www.mkyong.com/blog/digg-digg-wordpress-plugin for any comments and ideas, 
	
    Author : Yong Mook Kim
    Website : http://www.mkyong.com
	--><div style='float:left'><table><tr> <td><iframe src='http://digg.com/api/diggthis.php?w=new&amp;u=http://murcho.alumnaie.net/01/technology-dictates-game-design-part-1/&amp;t=Technology+dictates+game+design+-+Part+1&amp;s=normal' height='80' width='52' frameborder='0' scrolling='no'></iframe></td></tr></table></div><p>I&#8217;ve been noticing over the last few years in particular that when a new technology comes out and makes a bunch of money for one game, every other game around crams the new tech into their game and hopes for the best.  Sometimes they get it right, but more often than not they are actually making their game worse.  In this series of posts I&#8217;m going to be looking at particular technology trends that have done this, and why it is detrimental to some of these games.</p>
<p><span id="more-141"></span>So to kick things off, I&#8217;m going to focus on physics.  This is probably the most obvious tech that has crept into games, and has become somewhat of a standard.  A lot of games do it right these days, but there&#8217;s another tech trend which is splitting the industry, and that&#8217;s nVidia&#8217;s Physx, which I&#8217;ll go into in a little while.</p>
<p>So physics is all around us in real life, and so it makes sense to try and emulate it in games.  It makes things seem more realistic, and also adds a large element of unpredictability to a game.  It&#8217;s this unpredictability that I feel is it&#8217;s main draw card, as it means each time you play through the game it&#8217;s going to be a little bit different.  The problem with this tech, and like so many others though, is that it is very noticeable when it&#8217;s not there, but just blends in when it is.</p>
<p>Now your average gamer doesn&#8217;t notice this.  The people who find out all their gaming information by walking into EB and looking on the wall aren&#8217;t interested in which game has got the most fluid physics engine, or which game has the most realistic looking <a title="Look at the pretties." href="http://en.wikipedia.org/wiki/Parallax_mapping" target="_blank">Parallax mapping</a>.  These gamers are looking for a bit of fun, and won&#8217;t notice these amazing technologies.  They will however notice when those technologies aren&#8217;t present, but they can&#8217;t put their finger on why.  This all comes down to a studio being able to make an immersive game versus a tech hungry game.</p>
<p>Why should we care about this demographic of gamers?  Because they are the ones spending a lot of money on console games, and really driving the retail industry.  Hardcore gamers generally know and understand at least some of the tech behind these games, and why they make the game better (or worse), but these retail gamers really don&#8217;t.  As time goes on a lot of these buzz words like &#8216;physics&#8217; and &#8216;ragdoll&#8217; and &#8216;normal mapping&#8217; become selling points for the games, but once again, these retail gamers don&#8217;t know what they are, and so the developers seem to think that these technologies need to stand out like a sore thumb.</p>
<p>The first one that springs to mind for me is <a title="Amazing game" href="http://orange.half-life2.com/hl2.html" target="_blank">Half Life 2</a>.  I love this game, and I really think <a title="One of the world's top developers" href="http://www.valvesoftware.com/" target="_blank">Valve</a> are one of the top developers in the world, but they are one of the earliest games that pulled off physics properly, and also had to put in gameplay mechanics that forced you to say &#8220;alright Valve I get it, you made a physics engine&#8221;.  By forcing the player to realise that certain barrels float, and by placing them under a particular ramp, you can create a path to the next section of the game.  Now this particular puzzle pops up after you&#8217;ve been screaming along a river in a fan boat.  You have to get out, make the ramp, then start up the boat again and launch over it.  This broke the flow of one of the best parts of the game I felt.  This is where tech begins to get in the way of gameplay.</p>
<p>I believe gameplay should come before the tech, and far too many games focus more on the tech and less on the gameplay.  Now HL2 was probably a bad example, it has fantastic gameplay and for the most part the physics was there to compliment the gameplay and immerse the player, but silly physics puzzles I felt broke the flow of the game slightly.  There are many games that do this far worse, but I think you get the general idea.</p>
<p>On the flip side, there are many games that are based entirely around physics that do it right.  One I found recently was &#8220;<a title="Cool physics game" href="http://www.crazy-machines.com/" target="_blank">Crazy Machines</a>&#8220;, basically a remake of the old &#8220;<a title="Many many hours lost" href="http://en.wikipedia.org/wiki/The_Incredible_Machine" target="_blank">Incredible Machine</a>&#8221; series from the nineties.  The games are based around the <a title="Craziness" href="http://en.wikipedia.org/wiki/Rube_Goldberg" target="_blank">Rube Goldberg Machine</a> concept, which is fun right from the start.  The Incredible Machine series used a predictable physics system, which meant that if you replayed a puzzle over and over the same series of actions would occur.  With Crazy Machines, the same is not true, and having a more realistic physics system leaves room for the same setup to produce different results.  This makes completing a puzzle an exercise in trial and error, mixed with a bit of luck.  Personally I think a predictable physics system is required for this type of game, and the &#8216;advancements&#8217; in this field of technology have somewhat hindered the gameplay.  However the game still remains fun, and sometimes different results can unleash moments of hilarity.</p>
<p>So games incorporating physics engines can be good and bad, depending on their implementation.  A new technology is taking the bad to a new extreme, and it comes in the form of <a title="nVidia Physx" href="http://www.nvidia.com/object/nvidia_physx.html" target="_blank">nVidia Physx</a>.  To give you a brief overview, Physx was a physics engine brought out by <a title="Ageia" href="http://en.wikipedia.org/wiki/AGEIA" target="_blank">Ageia</a>.  Along side the physics engine they tried to usher in a new era of hardware, the physics card.  The idea was that now you would buy another piece of hardware, a physics card with a Physics Processing Unit(PPU).  This would free up your CPU for other tasks such as AI.  The uptake on this technology was very slow, and nVidia said right from the start that their GPU&#8217;s would be capable of the exact same thing, and they were already in half of the PC&#8217;s out there.  So when PPU&#8217;s didn&#8217;t take off, nVidia bought out Ageia, and ported the Physx engine to work on their 8000 series and higher graphics cards.</p>
<p>Now I will be the first to admit that the first things they brought out for this engine to utilise the different hardware were amazing.  A tech demo/game called Cell Factor was released which had hundreds of physics bodies smashing together, real time tearing cloth, the list goes on.  It was a technical marvel, but it wasn&#8217;t really that much fun.  This should have been an early warning that this technology was doomed from the start.</p>
<p>Jump forward a year or two, and nVidia has done it&#8217;s best to get developers on board to use the Physx technology in conjunction with their graphics cards.  The problem with this is that not everyone has these graphics cards.  To be able to merge this technology seemlessly with gameplay, it has to be a standard across all machines that will play the game and not a variable.  </p>
<p>Early adopters of the technology didn&#8217;t do a very good job of integrating the technology, and <a title="GRAW" href="http://www.ghostrecon.com/uk/ghostrecon3/index.php" target="_blank">Ghost Recon Advanced Warfighters</a> is a prime example of this.  In it&#8217;s multiplayer mode, there&#8217;s always the possibility of players having/not having Physx capabilities.  Now most of the additions to the game are basic things like improved explosion effects and don&#8217;t actually impact the gameplay.  There are however a few extras that stick out in multiplayer games, such as cars exploding.  With Physx hardware a car will actually move if an explosion happens nearby, but without Physx hardware the car will remain static.  The way they handle this in a multiplayer game is based on where the nearest person without Physx is.  If someone without Physx is nearby, even the player with Physx will see the car remain static, however if the player without Physx moves away, the car will move, and the settled position of the car will be updated on this players game when they move back to this position.  This will break the immersion of players with the technology, as it makes the world inconsistant.</p>
<p>The other main point to consider is how much of the GPU&#8217;s power is committed to Physx calculations, and how will this impact on the game&#8217;s graphical performance?  Lower end 8000 series cards may have a significant impact on performance, and while the game&#8217;s physics will be more immersive, will it drop the framerate to a point of unplayable?  I am currently waiting for a copy of <a title="Parkour meets combat" href="http://www.mirrorsedge.com/" target="_blank">Mirror&#8217;s Edge</a>, a new game that sports the nVidia Physx branding, and I will update once I have played through and seen the difference not only in immersion but in performance.  FYI, I&#8217;m running an 8800 GTS 640.</p>
<p>So I think that about wraps up this topic.  So to recap:</p>
<ul>
<li>Physics are good when they immerse a player into a game world</li>
<li>Physics are bad when they stick out like a sore thumb</li>
<li>Physics hardware creates problems for developers as they are a variable factor</li>
</ul>
<div>Thanks for reading.  If you liked this article, subscribe via email to the right, or by RSS below, and digg it using the button at the top.</div>
<img src="http://feeds.feedburner.com/~r/JimiMakesGames/~4/kwtvBtJS0u8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://murcho.alumnaie.net/01/technology-dictates-game-design-part-1/feed/</wfw:commentRss>
		<feedburner:origLink>http://murcho.alumnaie.net/01/technology-dictates-game-design-part-1/</feedburner:origLink></item>
		<item>
		<title>Game studios closing in current economic climate.</title>
		<link>http://feedproxy.google.com/~r/JimiMakesGames/~3/cexQ2zCaz3Q/</link>
		<comments>http://murcho.alumnaie.net/01/game-studios-closing-in-current-economic-climate/#comments</comments>
		<pubDate>Sun, 18 Jan 2009 02:31:16 +0000</pubDate>
		<dc:creator>jimi</dc:creator>
		
		<category><![CDATA[Games Industry]]></category>

		<category><![CDATA[Digital Distribution]]></category>

		<category><![CDATA[Economic climate]]></category>

		<category><![CDATA[Pandemic]]></category>

		<category><![CDATA[Steam]]></category>

		<category><![CDATA[Valve]]></category>

		<guid isPermaLink="false">http://murcho.alumnaie.net/?p=139</guid>
		<description><![CDATA[ So it looks like the Pandemic Brisbane studio is getting let go by EA, and while they will still get to hold onto their current IP and remain as an Indie studio, they have no publisher, and therefore not a whole lot of funds to keep going.  A lot of people have been let [...]]]></description>
			<content:encoded><![CDATA[<!-- This is a HTML comment, it will not display in any page. Feel free to remove this comment if it cause any inconvenient to you.
	Thanks for using digg digg, please visit http://www.mkyong.com/blog/digg-digg-wordpress-plugin for any comments and ideas, 
	
    Author : Yong Mook Kim
    Website : http://www.mkyong.com
	--><div style='float:left'><table><tr> <td><iframe src='http://digg.com/api/diggthis.php?w=new&amp;u=http://murcho.alumnaie.net/01/game-studios-closing-in-current-economic-climate/&amp;t=Game+studios+closing+in+current+economic+climate.&amp;s=normal' height='80' width='52' frameborder='0' scrolling='no'></iframe></td></tr></table></div><p>So it looks like the Pandemic Brisbane studio is getting <a title="Pandemic's Downfall" href="http://www.kotaku.com.au/games/2009/01/how_pandemics_dark_knight_turned_into_a_nightmare.html" target="_blank">let go by EA</a>, and while they will still get to hold onto their current IP and remain as an Indie studio, they have no publisher, and therefore not a whole lot of funds to keep going.  A lot of people have been let go, including industry veteran <a title="Tony Albrecht's blog" href="http://seven-degrees-of-freedom.blogspot.com/2009/01/for-those-of-you-that-are-wondering.html" target="_blank">Tony Albrecht</a>.  Now I think it&#8217;s great that the studio isn&#8217;t being dissolved, but they are still going to be relying on a publisher to get involved so they can fund further production.<span id="more-139"></span>So many (if not all) studios rely on publishers to provide money to make games.  It&#8217;s a model that has worked for quite a while, but is it the only way?  Publishers are laying off employees in droves.  It&#8217;s this reliance on publishers that seems to be half the problem.  That and the rising cost of development.  A &#8220;triple A&#8221; title costs literally millions of dollars to develop these days.</p>
<p>Studios are setup with people that know video game development, and probably some business sense as well.  The focus is on making games mostly, but they need to make money so they can continue to make games.  Now if there was more than one revenue stream for the company (other than a publisher), they would have more autonomy as far as what they want to make, and would only be relying on the publisher to distribute their releases, rather than relying on them to stay afloat.  If other revenue streams were successful enough, the company could be completely separate and publish their own games.</p>
<p>So what would be some good revenue streams for game studios to consider?  Probably the best example is Valve, and their <a title="Steam" href="http://store.steampowered.com/" target="_blank">Steam</a> platform.  It was originally launched along with the beta of Counter-Strike 1.6, but really made it&#8217;s mark with the launch of Half Life 2, to much anger at the time.  It was an imposing piece of software originally designed to combat piracy.  It required an Internet connection to be active for authentication of the game upon installation.  Updates to the game were also delivered through the service, so patching the game would become automatic.  There was a fair amount of resistance to the service at the time, but it was Half Life 2, so a lot of people just put up with it so they could play this amazing game.</p>
<p>Over time, the Steam platform evolved into a service where you could purchase games online and simply download them.  This is generally cheaper than buying a retail copy of the game, and has become one of the top digital distribution methods.  I personally buy a fair few games on there, as there is one distinct advantage of buying them on this service.  All games purchased through Steam are tied to your account.  This account can be logged into on any computer with Steam installed, and the games can be installed/played from said computer.  This means that you will always be able to access your games as long as there is an Internet connection available.  It also makes it easier to manage your games, as no disc can ever get scratched and no CD-key ever lost.</p>
<p>Over time other developers have adopted Steam as a distribution method, which I&#8217;m sure makes Valve a hefty chunk of cash.  This service obviously then provides their development teams the freedom to work on games as they see fit, not answering to any publisher but themselves.</p>
<p>Having this kind of autonomy is a rarity in the video game development world.  Other studios could learn from Valve by building a business, not just a studio.  It does require more work in the long run, but the freedom to work on your project, at your pace,  without anyone else calling the shots would surely be worth the extra effort.</p>
<img src="http://feeds.feedburner.com/~r/JimiMakesGames/~4/cexQ2zCaz3Q" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://murcho.alumnaie.net/01/game-studios-closing-in-current-economic-climate/feed/</wfw:commentRss>
		<feedburner:origLink>http://murcho.alumnaie.net/01/game-studios-closing-in-current-economic-climate/</feedburner:origLink></item>
		<item>
		<title>When is the TF2 Lego set coming out?</title>
		<link>http://feedproxy.google.com/~r/JimiMakesGames/~3/yr9zmNzBO4g/</link>
		<comments>http://murcho.alumnaie.net/01/when-is-the-tf2-lego-set-coming-out/#comments</comments>
		<pubDate>Thu, 15 Jan 2009 07:19:02 +0000</pubDate>
		<dc:creator>jimi</dc:creator>
		
		<category><![CDATA[General]]></category>

		<category><![CDATA[Lego]]></category>

		<category><![CDATA[TF2]]></category>

		<guid isPermaLink="false">http://murcho.alumnaie.net/?p=136</guid>
		<description><![CDATA[ Alright, so the title is a little misleading, but wouldn&#8217;t it be cool?  Especially if they had the robotic lego as well.  There is a point to this post, which is that I found this while scouring Digg today.
The full page this came from can be found here.
I&#8217;m a big fan of [...]]]></description>
			<content:encoded><![CDATA[<!-- This is a HTML comment, it will not display in any page. Feel free to remove this comment if it cause any inconvenient to you.
	Thanks for using digg digg, please visit http://www.mkyong.com/blog/digg-digg-wordpress-plugin for any comments and ideas, 
	
    Author : Yong Mook Kim
    Website : http://www.mkyong.com
	--><div style='float:left'><table><tr> <td><iframe src='http://digg.com/api/diggthis.php?w=new&amp;u=http://murcho.alumnaie.net/01/when-is-the-tf2-lego-set-coming-out/&amp;t=When+is+the+TF2+Lego+set+coming+out%3F&amp;s=normal' height='80' width='52' frameborder='0' scrolling='no'></iframe></td></tr></table></div><p>Alright, so the title is a little misleading, but wouldn&#8217;t it be cool?  Especially if they had the robotic lego as well.  There is a point to this post, which is that I found this while scouring <a title="Digg.com" href="http://digg.com" target="_blank">Digg</a> today.<span id="more-136"></span></p>
<div id="attachment_137" class="wp-caption alignnone" style="width: 310px"><a href="http://murcho.alumnaie.net/wp-content/uploads/2009/01/1215819349_display.jpg"><img class="size-medium wp-image-137" title="1215819349_display" src="http://murcho.alumnaie.net/wp-content/uploads/2009/01/1215819349_display-300x225.jpg" alt="TF2 Lego!" width="300" height="225" /></a><p class="wp-caption-text">TF2 Lego!</p></div>
<p>The full page this came from can be found <a title="Lego awesomeness." href="http://www.mocpages.com/moc.php/63943" target="_blank">here</a>.</p>
<p>I&#8217;m a big fan of the game, and I have to give props to the maker Steve Barker.  If you like it, check out his <a title="More Lego awesomeness." href="http://www.mocpages.com/folder.php/166" target="_blank">other work</a> and send him some love.</p>
<img src="http://feeds.feedburner.com/~r/JimiMakesGames/~4/yr9zmNzBO4g" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://murcho.alumnaie.net/01/when-is-the-tf2-lego-set-coming-out/feed/</wfw:commentRss>
		<feedburner:origLink>http://murcho.alumnaie.net/01/when-is-the-tf2-lego-set-coming-out/</feedburner:origLink></item>
		<item>
		<title>Google Chrome vs. Mozilla Firefox</title>
		<link>http://feedproxy.google.com/~r/JimiMakesGames/~3/u_hl86Wunio/</link>
		<comments>http://murcho.alumnaie.net/01/google-chrome-vs-mozilla-firefox/#comments</comments>
		<pubDate>Wed, 14 Jan 2009 15:07:03 +0000</pubDate>
		<dc:creator>jimi</dc:creator>
		
		<category><![CDATA[General]]></category>

		<category><![CDATA[Tech Support Snippit]]></category>

		<category><![CDATA[Browser]]></category>

		<category><![CDATA[Google Chrome]]></category>

		<category><![CDATA[Internet]]></category>

		<category><![CDATA[Mozilla Firefox]]></category>

		<guid isPermaLink="false">http://murcho.alumnaie.net/?p=129</guid>
		<description><![CDATA[ A little while ago I switched my web browser preference to Google Chrome.  Up until that point I had been using Mozilla Firefox.  Both have their advantages and disadvantages.  Why did I make the switch, and why do I still use Firefox every now and then?
Well like any human, I&#8217;m a fan of aesthetics, [...]]]></description>
			<content:encoded><![CDATA[<!-- This is a HTML comment, it will not display in any page. Feel free to remove this comment if it cause any inconvenient to you.
	Thanks for using digg digg, please visit http://www.mkyong.com/blog/digg-digg-wordpress-plugin for any comments and ideas, 
	
    Author : Yong Mook Kim
    Website : http://www.mkyong.com
	--><div style='float:left'><table><tr> <td><iframe src='http://digg.com/api/diggthis.php?w=new&amp;u=http://murcho.alumnaie.net/01/google-chrome-vs-mozilla-firefox/&amp;t=Google+Chrome+vs.+Mozilla+Firefox&amp;s=normal' height='80' width='52' frameborder='0' scrolling='no'></iframe></td></tr></table></div><p>A little while ago I switched my web browser preference to <a title="The browser from the future." href="http://www.google.com/chrome" target="_blank">Google Chrome</a>.  Up until that point I had been using <a title="A solid browser, much better than Internet Explorer" href="http://www.mozilla.com/en-US/firefox/" target="_blank">Mozilla Firefox</a>.  Both have their advantages and disadvantages.  Why did I make the switch, and why do I still use Firefox every now and then?<span id="more-129"></span></p>
<p>Well like any human, I&#8217;m a fan of aesthetics, and Chrome just looks nicer.  It has a very streamlined interface, and takes up far less room at the top of the screen.  This means more space for the web page you&#8217;re looking at.  </p>
<p>Tabbed browsing has been around for years, and while both Chrome and Firefox have tabbed browsing, Chrome has a little something extra in this department.  In Firefox, if you click and drag on a tab, it allows you to change it&#8217;s place in the tab order, which can be useful.  If you drag the tab outside of the window and drop it onto the desktop, it will create a shortcut icon for that particular page.  Now, Chrome will allow clicking and dragging of tabs to re-order them, but if you drag the tab outside the browser, it creates an entire new window for the tab.  This isn&#8217;t going to be useful for everyone, but I use two monitors on my main computer.  This allows me to drag a tab onto the other monitor and view two pages at once.  Tabs can also be dragged from window to window, so you can dock the tab you just dragged out back into the original window as well.</p>
<p>Firefox put a search bar into it&#8217;s browser a while ago, which allowed you to perform a google/yahoo/MSNLive/etc search without having to visit their search page first.  Now this is an awesome feature, one I used a lot, but the text entry box was seperate from the main address bar.  Chrome asked the question &#8220;Why should these bars be seperate?&#8221;.  The answer is they shouldn&#8217;t, and so Chrome combines the search box with the address bar.  Type anything that isn&#8217;t a website into this bar and Chrome will perform a search for it.  You can change which search engine you prefer to use as well.</p>
<p>Now these seem like fairly minor things, but under the hood there are some pretty major differences that make Chrome superior (in my eyes) to Firefox.  WARNING: This post is about to get a whole lot nerdier.</p>
<p>With the current trend of CPU&#8217;s going multi-core, we need software that will make use of these newer CPU&#8217;s.  This requires programs to be written in a different way.  The two main ways of doing this is either making a program &#8220;<a title="Multithreading" href="http://en.wikipedia.org/wiki/Multithreading" target="_blank">Multi-threaded</a>&#8221; or &#8220;<a title="Process (couldn't find an entry for Multi Process" href="http://en.wikipedia.org/wiki/Process_(computer_science)" target="_blank">Multi-process</a>&#8220;.  Every program you use starts as a process.  A program generally has one process, which can then branch into multiple threads.  Programs that use multiple threads can be quite difficult to program, but will make use of your multi core CPU far better than a program that doesn&#8217;t split into multiple threads.</p>
<p>Firefox is a multithreaded application, and creates a new thread for each new tab.  This is great for new multi-core CPU&#8217;s, however there are problems with this approach.  If an application is multithreaded, and one thread encounters a problem and crashes it takes down the entire process.  That means that all tabs and Firefox will crash.  </p>
<p>Chrome is a bit different, in that it doesn&#8217;t create a new thread for each tab, but actually creates a new process for each tab.  Now this is a lot more difficult to program than a multithreaded application.  I won&#8217;t go into why it&#8217;s harder to code, but it does have one major advantage.  If the same crash stated before were to happen in Chrome, only that tab would crash, and the rest of the tabs are fine.  This means only re-loading one tab, and minimal interruption to work.  This kind of thing is important to someone that spends as much time online as I do, but maybe not for the average user.  </p>
<p>So Jimi, why do you keep Firefox installed if Chrome is so awesome?  I&#8217;m glad you asked.  See, Chrome isn&#8217;t perfect.  It&#8217;s still very early on in it&#8217;s lifecycle, and still has a few kinks to iron out.  Every now and then I&#8217;ll come across a website that doesn&#8217;t quite work properly, or doesn&#8217;t work at all.  Thats when Firefox steps up to the plate and works its magic.</p>
<p>Firefox also has a much wider range of plugins.  There&#8217;s some really cool ones, like split the browser in two, the <a title="Find out interesting stuff about web traffic." href="http://www.alexa.com/" target="_blank">Alexa</a> plugin to see web traffic of any site you&#8217;re visiting, etc.  The reason behind Firefox having so many more is mainly due to the fact it&#8217;s been around for so mush longer than Chrome, and it&#8217;s actually a lot easier to code plugins for Firefox because it&#8217;s multithreaded and not multiprocess.</p>
<p>I did find however that the more plugins I installed in Firefox, the less of a web page I actually saw.  Not all of the plugins are worth the space they take up, and clutter the screen very quickly.  I haven&#8217;t needed any extra plugins on Chrome that I need on a daily basis, so this hasn&#8217;t been a huge problem either.</p>
<p>So to sum up, both browsers are good.  My preference lies with Chrome because :</p>
<ul>
<li>It looks nicer (more important when you spend many hours using it)</li>
<li>The design is more streamlined</li>
<li>Ability to drag tabs into new windows</li>
<li>Multi purpose text bar</li>
<li>More screen space for web pages</li>
</ul>
<div>Thanks for reading.</div>
<img src="http://feeds.feedburner.com/~r/JimiMakesGames/~4/u_hl86Wunio" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://murcho.alumnaie.net/01/google-chrome-vs-mozilla-firefox/feed/</wfw:commentRss>
		<feedburner:origLink>http://murcho.alumnaie.net/01/google-chrome-vs-mozilla-firefox/</feedburner:origLink></item>
	</channel>
</rss>
