<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>XNA</title>
        <link>http://geekswithblogs.net/EvanK/category/6336.aspx</link>
        <description>Microsoft's home brew .NET gaming platform for the XBox 360</description>
        <language>en-US</language>
        <copyright>Evan Kormos</copyright>
        <managingEditor>evan.kormos@gmail.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <item>
            <title>Loading random, dynamic content in XNA</title>
            <link>http://geekswithblogs.net/EvanK/archive/2006/12/26/102028.aspx</link>
            <description>&lt;P&gt;Here are two brief samples of loading random content in XNA&lt;/P&gt;
&lt;P&gt;1) Loading a random texture&lt;BR&gt;2) Loading a random object&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Random Texture&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Using the XNA content pipeline in GSE 1.0, it is simple to generate random textures.&amp;nbsp; In my first game, I only require one background image per game.&amp;nbsp; The following code sample randomly selects the "background0" or "background1" asset names with the same path.&lt;/P&gt;&lt;FONT color=#008000 size=2&gt;
&lt;P&gt;&lt;FONT size=1&gt;// Load random background texture&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=1&gt;&lt;FONT color=#2b91af&gt;Random&lt;/FONT&gt; random = &lt;FONT color=#0000ff&gt;new&lt;/FONT&gt; &lt;FONT color=#2b91af&gt;Random&lt;/FONT&gt;();&lt;BR&gt;&lt;FONT color=#0000ff&gt;int&lt;/FONT&gt; randomNum = random.Next(1,3);&lt;BR&gt;&lt;FONT color=#0000ff&gt;string&lt;/FONT&gt; randomBackgroundAssetName = &lt;FONT color=#0000ff&gt;string&lt;/FONT&gt;.Concat(&lt;FONT color=#a31515&gt;"Content\\background"&lt;/FONT&gt;, randomNum.ToString());&lt;BR&gt;&lt;FONT color=#2b91af&gt;Texture2D&lt;/FONT&gt; background = _content.Load&amp;lt;&lt;FONT color=#2b91af&gt;Texture2D&lt;/FONT&gt;&amp;gt;(randomBackgroundAssetName) &lt;FONT color=#0000ff&gt;as&lt;/FONT&gt; &lt;FONT color=#2b91af&gt;Texture2D&lt;/FONT&gt;;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;/P&gt;&lt;/FONT&gt;
&lt;P&gt;This sample demonstrates how to randomly select a texture within a set of pre-loaded textures, again, using the content pipeline.&amp;nbsp; Using an array of&amp;nbsp;&lt;FONT color=#2b91af size=2&gt;Texture2D&lt;/FONT&gt; values we can store all the textures and access them randomly.&lt;/P&gt;&lt;FONT color=#008000&gt;
&lt;P&gt;&lt;FONT size=1&gt;// Load all textures&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=1&gt;&lt;FONT color=#0000ff&gt;int&lt;/FONT&gt; numberOfBackgrounds = 2;&lt;BR&gt;&lt;FONT color=#2b91af&gt;Texture2D&lt;/FONT&gt;[] textures = &lt;FONT color=#0000ff&gt;new&lt;/FONT&gt; &lt;FONT color=#2b91af&gt;Texture2D&lt;/FONT&gt;[numberOfBackgrounds];&lt;BR&gt;&lt;FONT color=#0000ff&gt;for&lt;/FONT&gt; (&lt;FONT color=#0000ff&gt;int&lt;/FONT&gt; i = 0; i &amp;lt; numberOfBackgrounds; i++)&lt;BR&gt;{&lt;BR&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; string&lt;/FONT&gt; randomBackgroundAssetName = &lt;FONT color=#0000ff&gt;string&lt;/FONT&gt;.Concat(&lt;FONT color=#a31515&gt;"Content\\background"&lt;/FONT&gt;, i);&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; textures[i] = _content.Load&amp;lt;&lt;FONT color=#2b91af&gt;Texture2D&lt;/FONT&gt;&amp;gt;(randomBackgroundAssetName) &lt;FONT color=#0000ff&gt;as&lt;/FONT&gt; &lt;FONT color=#2b91af&gt;Texture2D&lt;/FONT&gt;;&lt;BR&gt;}&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=1&gt;&lt;FONT color=#008000&gt;// Randomly select texture&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#2b91af&gt;Random&lt;/FONT&gt; random = &lt;FONT color=#0000ff&gt;new&lt;/FONT&gt; &lt;FONT color=#2b91af&gt;Random&lt;/FONT&gt;();&lt;BR&gt;&lt;FONT color=#0000ff&gt;int&lt;/FONT&gt; randomNum = random.Next(1, 3);&lt;BR&gt;&lt;FONT color=#2b91af&gt;Texture2D&lt;/FONT&gt; randomTexture = textures[randomNum];&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Creating random objects&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;In my Tetris sample game I have a method called GetRandomShape().&amp;nbsp; It returns a randomized&amp;nbsp;Shape base object.&amp;nbsp; Formally this would fall into a Factory&amp;nbsp;pattern but you get the idea.&lt;/P&gt;&lt;FONT color=#808080 size=2&gt;
&lt;P&gt;&lt;FONT size=1&gt;///&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#008000 size=1&gt; &lt;/FONT&gt;&lt;FONT size=1&gt;&lt;FONT color=#808080&gt;&amp;lt;summary&amp;gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#808080&gt;///&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=1&gt;&lt;FONT color=#008000&gt; This method returns a random shape&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#808080&gt;///&lt;/FONT&gt;&lt;FONT color=#008000&gt; &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=1&gt;&lt;FONT color=#808080&gt;&amp;lt;/summary&amp;gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#808080&gt;///&lt;/FONT&gt;&lt;FONT color=#008000&gt; &lt;/FONT&gt;&lt;FONT color=#808080&gt;&amp;lt;param name="position"&amp;gt;&lt;/FONT&gt;&lt;FONT color=#008000&gt;Position of the new shape&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=1&gt;&lt;FONT color=#808080&gt;&amp;lt;/param&amp;gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#808080&gt;///&lt;/FONT&gt;&lt;FONT color=#008000&gt; &lt;/FONT&gt;&lt;FONT color=#808080&gt;&amp;lt;returns&amp;gt;&lt;/FONT&gt;&lt;FONT color=#008000&gt;A base shape object&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=1&gt;&lt;FONT color=#808080&gt;&amp;lt;/returns&amp;gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;private&lt;/FONT&gt; &lt;FONT color=#2b91af&gt;Shape&lt;/FONT&gt; GetRandomShape(&lt;FONT color=#2b91af&gt;Vector2&lt;/FONT&gt; position)&lt;BR&gt;{&lt;BR&gt;&lt;FONT color=#2b91af&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Shape&lt;/FONT&gt; myShape = &lt;FONT color=#0000ff&gt;null&lt;/FONT&gt;;&lt;BR&gt;&lt;FONT color=#2b91af&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Random&lt;/FONT&gt; random = &lt;FONT color=#0000ff&gt;new&lt;/FONT&gt; &lt;FONT color=#2b91af&gt;Random&lt;/FONT&gt;();&lt;BR&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;int&lt;/FONT&gt; randomNum = random.Next(0, _numberOfShapes);&lt;BR&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;switch&lt;/FONT&gt; (System.&lt;FONT color=#2b91af&gt;Enum&lt;/FONT&gt;.GetName(&lt;FONT color=#0000ff&gt;typeof&lt;/FONT&gt;(&lt;FONT color=#2b91af&gt;Shapes&lt;/FONT&gt;), randomNum))&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;BR&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case&lt;/FONT&gt; &lt;FONT color=#a31515&gt;"Bar"&lt;/FONT&gt;:&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;myShape = &lt;FONT color=#0000ff&gt;new&lt;/FONT&gt; &lt;FONT color=#2b91af&gt;Bar&lt;/FONT&gt;(position);&lt;BR&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;break&lt;/FONT&gt;;&lt;BR&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case&lt;/FONT&gt; &lt;FONT color=#a31515&gt;"Square"&lt;/FONT&gt;:&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;myShape = &lt;FONT color=#0000ff&gt;new&lt;/FONT&gt; &lt;FONT color=#2b91af&gt;Square&lt;/FONT&gt;(position);&lt;BR&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break&lt;/FONT&gt;;&lt;BR&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case&lt;/FONT&gt; &lt;FONT color=#a31515&gt;"ThreeOne"&lt;/FONT&gt;:&lt;BR&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;myShape = &lt;FONT color=#0000ff&gt;new&lt;/FONT&gt; &lt;FONT color=#2b91af&gt;ThreeOne&lt;/FONT&gt;(position);&lt;BR&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break&lt;/FONT&gt;;&lt;BR&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case&lt;/FONT&gt; &lt;FONT color=#a31515&gt;"OneThree"&lt;/FONT&gt;:&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;myShape = &lt;FONT color=#0000ff&gt;new&lt;/FONT&gt; &lt;FONT color=#2b91af&gt;OneThree&lt;/FONT&gt;(position);&lt;BR&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break&lt;/FONT&gt;;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;FONT color=#0000ff&gt;case&lt;/FONT&gt; &lt;FONT color=#a31515&gt;"TwoUpTwoDown"&lt;/FONT&gt;:&lt;BR&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;myShape = &lt;FONT color=#0000ff&gt;new&lt;/FONT&gt; &lt;FONT color=#2b91af&gt;TwoUpTwoDown&lt;/FONT&gt;(position);&lt;BR&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break&lt;/FONT&gt;;&lt;BR&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;case&lt;/FONT&gt; &lt;FONT color=#a31515&gt;"TwoDownTwoUp"&lt;/FONT&gt;:&lt;BR&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;myShape = &lt;FONT color=#0000ff&gt;new&lt;/FONT&gt; &lt;FONT color=#2b91af&gt;TwoDownTwoUp&lt;/FONT&gt;(position);&lt;BR&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break&lt;/FONT&gt;;&lt;BR&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case&lt;/FONT&gt; &lt;FONT color=#a31515&gt;"OneTwoOne"&lt;/FONT&gt;:&lt;BR&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;myShape = &lt;FONT color=#0000ff&gt;new&lt;/FONT&gt; &lt;FONT color=#2b91af&gt;OneTwoOne&lt;/FONT&gt;(position);&lt;BR&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break&lt;/FONT&gt;;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return&lt;/FONT&gt; myShape;&lt;BR&gt;}&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;Hopefully this resource will help you add dynamic content to your XNA game.&lt;/FONT&gt;&lt;/P&gt;&amp;nbsp; &lt;img src="http://geekswithblogs.net/EvanK/aggbug/102028.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Evan Kormos</dc:creator>
            <guid>http://geekswithblogs.net/EvanK/archive/2006/12/26/102028.aspx</guid>
            <pubDate>Tue, 26 Dec 2006 17:38:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/EvanK/comments/102028.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/EvanK/archive/2006/12/26/102028.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/EvanK/comments/commentRss/102028.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/EvanK/services/trackbacks/102028.aspx</trackback:ping>
        </item>
        <item>
            <title>Tetris 360 - My XNA 1.0 Creation</title>
            <link>http://geekswithblogs.net/EvanK/archive/2006/12/24/101986.aspx</link>
            <description>&lt;P&gt;I'm not going to go into a lot of detail in this post but I have completed my remake of tetris in XNA in 3 days.&amp;nbsp; It still has a few bugs (mostly with shape rotation), but the real purpose was more to play with XNA rather than make a &lt;EM&gt;perfect&lt;/EM&gt;&amp;nbsp;game.&amp;nbsp; I'll likely improve on some of the rendering techniques and experiment with additional features.&amp;nbsp; If you have a unique feature you'd like to see, drop me a line.&amp;nbsp; I will post a reply to existing and additional comments in the near future.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;A href="http://www.megaupload.com/?d=KGMNZDXU"&gt;Download XNA Tetris 360 beta 1.0&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;font color="green"&gt;Merry&lt;/font&gt; &lt;font color="#FF0000"&gt;Christmas!&lt;/font&gt;&lt;/STRONG&gt;&lt;/P&gt; &lt;img src="http://geekswithblogs.net/EvanK/aggbug/101986.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Evan Kormos</dc:creator>
            <guid>http://geekswithblogs.net/EvanK/archive/2006/12/24/101986.aspx</guid>
            <pubDate>Sun, 24 Dec 2006 21:09:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/EvanK/comments/101986.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/EvanK/archive/2006/12/24/101986.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/EvanK/comments/commentRss/101986.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/EvanK/services/trackbacks/101986.aspx</trackback:ping>
        </item>
        <item>
            <title>XNA Texture Utility - Paint.NET</title>
            <link>http://geekswithblogs.net/EvanK/archive/2006/12/22/101924.aspx</link>
            <description>&lt;P&gt;Obviously there are hard-core photoshop people out there.&amp;nbsp; But you are looking for something more light-weight that is very capable of creating textures and graphics for 2D and 3D games.&amp;nbsp; The actual program was started by some dude's final project for school....nice.&lt;/P&gt;
