<?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>Jacob Repp &#187; xna</title>
	<atom:link href="http://jrepp.com/category/xna/feed/" rel="self" type="application/rss+xml" />
	<link>http://jrepp.com</link>
	<description>Game programming, music and life</description>
	<lastBuildDate>Fri, 16 Dec 2011 06:03:01 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
		<item>
		<title>XNA Random Terrain Generation Sample Code</title>
		<link>http://jrepp.com/2007/07/19/xna-random-terrain-generation-sample-code/</link>
		<comments>http://jrepp.com/2007/07/19/xna-random-terrain-generation-sample-code/#comments</comments>
		<pubDate>Thu, 19 Jul 2007 00:58:27 +0000</pubDate>
		<dc:creator>proj</dc:creator>
				<category><![CDATA[csharp]]></category>
		<category><![CDATA[game programming]]></category>
		<category><![CDATA[sample code]]></category>
		<category><![CDATA[shmup]]></category>
		<category><![CDATA[xna]]></category>

		<guid isPermaLink="false">http://jrepp.com/2007/07/19/xna-random-terrain-generation-sample-code/</guid>
		<description><![CDATA[I recently received a comment asking for details on the terrain generation algorithm I used in my XNA shoot &#8216;em up proof of concept. Here&#8217;s my edited reply and sample code for anyone interested. It&#8217;s not very complex and it &#8230; <a href="http://jrepp.com/2007/07/19/xna-random-terrain-generation-sample-code/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I recently received a comment asking for details on the terrain generation algorithm I used in my XNA shoot &#8216;em up proof of concept. Here&#8217;s my edited reply and sample code for anyone interested.</p>

<p><img src="http://photos1.blogger.com/photoInclude/blogger2/3211/2667/1600/xna_shmup.jpg"/></p>

<p>It&#8217;s not very complex and it doesn&#8217;t do any culling currently because I didn&#8217;t find that to be a problem given the ammount of terrain samples that I&#8217;m rendering. I generally spend most of my time on the game play first before tweaking the graphics engine.</p>

<p>Here is the code used for generating and rendering the terrain in the screenshots:</p>

<p><a href="http://jrepp.com/code/Terrain.cs" onclick="return top.js.OpenExtLink(window,event,this)" target="_blank">http://jrepp.com/code/Terrain<wbr></wbr>.cs</a></p>

<p>The method used is as follows:</p>

<p>Given a grid of height samples
<ol>
    <li>For some number N</li>
    <li>Choose a random X,Y sample in the grid</li>
    <li>Write a random value into the sample</li>
    <li>Blend that sample with all adjacent samples recursively</li>
</ol>
The blending adds some jitter so you get some variation in the blends but as a rule you can only blend between two samples by so much. I built some tolerances into the blending so that it will never generate height differences that are greater than the [horizontal] distance between two samples.</p>

<p>The verts are colored to get the basic effect of having land and sea.</p>

<p>Overall it&#8217;s a pretty simple algorithm that produces fairly decent looking results.</p>

<p>Please let me know if you have any questions, I&#8217;ll be happy to answer them.</p>
]]></content:encoded>
			<wfw:commentRss>http://jrepp.com/2007/07/19/xna-random-terrain-generation-sample-code/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Simple XNA BMFont loading/render code</title>
		<link>http://jrepp.com/2007/03/28/simple-xna-bmfont-loadingrender-code/</link>
		<comments>http://jrepp.com/2007/03/28/simple-xna-bmfont-loadingrender-code/#comments</comments>
		<pubDate>Wed, 28 Mar 2007 22:43:15 +0000</pubDate>
		<dc:creator>proj</dc:creator>
				<category><![CDATA[game programming]]></category>
		<category><![CDATA[indie dev]]></category>
		<category><![CDATA[xna]]></category>

		<guid isPermaLink="false">http://jrepp.com/2007/03/28/simple-xna-bmfont-loadingrender-code/</guid>
		<description><![CDATA[XNA doesn&#8217;t yet have good support for text render (still?) so since I just got a request for my font rendering code I put some short comments in the header. I think there are other examples of this but this &#8230; <a href="http://jrepp.com/2007/03/28/simple-xna-bmfont-loadingrender-code/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>XNA doesn&#8217;t yet have good support for text render (still?) so since I just got a request for my font rendering code I put some short comments in the header. I think there are other examples of this but this one is completely free and small. Let me know if you have any issues.</p>

<p><a href="http://jrepp.com/code/Font.cs">XNA BM Font rendering code</a></p>
]]></content:encoded>
			<wfw:commentRss>http://jrepp.com/2007/03/28/simple-xna-bmfont-loadingrender-code/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Quick Update</title>
		<link>http://jrepp.com/2007/02/02/quick-update/</link>
		<comments>http://jrepp.com/2007/02/02/quick-update/#comments</comments>
		<pubDate>Fri, 02 Feb 2007 03:39:19 +0000</pubDate>
		<dc:creator>proj</dc:creator>
				<category><![CDATA[austin]]></category>
		<category><![CDATA[dell]]></category>
		<category><![CDATA[laptop]]></category>
		<category><![CDATA[moving]]></category>
		<category><![CDATA[xna]]></category>

		<guid isPermaLink="false">http://jrepp.com/2007/02/02/quick-update/</guid>
		<description><![CDATA[So I&#8217;ve been in Austin since Jan 15th now and we&#8217;re getting settled pretty quickly. The movement relocation package was good, it took a whole lot of stress of of us and let me basically just hit the ground running &#8230; <a href="http://jrepp.com/2007/02/02/quick-update/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>So I&#8217;ve been in Austin since Jan 15th now and we&#8217;re getting settled pretty quickly.</p>

<p>The movement relocation package was good, it took a whole lot of stress of of us and let me basically just hit the ground running at work. More than half our stuff is still in boxes but we don&#8217;t care since we&#8217;re moving into a house soon.
We got a short-term lease on an apartment but we found a house in short order. The prices are really good here and I wasn&#8217;t expecting to find something so nice so fast but since it meets are needs we&#8217;re just going to move on it right away. We close at the end of Feb.</p>

<p>We had some problems with the movers.. the scratched the wood floor in our old house really bad and I can&#8217;t find my main windows source control server or networking hardware. Luckily I backed up all my subversion stuff on an external hard drive and burned to a CD. Hopefully the stuff is buried in some box somewhere in some corner of a closet.</p>

<p>My replacement dell laptop that I was sent already died. The diagnostics indicate the CPU is bad. I need to try calling them again to see what they can do. I was all ready to write a glowing review <img src='http://jrepp.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>

<p>As a result I&#8217;ve been working primary on OSX on a dual proc G5 which is fun but none of the XNA stuff is portable of course which completely sucks and reminds me of another reason not to like it. I&#8217;ve been playing with pygame a bit and that is interesting but startup time is really slow on the mac.. maybe I&#8217;ll post more about this in the future.</p>

<p>I just busted open the high score on the Astroids cabinet at work (97220) so I&#8217;m feeling pretty good about that and made my first major checkin on the MMO server side. I&#8217;ve already got some big stuff to work on so that has pretty much been guiding me deep into the bowels of every aspect of the game and server system.
Hopefully at some point I&#8217;ll get access to a windows machine at home but it probably won&#8217;t be for at least another month. Combined with my hectic work schedule it&#8217;s going to be a bit before I can move any XNA stuff forward. If I can get my svn stuff imported to textdrive repositories I&#8217;ll probably begin porting rampart/beatbox to Mac.</p>
]]></content:encoded>
			<wfw:commentRss>http://jrepp.com/2007/02/02/quick-update/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Two new game music track sketches</title>
		<link>http://jrepp.com/2007/01/10/two-new-game-music-track-sketches/</link>
		<comments>http://jrepp.com/2007/01/10/two-new-game-music-track-sketches/#comments</comments>
		<pubDate>Wed, 10 Jan 2007 05:56:52 +0000</pubDate>
		<dc:creator>proj</dc:creator>
				<category><![CDATA[beatbox]]></category>
		<category><![CDATA[music]]></category>
		<category><![CDATA[rpg]]></category>
		<category><![CDATA[underground heroes]]></category>
		<category><![CDATA[xna]]></category>

		<guid isPermaLink="false">http://jrepp.com/2007/01/10/two-new-game-music-track-sketches/</guid>
		<description><![CDATA[I haven&#8217;t posted music in a long time but I have been quietly working on some tracks. Especially lately as I&#8217;m preparing some music and sound effects for a few side projects. So here are a few tracks that are &#8230; <a href="http://jrepp.com/2007/01/10/two-new-game-music-track-sketches/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I haven&#8217;t posted music in a long time but I have been quietly working on some tracks. Especially lately as I&#8217;m preparing some music and sound effects for a few side projects. So here are a few tracks that are in the works. They aren&#8217;t complete yet:</p>

<p><a href="/reason/Glitch_Form_And_Movement.mp3">Glitch Form and Movement</a>
<a href="/reason/Intro_To_Facts.mp3">Intro to Facts</a></p>

<p>Tell me what you think. I&#8217;ll have more up in the future and hopefully more finalized versions of these and some other tracks I haven&#8217;t exported to MP3 yet. I&#8217;m pretty fed up with the ADPCM encoding in XACT it doesn&#8217;t compress as well as MP3 does.</p>

<p>I have two other other tracks for <a href="http://jrepp.com/2006/11/30/xna-rpg-underground-heros/">under ground heroes</a> and a bunch of sound effects that I whipped together using various samples and effects to get an approximation of what I wanted. They were using too much space so I went with a lower sample frequency and got rid of the stereo channel. I only kept the stereo channel in the music tracks but I compressed them using the max ADPCM compression allowed. The tracks sound okay on headphones and the sound effects are so short you hardly notice the bad quality. The sound and music is down to around 5mb now.</p>
]]></content:encoded>
			<wfw:commentRss>http://jrepp.com/2007/01/10/two-new-game-music-track-sketches/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>XNA RPG: Bug fixes and gameplay tweaks</title>
		<link>http://jrepp.com/2006/12/01/xna-rpg-bug-fixes-and-gameplay-tweaks/</link>
		<comments>http://jrepp.com/2006/12/01/xna-rpg-bug-fixes-and-gameplay-tweaks/#comments</comments>
		<pubDate>Fri, 01 Dec 2006 20:41:32 +0000</pubDate>
		<dc:creator>proj</dc:creator>
				<category><![CDATA[game programming]]></category>
		<category><![CDATA[rpg]]></category>
		<category><![CDATA[underground heroes]]></category>
		<category><![CDATA[xna]]></category>

		<guid isPermaLink="false">http://jrepp.com/2006/12/01/xna-rpg-bug-fixes-and-gameplay-tweaks/</guid>
		<description><![CDATA[I finally got around to dumping all of the equipment, monsters and items into a giant spreadsheet. Mind you, this project was written over the span of a few days so there is intentionally very little config files here. The &#8230; <a href="http://jrepp.com/2006/12/01/xna-rpg-bug-fixes-and-gameplay-tweaks/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I finally got around to dumping all of the equipment, monsters and items into a giant spreadsheet. Mind you, this project was written over the span of a few days so there is intentionally very little config files here. The system is still &#8216;data-driven&#8217; in that there is a good common object model and the data items are plugged into an internal database.</p>

<p>One of the problems I&#8217;ve been running into playing the game has been balance past the first 5-10 levels. As soon as I made the loot drops dungeon level appropriate the game became increasingly difficult.</p>

<p>Â Since the primary goal is for this game to be fun to play I decided to go back to the drawing board and re-balance all the stat based stuff in the game. I have a new-found respect for the ammount of work that goes into this area of game development on the top teir RPGs, where you may have many hundreds of mobs and thousands of items.</p>

<p>Â The various battle gameplay mechanics are having their algorithms tuned as well. For physical damage the system is basically layed out like this:
<ul>
    <li>Evasion calculation</li>
    <li>Parry calculation</li>
    <li>Damage jitter</li>
    <li>Main damage calculation</li>
    <li>Crit calculation</li>
    <li>Elemental modifiers</li>
</ul>
So there is a good ammount of stuff going on that has to to balanced out. The problem that I ran into is that the algorithms I used didn&#8217;t scale very well as they were very basic. The only one that seems balanced later in the game is the crit calculation. The main part of the problem is that I hadn&#8217;t really setup good operating boundaries for most of the basic stats on equipement. A related problem is that weapons and armor have too wide an array of bonuses on basic stats. Sometimes an uber weapon is all you need to get insanely good chance rolls in each phase of physical attack as it can buff defense, evasion and attack.</p>

<p>Some games have simplified this to where each type of item only boosts one or two player stats. This simplifies things for the player a bit as well because they can more clearly understand the trade-offs of equiping a certain item.Â At this point I think I will just be dropping one stat bonus from weapons (defense) which will change the way parry calculation is done.</p>

<p>So my general plan to fix this has been:
<ul>
    <li>Get all stats into a spreadsheet</li>
    <li>Break down player and mob stat progression into the sheet</li>
    <li>Translate the probability and damage calculation into the spreadsheet</li>
    <li>Use the empirical data that comes out of that to tune various pieces of equipment and level progression</li>
</ul>
It all seems a bit dry and it&#8217;s not as fun as designing the spell particle effects was but I&#8217;ve been entertaining myself by researching different mythologies and rolling new mobs, mini-bosses, unique weapons and what not into the mix.</p>

<p>Massimo and I were talking the other day too about the beastiary, I think there will be another meta-game created for that. Currently there is a fun meta-game in the llama store where you actually have to buy higher level gifts for your llama to unlock more carrying capacity and items. The current plan is to have an additional meta-game around the beastiary, if you kill a certain number of a given mob type there will be a unique drop based on that mobs equipment. Normally, the enemy weapons are not instanced in the player database but you can change this by hunting down these mobs.</p>

<p>One of the harder mobs that I&#8217;m working on is Zahhak who is a figure in Persian mythology. He has a unique weapon called the Usurper&#8217;sÂ Blade. This is based on the story of how Zahhak came into his power. This weapon has a unique type of stat leeching and pretty good overall stats.</p>

<p>Â Oh one little feature I added to the HUD is nice. You can see the health for any mobs you&#8217;re attack or are attacking you now. This was a great addition suggested by my friend Mike. Thanks Mike!</p>

<p>Â At some point in the near future I think we&#8217;ll need to publish a limited Alpha for PC. We&#8217;ll also be alpha testing on our retail kits in a few days. After that we may open it up to more people. If you&#8217;re interested let me know.</p>
]]></content:encoded>
			<wfw:commentRss>http://jrepp.com/2006/12/01/xna-rpg-bug-fixes-and-gameplay-tweaks/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>XNA RPG: Underground Heros</title>
		<link>http://jrepp.com/2006/11/30/xna-rpg-underground-heros/</link>
		<comments>http://jrepp.com/2006/11/30/xna-rpg-underground-heros/#comments</comments>
		<pubDate>Thu, 30 Nov 2006 07:28:51 +0000</pubDate>
		<dc:creator>proj</dc:creator>
				<category><![CDATA[friends]]></category>
		<category><![CDATA[game programming]]></category>
		<category><![CDATA[underground heroes]]></category>
		<category><![CDATA[xna]]></category>

		<guid isPermaLink="false">http://jrepp.com/2006/11/30/xna-rpg-underground-heros/</guid>
		<description><![CDATA[Just before the thanksgiving weekend I was talking to my friend/fellow coder/work associate Massimo and he tells me that he wants to write this &#8216;simple&#8217; RPG and having it running before Sunday. Sounds impossible but I told him I want &#8230; <a href="http://jrepp.com/2006/11/30/xna-rpg-underground-heros/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Just before the thanksgiving weekend I was talking to my friend/fellow coder/work associate <a href="http://www.steamknight.com/blog/">Massimo</a> and he tells me that he wants to write this &#8216;simple&#8217; RPG and having it running before Sunday. Sounds impossible but I told him I want to play whatever he has done. The next day I&#8217;m getting a bit frustrated because some of the directions I&#8217;ve gone with the procedural shooter have been dead ends and I strike up a conversation over IM with him. I ask him if it&#8217;s ok for me to burn a few cycles creating a loot system for his game and so I set myself loose on that. It started innocently enough: loot database, stats, player and entity data in a console app. I build a test harness and pretty soon I&#8217;ve gotten an automated battle running in a console window with auto respawning of both player and new monsters.</p>

<p>The next day I start integrating this thing in. Massimo had a clear idea of what he wanted to build so I took his mock-up of the hud and built a simple layout engine with my bmfont code and some extra stuff to render it. Eventually battle was working and hey we had a fun little game. So I went off and wrote an effects/particle system and based on some input from people playing the game eventually wrote a inventory system and a store.
Of course Massimo was coding like the crazy <a href="http://static.flickr.com/41/111286991_d7d71f180f.jpg?v=0">coder-monkey that he is.</a> He&#8217;s written this cool dungeon generator complete with minimap and smooth scrolling.</p>

<p>So here&#8217;s some screenshots of the functional, and quite fun RPG Underground Heroes (UGH). If you have any questions feel free to post comments. As soon as we have our take home XNA builds we&#8217;ll be trying this out on our retail consoles.</p>

<p>I haven&#8217;t given up on the procedural shooter, I&#8217;m still brainstorming.</p>

<p>Console app test harness for the loot/battle engine:</p>

<p><img src="http://jrepp.com/imgs/xna_screens/loot.gif" /></p>

<p>In game with some barely visible particle effects and the finished HUD:</p>

<p><img src="http://jrepp.com/imgs/xna_screens/ugh_small.gif" /></p>

<p>The inventory and store interface. No need for backpacks when you have a llama. Llama gifts are available in the store (This pick also shows a certain cheat that gives you all of the available equipment in the game):</p>

<p><img alt="llama store" title="llama store" src="http://jrepp.com/imgs/xna_screens/ugh_llama_store_small.gif" /></p>
]]></content:encoded>
			<wfw:commentRss>http://jrepp.com/2006/11/30/xna-rpg-underground-heros/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Manders: A helper class to show video &#8220;safe areas&#8221;</title>
		<link>http://jrepp.com/2006/11/29/manders-a-helper-class-to-show-video-safe-areas/</link>
		<comments>http://jrepp.com/2006/11/29/manders-a-helper-class-to-show-video-safe-areas/#comments</comments>
		<pubDate>Wed, 29 Nov 2006 20:54:56 +0000</pubDate>
		<dc:creator>proj</dc:creator>
				<category><![CDATA[game programming]]></category>
		<category><![CDATA[xna]]></category>

		<guid isPermaLink="false">http://jrepp.com/2006/11/29/manders-a-helper-class-to-show-video-safe-areas/</guid>
		<description><![CDATA[This articleÂ explains some details on getting your project setup to render to &#8216;safe&#8217; areas of the screen. This will be more important if you want your game to work on a variety of different TV setups.]]></description>
			<content:encoded><![CDATA[<p><a href="http://blogs.msdn.com/manders/archive/2006/11/28/helper-class-to-show-video-safe-areas.aspx">This article</a>Â explains some details on getting your project setup to render to &#8216;safe&#8217; areas of the screen. This will be more important if you want your game to work on a variety of different TV setups.</p>
]]></content:encoded>
			<wfw:commentRss>http://jrepp.com/2006/11/29/manders-a-helper-class-to-show-video-safe-areas/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Experiences upgrading to XNA Beta 2</title>
		<link>http://jrepp.com/2006/11/23/experiences-upgrading-to-xna-beta-2/</link>
		<comments>http://jrepp.com/2006/11/23/experiences-upgrading-to-xna-beta-2/#comments</comments>
		<pubDate>Thu, 23 Nov 2006 04:07:48 +0000</pubDate>
		<dc:creator>proj</dc:creator>
				<category><![CDATA[game programming]]></category>
		<category><![CDATA[xna]]></category>

		<guid isPermaLink="false">http://jrepp.com/2006/11/23/experiences-upgrading-to-xna-beta-2/</guid>
		<description><![CDATA[I decided to take some notes while I ported my test project to beta 2: First off 62 build errors. Class documentation is still sparse. Things are worse now however as XNA is moving further from DX standards, you can&#8217;t &#8230; <a href="http://jrepp.com/2006/11/23/experiences-upgrading-to-xna-beta-2/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I decided to take some notes while I ported my test project to beta 2:
<ul>
    <li>First off 62 build errors.</li>
    <li>Class documentation is still sparse. Things are worse now however as XNA is moving further from DX standards, you can&#8217;t simply turn to DX docs to fill in missing info.</li>
    <li>No more Surface class, new RenderTarget class, makes my RenderTarget wrapper obsolete. I&#8217;m trying to use the new built-in class but docs are bad and no idea yet how I&#8217;m supposed to instantiate the device memory for a custom render target.</li>
    <li>Application model has undergone overhaul</li>
<ul>
    <li>Requires removal of old glue code.</li>
    <li>Public members and access of base Game class have been cleaned up.</li>
    <li>Refactor of code to support new events for resource cleanup.</li>
    <li>VertexBuffers and IndexBuffers require new simplified ResourceManagementMode enum versus DX style ResourcePool, seems like some control is now taken away from the user as far as memory control.</li>
</ul>
    <li>Two hours of research and refactoring and render targets are fixed to use the new resolve methods. It&#8217;s an inversion of the previous model I had implemented and in some ways better.</li>
</ul>
Yeah pretty rough notes. I guess it took me a few hours on and off to convert to Beta 2.</p>
]]></content:encoded>
			<wfw:commentRss>http://jrepp.com/2006/11/23/experiences-upgrading-to-xna-beta-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The goings on as of late</title>
		<link>http://jrepp.com/2006/10/31/the-goings-on-as-of-late/</link>
		<comments>http://jrepp.com/2006/10/31/the-goings-on-as-of-late/#comments</comments>
		<pubDate>Tue, 31 Oct 2006 08:31:25 +0000</pubDate>
		<dc:creator>proj</dc:creator>
				<category><![CDATA[game programming]]></category>
		<category><![CDATA[nds]]></category>
		<category><![CDATA[xna]]></category>

		<guid isPermaLink="false">http://jrepp.com/2006/10/31/the-goings-on-as-of-late/</guid>
		<description><![CDATA[I&#8217;ve found a little time here and there for more XNA coding. I cleaned up a lot of the UI code, there are a number of nice usable components now, Menu, ListBox and Tweaker. Menus can be added to the &#8230; <a href="http://jrepp.com/2006/10/31/the-goings-on-as-of-late/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve found a little time here and there for more XNA coding. I cleaned up a lot of the UI code, there are a number of nice usable components now, Menu, ListBox and Tweaker. Menus can be added to the UI and show up at the top of Window when doing stuff in the editors. ListBoxes are used for most of the UI and support scrolling, moving items up and down, inserting, adding etc. Tweaker is just a name I used for a generic control that can be bound to certain types of objects, takes 360 controller input and tweaks the value.</p>

<p>I got my laptop back from Dell and it&#8217;s in worse shape than it was before. It still emits static sound from the speaker and now it crashes when I run 3d applications on it. They replaced the video card and speakers this time and maybe did a minimum of testing before sending it off. I&#8217;m going to have to send it back again.</p>

<p>At work we have a bit of downtime so I&#8217;m putting the finishing touches on a distributed networking layer that hopefully will become the basis of a lot of new tools and infrastructure.</p>

<p>Tuesday Children of Mana will be out so I feel obligated to pick that up. Apparently from what I&#8217;ve read it lacks some of the overarching story that made Secret of Mana so good but it makes up for it with some additions to the action aspect of the game. I&#8217;ve been playing through Dragon Quest Heroes, Nanostray and Meteos. I finally broke down and bought Meteos, it&#8217;s really a great value now at $20. I think Meteos in a lot of ways is much better than Lumines but you can easily see the similarities between them. The puzzle action in Meteos is fast and fun and keeps me coming back for more.</p>

<p>I also saw that FFXII advertised for $38 at Best Buy and that is another must have. Too many great games coming out this holiday and the PS2 and DS together are delivering a ton of great games.</p>

<p>On the 360 front I have been playing the new Spinter Cell, Gears of War (co-op on hardcord is the way to go!), Doom, Lumines and N3 continues to take up some cycles.</p>

<p>I want to get a comment feed on the front of this page and pull in some of the side bar content I had on my old blog but for now I&#8217;ll settle for just posting <img src='http://jrepp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://jrepp.com/2006/10/31/the-goings-on-as-of-late/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>XNA BMFont Renderer, Logo and Some Screens</title>
		<link>http://jrepp.com/2006/10/24/thoughts-on-xna-development-and-some-screens/</link>
		<comments>http://jrepp.com/2006/10/24/thoughts-on-xna-development-and-some-screens/#comments</comments>
		<pubDate>Tue, 24 Oct 2006 10:37:36 +0000</pubDate>
		<dc:creator>proj</dc:creator>
				<category><![CDATA[game programming]]></category>
		<category><![CDATA[shmup]]></category>
		<category><![CDATA[xna]]></category>

		<guid isPermaLink="false">http://jrepp.com/2006/10/24/thoughts-on-xna-development-and-some-screens/</guid>
		<description><![CDATA[I&#8217;ll start this post with some XNA dev screenshots: When I was very young I did some coding in logo on an apple II. It has a very simple syntax and was fun to experiment with, a little turtle moved &#8230; <a href="http://jrepp.com/2006/10/24/thoughts-on-xna-development-and-some-screens/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ll start this post with some XNA dev screenshots:</p>

<p><img title="Logo Program Editor" alt="Logo Program Editor" src="http://jrepp.com/imgs/xna_screens/xna_logo_program.png" /></p>

<p><img title="Logo Program Editor Recursive" alt="Logo Program Editor Recursive" src="http://jrepp.com/imgs/xna_screens/xna_logo_program2.png" /></p>

<p>When I was very young I did some coding in <a href="http://en.wikipedia.org/wiki/Logo_turtle">logo</a> on an <a href="http://apple2history.org/history/ah17.html">apple II</a>. It has a very simple syntax and was fun to experiment with, a little turtle moved around the screen as you entered your program. As I was thinking about how to make procedural content for an action game I remembered those old times so I implemented a graphical editor for a simplified logo language interpreter. You use a 360 controller to alter the opcodes and operands and the scene updates in real-time.</p>

<p>I dropped the ziggyware font stuff from my project and went back to using <a href="http://www.angelcode.com/products/bmfont/">BMFont from angelcode</a>. The ziggyware stuff was pretty good but it lacked the precision I wanted and when I noticed that the XNA sprite batch stuff doesn&#8217;t batch the prim submission I was going to have to rewrite that anyways. It took me a little while to write the variable width rendering logic, kerning and line wrapping but now I have more control over the font layout and display. The textures generated from BMFont are very effeciently packed.</p>

<p>Watch out for the SpriteBatch it does not currently do any batching. Every call to draw a quad is a seperate batch. Check it out in PIX. It does however collect all the state changes into  a state block but I&#8217;m not impressed. It&#8217;s really not hard to manage your own collection of quads in a buffer and generate them off the font information. I might share the BMFont renderer at some point. I&#8217;m still working on a level editor right now.</p>
]]></content:encoded>
			<wfw:commentRss>http://jrepp.com/2006/10/24/thoughts-on-xna-development-and-some-screens/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

