<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link rel="hub" href="http://tumblr.superfeedr.com/" xmlns:atom="http://www.w3.org/2005/Atom"/><description>I’m a lead developer at Divine Robot. I got 15 years of development behind me, all done on a Mac. Now it’s time for something new; we’re porting our best selling game, Blobster, to the Windows Phone platform. I hope I live to tell the tale.</description><title>Divine Robot Dev</title><generator>Tumblr (3.0; @divinedev)</generator><link>http://divinedev.tumblr.com/</link><item><title>Progress! The Blobster scenes now loads and transforms...</title><description>&lt;img src="http://25.media.tumblr.com/tumblr_m1k8353TEp1r7ts9po1_500.png"/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;Progress! The Blobster scenes now loads and transforms semi-correct and in the foreground is the first render of Blobster himself. So far I have been using SpriteBatches for all images but since Blobster is blobby I have to draw him with triangles to be able to distort the image. Next up is trying to match the transforms of spriteBatches with the transforms of 3D drawing.&lt;/p&gt;</description><link>http://divinedev.tumblr.com/post/20020888612</link><guid>http://divinedev.tumblr.com/post/20020888612</guid><pubDate>Tue, 27 Mar 2012 16:11:29 -0400</pubDate></item><item><title>Some useful links for textured triangles</title><description>&lt;p&gt;General tutorial on XNA: &lt;a href="http://www.riemers.net/eng/Tutorials/XNA/Csharp/series1.php"&gt;Riemer&amp;#8217;s XNA Tutorials&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Useful example on how to render textured triangles:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.charlespetzold.com/blog/2010/03/Using-VertexPositionTexture-on-Windows-Phone.html"&gt;&lt;a href="http://www.charlespetzold.com/blog/2010/03/Using-VertexPositionTexture-on-Windows-Phone.html"&gt;http://www.charlespetzold.com/blog/2010/03/Using-VertexPositionTexture-on-Windows-Phone.html&lt;/a&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;(and if your game just silently stops without notice in the emulator, read the comment on debugging tips - this happened to me. Luckily I found this page quite early)&lt;/p&gt;</description><link>http://divinedev.tumblr.com/post/20020480588</link><guid>http://divinedev.tumblr.com/post/20020480588</guid><pubDate>Tue, 27 Mar 2012 16:03:59 -0400</pubDate><category>WP7</category><category>textures</category><category>triangles</category><category>XNA</category></item><item><title>Buggy</title><description>&lt;p&gt;I figured Xcode was buggy but I actually think Visual Studio takes the price&amp;#8230; Today I&amp;#8217;ve had three or four random hangs, including one blue screen, several times when the emulator randomly doesn&amp;#8217;t start and a few occasions where I can&amp;#8217;t write anything. Don&amp;#8217;t know if it&amp;#8217;s an Mac/Boot camp issue, but it&amp;#8217;s a totally clean install.&lt;/p&gt;</description><link>http://divinedev.tumblr.com/post/20011016802</link><guid>http://divinedev.tumblr.com/post/20011016802</guid><pubDate>Tue, 27 Mar 2012 11:56:13 -0400</pubDate><category>visualstudio</category><category>xcode</category><category>buggy</category></item><item><title>Wohoo! It may not look like much but it’s the first scene...</title><description>&lt;img src="http://25.media.tumblr.com/tumblr_m1ij41zvyK1r7ts9po1_500.png"/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;Wohoo! It may not look like much but it’s the first scene from Blobster loaded and displayed on WP7. Time to start on those transforms…&lt;/p&gt;</description><link>http://divinedev.tumblr.com/post/19973317137</link><guid>http://divinedev.tumblr.com/post/19973317137</guid><pubDate>Mon, 26 Mar 2012 18:14:25 -0400</pubDate><category>WP7</category><category>blobster</category><category>port</category></item><item><title>Impressions so far</title><description>&lt;p&gt;I have been working for a few weeks now with WP7, unfortunately mostly in bursts between other projects. With the short amount of time I&amp;#8217;ve had at my disposal, I&amp;#8217;ve managed to do all the asset management, load all our material from the Blobster iPhone version without conversion, integrated the physics engine and gotten a basic display engine working. I&amp;#8217;m really close to actually loading and displaying a scene now! &lt;/p&gt;
&lt;p&gt;So far it&amp;#8217;s been surprisingly smooth sailing. The documentation works fine and there&amp;#8217;s a lot of example code available. If you are used to Cocoa, it&amp;#8217;s easy to find and work with the bread and butter stuff like arrays, dictionaries and string manipulations. Other stuff is obviously harder to find and works somewhat differently (like working with threads) but no real showstoppers so far.&lt;/p&gt;
&lt;p&gt;Coming from C/Objective C, C# feels a bit like a toy language. No pointers? No retain/release? Malloc? Locks? (These may actually be needed, not sure about that yet&amp;#8230;) Of course this is one of the reasons why it&amp;#8217;s so easy to pick up. However, being a control freak it&amp;#8217;s sometimes hard to just trust the system to do the right thing.&lt;/p&gt;
&lt;p&gt;The biggest frustration has been my general awkwardness with the Windows platform, especially the text editing but I &lt;a href="http://divinedev.tumblr.com/post/18674387738/text-editing-revisited"&gt;semi-solved that&lt;/a&gt;. Another frustration has been the different API:s and &lt;a href="http://divinedev.tumblr.com/post/17911309541/reading-text-files"&gt;knowing what works when&lt;/a&gt;. But all in all, everything has been easier than expected.&lt;/p&gt;
&lt;p&gt;My biggest future concern is still that of performance, we had a hard time with some of the levels in the iPhone version, and I&amp;#8217;m far from convinced that you can get the same speed without dropping into C. I&amp;#8217;m counting on the fact that the WP7 phones we&amp;#8217;re targeting are a few generations ahead when it comes to hardware and hopefully it will compensate. Time will tell.&lt;/p&gt;</description><link>http://divinedev.tumblr.com/post/18943483000</link><guid>http://divinedev.tumblr.com/post/18943483000</guid><pubDate>Thu, 08 Mar 2012 05:25:00 -0500</pubDate><category>WP7</category><category>csharp</category><category>Cocoa</category></item><item><title>Text editing revisited</title><description>&lt;p&gt;After struggling to learn the key commands in Windows I finally gave up and installed SharpKeys &lt;a href="http://www.randyrants.com/2006/07/sharpkeys_211.html"&gt;&lt;a href="http://www.randyrants.com/2006/07/sharpkeys_211.html"&gt;http://www.randyrants.com/2006/07/sharpkeys_211.html&lt;/a&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I assigned the cmd key to the ctrl key (and didn&amp;#8217;t bother with the &amp;#8220;Windows&amp;#8221;-key, who uses that?) Also, I switched the left and right alt keys, since I always use the left alt key to type {}[]. No more Start menu popping up every time I want to move the cursor by a word. My coding speed just went up by about six kazillion percent.&lt;/p&gt;
&lt;p&gt;Although I guess it&amp;#8217;s better to just bite the bullet if you&amp;#8217;re supposed to switch full time my problem is that most of my coding is still done on the Mac and this was driving me crazy.&lt;/p&gt;</description><link>http://divinedev.tumblr.com/post/18674387738</link><guid>http://divinedev.tumblr.com/post/18674387738</guid><pubDate>Sat, 03 Mar 2012 13:46:24 -0500</pubDate><category>wp7</category><category>bootcamp</category><category>keyboard</category><category>sharpkeys</category></item><item><title>Reading text files</title><description>&lt;p&gt;As a beginner, it&amp;#8217;s really hard to figure out if stuff you find when searching is applicable for the technology I&amp;#8217;m using - C#/XNA for WP7. This differs slightly - not enough for an untrained eye to see - from stuff that works for standard C#, C# for Windows, Silverlight&amp;#8230; The end result is that you try a lot of simple things and they don&amp;#8217;t work, even though you copy and paste source code directly from a web page.&lt;/p&gt;
&lt;p&gt;I imagine it&amp;#8217;s much the same as seeing the difference between Cocoa and Cocoa Touch.&lt;/p&gt;
&lt;p&gt;That was what happened when I tried a seemingly very simple thing: Reading a bundled text file. Should be a piece of cake, but took me two hours to actually find something that worked.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://asadsiddiqi.wordpress.com/2011/01/24/reading-files-for-windows-phone-7/" title="Reading text files" target="_blank"&gt;This page&lt;/a&gt; describes exactly how to do it in XNA, and it works for me.&lt;/p&gt;</description><link>http://divinedev.tumblr.com/post/17911309541</link><guid>http://divinedev.tumblr.com/post/17911309541</guid><pubDate>Sun, 19 Feb 2012 18:31:00 -0500</pubDate><category>wp7</category><category>xna</category><category>plist</category><category>csharp</category></item><item><title>Reading plists, continued</title><description>&lt;p&gt;Still working on reading plists properly. &lt;a href="http://divinedev.tumblr.com/post/17364538925/reading-plists"&gt;Earlier &lt;/a&gt;I had a solution by converting them to standard XML with XSLT. Then realized that there are more than a hundred plists included in our game. Having to convert all of them, and keep converting them for every change we make, didn&amp;#8217;t seem feasible.&lt;/p&gt;
&lt;p&gt;After further research, I found some libraries that were supposed to read plists directly and convert them into something sensible. Most didn&amp;#8217;t work with WP7, but then I found &lt;a href="http://codetitans.codeplex.com/" title="CodeTitals"&gt;CodeTitans&lt;/a&gt; who has a library for just that purpose. I&amp;#8217;m going to test this and report progress.&lt;/p&gt;
&lt;p&gt;And for the absolute beginner: To add a library (dll) into your project:&lt;/p&gt;
&lt;p&gt;- In your project, right-click the project icon. Select &amp;#8220;Add reference&amp;#8230;&amp;#8221;&lt;/p&gt;
&lt;p&gt;- Select &amp;#8220;Browse&amp;#8221; in the popup window. Locate your dll, in this case &amp;#8220;CodeTitans.Phone.Core.dll&amp;#8221;. Done.&lt;/p&gt;</description><link>http://divinedev.tumblr.com/post/17909523181</link><guid>http://divinedev.tumblr.com/post/17909523181</guid><pubDate>Sun, 19 Feb 2012 18:00:00 -0500</pubDate><category>plists</category><category>Cocoa</category><category>CodeTitans</category><category>plist</category><category>wp7</category></item><item><title>Utter madness...</title><description>&lt;p&gt;Today I wanted to download something to expand .rar files with. I got an insight into a completely mad world. First, I got to a download page with a few free options, guaranteed &amp;#8220;virus free&amp;#8221;. Just one problem; in order to download anything from the site I needed to first download and install a &amp;#8220;download enhancer&amp;#8221;&amp;#8230; No thanks. After some additional searching I settled for WinZip, since it&amp;#8217;s something I at least have heard about. Downloaded and installed it. During the installation I got the offer of no less than three extra things that I didn&amp;#8217;t ask for. A browser toolbar. A security check something. A speed scan software. All were selected to install by default.&lt;/p&gt;
&lt;p&gt;And this is for an evaluation version of a software that I&amp;#8217;m supposed to pay for! If this is some kind of measure on how software on Windows works, this platform is in trouble. Every single computer must be absolutely crammed with various crapware. &lt;/p&gt;</description><link>http://divinedev.tumblr.com/post/17825491566</link><guid>http://divinedev.tumblr.com/post/17825491566</guid><pubDate>Sat, 18 Feb 2012 11:08:00 -0500</pubDate></item><item><title>Good news and a tough decision...</title><description>&lt;p&gt;The good news is that Cocos2D is now being &lt;a href="http://www.cocos2d-iphone.org/archives/1801" title="Cocos2D" target="_blank"&gt;ported to WP7&lt;/a&gt;!&lt;/p&gt;
&lt;p&gt;So, what to do? &lt;a href="http://www.divinerobot.com/products.php" title="Blobster" target="_blank"&gt;Blobster&lt;/a&gt; uses a custom display engine. I&amp;#8217;m about a quarter done porting the asset manager and display manager of that engine to WP7, but there is a lot left to do and frankly I don&amp;#8217;t really know what I&amp;#8217;m doing. Our first game, &lt;a href="http://www.divinerobot.com/products.php" title="Eveningstar" target="_blank"&gt;Eveningstar&lt;/a&gt;, uses Cocos2D for iPhone so I&amp;#8217;m at least somewhat familiar with it.&lt;/p&gt;
&lt;p&gt;On one hand; use the custom display engine with full control, good knowledge of the source code and close parity to the original Blobster. Not having to use a library that isn&amp;#8217;t done yet, with probably many hard to find bugs and a lot of features I don&amp;#8217;t need.&lt;/p&gt;
&lt;p&gt;On the other hand; A quarter of the porting will be done in an instant and the platform will be optimised by people that (hopefully) know a lot more of WP7 than I do. If we&amp;#8217;re doing a future port to Android, chances are pretty good that we&amp;#8217;ll use Cocos2D for it.&lt;/p&gt;
&lt;p&gt;I&amp;#8217;m actually leaning towards the first alternative since I&amp;#8217;m somewhat of a control freak and want to do code my way. It&amp;#8217;s much more easy to optimise a small custom engine to my needs. Also, it&amp;#8217;s a very good way of learning WP7. The only thing that really makes me think about the second alternative is the thought of using Cocos2D X for iPhone/Android and Cocos2D XNA for WP7 - this would give us an easily maintainable cross platform code base. Hmmmm&amp;#8230;.&lt;/p&gt;</description><link>http://divinedev.tumblr.com/post/17816798688</link><guid>http://divinedev.tumblr.com/post/17816798688</guid><pubDate>Sat, 18 Feb 2012 06:25:00 -0500</pubDate><category>wp7</category><category>cocos2D</category><category>Blobster</category></item><item><title>Reading Plists</title><description>&lt;p&gt;A lot of the material we have for Blobster are stored in plists. Reading plists on WP7 poses a problem since, while they are are standard XML, the format isn&amp;#8217;t exactly friendly to parse without the help from Cocoa:s helper classes. &lt;a href="http://en.wikipedia.org/wiki/XSLT" title="XSLT" target="_blank"&gt;XSLT&lt;/a&gt; to the rescue. I don&amp;#8217;t know much about this, but basically it&amp;#8217;s a language to transform one XML format to another.&lt;/p&gt;
&lt;p&gt;I found &lt;a href="http://ditchnet.org/xslpalette/" title="XSLPalette"&gt;XSLPalette&lt;/a&gt; to do the transforms locally on the Mac, and on &lt;a href="http://php.undmedlibrary.org/manual/el/ref.xslt.php" title="plist converter"&gt;this page&lt;/a&gt; I found an xslt script to convert plists into something more readable. &lt;/p&gt;
&lt;p&gt;Edit: See &amp;#8220;&lt;a href="http://divinedev.tumblr.com/post/17909523181/reading-plists-continued"&gt;Reading plists, continued&lt;/a&gt;&amp;#8221; for further info&lt;/p&gt;</description><link>http://divinedev.tumblr.com/post/17364538925</link><guid>http://divinedev.tumblr.com/post/17364538925</guid><pubDate>Fri, 10 Feb 2012 03:01:00 -0500</pubDate><category>wp7</category><category>xml</category><category>xslt</category><category>plist</category><category>cocoa</category></item><item><title>Text editing</title><description>&lt;p&gt;Two full days of coding in Visual Studio, and I&amp;#8217;m going crazy. Don&amp;#8217;t get me wrong, there&amp;#8217;s nothing wrong with Visual Studio, but I got 15 years of coding on the Mac behind me. All those small things, like how to get to the end of the line or how to select one word only, are set deep in my muscle memory. My coding speed is down to nothing. Add to that the fact that I have to google (or &amp;#8220;bing&amp;#8221; perhaps?) every third word I write, and you realize that this isn&amp;#8217;t exactly fast going. Anybody know if there is a way to configure Windows/Visual Studio text editing to work exactly like XCode or BBEdit?&lt;/p&gt;</description><link>http://divinedev.tumblr.com/post/17331722906</link><guid>http://divinedev.tumblr.com/post/17331722906</guid><pubDate>Thu, 09 Feb 2012 15:55:09 -0500</pubDate><category>wp7</category><category>visualStudio</category><category>Xcode</category><category>BBEdit</category></item><item><title>Phone performance testing</title><description>&lt;p&gt;Now for some real life testing! As I mentioned before, the emulator was a bit performance challenged when it came to XNA. This got me a bit nervous as to whether the WP7 platform was up to the speed I needed. Now testing with a Nokia Lumia 800, and the future looks a lot better! I tried a few of the demos in the Farseer Physics engine, and was relieved to see that it stayed at a steady 30 fps. This I can work with.&lt;/p&gt;</description><link>http://divinedev.tumblr.com/post/17259070162</link><guid>http://divinedev.tumblr.com/post/17259070162</guid><pubDate>Wed, 08 Feb 2012 05:03:00 -0500</pubDate><category>wp7</category></item><item><title>Registered</title><description>&lt;p&gt;Finally got myself registered with a paid developer account after two days of desperately clicking around in random locations and talking to phone support (after Microsoft refused all my credit cards). I was going to rant about it, but then I remembered the time when I tried to register as an Apple developer. This was nothing.&lt;/p&gt;</description><link>http://divinedev.tumblr.com/post/17258927405</link><guid>http://divinedev.tumblr.com/post/17258927405</guid><pubDate>Wed, 08 Feb 2012 04:54:00 -0500</pubDate><category>wp7</category></item><item><title>Farseer Physics</title><description>&lt;p&gt;Tutorial to link in Farseer physics for absolute beginners:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.flatredball.com/frb/docs/index.php?title=FlatRedBallXna:Tutorials:Farseer"&gt;http://www.flatredball.com/frb/docs/index.php?title=FlatRedBallXna:Tutorials:Farseer&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;(Farseer is a port of Box2D for WP7)&lt;/p&gt;</description><link>http://divinedev.tumblr.com/post/13977110555</link><guid>http://divinedev.tumblr.com/post/13977110555</guid><pubDate>Fri, 09 Dec 2011 14:35:00 -0500</pubDate><category>wp7</category><category>farseer</category><category>physics</category></item><item><title>Emulator and XNA?</title><description>&lt;p&gt;This makes me a bit nervous. In the emulator I got two (2!) sprites running at 30fps, and it can&amp;#8217;t handle it. Does this mean I can&amp;#8217;t use the emulator at all for any kind of game development? Or perhaps I missed the &amp;#8220;go faster&amp;#8221; switch somewhere? I obviously have to get a real phone sooner rather than later. WP7 can actually do games, right?&lt;/p&gt;</description><link>http://divinedev.tumblr.com/post/13677704949</link><guid>http://divinedev.tumblr.com/post/13677704949</guid><pubDate>Sat, 03 Dec 2011 09:07:00 -0500</pubDate><category>wp7</category></item><item><title>Success! Not much to look at but it’s a start.</title><description>&lt;img src="http://25.media.tumblr.com/tumblr_lvmsa0aYSZ1r7ts9po1_500.png"/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;Success! Not much to look at but it’s a start.&lt;/p&gt;</description><link>http://divinedev.tumblr.com/post/13677547319</link><guid>http://divinedev.tumblr.com/post/13677547319</guid><pubDate>Sat, 03 Dec 2011 09:01:12 -0500</pubDate></item><item><title>Redo</title><description>&lt;p&gt;I reinstalled everything using Boot Camp instead of Fusion. Downloaded some example code from http://farseerphysics.codeplex.com/ to test the physics engine. (I&amp;#8217;m not the person who do tutorials or read instructions&amp;#8230;)&lt;/p&gt;
&lt;p&gt;Project loaded and compiled as far as I can tell but then nothing&amp;#8230; The &amp;#8220;Windows Phone 7 Emulator&amp;#8221; button is disabled, the &amp;#8220;Run&amp;#8221; button is disabled. I poked around a bit but couldn&amp;#8217;t find any immediate settings to change. For me, this is the worst part of learning a new tool or language. I just want to start coding, but you have to spend so much time finding build settings or preferences or whatever. Oh well, time for a tutorial then.&lt;/p&gt;</description><link>http://divinedev.tumblr.com/post/13677358862</link><guid>http://divinedev.tumblr.com/post/13677358862</guid><pubDate>Sat, 03 Dec 2011 08:53:39 -0500</pubDate></item><item><title>First problem</title><description>&lt;p&gt;OK, got Windows and Visual Studio installed. Downloaded some example code and tried to make it run on the emulator. But apparently the emulator can&amp;#8217;t run XNA stuff under VMWare Fusion - it complains about the the graphics card and refuses to run, and it makes sense I suppose. Tried to switch my MacBook to use the more powerful graphics card, tried running Windows in full screen but was unsuccessful. Anyone got this to work?&lt;/p&gt;
&lt;p&gt;So, time for plan B: Bootcamp. Unfortunate, but I suppose I would want that anyways for performance once I start some serious coding.&lt;/p&gt;</description><link>http://divinedev.tumblr.com/post/13540508095</link><guid>http://divinedev.tumblr.com/post/13540508095</guid><pubDate>Wed, 30 Nov 2011 04:25:44 -0500</pubDate></item><item><title>Dear Microsoft...</title><description>&lt;p&gt;Why do you give me complicated error dialogs with text that I can&amp;#8217;t copy and links that I can&amp;#8217;t click?&lt;/p&gt;</description><link>http://divinedev.tumblr.com/post/13511399469</link><guid>http://divinedev.tumblr.com/post/13511399469</guid><pubDate>Tue, 29 Nov 2011 15:59:26 -0500</pubDate></item></channel></rss>