&lt;P&gt;If you like this program definately contribute&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.getpaint.net/download.html"&gt;&lt;/A&gt;&amp;nbsp;&lt;/P&gt;
&lt;a href="http://www.getpaint.net/redirect/getpdn.html"&gt;&lt;img border="0" alt="Get Paint.NET!" title="Get Paint.NET!" src="http://www.getpaint.net/images/getpdn.png"/&gt;&lt;/a&gt; &lt;img src="http://geekswithblogs.net/EvanK/aggbug/101924.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Evan Kormos</dc:creator>
            <guid>http://geekswithblogs.net/EvanK/archive/2006/12/22/101924.aspx</guid>
            <pubDate>Sat, 23 Dec 2006 08:56:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/EvanK/comments/101924.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/EvanK/archive/2006/12/22/101924.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/EvanK/comments/commentRss/101924.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/EvanK/services/trackbacks/101924.aspx</trackback:ping>
        </item>
        <item>
            <title>2D First - XNA Tetris Xbox 360 Game</title>
            <link>http://geekswithblogs.net/EvanK/archive/2006/12/22/101923.aspx</link>
            <description>&lt;P&gt;In an attempt to dive right into 3d XNA I had to take a step back.&amp;nbsp; I decided to write a 2d game just to get familiar with the framework.&amp;nbsp; I made tetris in about 2 days.&amp;nbsp; Its not complete yet but its a good start.&amp;nbsp; I have implemented this game before in C++ years ago.&lt;/P&gt;
