<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Crappy Coding &#187; C#</title>
	<atom:link href="http://www.crappycoding.com/category/csharp/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.crappycoding.com</link>
	<description>Spreading the Geek</description>
	<lastBuildDate>Wed, 21 Jul 2010 15:12:13 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>GPU Geometry Map Rendering &#8211; Part 1</title>
		<link>http://www.crappycoding.com/2010/01/gpu-geometry-map-rendering-part-1/</link>
		<comments>http://www.crappycoding.com/2010/01/gpu-geometry-map-rendering-part-1/#comments</comments>
		<pubDate>Sun, 10 Jan 2010 03:38:42 +0000</pubDate>
		<dc:creator>Dave</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Procedural Planet]]></category>
		<category><![CDATA[planet]]></category>
		<category><![CDATA[procedural]]></category>

		<guid isPermaLink="false">http://www.crappycoding.com/?p=143</guid>
		<description><![CDATA[I spent the past week moving my procedural planet renderer’s
geometry map creation code from the CPU to the GPU. It didn’t go as smoothly as
I would have liked, but in a way that was a good thing since I gained a much
deeper understanding of some render pipeline things that I had been taking for
granted.]]></description>
		<wfw:commentRss>http://www.crappycoding.com/2010/01/gpu-geometry-map-rendering-part-1/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Procedural Planet Engine Status</title>
		<link>http://www.crappycoding.com/2009/12/procedural-planet-engine-status/</link>
		<comments>http://www.crappycoding.com/2009/12/procedural-planet-engine-status/#comments</comments>
		<pubDate>Wed, 30 Dec 2009 05:43:29 +0000</pubDate>
		<dc:creator>Dave</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Procedural Planet]]></category>
		<category><![CDATA[XNA]]></category>
		<category><![CDATA[graphics]]></category>
		<category><![CDATA[planet]]></category>
		<category><![CDATA[procedural]]></category>

		<guid isPermaLink="false">http://www.crappycoding.com/?p=130</guid>
		<description><![CDATA[Previously I mentioned I was going to do a mulligan on my procedural planet engine. The few hours I've worked on it so far have lead to a beautiful new architecture that's doing most of the same things as before, as well as some major new things, using about 25% of the code.]]></description>
		<wfw:commentRss>http://www.crappycoding.com/2009/12/procedural-planet-engine-status/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Sprite Sheet Creator</title>
		<link>http://www.crappycoding.com/2009/08/sprite-sheet-creator/</link>
		<comments>http://www.crappycoding.com/2009/08/sprite-sheet-creator/#comments</comments>
		<pubDate>Tue, 25 Aug 2009 19:37:33 +0000</pubDate>
		<dc:creator>Dave</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Game Programming]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[XNA]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[graphics]]></category>

		<guid isPermaLink="false">http://www.crappycoding.com/?p=110</guid>
		<description><![CDATA[When developing the iPhone version of Guardian I manually created my sprite sheets.  I used individual sprites up until the end so everything was pretty much set in stone by the time I created the the sprite sheet.  Even then I ended up having to recreate the sprite sheet two or three times, and let me tell you, manually figuring out the texture coordinates isn't a particularly pleasant experience. In this case I believe I made the right choice.  There were few enough sprites that I would have spent more time creating the tool than I would have saved.]]></description>
		<wfw:commentRss>http://www.crappycoding.com/2009/08/sprite-sheet-creator/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Simplified XNA Message Boxes</title>
		<link>http://www.crappycoding.com/2009/06/simplified-xna-message-boxes/</link>
		<comments>http://www.crappycoding.com/2009/06/simplified-xna-message-boxes/#comments</comments>
		<pubDate>Fri, 12 Jun 2009 03:46:47 +0000</pubDate>
		<dc:creator>Dave</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Game Programming]]></category>
		<category><![CDATA[XNA]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[graphics]]></category>

		<guid isPermaLink="false">http://www.crappycoding.com/?p=82</guid>
		<description><![CDATA[<a title="Shawn Hargreaves" href="http://blogs.msdn.com/shawnhar/">Shawn Hargreaves</a> brings up the subject of how annoying async coding can be.  Calling a "begin" method, dealing with the completion callback function, handling the results - it's all very ugly to keep track of, and often leads to very ugly code.

]]></description>
		<wfw:commentRss>http://www.crappycoding.com/2009/06/simplified-xna-message-boxes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lens Flare Occlusion Using Texture Masking and XNA</title>
		<link>http://www.crappycoding.com/2009/05/lens-flare-occlusion-using-texture-masking-and-xna/</link>
		<comments>http://www.crappycoding.com/2009/05/lens-flare-occlusion-using-texture-masking-and-xna/#comments</comments>
		<pubDate>Sat, 30 May 2009 05:24:45 +0000</pubDate>
		<dc:creator>Dave</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Game Programming]]></category>
		<category><![CDATA[XNA]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[graphics]]></category>

		<guid isPermaLink="false">http://www.crappycoding.com/?p=78</guid>
		<description><![CDATA[I have an article posted on Ziggyware that discusses an alternate method to hardware occlusion queries for checking sun visibility to control lens flare intensity.  The article is part of a contest so I can't post it here until the contest has been over for awhile.  I can link to it however.]]></description>
		<wfw:commentRss>http://www.crappycoding.com/2009/05/lens-flare-occlusion-using-texture-masking-and-xna/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sprite Splitting with SpriteBatch</title>
		<link>http://www.crappycoding.com/2009/05/sprite-splitting-with-spritebatch/</link>
		<comments>http://www.crappycoding.com/2009/05/sprite-splitting-with-spritebatch/#comments</comments>
		<pubDate>Wed, 06 May 2009 03:25:32 +0000</pubDate>
		<dc:creator>Dave</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Game Programming]]></category>
		<category><![CDATA[XNA]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[graphics]]></category>
		<category><![CDATA[SpriteBatch]]></category>

		<guid isPermaLink="false">http://www.crappycoding.com/?p=58</guid>
		<description><![CDATA[Someone over in the <a title="XNA Forums" href="http://forums.xna.com">XNA forums</a> asked a question about how to make sprite explosions like those in the old <a href="http://en.wikipedia.org/wiki/Defender_(arcade_game)">Defender</a> arcade game, where the sprite is broken into pieces and exploded everywhere.]]></description>
		<wfw:commentRss>http://www.crappycoding.com/2009/05/sprite-splitting-with-spritebatch/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Horizon Culling 3 &#8211; Finale</title>
		<link>http://www.crappycoding.com/2009/04/horizon-culling-3-finale/</link>
		<comments>http://www.crappycoding.com/2009/04/horizon-culling-3-finale/#comments</comments>
		<pubDate>Fri, 03 Apr 2009 04:33:42 +0000</pubDate>
		<dc:creator>Dave</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Game Programming]]></category>
		<category><![CDATA[XNA]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[graphics]]></category>

		<guid isPermaLink="false">http://www.crappycoding.com/?p=47</guid>
		<description><![CDATA[So we finally come to the last post in the horizon culling series.  Previously we've discussed what horizon culling is and some reasons for using it.  Then we went through the math involved in determining the angle between a line from the camera to the planet center  and a line from the center to the point on the horizon.]]></description>
		<wfw:commentRss>http://www.crappycoding.com/2009/04/horizon-culling-3-finale/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Horizon Culling 2 &#8211; The Math</title>
		<link>http://www.crappycoding.com/2009/03/horizon-culling-2-the-math/</link>
		<comments>http://www.crappycoding.com/2009/03/horizon-culling-2-the-math/#comments</comments>
		<pubDate>Fri, 20 Mar 2009 04:13:04 +0000</pubDate>
		<dc:creator>Dave</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Game Programming]]></category>
		<category><![CDATA[XNA]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[graphics]]></category>

		<guid isPermaLink="false">http://www.crappycoding.com/?p=28</guid>
		<description><![CDATA[In my previous post on horizon culling we talked about what horizon culling is, the reasons one might want to do it, and went over a simple C# vector class.  In this post we'll take a look at the math we'll need to use.]]></description>
		<wfw:commentRss>http://www.crappycoding.com/2009/03/horizon-culling-2-the-math/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Horizon Culling</title>
		<link>http://www.crappycoding.com/2009/03/horizon-culling/</link>
		<comments>http://www.crappycoding.com/2009/03/horizon-culling/#comments</comments>
		<pubDate>Tue, 17 Mar 2009 03:46:24 +0000</pubDate>
		<dc:creator>Dave</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[Game Programming]]></category>
		<category><![CDATA[XNA]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[graphics]]></category>

		<guid isPermaLink="false">http://www.crappycoding.com/?p=15</guid>
		<description><![CDATA[In 3D graphics, a technique that's often used to improve performance is called culling.  Culling means to reduce the population of a wild animal by selective slaughter.  It also means, and this is the definition we'll be using here, to select from a large quantity.  For Horizon Culling, the large quantity we'll be selecting from is the tens of thousands of triangles used to draw a spherical planet.  And we'll be using the horizon to determine which triangles to cull.]]></description>
		<wfw:commentRss>http://www.crappycoding.com/2009/03/horizon-culling/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
