<?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>wmbest.com &#187; Programming</title>
	<atom:link href="http://wmbest.com/archives/category/programming/feed" rel="self" type="application/rss+xml" />
	<link>http://wmbest.com</link>
	<description></description>
	<lastBuildDate>Mon, 18 Apr 2011 20:54:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>Pythons and Pandas</title>
		<link>http://wmbest.com/archives/11</link>
		<comments>http://wmbest.com/archives/11#comments</comments>
		<pubDate>Mon, 26 Apr 2010 18:02:59 +0000</pubDate>
		<dc:creator>Bill</dc:creator>
				<category><![CDATA[Blender]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[Panda3d]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[c++]]></category>
		<category><![CDATA[crash bandicoot]]></category>
		<category><![CDATA[panda]]></category>

		<guid isPermaLink="false">http://wmbest.com/?p=11</guid>
		<description><![CDATA[I had always wanted to write my own video game and never took the time to do it.  There were two big reasons that I never finished a game.  One was time, I had very little of it with school work and a part time job.  The second reason was art.  I wanted to be [...]]]></description>
			<content:encoded><![CDATA[<p>I had always wanted to write my own video game and never took the time to do it.  There were two big reasons that I never finished a game.  One was time, I had very little of it with school work and a part time job.  The second reason was art.  I wanted to be able to see the fruits of my labor but due to the fact that I had limited 3d modeling experience I would quickly disband any attempt at an actual game.  Therefore the first thing I made extremely clear to myself was that this project was going to be more about me learning the art aspect than anything.</p>
<p>In order to accomplish this I made the decision that rather than try to come up with a project on my own I would attempt to clone a game that I had enjoyed many years ago.  That game was Crash Bandicoot.  This decision made designing the game more of a focus on technical skills rather than artistic creativity.  Before I would look at this as a way of giving up, not doing the entire thing by myself but I believe now that this allows someone who is not very experience in the field to make a fun game while building their abilities for future projects.</p>
<p>Build the first model of the game seems to be coming along just fine.  In fact the only real hurdle I have had so far is now that it is finished an animated when I export the model the animation gets squirrelly.  This could be an issue with my mesh but I will continue to play and see if I cant find something that works.  Here are some of the first pictures of my model in blender:</p>

<a href='http://wmbest.com/archives/11/crude' title='crude'><img width="150" height="150" src="http://wmbest.org/wp-content/uploads/2010/04/crude-150x150.jpg" class="attachment-thumbnail" alt="crude" title="crude" /></a>
<a href='http://wmbest.com/archives/11/screen_untextured' title='screen_untextured'><img width="150" height="150" src="http://wmbest.org/wp-content/uploads/2010/04/screen_untextured-150x150.jpg" class="attachment-thumbnail" alt="screen_untextured" title="screen_untextured" /></a>

<p>The next step was picking a 3d game engine.  For this I ended up going with <a title="Panda3d" href="http://www.panda3d.org" target="_blank">Panda3d</a> thanks to the suggestion of a friend of mine who is also a developer.  He was mostly interested in using the python interface; however, I decided that I wanted to do it in c++.  This would have been fine until I found out that the gnu compiler is not supported by the library and I would have to do some major hacking to get it to where it would compile.  Instead I decided that this would provide me with the perfect opportunity to learn python.  This makes life extremely easy with code as simples as:</p>
<div class="gistem"><div id="gist-374769" class="gist">

        <div class="gist-file">
          <div class="gist-data gist-syntax">
              <div class="highlight"><pre><div class='line' id='LC1'><span class="kn">from</span> <span class="nn">direct.showbase.ShowBase</span> <span class="kn">import</span> <span class="n">ShowBase</span></div><div class='line' id='LC2'>&nbsp;</div><div class='line' id='LC3'><span class="k">class</span> <span class="nc">MyApp</span><span class="p">(</span><span class="n">ShowBase</span><span class="p">):</span></div><div class='line' id='LC4'>&nbsp;</div><div class='line' id='LC5'>	<span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span></div><div class='line' id='LC6'>		<span class="n">ShowBase</span><span class="o">.</span><span class="n">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span></div><div class='line' id='LC7'><br/></div><div class='line' id='LC8'>		<span class="n">environ</span> <span class="o">=</span> <span class="n">loader</span><span class="o">.</span><span class="n">loadModel</span><span class="p">(</span><span class="s">&quot;models/crash/crash_crude&quot;</span><span class="p">)</span></div><div class='line' id='LC9'>		<span class="n">environ</span><span class="o">.</span><span class="n">reparentTo</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">render</span><span class="p">)</span></div><div class='line' id='LC10'>		<span class="n">environ</span><span class="o">.</span><span class="n">setScale</span><span class="p">(</span><span class="mf">0.25</span><span class="p">,</span> <span class="mf">0.25</span><span class="p">,</span> <span class="mf">0.25</span><span class="p">)</span></div><div class='line' id='LC11'>		<span class="n">environ</span><span class="o">.</span><span class="n">setPos</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">5</span><span class="p">,</span> <span class="mi">0</span><span class="p">)</span></div><div class='line' id='LC12'>&nbsp;</div><div class='line' id='LC13'><span class="n">app</span> <span class="o">=</span> <span class="n">MyApp</span><span class="p">()</span></div><div class='line' id='LC14'><span class="n">app</span><span class="o">.</span><span class="n">run</span><span class="p">()</span></div></pre></div>
          </div>

          <div class="gist-meta">
            <a href="https://gist.github.com/raw/374769/bf5833f344160afd1b797f1de9a1ec9edc5c65c0/main.py" style="float:right;">view raw</a>
            <a href="https://gist.github.com/374769#file_main.py" style="float:right;margin-right:10px;color:#666">main.py</a>
            <a href="https://gist.github.com/374769">This Gist</a> is brought to you using <a href="http://en.bainternet.info/2011/simple-gist-embed"><small>Simple Gist Embed</small></a>.
          </div>
        </div>
</div>
</div><style type="text/css">@import "http://gist.github.com/stylesheets/gist/embed.css"; .gistem .highlight {background: inherit; !important;}</style>
<p>for loading a model.</p>
<p>Over the next few weeks I hope to have a running demo so keep your eyes peeled.</p>
]]></content:encoded>
			<wfw:commentRss>http://wmbest.com/archives/11/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Wmbest.com and future development</title>
		<link>http://wmbest.com/archives/4</link>
		<comments>http://wmbest.com/archives/4#comments</comments>
		<pubDate>Mon, 26 Apr 2010 13:45:51 +0000</pubDate>
		<dc:creator>Bill</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[general]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://wmbest.org/?p=4</guid>
		<description><![CDATA[It has been a while since I have had the time to sit down and blog about something.  Recently I made the purchase of Wmbest.com and Wmbest.org.  Both of these urls lead to this page.  I had originally intended to create a custom website that I could use to keep my skills their freshest.  I&#8217;ve [...]]]></description>
			<content:encoded><![CDATA[<p>It has been a while since I have had the time to sit down and blog about something.  Recently I made the purchase of Wmbest.com and Wmbest.org.  Both of these urls lead to this page.  I had originally intended to create a custom website that I could use to keep my skills their freshest.  I&#8217;ve realized that I currently lack the time to put my time into something that has already been so skillfully created.  Instead I have a few other projects that Ive been wanting to accomplish for quite some time.</p>
<p>One of the biggest projects that I have wanted to dedicate my time to since the time I started programming was a game.  Gaming was something Ive done my entire life and most likely one of my first memories.  Because of this, Ive always wanted to make a game.  I lack any 3d modelling skills and or time to spend sitting down and writing an entire game.  Recently Ive decided that I would make time.  Not only because I want to make a game but also because Id like to keep my skills in application development in tip top shape.  More will come from the game but currently it is in the early stages of development which I will save for another post.</p>
<p>Please feel free to keep an eye on this blog as I am hoping to provide recent news on any programming projects Im working on and also tidbits that Ive found useful at my place of work.</p>
]]></content:encoded>
			<wfw:commentRss>http://wmbest.com/archives/4/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