&lt;P&gt;Heres a tasty screen shot and I'll post the game when I finish it.&amp;nbsp;&amp;nbsp;&amp;nbsp;The board and pieces are blended with the BG image which is loaded randomly at startup.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;IMG src="http://img399.imageshack.us/img399/1791/tetris1kt5.png"&gt; &lt;img src="http://geekswithblogs.net/EvanK/aggbug/101923.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Evan Kormos</dc:creator>
            <guid>http://geekswithblogs.net/EvanK/archive/2006/12/22/101923.aspx</guid>
            <pubDate>Sat, 23 Dec 2006 08:44:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/EvanK/comments/101923.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/EvanK/archive/2006/12/22/101923.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/EvanK/comments/commentRss/101923.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/EvanK/services/trackbacks/101923.aspx</trackback:ping>
        </item>
        <item>
            <title>Beginning XNA</title>
            <link>http://geekswithblogs.net/EvanK/archive/2006/12/19/101619.aspx</link>
            <description>&lt;P&gt;So the new XNA framework 1.0 has been released.&amp;nbsp; You've heard all about it from your friends who clearly play too many video games.&amp;nbsp; Its easy to get started, especially if your C# 2.0&amp;nbsp;skills are strong.&amp;nbsp; The concept is basically a framework to support the creation of XBox 360 and PC (Windows) games.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;XBox 360 games can be deployed to your console with the correct licensing.&amp;nbsp; The same framework can be used to debug the games in a Windows environment.&amp;nbsp; Input data is facilitated by the USB-wired controller, which was plug &amp;amp; play with Vista, or the keyboard/mouse.&lt;/P&gt;
