<?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>digitalbreed &#187; Game Development</title>
	<atom:link href="http://digitalbreed.com/tag/game-development/feed" rel="self" type="application/rss+xml" />
	<link>http://digitalbreed.com</link>
	<description>matthias gall - product architect</description>
	<lastBuildDate>Sat, 31 Mar 2012 11:19:27 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Android Game Development (Day 5)</title>
		<link>http://digitalbreed.com/2010/android-game-development-day-5</link>
		<comments>http://digitalbreed.com/2010/android-game-development-day-5#comments</comments>
		<pubDate>Sun, 27 Jun 2010 12:43:19 +0000</pubDate>
		<dc:creator>matt</dc:creator>
				<category><![CDATA[Game Development]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[gamedev]]></category>

		<guid isPermaLink="false">http://digitalbreed.com/?p=686</guid>
		<description><![CDATA[Day #5, Sunday, June 27th. Here&#8217;s the rough concept for timed events I already mentioned in my last posting. It&#8217;s working for now, but I&#8217;ll do some more tweaks to abstract this even further and make it more flexible. Android Game Development &#8211; Steps 4-5 from Matthias Gall on Vimeo. Keep reading below if you’re interested in today’s progress. Comments are welcome! In case you missed it, also don’t forget to read the reports on my steps in Android game development: Steps 1-3 and Step 4. The diagram shows how timed events integrate into the component system. There&#8217;s one dedicated component TimedEventHandlerComponent which allows attaching a list of events which itself contain a timestamp, denoting the time in the game when the event is to be executed. For level creation, I create an invisible GameObject for the active level, currently consisting only of the TimedEventHandlerComponent and a bunch of TimedSpawnEvents. These contain the name of the object to spawn and it&#8217;s starting position and velocity. Once an event is executed, it makes use of the GameObjectFactory to create the object to spawn and the GameObjectManager to add it into the object lifecycle. First, let&#8217;s look at the advantages of the status quo. One great thing is that you not only can spawn any game object any time you want, but also can make up events which temporarily disable player controls, display texts or dialogs, make the player move in a predefined way,&#8230; As intended, such time-based stuff is great for level and cutscene design where the order of events is predefined. But that&#8217;s just the first step. Binding an event to a certain time is only one way to trigger an event. An event could also be executed due to the player hitting a certain hotspot, the player reaching a ...]]></description>
		<wfw:commentRss>http://digitalbreed.com/2010/android-game-development-day-5/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Android Game Development (Day 4)</title>
		<link>http://digitalbreed.com/2010/android-game-development-day-4</link>
		<comments>http://digitalbreed.com/2010/android-game-development-day-4#comments</comments>
		<pubDate>Sun, 27 Jun 2010 01:16:05 +0000</pubDate>
		<dc:creator>matt</dc:creator>
				<category><![CDATA[Game Development]]></category>
		<category><![CDATA[Miscellaneous]]></category>
		<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[gamedev]]></category>

		<guid isPermaLink="false">http://digitalbreed.com/?p=665</guid>
		<description><![CDATA[Day #4, Saturday, June 26th. Keep reading below if you&#8217;re interested in today&#8217;s progress. Comments are welcome! In case you missed it, also don&#8217;t forget to read the report on my first three steps in Android game development. Today, I studied the source code of Replica Island and I cannot deny that some bits and pieces were quite inspiring. Particularly, I liked how Chris sets up his pool of game object components and I reimplemented basically the same solution. This leaves a negative connotation for me but there&#8217;s really no better solution I could come up with myself. The only extension I would like to make in the future is to use a more data-driven system for building game objects (e.g. reading them from XMLs) in order to leave more freedom to a game designer who does not necessarily have to be the programmer at the same time. But that&#8217;s certainly nothing for a first, small Android game. I also found patterns I already used elsewhere, like wrapping the OpenGL state in order to avoid unnecessary calls to glBindTexture if the texture was already bound, etc. Besides the game object and component pooling, I worked on the player&#8217;s weapon system. I abstracted this into a component which queries the input system&#8217;s trackball state and creates a projectile game object in a given interval if the trackball is pressed. The different weapons now simply differ in parameters like projectile name, position offset and firing rate, but the underlying implementation is the same. The projectiles emitted by the weapons, however, may be very different since they may have different movement controllers attached later (already looking forward to implementing some kind of homing missile). Projectiles which don&#8217;t hit should be released to the game object pool, so I created a DestroyGameObjectComponent which checks ...]]></description>
		<wfw:commentRss>http://digitalbreed.com/2010/android-game-development-day-4/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Android Game Development</title>
		<link>http://digitalbreed.com/2010/android-game-development</link>
		<comments>http://digitalbreed.com/2010/android-game-development#comments</comments>
		<pubDate>Sat, 26 Jun 2010 01:10:38 +0000</pubDate>
		<dc:creator>matt</dc:creator>
				<category><![CDATA[Game Development]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[gamedev]]></category>
		<category><![CDATA[java]]></category>

		<guid isPermaLink="false">http://digitalbreed.com/?p=651</guid>
		<description><![CDATA[I&#8217;m building rather boring enterprise applications at work and I love creating more appealing things in my spare time, so I do a bit of game development whenever I can. The main problem for a programmer is to get some graphics, but fortunately I have some nice renderings from my old Project E tutorial and the even older Project D game by sechsta sinn on my harddisk that I could put into use (all done by my friend and favorite artist Martin Ernst, btw.). This is what I managed to do in three after work sessions so far, if you&#8217;re interested in the details, continue reading after the video. Android Game Development &#8211; Steps 1-3 from Matthias Gall on Vimeo. I was worrying about my HTC Hero for quite some time now since HTC has repeatedly postponed the overdue 2.1 update and announced that this one-year-old phone won&#8217;t ever receive an official 2.2 update from HTC at all. So, I was playing around with my mobile quite often in the last days. Moreover, I watched the Google I/O sessions, including Chris Pruett&#8217;s session on Android game development which I mentioned earlier in this blog. These are just two reasons why I finally started coding. Here&#8217;s how I made progress so far. 1. Evening #1, Tuesday, June 23rd. Development environment setup, project setup, starting Activity created, first deployment to Android phone. Read some articles regarding Android gamedev. Collected graphics to use. Decided not to separate rendering and game logic threads for a start. Hooray, let the fun begin. 2. Evening #2, Thursday, June 25th. Implemented a simple game object and component management system. Converted old BMP graphics to PNGs and applied true alpha-transparency. Implemented a scrolling sky and a static glider to have some eye candy. Recognized that the original HUD ...]]></description>
		<wfw:commentRss>http://digitalbreed.com/2010/android-game-development/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

