<?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"
	>

<channel>
	<title>e-Studioz Blog</title>
	<atom:link href="http://www.e-studioz.de/wordpress/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://www.e-studioz.de/wordpress</link>
	<description>A new and exiting blog about... game development!</description>
	<pubDate>Tue, 25 Aug 2009 20:40:45 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6</generator>
	<language>en</language>
			<item>
		<title>Oh My Gosh</title>
		<link>http://www.e-studioz.de/wordpress/?p=223</link>
		<comments>http://www.e-studioz.de/wordpress/?p=223#comments</comments>
		<pubDate>Tue, 25 Aug 2009 20:40:03 +0000</pubDate>
		<dc:creator>Eichi</dc:creator>
		
		<category><![CDATA[Team]]></category>

		<guid isPermaLink="false">http://www.e-studioz.de/wordpress/?p=223</guid>
		<description><![CDATA[
Source: http://www.lrs-auditiv.de
]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="aligncenter" src="http://www.lrs-auditiv.de/Bilder/media/eichi.jpg" alt="" width="170" height="240" /></p>
<p style="text-align: center;">Source: <a href="http://www.lrs-auditiv.de" target="_blank">http://www.lrs-auditiv.de</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.e-studioz.de/wordpress/?feed=rss2&amp;p=223</wfw:commentRss>
		</item>
		<item>
		<title>Optimizing the light far plane while PSSMing</title>
		<link>http://www.e-studioz.de/wordpress/?p=210</link>
		<comments>http://www.e-studioz.de/wordpress/?p=210#comments</comments>
		<pubDate>Wed, 12 Aug 2009 19:23:57 +0000</pubDate>
		<dc:creator>Eichi</dc:creator>
		
		<category><![CDATA[HLSL]]></category>

		<category><![CDATA[Shadow Mapping]]></category>

		<guid isPermaLink="false">http://www.e-studioz.de/wordpress/?p=210</guid>
		<description><![CDATA[I recently had a cool idea about Parallel Split Shadow Mapping and the light projection on the different frustum splits. By default, every frustum split is handled separately as uniform shadowing or with a special projection algorithm as PSM or LiSPSM. This ensures that every split frustum is enclosed as much as possible to maximize [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;">I recently had a cool idea about Parallel Split Shadow Mapping and the light projection on the different frustum splits. By default, every frustum split is handled separately as uniform shadowing or with a special projection algorithm as <a title="Perspective Shadow Maps" href="http://www.cg.tuwien.ac.at/~scherzer/psm/index.html">PSM </a>or <a title="Light Space Perspective Shadow Mapping" href="http://www.cg.tuwien.ac.at/research/vr/lispsm/">LiSPSM</a>. This ensures that every split frustum is enclosed as much as possible to maximize the texel ratio of the shadow/depth map on that volume. But since we have several splits - I use four splits encoded in a ARGB 32bit floating point texture - we also have different light far planes used for the orthogonal projection on that split.</p>
<p style="text-align: left;">I have done a small and nasty sketch to visualize this issue and since my sketching skills are lim =&gt; 0.. eh.. you&#8217;ll get the point:</p>
<p style="text-align: center;"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/split_scheme_sketch.jpg"><img class="size-full wp-image-211 aligncenter" title="split_scheme_sketch" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/split_scheme_sketch.jpg" alt="" width="500" height="383" /></a></p>
<p style="text-align: center;">
<p style="text-align: left;">Keeping that <span style="text-decoration: line-through;">construct</span> (?) thing in mind you may notice that the depth representation of the different splits differ, since they are &#8220;normalized&#8221; to fit in the far plane ratio while using a linearized depth representation. However, this effect will also occur while using the default logarithmic depth representation. To point this <span style="text-decoration: line-through;">construct </span>(?) gizmo out, see attached:</p>
<p style="text-align: center;"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/depth_standard.jpg"><img class="aligncenter size-full wp-image-212" title="depth_standard" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/depth_standard.jpg" alt="" width="57" height="297" /></a></p>
<p style="text-align: left;">While visualizing this by simply outputting the projected shadow map, that is, the depth vaues, on a 3D scene, it becomes more clearly:</p>
<p style="text-align: center;"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/depth_non_linearity.jpg"><img class="aligncenter size-full wp-image-213" title="depth_non_linearity" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/depth_non_linearity.jpg" alt="" width="500" height="495" /></a></p>
<p style="text-align: left;">Indiana Jones told me some time ago, that a cross never marks an important spot, but a red mark does <img src='http://www.e-studioz.de/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p style="text-align: left;">So what we actually want is having the depth representation constant over the whole view frustum and thus all splits. My idea was to use the far plane of the last frustum splits light for all the other light far planes before. You can simply do this by computing/rendering the frustum splits in a reversed order and thus saving the far plane computation on n-1 splits. Cool, eh?</p>
<p style="text-align: left;">But why do I do this? It&#8217;s because of blurring the depth map in some way. Most common blur algorithmns like the good ol&#8217; Gaussian one has, in combination with a modern GPU, the property to work on all components of a non-skalar type at the same time. But this causes the blurred shadow map to suck, because it applies the same filter kernel to all splits at the same time, resulting in larger blurred shadow maps in the distance. It&#8217;s a good idea to scale the filter kernel by the distance for each split, but having the depth representation different between the splits comes to a problem too. So basically, we want a depth representation like this:</p>
<p style="text-align: center;"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/depth_target.jpg"><img class="aligncenter size-full wp-image-214" title="depth_target" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/depth_target.jpg" alt="" width="57" height="297" /></a></p>
<p style="text-align: left;">Having the depth representation across the splits as nice as this, you don&#8217;t even notice the split borders anymore if you simply project the shadow map onto the scene (and if you would scale your blur filters kernel size, like I don&#8217;t at the moment):</p>
<p style="text-align: center;"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/split_scheme_view.jpg"><img class="aligncenter size-full wp-image-215" title="split_scheme_view" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/split_scheme_view.jpg" alt="" width="500" height="600" /></a></p>
<p style="text-align: left;">And here is the respective shadow/depth map for that picture above:</p>
<p style="text-align: center;"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/shadow_map.jpg"><img class="aligncenter size-full wp-image-216" title="shadow_map" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/shadow_map.jpg" alt="" width="500" height="500" /></a></p>
<p style="text-align: left;">Note that the alpha channel is not visible&#8230; for some reason you may guess.</p>
<p style="text-align: left;">Hope this helps <img src='http://www.e-studioz.de/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.e-studioz.de/wordpress/?feed=rss2&amp;p=210</wfw:commentRss>
		</item>
		<item>
		<title>Probably the best I can do&#8230;</title>
		<link>http://www.e-studioz.de/wordpress/?p=200</link>
		<comments>http://www.e-studioz.de/wordpress/?p=200#comments</comments>
		<pubDate>Sun, 09 Aug 2009 17:44:51 +0000</pubDate>
		<dc:creator>Eichi</dc:creator>
		
		<category><![CDATA[Team]]></category>

		<guid isPermaLink="false">http://www.e-studioz.de/wordpress/?p=200</guid>
		<description><![CDATA[&#8230; with shaders! This project consists of 20 clean and structurized shaders, crunching Parallel Split Shadow Mapping, Atmospheric Haze and Parallax Normal Mapping together. Furthermore, there is some texture splatting on the landscape!  
Hooray for boobies!








]]></description>
			<content:encoded><![CDATA[<p>&#8230; with shaders! This project consists of 20 clean and structurized shaders, crunching Parallel Split Shadow Mapping, Atmospheric Haze and Parallax Normal Mapping together. Furthermore, there is some texture splatting on the landscape! <img src='http://www.e-studioz.de/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Hooray for boobies!</p>
<p><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/uber01.jpg"><img class="aligncenter size-full wp-image-201" title="uber01" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/uber01.jpg" alt="" width="500" height="496" /></a></p>
<p><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/uber02.jpg"><img class="aligncenter size-full wp-image-202" title="uber02" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/uber02.jpg" alt="" width="500" height="496" /></a></p>
<p><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/uber03.jpg"><img class="aligncenter size-full wp-image-203" title="uber03" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/uber03.jpg" alt="" width="500" height="496" /></a></p>
<p><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/uber04.jpg"><img class="aligncenter size-full wp-image-204" title="uber04" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/uber04.jpg" alt="" width="500" height="496" /></a></p>
<p><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/uber05.jpg"><img class="aligncenter size-full wp-image-205" title="uber05" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/uber05.jpg" alt="" width="500" height="496" /></a></p>
<p><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/uber06.jpg"><img class="aligncenter size-full wp-image-206" title="uber06" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/uber06.jpg" alt="" width="500" height="496" /></a></p>
<p><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/uber07.jpg"><img class="aligncenter size-full wp-image-207" title="uber07" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/uber07.jpg" alt="" width="500" height="496" /></a></p>
<p><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/uber08.jpg"><img class="aligncenter size-full wp-image-208" title="uber08" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/08/uber08.jpg" alt="" width="500" height="496" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.e-studioz.de/wordpress/?feed=rss2&amp;p=200</wfw:commentRss>
		</item>
		<item>
		<title>Normal Mapping Essentials On A Landscape</title>
		<link>http://www.e-studioz.de/wordpress/?p=195</link>
		<comments>http://www.e-studioz.de/wordpress/?p=195#comments</comments>
		<pubDate>Fri, 24 Jul 2009 14:51:26 +0000</pubDate>
		<dc:creator>Eichi</dc:creator>
		
		<category><![CDATA[Team]]></category>

		<guid isPermaLink="false">http://www.e-studioz.de/wordpress/?p=195</guid>
		<description><![CDATA[Just another picture quickie. This is splatted offset normal mapping on a terrain like mesh  



]]></description>
			<content:encoded><![CDATA[<p>Just another picture quickie. This is splatted offset normal mapping on a terrain like mesh <img src='http://www.e-studioz.de/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/terrain01.jpg"><img class="aligncenter size-full wp-image-196" title="terrain01" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/terrain01.jpg" alt="" width="500" height="453" /></a></p>
<p><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/terrain02.jpg"><img class="aligncenter size-full wp-image-197" title="terrain02" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/terrain02.jpg" alt="" width="500" height="453" /></a></p>
<p><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/terrain03.jpg"><img class="aligncenter size-full wp-image-198" title="terrain03" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/terrain03.jpg" alt="" width="500" height="453" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.e-studioz.de/wordpress/?feed=rss2&amp;p=195</wfw:commentRss>
		</item>
		<item>
		<title>Normal Mapping Essentials</title>
		<link>http://www.e-studioz.de/wordpress/?p=169</link>
		<comments>http://www.e-studioz.de/wordpress/?p=169#comments</comments>
		<pubDate>Wed, 22 Jul 2009 19:37:32 +0000</pubDate>
		<dc:creator>Eichi</dc:creator>
		
		<category><![CDATA[HLSL]]></category>

		<category><![CDATA[Albedo]]></category>

		<category><![CDATA[Ambient Occlusion]]></category>

		<category><![CDATA[Normal Map]]></category>

		<category><![CDATA[Specular Mask]]></category>

		<guid isPermaLink="false">http://www.e-studioz.de/wordpress/?p=169</guid>
		<description><![CDATA[This one goes out for all of you guys who know what tangent space normal mapping is and how it works  This is a working sample of a single directional light without color (=pure white).
Edit: I have been pleased to publish the code. There it is:
float4 PS(uniform struct google) { return google.output; }

]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;">This one goes out for all of you guys who know what tangent space normal mapping is and how it works <img src='http://www.e-studioz.de/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> This is a working sample of a single directional light without color (=pure white).</p>
<p style="text-align: left;"><strong>Edit:</strong> I have been pleased to publish the code. There it is:</p>
<pre style="padding-left: 30px; text-align: left;">float4 PS(uniform struct google) { return google.output; }</pre>
<pre style="padding-left: 30px; text-align: center;"><object width="425" height="350"><param name="movie" value="http://www.youtube.com/v/Wwft3NHPJpo"></param><param name="wmode" value="transparent"></param><embed src="http://www.youtube.com/v/Wwft3NHPJpo" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"></embed></object></pre>
<div id="attachment_170" class="wp-caption aligncenter" style="width: 510px"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/lightning_albedo.jpg"><img class="size-full wp-image-170" title="lightning_albedo" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/lightning_albedo.jpg" alt="Albedo" width="500" height="444" /></a><p class="wp-caption-text">^ Albedo</p></div>
<div id="attachment_182" class="wp-caption aligncenter" style="width: 510px"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/normalmapping_view.jpg"><img class="size-full wp-image-182" title="normalmapping_view" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/normalmapping_view.jpg" alt="Tangent Space View Vector" width="500" height="444" /></a><p class="wp-caption-text">^ Tangent Space View Vector</p></div>
<div id="attachment_171" class="wp-caption aligncenter" style="width: 510px"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/lightning_light.jpg"><img class="size-full wp-image-171" title="lightning_light" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/lightning_light.jpg" alt="Tangent Space Light Vector" width="500" height="444" /></a><p class="wp-caption-text">^ Tangent Space Light Vector</p></div>
<div id="attachment_178" class="wp-caption aligncenter" style="width: 510px"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/normalmapping_normal.jpg"><img class="size-full wp-image-178" title="normalmapping_normal" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/normalmapping_normal.jpg" alt="Tangent Space Normal Map" width="500" height="444" /></a><p class="wp-caption-text">^ Tangent Space Normal Map</p></div>
<div id="attachment_174" class="wp-caption aligncenter" style="width: 510px"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/normalmapping_diffuse_factor.jpg"><img class="size-full wp-image-174" title="normalmapping_diffuse_factor" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/normalmapping_diffuse_factor.jpg" alt="Diffuse Factor" width="500" height="444" /></a><p class="wp-caption-text">^ Diffuse Factor</p></div>
<div id="attachment_173" class="wp-caption aligncenter" style="width: 510px"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/normalmapping_ambient_occlusion.jpg"><img class="size-full wp-image-173" title="normalmapping_ambient_occlusion" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/normalmapping_ambient_occlusion.jpg" alt="Ambient Occlusion" width="500" height="444" /></a><p class="wp-caption-text">^ Ambient Occlusion</p></div>
<div id="attachment_175" class="wp-caption aligncenter" style="width: 510px"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/normalmapping_diffuse_factor_times_ambient_occlusion.jpg"><img class="size-full wp-image-175" title="normalmapping_diffuse_factor_times_ambient_occlusion" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/normalmapping_diffuse_factor_times_ambient_occlusion.jpg" alt="Diffuse Factor x Ambient Occlusion" width="500" height="444" /></a><p class="wp-caption-text">^ Diffuse Factor x Ambient Occlusion</p></div>
<div id="attachment_179" class="wp-caption aligncenter" style="width: 510px"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/normalmapping_specular_factor.jpg"><img class="size-full wp-image-179" title="normalmapping_specular_factor" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/normalmapping_specular_factor.jpg" alt="Specular Factor" width="500" height="444" /></a><p class="wp-caption-text">^ Specular Factor</p></div>
<div id="attachment_180" class="wp-caption aligncenter" style="width: 510px"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/normalmapping_specular_mask.jpg"><img class="size-full wp-image-180" title="normalmapping_specular_mask" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/normalmapping_specular_mask.jpg" alt="Specular Mask" width="500" height="444" /></a><p class="wp-caption-text">^ Specular Mask</p></div>
<div id="attachment_181" class="wp-caption aligncenter" style="width: 510px"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/normalmapping_specular_mask_times_specular_factor.jpg"><img class="size-full wp-image-181" title="normalmapping_specular_mask_times_specular_factor" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/normalmapping_specular_mask_times_specular_factor.jpg" alt="Specular Factor x Specular Mask" width="500" height="444" /></a><p class="wp-caption-text">^ Specular Factor x Specular Mask</p></div>
<div id="attachment_176" class="wp-caption aligncenter" style="width: 510px"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/normalmapping_diffuse_plus_specular.jpg"><img class="size-full wp-image-176" title="normalmapping_diffuse_plus_specular" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/normalmapping_diffuse_plus_specular.jpg" alt="Diffuse + Specular" width="500" height="444" /></a><p class="wp-caption-text">^ Diffuse + Specular</p></div>
<div id="attachment_172" class="wp-caption aligncenter" style="width: 510px"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/normalmapping_albedo_times_diffuse_plus_specular.jpg"><img class="size-full wp-image-172" title="normalmapping_albedo_times_diffuse_plus_specular" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/normalmapping_albedo_times_diffuse_plus_specular.jpg" alt="Albedo x Diffuse + Specular" width="500" height="444" /></a><p class="wp-caption-text">^ Albedo x Diffuse + Specular</p></div>
<div id="attachment_177" class="wp-caption aligncenter" style="width: 510px"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/normalmapping_half_lambert.jpg"><img class="size-full wp-image-177" title="normalmapping_half_lambert" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/normalmapping_half_lambert.jpg" alt="Albedo x Half Lambert Diffuse + Specular" width="500" height="444" /></a><p class="wp-caption-text">^ Albedo x Half Lambert Diffuse + Specular</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.e-studioz.de/wordpress/?feed=rss2&amp;p=169</wfw:commentRss>
		</item>
		<item>
		<title>Epic Fail!</title>
		<link>http://www.e-studioz.de/wordpress/?p=166</link>
		<comments>http://www.e-studioz.de/wordpress/?p=166#comments</comments>
		<pubDate>Thu, 02 Jul 2009 18:30:38 +0000</pubDate>
		<dc:creator>Eichi</dc:creator>
		
		<category><![CDATA[Team]]></category>

		<guid isPermaLink="false">http://www.e-studioz.de/wordpress/?p=166</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/n3xrine412wki9wxcc7dsq.jpg"><img class="aligncenter size-full wp-image-167" title="n3xrine412wki9wxcc7dsq" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/07/n3xrine412wki9wxcc7dsq.jpg" alt="" width="500" height="360" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.e-studioz.de/wordpress/?feed=rss2&amp;p=166</wfw:commentRss>
		</item>
		<item>
		<title>SPAM, I love you!</title>
		<link>http://www.e-studioz.de/wordpress/?p=164</link>
		<comments>http://www.e-studioz.de/wordpress/?p=164#comments</comments>
		<pubDate>Fri, 26 Jun 2009 06:26:12 +0000</pubDate>
		<dc:creator>Eichi</dc:creator>
		
		<category><![CDATA[Team]]></category>

		<guid isPermaLink="false">http://www.e-studioz.de/wordpress/?p=164</guid>
		<description><![CDATA[Just a depressing post. My blog seems to have evolved from a small one&#8230; to a SPAM blog.
You have 381 total comments, 15 approved, 366 spam and 0 awaiting moderation.
Dear Mister Spam Bot, I don&#8217;t need any pills nor am I interested in enlarging something.
]]></description>
			<content:encoded><![CDATA[<p>Just a depressing post. My blog seems to have evolved from a small one&#8230; to a SPAM blog.</p>
<blockquote><p>You have 381 total comments, 15 approved, 366 spam and 0 awaiting moderation.</p></blockquote>
<p>Dear Mister Spam Bot, I don&#8217;t need any pills nor am I interested in enlarging some<em>thing</em>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.e-studioz.de/wordpress/?feed=rss2&amp;p=164</wfw:commentRss>
		</item>
		<item>
		<title>Singleton</title>
		<link>http://www.e-studioz.de/wordpress/?p=158</link>
		<comments>http://www.e-studioz.de/wordpress/?p=158#comments</comments>
		<pubDate>Sun, 31 May 2009 15:13:39 +0000</pubDate>
		<dc:creator>Eichi</dc:creator>
		
		<category><![CDATA[Team]]></category>

		<guid isPermaLink="false">http://www.e-studioz.de/wordpress/?p=158</guid>
		<description><![CDATA[This bottle goes out for all of you guys who have ever seen a real singleton!

Notice the &#8220;Made in Dufftown&#8221; stuff 
]]></description>
			<content:encoded><![CDATA[<p>This bottle goes out for all of you guys who have ever seen a real singleton!</p>
<p><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/05/singleton.jpg"><img class="aligncenter size-medium wp-image-159" title="singleton" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/05/singleton-120x300.jpg" alt="" width="120" height="300" /></a></p>
<p>Notice the &#8220;Made in Dufftown&#8221; stuff <img src='http://www.e-studioz.de/wordpress/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.e-studioz.de/wordpress/?feed=rss2&amp;p=158</wfw:commentRss>
		</item>
		<item>
		<title>When a monkey dies, a viking is born!</title>
		<link>http://www.e-studioz.de/wordpress/?p=152</link>
		<comments>http://www.e-studioz.de/wordpress/?p=152#comments</comments>
		<pubDate>Fri, 27 Mar 2009 12:13:48 +0000</pubDate>
		<dc:creator>Eichi</dc:creator>
		
		<category><![CDATA[Valhöll Warriors]]></category>

		<guid isPermaLink="false">http://www.e-studioz.de/wordpress/?p=152</guid>
		<description><![CDATA[
After some time of playing around with by PSSM stuff, I decided that I can&#8217;t improve any single thing. So hooray, it&#8217;s done! I&#8217;ve put my M5 project to sleep (the monkey thing, M5 = Massive Micro Mutant Monkey Madness) and joined the Iceforge team as a (lead?) programmer two weeks ago. You may know [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/03/valholl_logo.jpg"><img class="aligncenter size-full wp-image-153" title="valholl_logo" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/03/valholl_logo.jpg" alt="" width="400" height="218" /></a></p>
<p>After some time of playing around with by PSSM stuff, I decided that I can&#8217;t improve any single thing. So hooray, it&#8217;s done! I&#8217;ve put my M5 project to sleep (the monkey thing, M5 = Massive Micro Mutant Monkey Madness) and joined the <a href="http://www.valhollwarriors.com">Iceforge</a> team as a (lead?) programmer two weeks ago. You may know them from <a href="http://darkmana.com">Darkmana</a>. They&#8217;re currently working on a viking-like multiplayer game called <del datetime="2009-03-27T11:51:10+00:00">Valhall Warriors</del> <del datetime="2009-03-27T11:51:10+00:00">Vallholl Warriors</del> Valhöll Warriors that I was very interested in. Fourtunately, the project was at the very beginning so I was able to bring my default framework into the code layer. Years of experience and thousands of lines of my finished code made me able to build up a complete game framework in only one week (woot!).</p>
<p>So what do I mean by a framework? I mean a combination of:</p>
<ul>
<li>Rendering: Truevision3D</li>
<li>Sound: BASS</li>
<li>Network: Lidgren</li>
<li>Physics: PhysX</li>
<li>Editor: Darktools</li>
</ul>
<p>Combining Truevision3D with NVIDIAs PhysX is a challenging one! The first thing is that PhysX doesn&#8217;t support managed languages out of the box, but there are a few (more or less) complete Wrappers around. Though, it&#8217;s not as that easy, but I made it to.. eh.. see yourself:</p>
<p><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/03/vallholl_physx02.jpg"><img class="aligncenter size-medium wp-image-154" title="vallholl_physx02" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/03/vallholl_physx02-300x216.jpg" alt="" width="300" height="216" /></a></p>
<p>Don&#8217;t mind the FPS rate <img src='http://www.e-studioz.de/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> There are about 50k 3D lines rendered in realtime. And the interesting thing is: <strong>Truevision3D&#8217;s built-in Newton Game Dynamics functionalities are about 40% slower than PhysX!</strong> Bye, bye, Newton!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.e-studioz.de/wordpress/?feed=rss2&amp;p=152</wfw:commentRss>
		</item>
		<item>
		<title>PSSM Source Code released</title>
		<link>http://www.e-studioz.de/wordpress/?p=147</link>
		<comments>http://www.e-studioz.de/wordpress/?p=147#comments</comments>
		<pubDate>Sat, 07 Feb 2009 15:26:05 +0000</pubDate>
		<dc:creator>Eichi</dc:creator>
		
		<category><![CDATA[Team]]></category>

		<guid isPermaLink="false">http://www.e-studioz.de/wordpress/?p=147</guid>
		<description><![CDATA[
I just released the source code, an example and a .NET library of my PSSM baby. You can find the respective post in the Truevision 3D forum here.
Hope you like it!
]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/02/pssm_sample.jpg"><img src="http://www.e-studioz.de/wordpress/wp-content/uploads/2009/02/pssm_sample-300x225.jpg" alt="" title="pssm_sample" width="300" height="225" class="aligncenter size-medium wp-image-149" /></a></p>
<p>I just released the source code, an example and a .NET library of my PSSM baby. You can find the respective post in the Truevision 3D forum <a href="http://www.truevision3d.com/forums/showcase/source_library_sample_parallel_split_shadow_mapping_that_you_can_reuse-t18798.0.html">here</a>.</p>
<p>Hope you like it!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.e-studioz.de/wordpress/?feed=rss2&amp;p=147</wfw:commentRss>
		</item>
		<item>
		<title>Nerd Pole</title>
		<link>http://www.e-studioz.de/wordpress/?p=102</link>
		<comments>http://www.e-studioz.de/wordpress/?p=102#comments</comments>
		<pubDate>Mon, 27 Oct 2008 11:50:59 +0000</pubDate>
		<dc:creator>Eichi</dc:creator>
		
		<category><![CDATA[Team]]></category>

		<guid isPermaLink="false">http://www.e-studioz.de/wordpress/?p=102</guid>
		<description><![CDATA[For our German readers  

]]></description>
			<content:encoded><![CDATA[<p>For our German readers <img src='http://www.e-studioz.de/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/10/image001.png"><img class="aligncenter size-full wp-image-103" title="image001" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/10/image001.png" alt="" width="400" height="400" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.e-studioz.de/wordpress/?feed=rss2&amp;p=102</wfw:commentRss>
		</item>
		<item>
		<title>Fullscreen Shader Madness</title>
		<link>http://www.e-studioz.de/wordpress/?p=96</link>
		<comments>http://www.e-studioz.de/wordpress/?p=96#comments</comments>
		<pubDate>Sun, 12 Oct 2008 13:28:28 +0000</pubDate>
		<dc:creator>Eichi</dc:creator>
		
		<category><![CDATA[Team]]></category>

		<guid isPermaLink="false">http://www.e-studioz.de/wordpress/?p=96</guid>
		<description><![CDATA[I&#8217;m currently fooling around with some fullscreen shader effects and it&#8217;s funny what can happen if you fool around to much  Take a look for yourself:

So this is what it was meant to be:

]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;">I&#8217;m currently fooling around with some fullscreen shader effects and it&#8217;s funny what can happen if you fool around to much <img src='http://www.e-studioz.de/wordpress/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> Take a look for yourself:</p>
<p style="text-align: center;"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/10/026.jpg"><img class="size-medium wp-image-97 aligncenter" title="026" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/10/026-300x225.jpg" alt="" width="300" height="225" /></a></p>
<p style="text-align: left;">So this is what it was meant to be:</p>
<p style="text-align: center;"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/10/027.jpg"><img class="alignnone size-medium wp-image-100" title="027" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/10/027-300x225.jpg" alt="" width="300" height="225" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.e-studioz.de/wordpress/?feed=rss2&amp;p=96</wfw:commentRss>
		</item>
		<item>
		<title>What happened to the good ol&#8217; world?</title>
		<link>http://www.e-studioz.de/wordpress/?p=92</link>
		<comments>http://www.e-studioz.de/wordpress/?p=92#comments</comments>
		<pubDate>Wed, 08 Oct 2008 16:03:16 +0000</pubDate>
		<dc:creator>Eichi</dc:creator>
		
		<category><![CDATA[Team]]></category>

		<guid isPermaLink="false">http://www.e-studioz.de/wordpress/?p=92</guid>
		<description><![CDATA[I finally had the time to set up my new system (4gigs DDR3, gtx280, 3,2ghz dual core) and just downloaded the latest version of Visual Studio from my MSDNAA access. I&#8217;m currently a bit gutted about Microsoft at the moment. You guys know that Microsoft loves to flood the world with copyrights (which is actually [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;">I finally had the time to set up my new system (4gigs DDR3, gtx280, 3,2ghz dual core) and just downloaded the latest version of Visual Studio from my MSDNAA access. I&#8217;m currently a bit gutted about Microsoft at the moment. You guys know that Microsoft loves to flood the world with copyrights (which is actually a good thing) and to name their software always prefixed with &#8220;Microsoft XXX&#8221;, like &#8220;Microsoft Office&#8221;, &#8220;Microsoft Windows&#8221; and &#8220;Microsoft Visual Studio&#8221;, but this time&#8230; look at the picture <img src='http://www.e-studioz.de/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> And ya: this is a nerdy post, I know <img src='http://www.e-studioz.de/wordpress/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
<p style="text-align: center;"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/10/visualstudiosetup.jpg"><img class="size-thumbnail wp-image-93 aligncenter" title="visualstudiosetup" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/10/visualstudiosetup-150x150.jpg" alt="" width="150" height="150" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.e-studioz.de/wordpress/?feed=rss2&amp;p=92</wfw:commentRss>
		</item>
		<item>
		<title>Chimpy Shader</title>
		<link>http://www.e-studioz.de/wordpress/?p=61</link>
		<comments>http://www.e-studioz.de/wordpress/?p=61#comments</comments>
		<pubDate>Sat, 04 Oct 2008 14:55:55 +0000</pubDate>
		<dc:creator>Eichi</dc:creator>
		
		<category><![CDATA[Team]]></category>

		<guid isPermaLink="false">http://www.e-studioz.de/wordpress/?p=61</guid>
		<description><![CDATA[Some guys asked me how we were able to get the chimps monkeys (acutally they&#8217;re no chimps, cause chimps don&#8217;t have a tail) look so cartoony. The effects for this are very trivial and easy to explain, but here we go:
The basic combination of the shader is a classic &#8220;albedo * diffuse + specular&#8221; term [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;">Some guys asked me how we were able to get the <span style="text-decoration: line-through;">chimps</span> monkeys (acutally they&#8217;re no chimps, cause chimps don&#8217;t have a tail) look so cartoony. The effects for this are very trivial and easy to explain, but here we go:</p>
<p style="text-align: left;">The basic combination of the shader is a classic &#8220;albedo * diffuse + specular&#8221; term without any emissive properties. Since we only have only one directional light, we can fake as much as we want to <img src='http://www.e-studioz.de/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p style="text-align: left;">The diffuse part is a simple lambertian term, but with a small addition. You guys know what I&#8217;m talking about:</p>
<p style="text-align: center;"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/10/chimpshader06.jpg"><img class="size-medium wp-image-63 aligncenter" title="chimpshader06" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/10/chimpshader06.jpg" alt="" width="211" height="42" /></a></p>
<p style="text-align: left;">
<p style="text-align: left;">The standard lambertian term results in values from -1 to 1, which is bad for lighting case 50% of the lit surface will be black (since 0 is totally black). I came across the idea to use the &#8220;<a href="http://developer.valvesoftware.com/w/index.php?title=Half_Lambert&amp;redirect=no" target="_blank">half lambertian term</a>&#8220;:</p>
<p style="text-align: left;">
<p style="text-align: center;"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/10/chimpshader07.jpg"><img class="size-full wp-image-64 aligncenter" title="chimpshader07" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/10/chimpshader07.jpg" alt="" width="417" height="43" /></a></p>
<p style="text-align: left;">
<p style="text-align: left;">
<p style="text-align: left;">
<p style="text-align: left;">
<p style="text-align: left;">This inofficial variant - first used by Valve Software in 1998 in Half-Life - has the property to result in values from 0 to 1. Means the lit surface appears more lightened and not overdarkened. But however, this will only result in a standard diffuse ligthing from white to black:</p>
<p style="text-align: left;">
<p style="text-align: left;">
<p style="text-align: center;"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/10/chimpshader041.jpg"><img class="size-full wp-image-65 aligncenter" title="chimpshader041" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/10/chimpshader041.jpg" alt="" width="256" height="16" /></a></p>
<p style="text-align: left;">
<p style="text-align: left;">
<p style="text-align: left;">Of course you can tint it by multiplying with the ligths color, but that does not look cartoonish enough. Since the diffuse lighting is in range [0, 1], we can use a 1D texture for tinting the result:</p>
<p style="text-align: left;">
<p style="text-align: center;"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/10/chimpshader051.jpg"><img class="size-full wp-image-66 aligncenter" title="chimpshader051" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/10/chimpshader051.jpg" alt="" width="256" height="16" /></a></p>
<p style="text-align: left;">
<p style="text-align: left;">This looks far more cartoonish and still semi-realistic. Furthermore it has the important availability of being artist-tuned. Can&#8217;t wait to see it?</p>
<p style="text-align: left;">
<p style="text-align: center;"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/10/chimpshader021.jpg"><img class="size-medium wp-image-62 aligncenter" title="chimpshader021" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/10/chimpshader021.jpg" alt="" width="300" height="300" /></a></p>
<p style="text-align: left;">
<p style="text-align: left;">But the diffuse ligthing itself doesn&#8217;t make a good lighting. And then the monkey still has a helmet that should look more like metal than the skin of a monkey. I have to admit that the helmet doesn&#8217;t look metallic in the final result, but we can take that. We use a separate &#8220;sfx&#8221; texture for scaling different factors on the whole model, like the intensity of specular and rim ligthing. Oh, did i mention rim lighting? Rim lighting has become a must in non-realistic renderings. Refer to Team Fortress 2 or Battlefield: Heros: They all use rim lighting. And so do we:</p>
<p style="text-align: center;"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/10/chimpshader031.jpg"><img class="size-full wp-image-67 aligncenter" title="chimpshader031" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/10/chimpshader031.jpg" alt="" width="300" height="300" /></a></p>
<p style="text-align: left;">
<p style="text-align: left;">Note that there is specular lighting on the helmet only <img src='http://www.e-studioz.de/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> This is due to our magic sfx texture. And one more time - this can be artist-tuned. And my artist likes it <img src='http://www.e-studioz.de/wordpress/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p style="text-align: left;">In the end we came up with a little hacky solution. Since we use Parallel Split Shadow Maps for getting some semi-uber-shadows, the whole monkey should be shadowed too. That means we have to scale the specular and rim influence by taking care of the shadowness. In the end this looks satisfying. When the player enters a shadowed area, the specular and rim lighting disappears - guess why? <img src='http://www.e-studioz.de/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> We also don&#8217;t use any filtering method on the shadows dropped onto the monkey. This saves a bit of performance that isn&#8217;t mentionable, but you don&#8217;t even realize it while playing. The white box shows what I mean.</p>
<p style="text-align: center;"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/10/chimpshader011.jpg"><img class="size-full wp-image-68 aligncenter" title="chimpshader011" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/10/chimpshader011.jpg" alt="" width="300" height="300" /></a></p>
<p style="text-align: left;">
<p style="text-align: left;">Please, if you have any further questions or if you&#8217;re interested in the code, don&#8217;t hestitate to drop us a line <img src='http://www.e-studioz.de/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p style="text-align: left;"><strong> Indies for the win!</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.e-studioz.de/wordpress/?feed=rss2&amp;p=61</wfw:commentRss>
		</item>
		<item>
		<title>So this is&#8230;</title>
		<link>http://www.e-studioz.de/wordpress/?p=52</link>
		<comments>http://www.e-studioz.de/wordpress/?p=52#comments</comments>
		<pubDate>Wed, 01 Oct 2008 17:55:11 +0000</pubDate>
		<dc:creator>Eichi</dc:creator>
		
		<category><![CDATA[Team]]></category>

		<guid isPermaLink="false">http://www.e-studioz.de/wordpress/?p=52</guid>
		<description><![CDATA[&#8230; something for our childs  I just found something very unexpected while googlin around for some more information about chimpanzees. You won&#8217;t believe me, but see yourself:

Man, this is just lovely! But eeeww.. 80 bucks for an ALF-like chimp?
]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;">&#8230; something for our childs <img src='http://www.e-studioz.de/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> I just found something very unexpected while googlin around for some more information about chimpanzees. You won&#8217;t believe me, but see yourself:</p>
<p style="text-align: center;"><a href="http://astore.amazon.com/furreal-friends-20/detail/B000OYL45M/105-4876311-9354829"><img class="alignnone" src="http://ecx.images-amazon.com/images/I/51AH4KcAGCL._SL210_.jpg" alt="" width="189" height="210" /></a></p>
<p style="text-align: left;">Man, this is just lovely! But eeeww.. 80 bucks for an ALF-like chimp?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.e-studioz.de/wordpress/?feed=rss2&amp;p=52</wfw:commentRss>
		</item>
		<item>
		<title>Parallel Split Shadow Mapping revised</title>
		<link>http://www.e-studioz.de/wordpress/?p=49</link>
		<comments>http://www.e-studioz.de/wordpress/?p=49#comments</comments>
		<pubDate>Tue, 30 Sep 2008 19:07:36 +0000</pubDate>
		<dc:creator>Eichi</dc:creator>
		
		<category><![CDATA[Team]]></category>

		<guid isPermaLink="false">http://www.e-studioz.de/wordpress/?p=49</guid>
		<description><![CDATA[Some guys of you may know this lil video from the Truevision3D forums, where I was visualizing the different frustum splits in a tinted way:

The split distances are recalculated very time the maximum frustum depth changes. In other words: The shadow maps cover the whole visible area to push more shadow map texels onto the [...]]]></description>
			<content:encoded><![CDATA[<p>Some guys of you may know this lil video from the Truevision3D forums, where I was visualizing the different frustum splits in a tinted way:</p>
<p style="text-align: center;"><object width="425" height="350"><param name="movie" value="http://www.youtube.com/v/HLq2H7ap9vA"></param><param name="wmode" value="transparent"></param><embed src="http://www.youtube.com/v/HLq2H7ap9vA" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"></embed></object></p>
<p>The split distances are recalculated very time the maximum frustum depth changes. In other words: The shadow maps cover the whole visible area to push more shadow map texels onto the geometry. This happens when the player looks &#8220;outside&#8221; the map, that is, when the frustum depth is further away than the worlds boundaries. Note that the near red split disappears for some reason. In addition, the split borders become nearer to the player and when theyre to close to the camera, the borders and mainly the resolution/quality differences are noticeable. To avoid this problem/artefact, I rewrote the split distance calculation. The original code uses logarithmics to adapt the effect of view depth. I ended up with a small addition, which &#8220;snaps&#8221; the nearest split distance to a static border. The effect is quite nice and offers far better shadows:</p>
<p style="text-align: center;"><object width="425" height="350"><param name="movie" value="http://www.youtube.com/v/S9M4Cre8WwY"></param><param name="wmode" value="transparent"></param><embed src="http://www.youtube.com/v/S9M4Cre8WwY" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"></embed></object></p>
<p>So this one has a better split sheme applied to it. Take a look at the near red layer. It will always cover the near area around the player to assume the highest detail - regardless of the maximum frustum size.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.e-studioz.de/wordpress/?feed=rss2&amp;p=49</wfw:commentRss>
		</item>
		<item>
		<title>Hot babes an&#8217; stuff&#8230;</title>
		<link>http://www.e-studioz.de/wordpress/?p=47</link>
		<comments>http://www.e-studioz.de/wordpress/?p=47#comments</comments>
		<pubDate>Sun, 28 Sep 2008 15:07:51 +0000</pubDate>
		<dc:creator>Eichi</dc:creator>
		
		<category><![CDATA[Team]]></category>

		<guid isPermaLink="false">http://www.e-studioz.de/wordpress/?p=47</guid>
		<description><![CDATA[&#8230;is what we would accept with pleasure. We found it difficult to continue development for a while, since the sunshine (and the hot babes) of Crete were so tempting  But stay tuned&#8230; our powerup HUD element already consists of 75 textures and we keep it growing. We&#8217;ll keep you up to date - there&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p>&#8230;is what we would accept with pleasure. We found it difficult to continue development for a while, since the sunshine (and the hot babes) of Crete were so tempting <img src='http://www.e-studioz.de/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> But stay tuned&#8230; our powerup HUD element already consists of 75 textures and we keep it growing. We&#8217;ll keep you up to date - there&#8217;s nothing to be said against it <img src='http://www.e-studioz.de/wordpress/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.e-studioz.de/wordpress/?feed=rss2&amp;p=47</wfw:commentRss>
		</item>
		<item>
		<title>Iconage</title>
		<link>http://www.e-studioz.de/wordpress/?p=41</link>
		<comments>http://www.e-studioz.de/wordpress/?p=41#comments</comments>
		<pubDate>Sat, 02 Aug 2008 12:50:17 +0000</pubDate>
		<dc:creator>Eichi</dc:creator>
		
		<category><![CDATA[Monkey Stuff]]></category>

		<guid isPermaLink="false">http://www.e-studioz.de/wordpress/?p=41</guid>
		<description><![CDATA[I&#8217;ve just fooled around a bit with our sketch repository, but maybe this gonna be our logo.. who knows?

Hopefully our gov won&#8217;t throw us a monkey wrench at this  
]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve just fooled around a bit with our sketch repository, but maybe this gonna be our logo.. who knows?</p>
<p style="text-align: center;"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/08/evtl-logo.jpg"><img class="size-medium wp-image-42 aligncenter" title="evtl-logo" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/08/evtl-logo.jpg" alt="" width="239" height="280" /></a></p>
<p style="text-align: left;">Hopefully our gov won&#8217;t throw us a monkey wrench at this <img src='http://www.e-studioz.de/wordpress/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.e-studioz.de/wordpress/?feed=rss2&amp;p=41</wfw:commentRss>
		</item>
		<item>
		<title>Live on the banana side of life</title>
		<link>http://www.e-studioz.de/wordpress/?p=36</link>
		<comments>http://www.e-studioz.de/wordpress/?p=36#comments</comments>
		<pubDate>Fri, 01 Aug 2008 13:38:49 +0000</pubDate>
		<dc:creator>Eichi</dc:creator>
		
		<category><![CDATA[Monkey Stuff]]></category>

		<guid isPermaLink="false">http://www.e-studioz.de/wordpress/?p=36</guid>
		<description><![CDATA[What is a monkey game without bananas? One &#8220;powerup&#8221; you can get within our dispenser is the banana. Once its been loaded into your helmet, you can drop it wherever you like to. But be careful! When you step onto a banana peel, you slip away and probably fall down if you&#8217;re not fast enough.
This [...]]]></description>
			<content:encoded><![CDATA[<p>What is a monkey game without bananas? One &#8220;powerup&#8221; you can get within our dispenser is the banana. Once its been loaded into your helmet, you can drop it wherever you like to. But be careful! When you step onto a banana peel, you slip away and probably fall down if you&#8217;re not fast enough.</p>
<p>This is a preview of the banana peel slipping:</p>
<p style="text-align: center;"><object width="425" height="350"><param name="movie" value="http://www.youtube.com/v/Cg2TaWCL-8Q"></param><param name="wmode" value="transparent"></param><embed src="http://www.youtube.com/v/Cg2TaWCL-8Q" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"></embed></object></p>
<p>The stand up animation is missing, but it works very well yet. While slipping away, you lose control of your movement and in the worst case you might slip off the platforms and fall to death - being a frag for the &#8220;owner&#8221; of the peel.</p>
<p>It&#8217;s a maddening feature and a lot of fun to place a whole mine field of banana peels!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.e-studioz.de/wordpress/?feed=rss2&amp;p=36</wfw:commentRss>
		</item>
		<item>
		<title>ChimpED</title>
		<link>http://www.e-studioz.de/wordpress/?p=26</link>
		<comments>http://www.e-studioz.de/wordpress/?p=26#comments</comments>
		<pubDate>Fri, 01 Aug 2008 12:48:43 +0000</pubDate>
		<dc:creator>Eichi</dc:creator>
		
		<category><![CDATA[ChimpED]]></category>

		<category><![CDATA[Monkey Stuff]]></category>

		<guid isPermaLink="false">http://www.e-studioz.de/wordpress/?p=26</guid>
		<description><![CDATA[As for many games, ours will also ship with an own editor. It&#8217;s not as that trivial, but easy to use after a few minutes of watching whats going on there. We decided to make the map design as easy and intuitive as possible, without BSPs or octrees. We came up with the idea of [...]]]></description>
			<content:encoded><![CDATA[<p>As for many games, ours will also ship with an own editor. It&#8217;s not as that trivial, but easy to use after a few minutes of watching whats going on there. We decided to make the map design as easy and intuitive as possible, without BSPs or octrees. We came up with the idea of using puzzle pieces. This is something like.. eh.. ya.. 3D tiles. You can choose between the availble puzzle pieces within the editor and simply drag and drop them into the world. There also is a raster system which perfectly fits the puzzle pieces for easier and symmetric placement.</p>
<p>You can&#8217;t imagine what can be done with a small set of pieces! This is our first test set:</p>
<p style="text-align: center;"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/08/set.jpg"><img class="size-medium wp-image-27 aligncenter" title="set" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/08/set-300x300.jpg" alt="" width="300" height="300" /></a></p>
<p style="text-align: left;">And thats what you actually can do with it:</p>
<p style="text-align: center;"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/08/chimped_solid.jpg"><img class="size-medium wp-image-28 aligncenter" title="chimped_solid" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/08/chimped_solid-300x232.jpg" alt="" width="300" height="232" /></a></p>
<p style="text-align: center;"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/08/chimped_wireframe.jpg"><img class="alignnone size-medium wp-image-29" title="chimped_wireframe" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/08/chimped_wireframe-300x232.jpg" alt="" width="300" height="232" /></a></p>
<p style="text-align: left;">So this kinda rocks!</p>
<p style="text-align: left;">But I have to admit that ChimpED is only a What-You-See-Is-What-You-Might-Get editor, cause there are no shadows. After a few secs of compiling that babe (grouping meshs, welding vertices, calculating better normals etc.), its ready for the game:</p>
<p style="text-align: center;"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/08/map05.jpg"><img class="size-medium wp-image-30 aligncenter" title="map05" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/08/map05-300x225.jpg" alt="" width="300" height="225" /></a></p>
<p style="text-align: left;">Et voilà, there are shadows! Compare that screenshot with the one of ChimpED. Its hard to difference the heights of the platforms without shadows, isn&#8217;t it?</p>
<p style="text-align: left;">If you wanna try out this editor, feel free to drop me a line <img src='http://www.e-studioz.de/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p style="text-align: left;">
<p style="text-align: left;">PS: While writing this post, the impossible happened:</p>
<p style="text-align: center;"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/08/firefox.jpg"><img class="size-thumbnail wp-image-32 aligncenter" title="firefox" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/08/firefox-150x150.jpg" alt="" width="150" height="150" /></a></p>
<p style="text-align: left;">At least there is no &#8220;Send debugging shit to Microsoft&#8221;.. lol <img src='http://www.e-studioz.de/wordpress/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.e-studioz.de/wordpress/?feed=rss2&amp;p=26</wfw:commentRss>
		</item>
		<item>
		<title>Grin, baby!</title>
		<link>http://www.e-studioz.de/wordpress/?p=23</link>
		<comments>http://www.e-studioz.de/wordpress/?p=23#comments</comments>
		<pubDate>Thu, 31 Jul 2008 17:33:10 +0000</pubDate>
		<dc:creator>Eichi</dc:creator>
		
		<category><![CDATA[Team]]></category>

		<guid isPermaLink="false">http://www.e-studioz.de/wordpress/?p=23</guid>
		<description><![CDATA[Today I&#8217;m probably the happiest man in the world!
Why? Cause of this:

Finishin ToDo-lists is such a great thing! *overdid*
]]></description>
			<content:encoded><![CDATA[<p>Today I&#8217;m probably the happiest man in the world!</p>
<p>Why? Cause of this:</p>
<p><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/07/untitled-1.jpg"><img class="alignnone size-medium wp-image-24" title="untitled-1" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/07/untitled-1-300x123.jpg" alt="" width="300" height="123" /></a></p>
<p>Finishin ToDo-lists is such a great thing! *overdid*</p>
]]></content:encoded>
			<wfw:commentRss>http://www.e-studioz.de/wordpress/?feed=rss2&amp;p=23</wfw:commentRss>
		</item>
		<item>
		<title>Selecting the correct frustum split</title>
		<link>http://www.e-studioz.de/wordpress/?p=14</link>
		<comments>http://www.e-studioz.de/wordpress/?p=14#comments</comments>
		<pubDate>Wed, 30 Jul 2008 12:09:53 +0000</pubDate>
		<dc:creator>Eichi</dc:creator>
		
		<category><![CDATA[HLSL]]></category>

		<category><![CDATA[Shadow Mapping]]></category>

		<category><![CDATA[Parallel Split Shadow Mapping]]></category>

		<guid isPermaLink="false">http://www.e-studioz.de/wordpress/?p=14</guid>
		<description><![CDATA[I have been working on my Parallel Split Shadow Mapping implementation for a while.. a while? Hm.. almost for five weeks. Yesterday, I have just proven that there still is some room for optimizations. While my implementation renders four frustum splits into the ARGB channels of a texture, instead of using four shadow maps per [...]]]></description>
			<content:encoded><![CDATA[<p>I have been working on my Parallel Split Shadow Mapping implementation for a while.. a while? Hm.. almost for five weeks. Yesterday, I have just proven that there still is some room for optimizations. While my implementation renders four frustum splits into the ARGB channels of a texture, instead of using four shadow maps per split, it became a mess selecting the correct split channel and matrices within the fragment shader. This saves three textures and thus a whole bunch of texture memory, but it&#8217;s a bit more complicated to switch between the different channels.</p>
<p>This is how the splits actually look like:</p>
<p style="text-align: center;"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/07/german_pssm.jpg"><img class="size-medium wp-image-15 aligncenter" title="german_pssm" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/07/german_pssm-300x225.jpg" alt="" width="300" height="225" /></a></p>
<p>Where Black = 0, <span style="color: #000000;">Red = 1</span>, Yellow = 2, White = 3</p>
<p>Actually, selecting the proper split is very easy - easy to solve. Generally, we need a function that satifies the following equation:</p>
<p style="text-align: center;"><a href="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/07/pssm_depth_equation.jpg"><img class="size-medium wp-image-16 aligncenter" title="pssm_depth_equation" src="http://www.e-studioz.de/wordpress/wp-content/uploads/2008/07/pssm_depth_equation.jpg" alt="" width="255" height="138" /></a></p>
<p style="text-align: left;">As you see, this function needs to perform at least three tests to output the proper index. But encoding this in HLSL is a bit more complicated when you want it optimized. My first approach was very stupid, but see yourself:</p>
<pre style="padding-left: 30px;">half GetSplitByDepth(float fDepth)
{
	half nSplitID = 3;

	while( fDepth &gt;= g_fSplitDistances[nSplitID] )
		nSplitID--;

	return nSplitID;
}</pre>
<p>Note that asymmetric returns are not supported by my old Geforce 7800 GTX&#8230; I don&#8217;t even know if they are by newer ones, but regardless of this it doesn&#8217;t matter, cause this would break the rules of well-structured programming. But breaking the rules is a good thing when it ends up with a performance boost. But let me stop the dumb talk, here are the results of this method:</p>
<pre style="padding-left: 30px;"><strong>ps_3_0</strong>
def c1, 1, 0, -1, 0
dcl_texcoord1 v0.z
add r0, -c0.wzyx, v0.z
mp r0, r0, c1.x, c1.y
mul r0.x, r0.y, r0.x
mul r0.x, r0.z, r0.x
mul r0.y, r0.w, r0.x
cmp_pp r0.x, -r0.x, c1.x, c1.y
cmp_pp oC0, -r0.y, r0.x, c1.z</pre>
<pre style="padding-left: 30px;">// approximately <span style="text-decoration: underline;">7 instruction slots</span> used</pre>
<pre style="padding-left: 30px;"><strong>ps_2_0
</strong>def c1, 1, 0, -1, 0
dcl t1.xyzadd r0.w, t1.z, -c0.w
cmp r0.y, r0.y, c1.x, c1.y
mul r0.x, r0.x, r0.y
add r0.y, t1.z, -c0.y
cmp r0.y, r0.y, c1.x, c1.y
mul r0.x, r0.x, r0.y
add r0.y, t1.z, -c0.x
cmp r0.y, r0.y, c1.x, c1.y
mul r0.y, r0.x, r0.y
cmp_pp r0.x, -r0.x, c1.x, c1.y
cmp_pp r0, -r0.y, r0.x, c1.z
mov_pp oC0, r0

// approximately <span style="text-decoration: underline;">14 instruction slots</span> used</pre>
<p>So this is the crappiest solution. 14 instruction slots is probably the shittiest even possible solution. Let&#8217;s just forget this gimp and take a look at my second approach:</p>
<pre style="padding-left: 30px;">half GetSplitByDepth(float fDepth)
{
	half nSplitID = 3;

	if( fDepth &gt;= g_fSplitDistances[3] )
		fSplitID = 3;
	else if( fDepth &gt;= g_fSplitDistances[2] )
		fSplitID = 2;
	else if( fDepth &gt;= g_fSplitDistances[1] )
		fSplitID = 1;

	return nSplitID;
}</pre>
<p>So this should be logically the same as approach no. one, but you never know what the compiler does with it. Actually, its very different:</p>
<pre style="padding-left: 30px;"><strong>ps_3_0</strong>
def c1, 1, 0, 2, 3
dcl_texcoord1 v0.z
add r0.xyz, -c0.wzyw, v0.z
cmp_pp r0.z, r0.z, c1.x, c1.y
cmp_pp r0.y, r0.y, c1.z, r0.z
cmp_pp oC0, r0.x, c1.w, r0.y

// approximately <span style="text-decoration: underline;">4 instruction slots</span> used

<strong>ps_2_0</strong>
def c1, 1, 0, 2, 3
dcl t1.xyz
add r0.w, t1.z, -c0.y
cmp_pp r0.x, r0.w, c1.x, c1.y
add r0.y, t1.z, -c0.z
cmp_pp r0.x, r0.y, c1.z, r0.x
add r0.y, t1.z, -c0.w
cmp_pp r0, r0.y, c1.w, r0.x
mov_pp oC0, r0

// approximately <span style="text-decoration: underline;">7 instruction slots</span> used</pre>
<p>Four instructions on SM 3.0 and seven on SM 2.0. Thanks to dynamic branching abilities on SM 3.0, but on the good ol&#8217; vanilla SM 2.0.. it&#8217;s not perfect. But I was able to get it (IMHO) perfect:</p>
<pre style="padding-left: 30px;">half GetSplitByDepth(float fDepth)
{
	float4 fTest = fDepth &gt; g_fSplitDistances;
	return dot(fTest, fTest);
}</pre>
<pre style="padding-left: 30px;"><strong>ps_3_0</strong>
def c1, 0, 1, 0, 0
dcl_texcoord1 v0.z
add r0, c0, -v0.z
cmp r0, r0, c1.x, c1.y
dp4_pp oC0, r0, r0

// approximately <span style="text-decoration: underline;">3 instruction slots</span> used

<strong>ps_2_0</strong>
def c1, 0, 1, 0, 0
dcl t1.xyz
add r0, -t1.z, c0
cmp r0, r0, c1.x, c1.y
dp4 r0, r0, r0
mov_pp oC0, r0

// approximately <span style="text-decoration: underline;">4 instruction slots</span> used</pre>
<p>So this is THE solution, isn&#8217;t it? Think a bit about it <img src='http://www.e-studioz.de/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.e-studioz.de/wordpress/?feed=rss2&amp;p=14</wfw:commentRss>
		</item>
		<item>
		<title>Oh my&#8230; another blog!</title>
		<link>http://www.e-studioz.de/wordpress/?p=6</link>
		<comments>http://www.e-studioz.de/wordpress/?p=6#comments</comments>
		<pubDate>Wed, 30 Jul 2008 10:24:12 +0000</pubDate>
		<dc:creator>Eichi</dc:creator>
		
		<category><![CDATA[Team]]></category>

		<guid isPermaLink="false">http://www.e-studioz.de/wordpress/?p=6</guid>
		<description><![CDATA[Don&#8217;t be confused about this blog - it&#8217;s just another one in the wild. And&#8230; I have to admit that this is just a stupid test post, but hopefully there will be more heady stuff soon! 
]]></description>
			<content:encoded><![CDATA[<p>Don&#8217;t be confused about this blog - it&#8217;s just another one in the wild. And&#8230; I have to admit that this is just a stupid test post, but hopefully there will be more heady stuff soon! <img src='http://www.e-studioz.de/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.e-studioz.de/wordpress/?feed=rss2&amp;p=6</wfw:commentRss>
		</item>
	</channel>
</rss>
