<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>David Leverton - Computer Game Programmer</title>
	<atom:link href="http://davidleverton.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://davidleverton.wordpress.com</link>
	<description>A Blog showing Projects and Work i have undertaken</description>
	<lastBuildDate>Tue, 10 May 2011 12:11:06 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='davidleverton.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>David Leverton - Computer Game Programmer</title>
		<link>http://davidleverton.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://davidleverton.wordpress.com/osd.xml" title="David Leverton - Computer Game Programmer" />
	<atom:link rel='hub' href='http://davidleverton.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Back at University! Productive Placement Year</title>
		<link>http://davidleverton.wordpress.com/2010/10/21/back-at-university-productive-placement-year/</link>
		<comments>http://davidleverton.wordpress.com/2010/10/21/back-at-university-productive-placement-year/#comments</comments>
		<pubDate>Thu, 21 Oct 2010 19:10:17 +0000</pubDate>
		<dc:creator>Dave Leverton</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://davidleverton.wordpress.com/?p=353</guid>
		<description><![CDATA[So, here I am again, it&#8217;s been a VERY long time since I&#8217;ve last posted, but all has been well. Placement Year While I&#8217;ve been neglecting my Blog, I&#8217;ve been on my Placement Year for my Computer Games Programming course. My situation with the Placement Year was a little unusual, people would usually expect you to go out [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=davidleverton.wordpress.com&amp;blog=5028508&amp;post=353&amp;subd=davidleverton&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>So, here I am again, it&#8217;s been a <strong>VERY </strong>long time since I&#8217;ve last posted, but all has been well.</p>
<h1>Placement Year</h1>
<p>While I&#8217;ve been neglecting my Blog, I&#8217;ve been on my Placement Year for my Computer Games Programming course. My situation with the Placement Year was a little unusual, people would usually expect you to go out into the industry, join a big company for a year and gain experience that way, but I was a little different.</p>
<p>I was approached by my Course Leader, who wanted to set up his own games company, and employ me and one other student on their placement year (<a href="http://tumain.wordpress.com/">Justin Alexander</a>) to work alongside him! Of course, this was an offer I could not turn down, working on iPhone and Xbox Live Arcade titles would be a great year, in which I could no doubt learn a lot. The games company that I worked for, and helped build, is &#8216;We Are Colin&#8217; (www.wearecolin.co.uk), we&#8217;ve published 9 games over the year (and a bit):</p>
<h2>Screw the Dealer &#8211; Card game &#8211; iPhone</h2>
<p>To start of with, we started on a pretty easy game type to develop quickly. Screw the Dealer is a card game similar to &#8216;Whist&#8217; or &#8216;Spades&#8217;. We released 2 versions of the game, one was Free and had adverts in it. The other was Paid for and had more content with no Adverts. We thought that this business model would work quite well, but unfortunately it didn&#8217;t fair very well in the App Store. People who played it said it was good, but not many people did play it.</p>
<p>Check out the game(s) here: <a href="http://www.wearecolin.com/screwthedealer/main.php">http://www.wearecolin.com/screwthedealer/main.php</a></p>
<h2>Cavemen Vs. Aliens &#8211; Strategy &#8211; Xbox Live Indies</h2>
<p>Cavemen Vs. Aliens was the next game to come from the Studio, this was mainly developed by my work colleague, Justin, and I helped out after completing Screw the Dealer. It&#8217;s a tricky game to explain, so I&#8217;ll just point you to the website. The game didn&#8217;t do as well as we&#8217;d hoped, since we spent a while refining the Graphics and Sound to make it an appealing game. Once again, lots of people liked the game, but not many people could find the game in the first place!</p>
<p>Website: <a href="http://www.wearecolin.com/cva/main.php">http://www.wearecolin.com/cva/main.php</a></p>
<h2>WordSearch Rush &#8211; Word Game &#8211; iPhone / XBLIG</h2>
<p>Next to be developed was WordSearch Rush, a game prototype that our Boss had originally developed and we all thought would be and awesome game on the iPhone. This of a WordSearch Game, without the word list, and with a Topic for which you have to find words related to. For Example, Colour may be the topic, so you have to find colours in the word search grid.</p>
<p>This game did remarkably well! We marketed this game a little more, got a few posative reviews from websites and most influential of all. <strong>APPLE FEATURED IT! </strong>That&#8217;s right, our game was on the Front page of the App Store in the UK and featured under the &#8216;Hot Games&#8217; in the US and worldwide. <strong>GREAT SUCCESS!</strong></p>
<p>Website: http://www.WordSearchRush.co.uk/</p>
<p>This game also got made into a few sequals, which did not sell as well. We created WordSearch Rush GOLD, which had all of the downloadable packs already built into the game, WordSearch Rush: HD for the iPad and WordSearch Rush on the Xbox Live Indies. None of these sold extremely well, but they we&#8217;re, in all admitance, slightly rushed.</p>
<h2>iSevens World Tour &#8211; Card &#8211; iPhone</h2>
<p>While developing our first game, Screw the Dealer, for the iPhone, we also partly developed another card game, iSevens which is a iPhone version of the card game Sevens. This is a more fully fledged card game, with a whole world tour and character system. It was a very good game, but sold poorly since not many people were that interested.</p>
<p>Website: <a href="http://itunes.apple.com/us/app/isevens-world-tour/id375968132?mt=8">http://itunes.apple.com/us/app/isevens-world-tour/id375968132?mt=8</a></p>
<h2>Gravity Runner &#8211; Action &#8211; iPhone</h2>
<p>To finish our year off, we both worked together on an Action game for which we both though up the ideas for. Gravity Runner is a really great game, and I&#8217;m extremely pleased with how it turned out. Very much praise from a huge amount of people, almost every website covered the game in some way or another, and 90% of them loved it!</p>
<p>I&#8217;d recommend checking it out asap =P: <a href="http://www.wearecolin.co.uk/gravityrunner/">http://www.wearecolin.co.uk/gravityrunner/</a></p>
<h1>What I Learnt</h1>
<p>So much was learnt over the year (and a bit) when it comes to development of games.</p>
<ul>
<li>First and Foremost, <strong>iPhone App Development</strong>. We used<strong> Torque Game Builder</strong> for the iPhone to create our iPhone Games, so we had to learn how to use this engine from scratch. Also this didn&#8217;t stop me looking into the Objective-C and C++ code behind it, lots of editing of the Engine was needed and a learnt a huge amount about how massive game engines are built and work.</li>
<li><strong>Mac OS X</strong> &#8211; Never been used before by myself, and I found it quite a challenging experience. Not because it&#8217;s a bad OS, but the budget of the Studio never allowed us to get a decent monitor / keyboard / mouse combination, and it was a pain to work on. Jokes aside, it was a learning experience still. Seeing how all of the signing of certificates works.</li>
<li><strong>Xbox Live Indie Development &#8211; </strong>I&#8217;d used XNA before, but not on this scale, to create a fully fledged game. It was a great experience. Also the process behind deploying the game to the Xbox Live marketplace was a completely new experience and was great to learn about.</li>
<li><strong>Marketing, Marketing, Marketing!!! </strong>The main thing when developing Indie Games is getting the game noticed! It&#8217;s extremely difficult, but I actually found the Marketing component of making a game enjoyable. I made lots of contacts in the iPhone space! All will be useful for any future projects I may think about doing.</li>
<li><strong>Conferences &#8211; </strong>While working at  We Are Colin I went to a couple of conferences, which was a great learning experience. The Apple Developer Conference was the first we went to, in which they shared secrets about developing Successful Apps. We also went to the Develop Expo in Brighton, not a huge amount was going off in the Expo section, but was a good experience whatever.</li>
<li><strong>Running a Buisness! &#8211; </strong>This has gave me a great insight as to how businesses are ran. It&#8217;s even made me think long and hard about creating my own business at the end of Uni and when I&#8217;m financially stable <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> .</li>
</ul>
<h1>End</h1>
<p>Well, a big blog post to start a new year at University and describe what has happened over the past year! Keep an eye out for a post on what&#8217;s been happening so far at University this year, and a few pictures and demo&#8217;s of what&#8217;s been created!</p>
<p>Thanks for Reading!</p>
<p>Dave.</p>
<br />Filed under: <a href='http://davidleverton.wordpress.com/category/uncategorized/'>Uncategorized</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/davidleverton.wordpress.com/353/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/davidleverton.wordpress.com/353/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/davidleverton.wordpress.com/353/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/davidleverton.wordpress.com/353/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/davidleverton.wordpress.com/353/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/davidleverton.wordpress.com/353/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/davidleverton.wordpress.com/353/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/davidleverton.wordpress.com/353/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/davidleverton.wordpress.com/353/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/davidleverton.wordpress.com/353/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/davidleverton.wordpress.com/353/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/davidleverton.wordpress.com/353/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/davidleverton.wordpress.com/353/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/davidleverton.wordpress.com/353/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=davidleverton.wordpress.com&amp;blog=5028508&amp;post=353&amp;subd=davidleverton&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://davidleverton.wordpress.com/2010/10/21/back-at-university-productive-placement-year/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/aa5c1a9e693828b01486cdca41e14298?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidleverton</media:title>
		</media:content>
	</item>
		<item>
		<title>Final Result!</title>
		<link>http://davidleverton.wordpress.com/2009/05/23/final-result/</link>
		<comments>http://davidleverton.wordpress.com/2009/05/23/final-result/#comments</comments>
		<pubDate>Sat, 23 May 2009 13:05:18 +0000</pubDate>
		<dc:creator>Dave Leverton</dc:creator>
				<category><![CDATA[Applied Game Development]]></category>

		<guid isPermaLink="false">http://davidleverton.wordpress.com/?p=361</guid>
		<description><![CDATA[So after a few months of hard graft to create a game using Gamebryo, it finally all came together in the last week of the semester. Here is the video of the final game, as taken by our lead programmer, Dan Bain: and a Trailer of the game from the project manager Dan Carter: As [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=davidleverton.wordpress.com&amp;blog=5028508&amp;post=361&amp;subd=davidleverton&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>So after a few months of hard graft to create a game using Gamebryo, it finally all came together in the last week of the semester. Here is the video of the final game, as taken by our lead programmer, Dan Bain:</p>
<span style="text-align:center; display: block;"><a href="http://davidleverton.wordpress.com/2009/05/23/final-result/"><img src="http://img.youtube.com/vi/Wy18MolzG-4/2.jpg" alt="" /></a></span>
<p>and a Trailer of the game from the project manager Dan Carter:</p>
<span style="text-align:center; display: block;"><a href="http://davidleverton.wordpress.com/2009/05/23/final-result/"><img src="http://img.youtube.com/vi/qXDMHBwSuWY/2.jpg" alt="" /></a></span>
<p>As you can see, the game is looking quite good! To say that we hadn&#8217;t touch Gamebryo until the start of the 2nd semester, and we&#8217;ve only been working on the game for around 3 months alongside our other university schedule.</p>
<p>Unfortunately, code cannot be shared, since it uses Gamebryo source code, which can not be distributed under any circumstances!</p>
<br />Posted in Applied Game Development  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/davidleverton.wordpress.com/361/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/davidleverton.wordpress.com/361/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/davidleverton.wordpress.com/361/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/davidleverton.wordpress.com/361/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/davidleverton.wordpress.com/361/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/davidleverton.wordpress.com/361/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/davidleverton.wordpress.com/361/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/davidleverton.wordpress.com/361/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/davidleverton.wordpress.com/361/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/davidleverton.wordpress.com/361/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/davidleverton.wordpress.com/361/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/davidleverton.wordpress.com/361/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/davidleverton.wordpress.com/361/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/davidleverton.wordpress.com/361/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=davidleverton.wordpress.com&amp;blog=5028508&amp;post=361&amp;subd=davidleverton&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://davidleverton.wordpress.com/2009/05/23/final-result/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/aa5c1a9e693828b01486cdca41e14298?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidleverton</media:title>
		</media:content>
	</item>
		<item>
		<title>Applied Game Development &#8211; Week 9</title>
		<link>http://davidleverton.wordpress.com/2009/04/04/applied-game-development-week-9/</link>
		<comments>http://davidleverton.wordpress.com/2009/04/04/applied-game-development-week-9/#comments</comments>
		<pubDate>Sat, 04 Apr 2009 11:05:40 +0000</pubDate>
		<dc:creator>Dave Leverton</dc:creator>
				<category><![CDATA[Applied Game Development]]></category>
		<category><![CDATA[Computer]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://davidleverton.wordpress.com/?p=339</guid>
		<description><![CDATA[Week 9 Development Diary &#8211; Crunch time This week we had an Alpha milestone to strive for. By the end of the week, Friday, we hoped to have all of the features on the list implemented into the game in some form or another. Unfortunately as we should have expected this did not happen as [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=davidleverton.wordpress.com&amp;blog=5028508&amp;post=339&amp;subd=davidleverton&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h2>Week 9 Development Diary &#8211; Crunch time</h2>
<p>This week we had an Alpha milestone to strive for. By the end of the week, Friday, we hoped to have all of the features on the list implemented into the game in some form or another. Unfortunately as we should have expected this did not happen as well as expected. During the week I had an interview at a games company in Newcastle, which meant that I had a day less contribution to the project. Luckily my part was only really accessed and changed by myself and since it had been a good week previously there was not much trouble caused by this. On the other hand another one of my team mates had an interview on the same day as me and his work was at a crucial stage and needed to be completed as soon as possible. This caused quite a few problems and lots of panicking from the rest of the group which cause the whole week to slide a day behind schedule. This close to the Alpha Milestone it was not a good thing to happen.</p>
<p>At the start of the week my task was still on collision and getting it at a reasonable frame rate. After trying most of Wednesday with Joe to get a reasonable thing working we had no luck still. I told the project manager I should really work on something else since it was getting close to the milestone and this was not a crucial part of the project that i was working on at the time. He agreed with me and I started working on the menu system all Friday before the deadline. 3 people in the group were working in 3 different menu&#8217;s. I was the first to complete my menu and another member of the group was struggling with his and was stressing out since today was the deadline. I took the work off of his hands since i had already completed a menu and i though i would be able to complete another one without any troubles. I got this menu done in no time and everything was looking promising.</p>
<p>An hour before the deadline we decided that we needed now to merge the versions we had been working on so that we had something in by the deadline that reflected our current position. Little did we know that our source control method, SVN, was not on our side today and with half an hour to go we still hadn&#8217;t merged anything since one member of the team was having large issues with SVN. After 2 merges between 2 different versions time had already ran out and we now had 5 minutes to go. The project manager was adamant to get all the features we had been working on today into the alpha milestone so we carried on merging. When it came to my turn to merge my menu&#8217;s I got the latest version and found that the merges before had conflicted slightly and we lost some features. In a hurry i merged my work but due to the hurried nature of the whole process all the work i had done for the day became broken in the merging process. I got it running slightly fine but by that time it was past 5pm which was the deadline and we were late. After sending my version off to the last merger it took another 30 minutes to get the Alpha version uploaded and sent off.</p>
<p>Overall this day has been one the most stressful days encountered in my University time and would wish not to have another day like this. In the end our Alpha version had all the functionality that it had before Friday an non extra, which was a huge disappointment as it all got lost in merging and we all worked our hearts out that day.</p>
<p>The team is still working stongly together but i think this week a bad call by all of us let down the team and our Alpha Milestone was handed in late.</p>
<br />Posted in Applied Game Development Tagged: Applied Game Development, Computer, Games, Programming <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/davidleverton.wordpress.com/339/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/davidleverton.wordpress.com/339/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/davidleverton.wordpress.com/339/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/davidleverton.wordpress.com/339/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/davidleverton.wordpress.com/339/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/davidleverton.wordpress.com/339/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/davidleverton.wordpress.com/339/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/davidleverton.wordpress.com/339/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/davidleverton.wordpress.com/339/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/davidleverton.wordpress.com/339/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/davidleverton.wordpress.com/339/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/davidleverton.wordpress.com/339/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/davidleverton.wordpress.com/339/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/davidleverton.wordpress.com/339/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=davidleverton.wordpress.com&amp;blog=5028508&amp;post=339&amp;subd=davidleverton&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://davidleverton.wordpress.com/2009/04/04/applied-game-development-week-9/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/aa5c1a9e693828b01486cdca41e14298?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidleverton</media:title>
		</media:content>
	</item>
		<item>
		<title>Applied Game Development &#8211; Week 8</title>
		<link>http://davidleverton.wordpress.com/2009/03/29/applied-game-development-week-8/</link>
		<comments>http://davidleverton.wordpress.com/2009/03/29/applied-game-development-week-8/#comments</comments>
		<pubDate>Sun, 29 Mar 2009 10:35:05 +0000</pubDate>
		<dc:creator>Dave Leverton</dc:creator>
				<category><![CDATA[Applied Game Development]]></category>

		<guid isPermaLink="false">http://davidleverton.wordpress.com/?p=337</guid>
		<description><![CDATA[Week 8 Development Diary After last weeks success with the World collision I was tasked with making the collision response reasonable so that it did not look funny when crashing into the world and yet again working with Joe the artist to get the Mesh split up so that it ran over 60fps. The way [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=davidleverton.wordpress.com&amp;blog=5028508&amp;post=337&amp;subd=davidleverton&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h2>Week 8 Development Diary</h2>
<p>After last weeks success with the World collision I was tasked with making the collision response reasonable so that it did not look funny when crashing into the world and yet again working with Joe the artist to get the Mesh split up so that it ran over 60fps.</p>
<p>The way i started looking at the how the collision response would work was that it would bounce off the walls like a reflection vector and would reduce in speed so that there was a penalty for crashing into the wall. I started looking into reflection vector calculations and eventually got that working after plenty of frustration with the code. The problem now was to get this reflection vector to be the direction that the ship is traveling in. The way that the ship moves at the moment is rather weird in that it does not have a direction vector and the direction is calculated solely on the world matrix&#8217;s first column. This gave me a slight problem when trying to alter the direction of the ship since I would have to create rotation matrices rather than just change the direction vector which was the way that i though it would be done.</p>
<p>Using the reflection vector i found the angle between the incoming vector and the reflection vector to find out the angle to rotate the ship around. I then took the cross product of the incoming vector and the reflection vector to get an axis of rotation which i could rotate the ship around. Using some simple functions built into gamebryo i could create a rotation matrix around my newly made rotation axis. I set the angle to be the angle between the 2 vectors that i had used and was hoping that it would work well like that. Unfortunately rotating in that angle did not work as i had hoped since if the angle was 0, it would carry on going the same way, which is wrong as it should bounce at 180 degrees. So to get the result that i was looking for i had to take the angle away from 180 degrees to get the angle i had to rotate the ship. This works well and looks ok for the time being and i will need to look into refineing it later in the development process, but as for meeting the requirements it does its job at the moment.</p>
<p>The  next problem we still had was the frame rate. After plenty of new mesh&#8217;s came from Joe, each with different settings and meshs we still didn&#8217;t have a .nif with the world split into different mesh&#8217;s. This was becoming one if the largest problems and i will have to work closely with Joe to get this to work well.</p>
<br />Posted in Applied Game Development  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/davidleverton.wordpress.com/337/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/davidleverton.wordpress.com/337/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/davidleverton.wordpress.com/337/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/davidleverton.wordpress.com/337/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/davidleverton.wordpress.com/337/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/davidleverton.wordpress.com/337/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/davidleverton.wordpress.com/337/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/davidleverton.wordpress.com/337/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/davidleverton.wordpress.com/337/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/davidleverton.wordpress.com/337/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/davidleverton.wordpress.com/337/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/davidleverton.wordpress.com/337/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/davidleverton.wordpress.com/337/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/davidleverton.wordpress.com/337/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=davidleverton.wordpress.com&amp;blog=5028508&amp;post=337&amp;subd=davidleverton&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://davidleverton.wordpress.com/2009/03/29/applied-game-development-week-8/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/aa5c1a9e693828b01486cdca41e14298?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidleverton</media:title>
		</media:content>
	</item>
		<item>
		<title>Applied Game Development &#8211; Week 7</title>
		<link>http://davidleverton.wordpress.com/2009/03/22/applied-game-development-week-7/</link>
		<comments>http://davidleverton.wordpress.com/2009/03/22/applied-game-development-week-7/#comments</comments>
		<pubDate>Sun, 22 Mar 2009 10:19:38 +0000</pubDate>
		<dc:creator>Dave Leverton</dc:creator>
				<category><![CDATA[Applied Game Development]]></category>
		<category><![CDATA[Computer]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://davidleverton.wordpress.com/?p=334</guid>
		<description><![CDATA[Week 7 Development Diary This week in the team project i have been working on collision still, with the not so good luck last week in getting the world collisions to work i have still been focusing on getting them to work. As i said last week i feel that the problem has something to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=davidleverton.wordpress.com&amp;blog=5028508&amp;post=334&amp;subd=davidleverton&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h2>Week 7 Development Diary</h2>
<p>This week in the team project i have been working on collision still, with the not so good luck last week in getting the world collisions to work i have still been focusing on getting them to work. As i said last week i feel that the problem has something to do with the mesh since everything that i am doing seems to be right and with the documentation.</p>
<p>After playing around with the 3dsMax file I could see no way of adding collision to the mesh other than bounding boxes all the way around the mesh, I thought though that this would be very time consuming. So after finding nothing in the mesh that was editable I looked towards exporting from 3dsmax to .nif which is the gamebryo mesh format. There were some special extracting properties that could be set and after trying a few different versions of them I found a profile that saved the mesh in a way that could be used for triangle collision. Great success!</p>
<p>After making the exportation discovery I exported the mesh with this new setting and loaded it into my collision code. It worked very well and was perfect, the only problem was the frame rate. After playing around with the new collision I discovered that when you fly away from the mesh its self the frame rate jumps up dramatically as it no longer has any point in calculating the collision since the ship and the world are too far apart. With this discovery I asked the lead artist, Joe, to find a way to split the level up into separate Mesh&#8217;s but within the same .Nif file. After many different versions of the level have been given to me none of them yet worked. This concluded this weeks exploration into Collision in Gamebryo, I made a lot of progress at the start of the week with my discovery about the Mesh&#8217;s but have yet to find the best way to make it work at playable frame rates.</p>
<p>This week the team has still been working very well together and we are all pleased with the progress. I have personally been working closely with Joe the lead Artists, we are begining to understand each other a lot better and i enjoy working closely with an artist to get his perspective on the group and programming in general.</p>
<br />Posted in Applied Game Development Tagged: Applied Game Development, Computer, Games, Programming <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/davidleverton.wordpress.com/334/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/davidleverton.wordpress.com/334/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/davidleverton.wordpress.com/334/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/davidleverton.wordpress.com/334/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/davidleverton.wordpress.com/334/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/davidleverton.wordpress.com/334/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/davidleverton.wordpress.com/334/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/davidleverton.wordpress.com/334/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/davidleverton.wordpress.com/334/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/davidleverton.wordpress.com/334/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/davidleverton.wordpress.com/334/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/davidleverton.wordpress.com/334/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/davidleverton.wordpress.com/334/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/davidleverton.wordpress.com/334/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=davidleverton.wordpress.com&amp;blog=5028508&amp;post=334&amp;subd=davidleverton&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://davidleverton.wordpress.com/2009/03/22/applied-game-development-week-7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/aa5c1a9e693828b01486cdca41e14298?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidleverton</media:title>
		</media:content>
	</item>
		<item>
		<title>Applied Game Development &#8211; Design Patterns &#8211; Week 6</title>
		<link>http://davidleverton.wordpress.com/2009/03/15/applied-game-development-design-patterns-week-6/</link>
		<comments>http://davidleverton.wordpress.com/2009/03/15/applied-game-development-design-patterns-week-6/#comments</comments>
		<pubDate>Sun, 15 Mar 2009 15:33:38 +0000</pubDate>
		<dc:creator>Dave Leverton</dc:creator>
				<category><![CDATA[Applied Game Development]]></category>
		<category><![CDATA[Computer]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://davidleverton.wordpress.com/?p=327</guid>
		<description><![CDATA[Design Patterns Design patterns are a set proven standards for producing high quality and well designed code. A Design pattern is not Code, its not an Algorithm and its not a Data Structure. What a pattern is is a description of a problem and a set of rules that describe a solution to that problem. In 1995, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=davidleverton.wordpress.com&amp;blog=5028508&amp;post=327&amp;subd=davidleverton&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h2>Design Patterns</h2>
<p>Design patterns are a set proven standards for producing high quality and well designed code. A Design pattern is not Code, its not an Algorithm and its not a Data Structure. What a pattern is is a description of a problem and a set of rules that describe a solution to that problem. In 1995, Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides attempted to document a series of tried-and-true object-oriented approaches in “Design Patterns – Elements of Reusable Object-Oriented Software&#8221;. This book has become a classic for software Development.</p>
<p>A Pattern has four elements in general:</p>
<ul>
<li>The patterns name which gives it a unique identity,</li>
<li>The Problem at hand,</li>
<li>The Solution the the problem described in abstract terms,</li>
<li>The Consequences of the solution and what to look out for.</li>
</ul>
<p>Design patterns in Object Orientated Software development are usually split up into 3 different categories:</p>
<ul>
<li>Creational &#8211; Patterns to outline rules when creating class instances</li>
<li>Structural -  Patterns to outline rules for the structure of classes and objects and the relationships between them.</li>
<li>Behavioural &#8211; Patterns related to the communication between classes and objects</li>
</ul>
<p>There are many different Design patterns and I am currently looking into these patterns a lot more on behalf of our team. I will post my findings up in the form of a .doc file when I complete this.</p>
<h2>Week 6 Development Diary</h2>
<p>This week while working in my AGD team I have been working on Collision again. This time I had to find a way of getting collision with the world to work. The way that i wanted this to work to start with was just with basic triangle to triangle collision to make sure that it works, and if it did work without causing much slow down then it would be used in the final. Unfortunatly i came up with many problems on the way while trying to get this to work.</p>
<p>Collision in Gamebryo is done using Collision Groups which you have to add Mesh&#8217;s to this collision group to get the collision to work. The problem that i was having was that while trying to add this mesh to the group it would not allow it and was throwing up and error all of the time. After plenty of searching around i have come to the conclusion that it should be working and the only thing i can think of the would be causing such a problem is the mesh it&#8217;s self. Next week I will try and get it working as soon as possible.</p>
<p>Everything in the group is going very well and i feel that we are making a great deal of progress and we are working very well in a team. No arguments have yet been heard between members of the group since we all do the work asked of us and every puts all the effort possible into making it work well.</p>
<br />Posted in Applied Game Development Tagged: Applied Game Development, Computer, Games, Programming <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/davidleverton.wordpress.com/327/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/davidleverton.wordpress.com/327/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/davidleverton.wordpress.com/327/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/davidleverton.wordpress.com/327/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/davidleverton.wordpress.com/327/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/davidleverton.wordpress.com/327/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/davidleverton.wordpress.com/327/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/davidleverton.wordpress.com/327/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/davidleverton.wordpress.com/327/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/davidleverton.wordpress.com/327/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/davidleverton.wordpress.com/327/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/davidleverton.wordpress.com/327/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/davidleverton.wordpress.com/327/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/davidleverton.wordpress.com/327/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=davidleverton.wordpress.com&amp;blog=5028508&amp;post=327&amp;subd=davidleverton&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://davidleverton.wordpress.com/2009/03/15/applied-game-development-design-patterns-week-6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/aa5c1a9e693828b01486cdca41e14298?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidleverton</media:title>
		</media:content>
	</item>
		<item>
		<title>Applied Game Development &#8211; Week 5</title>
		<link>http://davidleverton.wordpress.com/2009/03/03/applied-game-development-week-5/</link>
		<comments>http://davidleverton.wordpress.com/2009/03/03/applied-game-development-week-5/#comments</comments>
		<pubDate>Tue, 03 Mar 2009 14:16:07 +0000</pubDate>
		<dc:creator>Dave Leverton</dc:creator>
				<category><![CDATA[Applied Game Development]]></category>
		<category><![CDATA[Computer]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://davidleverton.wordpress.com/?p=314</guid>
		<description><![CDATA[Week 5 &#8211; Development Methodologies No Methodology There are many different development mothodologies, but the most basic of them all is having No Methodology, which is kind of a methodology in its self. No methodology means that there is no control over the project and if you are not using any methodology at all the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=davidleverton.wordpress.com&amp;blog=5028508&amp;post=314&amp;subd=davidleverton&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h2>Week 5 &#8211; Development Methodologies</h2>
<h3>No Methodology</h3>
<p>There are many different development mothodologies, but the most basic of them all is having No Methodology, which is kind of a methodology in its self. No methodology means that there is no control over the project and if you are not using any methodology at all the end product usualy suffers for it. With no methodology programmers are just writing code and throwing it into the project usualy creating lots and lots of bugs and relying heavily on the debugger and can also be known as &#8220;Cowboy Coding&#8221; or &#8220;Code and Fix&#8221;. This is fine in small projects of less than 3 &#8211; 4 people but in larger groups it does not work at all and if no methodology is used in a large project it will be lucky to see the light of day on schedule!</p>
<h3>Waterfall Methodologies</h3>
<p>In the waterfall Methodologies, Development is done in separate, clearly-defined stages:</p>
<ol>
<li>Determine the requirements</li>
<li>Design the architecture</li>
<li>Develop the code</li>
<li>Test the software</li>
<li>Deploy the software</li>
<li>Maintain the software</li>
</ol>
<p>In this methodology each section above is done after the step above it has been completed, so for example designing the architecture before determining the requirements can not be done since it is further down the list. This is the reason it is called &#8216;Waterfall&#8217;  since each step is done one after the other just like water falling from top to bottom. This method is also called &#8216;Big Design Up Front&#8217; (BDUF) since all the design is done at the start of the project and can not be altered when development has begun.  This method is usually preferred by the less IT capable managers since it is the easiest to keep track of and it resembles projects in the real world like building bridges and other physical buildings, but unfortunately it does not work for software development and especially not for games development since the design is best to be always changing and you should be testing the code as you go along while developing the code.</p>
<p>One of the core reasons that waterfall fails is because it takes to long to run a project like this with rigid set tasks and you can not possibly see all of the troubles that will be ahead. If the design has a fundamental flaw in it such that the coders could not implement in then the design can&#8217;t change at that point and the coders are left struggling to implement a part of the project which is seemingly impossible. Games Development is an iterative process so this methodology is one of the worst available for games development and should be avoided, but the main problem is that it is appealing to publishers that have not worked with games before and therefore it can be used quite a lot today still.</p>
<h3>Rapid Application Development</h3>
<p>This was methodology was developed in response to the downfalls of the waterfall methodology. This methodology usually consists of a small team of developers no more than 6 which use rapid development software, this used to be programs such as Visual C++ and Visual Basic but would now be game development tools such as XNA. This method usually incorporates Timeboxing which is a method to ensure things get done on time, Timeboxing means that a feature has a fixed time slot in which to be implemented, if this time runs out then the feature is canned or re-evaluated if the feature is key to the success of the game. This method is more iterative also as it uses mini waterfalls for each feature, so each feature goes through a waterfall methodology before being implemented.</p>
<p>This method is usually tied into prototyping of games as it is quick and rapid. The downside to this method is that it will more than likely have less features in the end product due to some of them being killed and also this prototype could be used to be taken into full scale development which would end up being a &#8216;Big Ball of Mud&#8217;, this means that all of the code has just been piled anywhere and its not very readable or scalable.</p>
<h3>Iterative Development</h3>
<p>Iterative development is much more suited to game development, in Iterative Development each feature is incrementally improved over time. You start of with nothing and first create an Alpha build which has all features but may be rough and buggy. There should then be incremental milestones before release which shows incrementally better features. This method also allows for redesign and as part of the plan allows for redevelopment of features.</p>
<h3>Agile Development</h3>
<ul>
<li>Short timescales based around features, rather than the product as a whole (a few weeks each)</li>
<li>Fast, repeated iteration</li>
<li>Close, ongoing interaction with users and/or project stakeholders</li>
<li>Emphasis on mechanisms and attitudes that embrace ongoing change</li>
<li>A focus on adaptability rather than predictability</li>
<li>A minimum of documentation; a maximum of working code.</li>
</ul>
<p>This is the best methodology available for Game Development, it is very flexible and works perfectly alongside developing games. The only downfall with this is that it is hard to convince publishers to use this method as there are no hard deadlines and it can be difficult to see what is happening and when.</p>
<h2>Development Diary &#8211; Week 5 Team Progress</h2>
<p>This week we got our main level model from the artists! The game is now starting to look a lot more like we wanted it to. The map we have now is a canyon based map which was the map that we asked the artists to complete first as we felt that it looked the best out of their concept art which we were given. ( I will upload the pictures when I personally get them).</p>
<p>This week programming wise my task was to refine the waypoints so that you can collide with the outer ring and yet fly through the center of them without colliding. Also I had to position the rings in the new level that we got. As I was again working with collision and trying to refine the collision Ihad to work very closely with Joe, the lead Artist. Joe thought that he could just take a copy of his mesh and change its name to NDLCD and it would create a perfect collision mesh. This was not the case of course and after looking around in the Gamebryo documentation for quite a while and playing around in 3dsMax ( Which is not my strong point ) i managed to find out how to create multiple bounding volumes in a single mesh. We needed multiple bounding volumes because one volume how ever we created it would always cover the center circle so you couldn&#8217;t fly through it. The way that we used to create multiple bounding volumes was to create a Bounding Union which by using the 3DSMax hierarchy tab you can link multiple bounding volumes to the union and in Gamebryo it then recognises that there are more than one bounding volume and it works perfectly! After creating tightly fitting bounding boxes around the outer ring we tested it in game and it worked very well.</p>
<p>Also after lots of trial and error i had positioned the waypoints into some respectable positions and the game started to feel a lot more like our original idea!</p>
<br />Posted in Applied Game Development Tagged: Applied Game Development, Computer, Games, Programming <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/davidleverton.wordpress.com/314/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/davidleverton.wordpress.com/314/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/davidleverton.wordpress.com/314/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/davidleverton.wordpress.com/314/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/davidleverton.wordpress.com/314/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/davidleverton.wordpress.com/314/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/davidleverton.wordpress.com/314/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/davidleverton.wordpress.com/314/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/davidleverton.wordpress.com/314/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/davidleverton.wordpress.com/314/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/davidleverton.wordpress.com/314/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/davidleverton.wordpress.com/314/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/davidleverton.wordpress.com/314/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/davidleverton.wordpress.com/314/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=davidleverton.wordpress.com&amp;blog=5028508&amp;post=314&amp;subd=davidleverton&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://davidleverton.wordpress.com/2009/03/03/applied-game-development-week-5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/aa5c1a9e693828b01486cdca41e14298?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidleverton</media:title>
		</media:content>
	</item>
		<item>
		<title>Applied Game Development &#8211; Week 4</title>
		<link>http://davidleverton.wordpress.com/2009/02/20/applied-game-development-week-4/</link>
		<comments>http://davidleverton.wordpress.com/2009/02/20/applied-game-development-week-4/#comments</comments>
		<pubDate>Fri, 20 Feb 2009 10:23:26 +0000</pubDate>
		<dc:creator>Dave Leverton</dc:creator>
				<category><![CDATA[Applied Game Development]]></category>
		<category><![CDATA[Computer]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://davidleverton.wordpress.com/?p=307</guid>
		<description><![CDATA[UML and Use Cases UML stands for Unified Modelling Language which is a general-purpose visual language that can be used to describe an object-oriented system without reference to any particular programming language. They are used to effectively capture all of the user requirements, so people developing the game can look at this single source to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=davidleverton.wordpress.com&amp;blog=5028508&amp;post=307&amp;subd=davidleverton&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h2>UML and Use Cases</h2>
<p>UML stands for <strong>Unified Modelling Language</strong> which is a general-purpose visual language that can be used to describe an object-oriented system without reference to any particular programming language. They are used to effectively capture all of the user requirements, so people developing the game can look at this single source to see what they need to implement. It can also be used to explain technical designs to non-technical participants, such as management, designers and artists.</p>
<p>The UML diagram that we are most concerned about as programmers is a Class diagram, this diagram can be used to show the programmers what is needed in each class, such as function and member variables, and also shows the relationships between classes.</p>
<p>A Use Case is a textual description of an element in the game from a users point of view. A complete set of use cases describes an entire system. Use cases are very useful as they are a tool to make sure that both users and developers agree on the set of use cases so it serves as a starting point and a guide for development of the game.</p>
<p>A Use Case should describe how the system shall be used by an actor to achieve a particular goal. I should also provide sufficient detail that a user regards it as complete for the purpose at hand but does not include extraneous details, for example you should not talk about memory usage and other technical details.</p>
<h2>Week 4 &#8211; Development Dairy and Team Progress</h2>
<p>This week in our team we have yet again made rather a lot of progress. This week since i know the most about the collision have been assigned the task of creating some waypoints / checkpoints for the game. I quickly created a simple waypoint that had basic collision and came up against a large problem with the collision.</p>
<p>The collision as it was called a function &#8211; a Callback function &#8211; which was passed through an Intersect. The problem which i had was how to get from the Intersect to manipulate the objects that actually collided. After probing the Intersect class i figured out that it held 2 objects inside of the Intersect object and Object 0 was always the object in which has the callback function set to the one you are currently in. Since i was in the ship&#8217;s callback function at the time i knew that Obj0 was the ship. The problem now is faced with Identifying the Obj1 as in the Intersect class it is declared as an AVObject which does not hold all of the information that i needed.</p>
<p>After looking around at how it was done in a few samples I realised that you can give each NiNode a Name of its own. you can then compare this name with a string of your own to see if it is the right class. So now when each Object is created it is given a Name to describe what it is. For example the ships name would be &#8220;Ship&#8221; &#8211; basic right? Now that each object has its own unique name you can compare the names with the name you need and if they match then you know what obj1 is and can now cast it as the object it is so that you can access the member functions and variables.</p>
<p>Sorry if that was all a little confusing! I&#8217;ll read over it later when I get time and will change it if it needs to be changed.</p>
<p>The other people in the team also worked hard this week and the game is starting to look very nice! I will try and get a video of the game at its current state and upload it if possible!</p>
<br />Posted in Applied Game Development Tagged: Applied Game Development, Computer, Games, Programming <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/davidleverton.wordpress.com/307/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/davidleverton.wordpress.com/307/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/davidleverton.wordpress.com/307/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/davidleverton.wordpress.com/307/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/davidleverton.wordpress.com/307/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/davidleverton.wordpress.com/307/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/davidleverton.wordpress.com/307/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/davidleverton.wordpress.com/307/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/davidleverton.wordpress.com/307/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/davidleverton.wordpress.com/307/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/davidleverton.wordpress.com/307/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/davidleverton.wordpress.com/307/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/davidleverton.wordpress.com/307/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/davidleverton.wordpress.com/307/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=davidleverton.wordpress.com&amp;blog=5028508&amp;post=307&amp;subd=davidleverton&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://davidleverton.wordpress.com/2009/02/20/applied-game-development-week-4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/aa5c1a9e693828b01486cdca41e14298?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidleverton</media:title>
		</media:content>
	</item>
		<item>
		<title>Mobile Development &#8211; Intro + Week 2</title>
		<link>http://davidleverton.wordpress.com/2009/02/14/mobile-development-intro-week-2/</link>
		<comments>http://davidleverton.wordpress.com/2009/02/14/mobile-development-intro-week-2/#comments</comments>
		<pubDate>Sat, 14 Feb 2009 19:19:18 +0000</pubDate>
		<dc:creator>Dave Leverton</dc:creator>
				<category><![CDATA[Mobile Development]]></category>
		<category><![CDATA[Computer]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://davidleverton.wordpress.com/?p=287</guid>
		<description><![CDATA[Introduction This is my First post about Mobile Development so this is what Mobile Development is going to be about this semester. During Mobile Development this semester I will be using Java ME to create an application for a Mobile Device, such as a mobile phone or a PDA. Using Java ME the assignment is [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=davidleverton.wordpress.com&amp;blog=5028508&amp;post=287&amp;subd=davidleverton&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h2>Introduction</h2>
<p>This is my First post about Mobile Development so this is what Mobile Development is going to be about this semester.</p>
<p>During Mobile Development this semester I will be using Java ME to create an application for a Mobile Device, such as a mobile phone or a PDA. Using Java ME the assignment is to create an application of your choice, of course this means that I will be creating a game on my mobile phone but what kind of game I am still unsure of.</p>
<h2>Week 1</h2>
<p>Week 1 of this module was a bit chaotic, we had no lecture due to a timetable slip up and the software needed was not installed in the rooms we had to work in, luckily the first week was just an introduction and was how to set up your development environment, I am using Netbeans 6.5 and Java ME plugin, alongside the JDK &#8211; Java Development Kit. All has been set up and I created a basic Dice game in Java in Windows Console.</p>
<h2>Week 2</h2>
<p>In this week we learnt about how to develop on a Mobile Platform, the basis of which revolves around creating a Midlet for your mobile device, a Midlet is a program that runs using the Java Micro Edition set of API and extending Midlet for your own class gives you a new program which you can run at will.</p>
<p>The task this week was to create an Insurance application which asked the user to input his or her Name, Address, Phone among some other pieces of information. I had a screenshot given to me by the lecturer and we were told to go away and try and recreate it. To start creating something visual the first thing needed in my newly created Midlet is a Form, a Form is a blank canvas in which different types of objects can be placed upon and attached, such as text boxes. Once a form is created it then needs some TextFields which are fields of text which can be edited by the user and also some ChoiceGroups were added, which are multiple choice answers with either buttons or tick boxes. Once all the Text Fields and other object are set up they need to be attached to the Form and then the Form needs to be displayed. Also for the midlet to be able to Exit an exit Command needs to be initialised and added to the form, a Command is something that appears at the bottom and can be pressed by using one of the buttons on the phone. Here is my Final version of the first page of the Insurance Application:</p>
<div id="attachment_288" class="wp-caption alignnone" style="width: 146px"><img class="size-medium wp-image-288" title="Insurance Application" src="http://davidleverton.files.wordpress.com/2009/02/insurance1.jpg?w=136&#038;h=300" alt="Insurance Application First Screen" width="136" height="300" /><p class="wp-caption-text">Insurance Application First Screen</p></div>
<p>As you can see there is also a Save command at the bottom too, this command should take you to a new form which displays all of the information entered. This is as simple as creating a new Form and adding StringItems to it, a StringItem is a basic label which can not be altered and just displays text. Once all of the StringItems have been set up with the text entered into the textfields on the first form they can then be appended and the new Form can then be displayed to the screen. This is the final result:</p>
<div id="attachment_289" class="wp-caption alignnone" style="width: 282px"><img class="size-medium wp-image-289" title="Insurance Application Final" src="http://davidleverton.files.wordpress.com/2009/02/insurance2.jpg?w=272&#038;h=300" alt="Insurance Application Final" width="272" height="300" /><p class="wp-caption-text">Insurance Application Final</p></div>
<p>This is quite a basic start but we will soon be moving into Graphics and eventually making a game! I will keep you posted.</p>
<br />Posted in Mobile Development Tagged: Computer, Games, Mobile Development, Programming <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/davidleverton.wordpress.com/287/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/davidleverton.wordpress.com/287/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/davidleverton.wordpress.com/287/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/davidleverton.wordpress.com/287/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/davidleverton.wordpress.com/287/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/davidleverton.wordpress.com/287/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/davidleverton.wordpress.com/287/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/davidleverton.wordpress.com/287/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/davidleverton.wordpress.com/287/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/davidleverton.wordpress.com/287/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/davidleverton.wordpress.com/287/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/davidleverton.wordpress.com/287/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/davidleverton.wordpress.com/287/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/davidleverton.wordpress.com/287/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=davidleverton.wordpress.com&amp;blog=5028508&amp;post=287&amp;subd=davidleverton&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://davidleverton.wordpress.com/2009/02/14/mobile-development-intro-week-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/aa5c1a9e693828b01486cdca41e14298?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidleverton</media:title>
		</media:content>

		<media:content url="http://davidleverton.files.wordpress.com/2009/02/insurance1.jpg?w=136" medium="image">
			<media:title type="html">Insurance Application</media:title>
		</media:content>

		<media:content url="http://davidleverton.files.wordpress.com/2009/02/insurance2.jpg?w=272" medium="image">
			<media:title type="html">Insurance Application Final</media:title>
		</media:content>
	</item>
		<item>
		<title>Week 2 Continued &#8211; Terrain Lighting</title>
		<link>http://davidleverton.wordpress.com/2009/02/13/week-2-continued-terrain-lighting/</link>
		<comments>http://davidleverton.wordpress.com/2009/02/13/week-2-continued-terrain-lighting/#comments</comments>
		<pubDate>Fri, 13 Feb 2009 21:47:36 +0000</pubDate>
		<dc:creator>Dave Leverton</dc:creator>
				<category><![CDATA[Interactive 3D Graphics Programming]]></category>
		<category><![CDATA[Computer]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://davidleverton.wordpress.com/?p=317</guid>
		<description><![CDATA[As stated in the previous post there are many different ways to light terrain other than hardware based lighting. Over the past few days I have been implementing a 2 more ways to light terrain, both of which would be a lot less expensive to compute on the fly but they both have their downfalls! [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=davidleverton.wordpress.com&amp;blog=5028508&amp;post=317&amp;subd=davidleverton&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>As stated in the previous post there are many different ways to light terrain other than hardware based lighting. Over the past few days I have been implementing a 2 more ways to light terrain, both of which would be a lot less expensive to compute on the fly but they both have their downfalls!</p>
<h2>Height Based Lighting</h2>
<p>Height based lighting is very straight forward and easy to implement it is basically just getting the height of the terrain at the vertex and then normalising the value between 0 and 1. This value is then used as the R, G and B values for the color of the terrain, and with lighting turned off the result is visible:</p>
<div id="attachment_318" class="wp-caption alignnone" style="width: 310px"><img class="size-medium wp-image-318" title="Height based Lighting" src="http://davidleverton.files.wordpress.com/2009/03/textures-2009-03-09-21-48-58-06.jpg?w=300&#038;h=217" alt="Height Based Lighting" width="300" height="217" /><p class="wp-caption-text">Height Based Lighting</p></div>
<p>As you can see the result is not the best if you want to light a terrain correctly but the result is quite nice and could be quite useful if for example you are creating terrain that is under water, the lower you get the darker it gets.</p>
<h2>Slope Lighting</h2>
<p>Slope Lighting is a little bit more complicated. The way it works is that the colour of a vertex is worked out from the height of the vertex in front of it. By in front i mean that the vertex is in between the light source and its position. Using Slope Lighting like this has a major downfall in which you can only specify light at 45 degree intervals (45, 90, 135, 180 etc&#8230;). The reason for this is if you think about a Grid, each vertex is surrounded by 8 other vertices arranged at 45 degree angles, so if you are using these other vertices to work out the height in that direction you can only specify 45 degree intervals. The result is much better than the Height Based Lighting for creating realistic terrain but it not yet as good as Hardware Based Lighting! Here are the results:</p>
<div id="attachment_319" class="wp-caption alignnone" style="width: 310px"><img class="size-medium wp-image-319" title="Slope Lighting" src="http://davidleverton.files.wordpress.com/2009/03/textures-2009-03-09-21-50-30-04.jpg?w=300&#038;h=217" alt="Slope Lighting" width="300" height="217" /><p class="wp-caption-text">Slope Lighting</p></div>
<p>As you can see the results are slightly off from what you would expect but the final lighting is not too bad, with a bit of texture on the terrain this would hardly be noticeable, which is a good thing as it is much cheaper than Hardware Lighting as the Colors of the verts are set at initialization.</p>
<br />Posted in Interactive 3D Graphics Programming Tagged: Computer, Games, Interactive 3D Graphics Programming, Programming <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/davidleverton.wordpress.com/317/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/davidleverton.wordpress.com/317/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/davidleverton.wordpress.com/317/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/davidleverton.wordpress.com/317/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/davidleverton.wordpress.com/317/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/davidleverton.wordpress.com/317/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/davidleverton.wordpress.com/317/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/davidleverton.wordpress.com/317/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/davidleverton.wordpress.com/317/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/davidleverton.wordpress.com/317/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/davidleverton.wordpress.com/317/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/davidleverton.wordpress.com/317/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/davidleverton.wordpress.com/317/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/davidleverton.wordpress.com/317/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=davidleverton.wordpress.com&amp;blog=5028508&amp;post=317&amp;subd=davidleverton&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://davidleverton.wordpress.com/2009/02/13/week-2-continued-terrain-lighting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/aa5c1a9e693828b01486cdca41e14298?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">davidleverton</media:title>
		</media:content>

		<media:content url="http://davidleverton.files.wordpress.com/2009/03/textures-2009-03-09-21-48-58-06.jpg?w=300" medium="image">
			<media:title type="html">Height based Lighting</media:title>
		</media:content>

		<media:content url="http://davidleverton.files.wordpress.com/2009/03/textures-2009-03-09-21-50-30-04.jpg?w=300" medium="image">
			<media:title type="html">Slope Lighting</media:title>
		</media:content>
	</item>
	</channel>
</rss>
