<?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; Blender</title>
	<atom:link href="http://wmbest.com/archives/tag/blender/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>
	</channel>
</rss>

