Posts
67
Comments
120
Trackbacks
0
xna
Posts about or related to the XNA Game Studio (http://create.msdn.com/).
Guncraft on Kickstarter - Last Chance this weekend!
Andy Dunn, known far and wide as The Zman (accept no substitutes) has been a strong supporter of the XNA community for many years now (and the Managed DirectX community before that). This coming Sunday at 9:41 pm EDT (UTC + 4) the Kickstarter project for the game, Guncraft, (on which he is the Lead Programmer) comes to a close. They’ve garnered pledges in the amount of $15,375 at the time I’m writing this. The project must meet a funding target of $16,000 by the aforementioned deadline. I think this ......
Posted On Saturday, March 24, 2012 12:51 AM | Comments (0)
Dream.Build.Play 2012 Registration Now Open!
Registration for this year’s Dream.Build.Play competition is now open! Head over to https://www.dreambuildplay.... for more information and to register. This year’s DBP includes not only Xbox 360 games but also Windows Phone games as well. So you can develop for either or both! Like last year, I’ve created an unofficial countdown clock for the end of the submission period. Check it out here: http://www.bobtacoindustrie... . But don’t wait until the last minute to submit ......
Posted On Monday, March 5, 2012 3:24 PM | Comments (0)
Getting started with Metro style DirectX
A little more than three months ago, Microsoft hosted the //build/ conference at which they unveiled the upcoming version of Windows (commonly called Windows 8, though I don’t know if the marketing folks have accepted the fact that that is the name most of us are expecting for it yet). They released to the developer world a build of it called the Windows Developer Preview (and Windows Server Developer Preview) along with various tools for creating the new “Metro style” apps. I wasn’t able to make ......
Posted On Saturday, December 31, 2011 4:06 AM | Comments (1)
Interpolation Sample for XNA
One thing I’ve always enjoyed in Silverlight/WPF are the easing functions ( http://msdn.microsoft.com/e... ). The easing functions are commonly used to provide interesting looking animations via key frame-based interpolation. XNA has a few, limited bits of interpolation built in (primarily Lerp (i.e. linear interpolation) and SmoothStep (i.e. cubic interpolation)). For a sprite animation project that I’ve since set aside (it’s not dead, but it’s been back-burnered for a while ......
Posted On Saturday, August 6, 2011 3:23 PM | Comments (0)
Dxt Conversion Content Pipeline Extension Sample
I’ve been slowly creating a new WP7 game over these past few months. In the process, I began experimenting with Dxt compression. It’s a very nice feature, especially on the phone where high DPIs make Dxt’s artifacts less visible. One thing I didn’t like, though, was the way that XNA’s default Texture Processor handles resizing to power of two. When using Dxt compression with the Reach graphics profile, you need to use textures that are power of two sized (e.g. 32x64). Dxt itself requires that the ......
Posted On Monday, August 1, 2011 10:24 AM | Comments (2)
Welcoming Visual Basic Users to XNA
With the release of the Windows Phone Developer Tools 7.1 Beta, Visual Basic joins C# as a supported development language for XNA. I’ve been busily converting my samples to VB recently. They aren’t all done yet, but quite a few are (only three remain that I plan to convert). Rather than make anyone wait, I’ll share what I’ve completed so far and will add more when I have the remainder finished. Without further ado: Content Pipeline Extension Sample: VB Source Code – Related Blog Post DragAndDropGame: ......
Posted On Tuesday, May 24, 2011 6:30 PM | Comments (0)
XNA Custom Content Pipeline Extensions Sample
For the longest time, the Content Pipeline was a magic transmogrification device to me. I would add content to a content project and it would get mystically turned into stuff I would load in my game with ContentManager. A few months ago I decided it was time to put an end to its magical aspects and learn how it worked and how I could put it to work. I thought it would be helpful to share what I learned so I created a sample. This sample has two different custom extensions. The first is a complete ......
Posted On Sunday, May 8, 2011 2:33 AM | Comments (0)
XNA and VB: The Preparations Continue
I posted a little while ago about how, with XNA and VB becoming a supported scenario, I was starting down the road to learning VB. Just a brief update on that. If you ever need to learn another language, having practical tasks is a huge benefit. Something I’ve been making use of is Project Euler. Writing the solutions in different ways to intentionally make use of certain syntax features has helped me both internalize them and understand them. As a by-product, I managed to hack together a VB Windows ......
Posted On Wednesday, May 4, 2011 12:08 PM | Comments (0)
WP7 Games: Recommendations on Resuming
I realized that I’ve given several people recommendations on how to deal with resuming a game from tombstoning on Windows Phone 7 over Twitter in the past month or so. So I figured I would write up my thoughts on it. There is no perfect and objectively correct solution. But there are certain common sense things that I believe will help make every gamer’s experience great. First: Read these: http://msdn.microsoft.com/e... and http://create.msdn.com/en-U... ......
Posted On Thursday, April 14, 2011 11:44 PM | Comments (3)
I’m a Microsoft XNA/DirectX MVP!
Yesterday I found out that I have received a Microsoft MVP Award for XNA/DirectX for 2011. It is a distinct honor and quite humbling. I join the ranks of many great individuals whose contributions, encouragement, and help have had a profound impact on my life. I have greatly enjoyed my time helping others in the App Hub forums, on Twitter, and through this blog since I first discovered XNA a little more than a year ago. I look forward to the expanded opportunities I will have to help you realize ......
Posted On Saturday, April 2, 2011 1:17 AM | Comments (2)
Preparing Myself For XNA and VB
For anybody who might have missed the news, XNA is coming to Visual Basic. I’ll admit that my first reaction was to groan and grumble and mumble. But this is actually a very good thing. While nothing’s ever certain, the fact that Microsoft has spent time making Visual Basic a supported language in XNA Game Studio is a further sign of Microsoft’s long-term commitment to XNA. (Note that VB.NET with XNA is not an immediately available thing; it’s still a few months off as the original blog post notes). ......
Posted On Thursday, March 31, 2011 5:55 PM | Comments (1)
Drag and Drop in a Windows XNA Game
XNA Games in Windows are hosted within a Windows Forms Form. This allows you access to many special Windows-only features, such as drag and drop, provided that you know the right code to put in to get access to that form. Someone on the App Hub forums had asked earlier today about how to enable drag and drop for a Windows-only XNA game. Since it sounded like a neat thing to learn how to do, I coded up a quick sample to display it. As always, the code is heavily commented so that it should be easy ......
Posted On Sunday, March 27, 2011 2:05 PM | Comments (1)
XNA RenderTarget2D Sample
I remember being scared of render targets when I first started with XNA. They seemed like weird magic and I didn’t understand them at all. There’s nothing to be frightened of, though, and they are pretty easy to learn how to use. The first thing you need to know is that when you’re drawing in XNA, you aren’t actually drawing to the screen. Instead you’re drawing to this thing called the “back buffer”. Internally, XNA maintains two sections of graphics memory. Each one is exactly the same size as ......
Posted On Friday, February 18, 2011 1:11 PM | Comments (2)
List of Commonly Used Value Types in XNA Games
Most XNA programmers are concerned about generating garbage. More specifically about allocating GC-managed memory (GC stands for “garbage collector” and is both the name of the class that provides access to the garbage collector and an acronym for the garbage collector (as a concept) itself). Two of the major target platforms for XNA (Windows Phone 7 and Xbox 360) use variants of the .NET Compact Framework. On both variants, the GC runs under various circumstances (Windows Phone 7 and Xbox 360). ......
Posted On Thursday, February 17, 2011 4:19 AM | Comments (2)
Sprite Padding Using Guides in Gimp
Lately I’ve been doing a lot of drawing. A lot of it has been creating sprite animations for XNA projects. From many years of using it, I work primarily with Gimp. Some aspects of it frustrate me (mostly its awkward window management in Windows), but it suits my purposes well enough and lets me do things that other free solutions don’t. One thing I learned quite some time ago was that when including multiple items in a single texture (i.e a sprite sheet), you want to have some separation between ......
Posted On Thursday, March 24, 2011 3:43 AM | Comments (2)
AccelerometerInput XNA GameComponent
Bad accelerometer controls kill otherwise good games. I decided to try to do something about it. So I create an XNA GameComponent called AccelerometerInput. It’s still a beta project but you are welcome to try it, use it, modify it, etc. I’m releasing under the terms of the Microsoft Public License. Important info: First, it only supports tilt-style controls currently. I have not implemented motion-style controls yet (and make no promises as to when I might find time to do so). Second, I commented ......
Posted On Thursday, March 17, 2011 11:02 AM | Comments (0)
Tips for XNA WP7 Developers
There are several things any XNA developer should know/consider when coming to the Windows Phone 7 platform. This post assumes you are familiar with the XNA Framework and with the changes between XNA 3.1 and XNA 4.0. It’s not exhaustive; it’s simply a list of things I’ve gathered over time. I may come back and add to it over time, and I’m happy to add anything anyone else has experienced or learned as well. Display · The screen is either 800x480 or 480x800. · But you aren’t required to use only those ......
Posted On Thursday, March 10, 2011 10:03 PM | Comments (4)
CheckMemoryAllocationGame Sample
Many times I’ve found myself wondering how much GC memory some operation allocates. This is primarily in the context of XNA games due to the desire to avoid generating garbage and thus triggering a GC collection. Many times I’ve written simple programs to check allocations. I did it again recently. It occurred to me that many XNA developers find themselves asking this question from time to time. So I cleaned up my sample and published it on my website. Feel free to download it and put it to use. ......
Posted On Tuesday, March 1, 2011 11:30 AM | Comments (0)
XNA on the TechNet Wiki
Many months ago I came across an interesting Microsoft website, the TechNet Wiki, when I was looking for information about something that I can’t even remember anymore. I noticed at the time that its section on gaming technologies was sparse and even exchanged a few emails with one of the friendly Microsoft employees who contributes there regularly about some ideas I had for the site. I seem to recall mentioning my intentions to add some articles on XNA when I found the time but between one thing ......
Posted On Monday, February 7, 2011 3:06 PM | Comments (0)
DataContractSerializer: type is not serializable because it is not public?
I recently ran into an odd and annoying error when working with the DataContractSerializer class for a WP7 project. I thought I’d share it to save others who might encounter it the same annoyance I had. So I had an instance of ObservableCollection<T> that I was trying to serialize (with T being a class I wrote for the project) and whenever it would hit the code to save it, it would give me: The data contract type 'ProjectName.MyMagicItemsCl... is not serializable because it is not public. ......
Posted On Wednesday, December 29, 2010 9:14 AM | Comments (1)
Xbox360 and Guitar Controller Feedback
Anyone developing for XBLIG knows (or should know) that guitar controllers feedback data on certain analog GamePad inputs. This is why the Evil Checklist cautions against using thumbstick movement to determine control. But what data exactly does it feed? I wrote a quick test program to find out. The whammy bar when not pressed in at all feeds a steady -1.0f on the right thumbstick’s X channel. Pressing it in will steadily change it until (when pressed in all the way) it feeds 1.0f. (The thumbstick ......
Posted On Monday, November 29, 2010 9:43 PM | Comments (1)
The Reports of XBLIG’s Death Have Been Greatly Exaggerated
The release of the recent update to the Xbox 360’s dashboard has caused quite a commotion among the Xbox LIVE Indie Games (“XBLIG”) community. The primary reasons for this have been a negative response to various changes that have occurred in regards to XBLIG’s look and presence on the Xbox. Unfortunately, what was an “Indie Developers Unhappy With Dashboard Changes” story has been slowly corrupted into a “Microsoft Wants To Kill XBLIG” story. I undoubtedly played a part in that with my post here ......
Posted On Sunday, November 7, 2010 10:37 AM | Comments (5)
Windows Phone 7 Developer Launch Events
Be there or be square! Click the banner image to register. Live events in multiple cities and a web simulcast of the Mountain View, CA event on October 12, 2010 starting at 8:45am PDT (GMT -7). NOTE: THE TIME HAS CHANGED. This event is now scheduled to begin at 8:30am PDT (GMT -7) and run to 1:30pm PDT (GMT -7). Sorry for the short notice, I just received an update email on this ......
Posted On Monday, October 4, 2010 1:41 PM | Comments (0)
Using WP7 Themes In Your XNA Game
If you’ve played around with the WP7 emulator, you may have gotten into the settings screen and may have noticed that there are these things called “themes”. The emulator’s default is the “dark” background with the “blue” accent. However the phone can also have a “light” background, and supports the following accents: “magenta”, “purple”, “teal”, “lime”, “brown”, “pink”, “orange”, “blue”, “red”, “green”, and an eleventh optional color that the manufacturer of the phone can set. Most people naturally ......
Posted On Thursday, September 16, 2010 6:26 PM | Comments (0)
WP7, XNA, and XAP Size
This is just going to be a quick post on some techniques for getting your XAP size down when creating games for WP7. It is by no means exhaustive. First, XAP files are basically zip files with specific requirements re: mandatory content and directory layout. So any solutions that would involve zip-style compression will almost certainly result in a larger XAP sizes due to added code. So those type of solutions are off-the-table. But if you can shrink your source input in ways that zip compression ......
Posted On Thursday, September 2, 2010 1:40 PM | Comments (4)
WCF and XNA on WP7 – Hack Free
Update 1 (Sept. 17, 2010): While the part below about using SLSvcUtil.exe to generate the service reference undoubtedly still works, it is no longer necessary. The RTM version of the Windows Phone Developer Tools now properly supports right-clicking on your game project's "References" item in the Solution Explorer and adding a Service Reference that way. ChannelFactory and related methods remain unsupported. For more details see http://msdn.microsoft.com/e... (Networking ......
Posted On Monday, August 30, 2010 7:36 PM | Comments (8)
XNA and WP7 Load Times
This is going to be more of a high-level post. But it’s important, especially for my fellow XBLIG developers who are now targeting WP7, since it highlights some things you need to really think about before writing your game (or while porting it). In order to provide a great user experience, all programs (games and apps alike) must display their first screen within 5 seconds of launch and must accept user input within 20 seconds of launch. (See: Windows Phone 7 Application Certification Requirements ......
Posted On Friday, August 20, 2010 9:42 PM | Comments (1)
Update on App Submission - NO FEES! :)
As promised, a new post with the updated info on app submission. The following link is the official policy: http://windowsteamblog.com/... In relevant part, Annual registration fee of $99 No limit to the number of paid apps submitted 5 free apps per registration, $19.99 each after that I am sorry if I alarmed anyone (I was alarmed, myself). My other criticisms stand, but I am very glad that the other link ......
Posted On Thursday, August 19, 2010 2:45 AM | Comments (0)
WinForms Content Loading Sample with XNA 4.0 Beta
One of my hobbies seems to be creating map editors for XNA games. With the new XNA 4.0 Beta(yes, it’s called Windows Phone Developer Tools – don’t worry, it’s the full XNA and builds Windows and Xbox 360 games too, though the current beta doesn’t deploy to the Xbox 360 yet so stick with XNA 3.1 for Xbox games for now)… anyway, with the new XNA 4.0, I thought I’d take the stock WinForms 2 sample (the one that includes building content on the fly using MSBuild) and build it to see how much conversion ......
Posted On Thursday, July 29, 2010 2:31 AM | Comments (3)
How to pin your game or app's tile in the emulator (and I still love you WP7!)
I came across this by accident the other day and thought it was really neat. So I wanted to share it to help karma balance my last post (more on that at the end). As I’m sure you know, Silverlight apps install automatically in the application menu. For XNA games, you need to use this handy workaround. Once you do, after you’ve deployed your app or game, it stays installed for the duration of the emulator session. “Yes, yes, we all know that,” you say. Ah, but did you know you could tile your app? ......
Posted On Wednesday, August 18, 2010 11:15 PM | Comments (2)
WP7 Questions, Concerns, and Disappointments
Update 2: Excellent news! The $99 per app was wrong. See: http://windowsteamblog.com/... Thank you, Fred! Update 1: It's possible that somebody who didn't read closely looked at the old WM 6.X app cert docs, saw the $99 per app fee there, and thought it applied to WP7. I know people who "know people" and are investigating it. I'm very hopeful it's a mistake - see the end of my next post for how someone might ......
Posted On Wednesday, August 18, 2010 2:18 PM | Comments (3)
IndieNerds.com and Xbox LIVE Indie Games: a Great Combination!
One of the toughest things for an Indie game developer is getting exposure. For many Xbox Live Indie Games (“XBLIGs”), the time they spend on the “New Releases” list is critical to their success (or failure). Most games can expect a couple of days to a week before dropping off the end of the list. At that point, if they haven’t jumped up to either the “Top Downloads” or the “Top Rated” list, they will often fall off the radar of many gamers. Recently, though, a very fine gentleman from Germany, Mr. ......
Posted On Saturday, August 14, 2010 2:22 AM | Comments (0)
Size Apps and Games Properly Using the WP7 Emulator
For Windows Phone 7 developers, one of the more important pages on the MSDN website is the Design Resources for Windows Phone page. In particular, the UI Design and Interaction Guide for Windows Phone 7 (PDF) found there is something that every developer should read (and sooner rather than later unless you look forward to major redevelopment work at the end of your product’s development cycle). If you read it a while ago, check it out again as it’s now at Version 2.0 (updated and expanded quite a ......
Posted On Friday, August 6, 2010 2:28 AM | Comments (0)
Tutorial: Turning a Solution into a Template for XNA 4.0 (and Visual Studio 2010 In General!)
One of the new features of XNA 4.0 is the Content Project. Those of us who’ve worked in XNA 3.1 and earlier are familiar with the old Content folder, which was simply a folder inside your game project into which you’d place your raw content and from which your game would load the compiled XNB files. In theory it could be named anything since one of the things you would do in the constructor for your game is specify the name of the Content folder. XNA 4.0 has moved content (i.e. game assets like music, ......
Posted On Thursday, August 5, 2010 5:36 AM | Comments (4)
Making a MenuEntry in XNA 4.0’s GSM Sample Look Like a Button
In this post, I’m working with the GameStateManagement Sample for Windows Phone 7. All source code not a part of that sample is Copyright 2010 Michael B. McLaughlin. If you wish to use it, you may do so provided that you agree to the terms of the Microsoft Permissive License, available here. If you do not agree to those terms, you may not use this source code (and should probably stop reading now). Since this code is built upon the GameStateManagement Sample, you will also need that and thus will ......
Posted On Monday, August 2, 2010 9:27 AM | Comments (0)
WP7, XNA, the GC, and You (and Silverlight too!)
Some of you may have come across this helpful blog post recently, discussing when the garbage collector (a/k/a the GC) runs on Windows Phone 7 devices. Anyone who has programmed in XNA for the Xbox 360 before knows the GC well. For those of you new to XNA, there are several tricks and tips for slaying the evil GC monster that eats frames. This applies to Silverlight apps too, though since Silverlight does quite a lot for you automatically, there’s only so much control you have. First, you must leave ......
Posted On Friday, July 30, 2010 8:28 AM | Comments (2)
Bob Taco Industries is an ISV focused on game and app development for Microsoft platforms headed up by Michael B. McLaughlin. Mike is a Microsoft Visual C++ MVP (previously an XNA/DirectX MVP from 2011-2013), a developer, a writer, a consultant, and a retired lawyer. If you're a developer who is just getting started, consider checking out the BTI website's section for developers for links to code samples and other helpful sites.
Tag Cloud