I've heard the requests, and decided that they are right: It's better to release something that probably works for Xbox for XNA 4.0 now, and then follow up with the Phone version later.
I worked a bit more on the FFT-based music visualizer program I started the other day, and it's doing great! A this point, I have a pretty solid rhythm extraction thing going, and I can use autocorrelation (through autoconvolution) of the extracted rhythm track to derive tempo. I'm assuming 4/4 beats here, but...
I was unhappy with the low resolution of the visualization data that you get out of the XNA framework MediaPlayer. If you want to synchronize gameplay to music, the data you get is not sufficient.
I'm taking the XNA 4.0 beta for a spin. I don't have a Windows 7 phone (who does? :-) so I can't get motivated to start porting things like kW Animation / X-port to it, but I thought I'd check out the new and improved render target and effects APIs. Here's a little screen shot:
XNA Game Studio makes it possible to write games for the Xbox without being a developer with good publisher contacts and lots of money to pay for marketing and Xbox development kits. This is great!
However, because the XNA Indie Games system is not fully controlled by Microsoft, certain features of Xbox Live! are not available, because they would be too easily abused. These features include online Leaderboards, and unlockable Achievements.
The XNA community has developed alternatives to those functions. Many XNA games contain "Awardments" that can be unlocked, and many more XNA games use the XNA Network Highscores component to implement distributed, peer-to-peer highscore sharing. The name for this is generally "Online Highscores" rather than "Leaderboards," because the latter name is reserved for use by Microsoft-certified titles that use the real Xbox Live! functionality.
This article introduces version 2 of the XNA Online highscores component, which is free for you to use in your own game under the terms of the MIT license.
Included, please find two DLLs: A main Havok content tools wrapper, and a simple C# assembly that actually exposes a content importer for use with XNA Game Studio version 3.1. Drop these in your solution folder, and point your content project at the HavokImporter.dll assembly (add as a Reference to the Content project).
While I'm thinking about lighting, I'm dropping in a camera, and a player model based on kW Animation and kW X-port. This is mainly for proportion, and to get a feeling for what a unified scene will look like.
So, I'm generating a dungeon-like structure procedurally (in Rogue-like tradition).
Initially, I just lit it using a "sunlight" type directional light. However, that looks approximately like ass. Mainly because that's not how dungeons are actually lit, I guess :-)
Recently, I had the need to turn a hundred different texture images into "profiles." A profile, in this case, was a 2D shape that follows the outline of some feature in the texture (like a house facade), texture mapped with that feature. Rather than build them all in a modeler such as 3ds Max, and separately exporting them, I came up with a simple tool for loading a bunch of images, building those profiles straight on a copy of the image using clicking, saving all the profiles I've built (for later re-use or editing), and exporting to a bunch of .DAE (collada) or .X files in one fell swoop.