&lt;P&gt;Here are a few things I'll cover to get you started&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Preparation 
&lt;LI&gt;Links to download 
&lt;LI&gt;XNA is not supported under Windows Vista, but there is a work around. 
&lt;LI&gt;Documentation and tutorials get you fired up with a simple model render. 
&lt;LI&gt;Distribution&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;EM&gt;Preparation&lt;/EM&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;When getting started I found it useful to understand some math and configuration concepts through experience with OpenGL.&amp;nbsp; However, the basic nature of the XNA framework is pretty easy to pick up and I think anyone who is motivated could do it.&amp;nbsp;&amp;nbsp; So I think Microsoft really hit a homerun there.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;EM&gt;Links&lt;/EM&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;MSDN Forums - &lt;A href="http://forums.microsoft.com/MSDN/ShowForum.aspx?ForumID=882&amp;amp;SiteID=1"&gt;http://forums.microsoft.com/MSDN/ShowForum.aspx?ForumID=882&amp;amp;SiteID=1&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;XNA GSE Download - &lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyID=a73a7e71-ff41-432d-a0eb-043e904a1905&amp;amp;DisplayLang=en"&gt;http://www.microsoft.com/downloads/details.aspx?FamilyID=a73a7e71-ff41-432d-a0eb-043e904a1905&amp;amp;DisplayLang=en&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Learn XNA - &lt;A href="http://learnxna.com/"&gt;http://learnxna.com/&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;XNA&amp;nbsp;TUTORIAL VIDEOS - &lt;A href="http://msdn.microsoft.com/directx/xna/videos/"&gt;http://msdn.microsoft.com/directx/xna/videos/&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;XNA TEAM BLOG - &lt;BR&gt;&lt;/STRONG&gt;&lt;A href="http://blogs.msdn.com/xna/"&gt;&lt;STRONG&gt;http://blogs.msdn.com/xna/&lt;/STRONG&gt;&lt;/A&gt;&lt;BR&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;EM&gt;Vista, Vista&lt;/EM&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Through links I found at the MSDN XNA GSE forum and the Connect site, I obtained Visual C# Express SP1 Beta:&lt;BR&gt;&lt;BR&gt;&lt;A href="http://www.microsoft.com/downloads/results.aspx?pocId=&amp;amp;freetext=Visual%20Studio%202005%20Service%20Pack%201&amp;amp;DisplayLang=en"&gt;http://www.microsoft.com/downloads/results.aspx?pocId=&amp;amp;freetext=Visual%20Studio%202005%20Service%20Pack%201&amp;amp;DisplayLang=en&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Download and install Visual C# Express and SP1 Beta&amp;nbsp;(Final&amp;nbsp;SP1 has an expected release in December).&lt;/P&gt;
&lt;P&gt;Open Visual C# Express and register it.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;EM&gt;Documentation &amp;amp; Tutorials&lt;/EM&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Check the links section and follow the 3 video sequence to get started.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;EM&gt;Distribution&lt;/EM&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;One major con of the existing XNA framework is to distribute an Xbox 360 game you need to send off your source code to your buddy, have him compile and deploy to run the game.&amp;nbsp; Kind of ridiculous, but many people are expecting that to change in the near future.&lt;/P&gt;
&lt;P&gt;In the mean time...there is plenty of things to try out.&amp;nbsp; Once I completed the tutorials I began working with the controller to get the space ship to fly around better.&amp;nbsp;&amp;nbsp; I will be releasing some code on this blog as I make different games.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;EM&gt;&amp;nbsp;&lt;/P&gt;&lt;/EM&gt;&lt;/STRONG&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;img src="http://geekswithblogs.net/EvanK/aggbug/101619.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Evan Kormos</dc:creator>
            <guid>http://geekswithblogs.net/EvanK/archive/2006/12/19/101619.aspx</guid>
            <pubDate>Wed, 20 Dec 2006 07:56:00 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/EvanK/comments/101619.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/EvanK/archive/2006/12/19/101619.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/EvanK/comments/commentRss/101619.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/EvanK/services/trackbacks/101619.aspx</trackback:ping>
        </item>
    </channel>
</rss>
