Blitz Games founder Phillip Oliver says that the "technicalities of the Xbox" are holding back Kinect from providing higher resolution images. Talking about Blitz's new game, Yoostar, with Gamesindustry.biz, Oliver describes how Microsoft added a digital zoom to the Kinect feature-set as the full high resolution image was not available for the developers to access themselves.
"So what we wanted to do was, instead of asking the player to get closer to the camera, was zoom the camera into where they were," Oliver explains, talking about how Yoostar handles close-up shots of the player.
"The Kinect camera is quite a high res camera, so we actually asked that we have access to the higher res picture. But they can't give the full resolution picture, at the full frame-rate, because of the USB 2.0 connection. It's just the technicalities of the Xbox.
"So what we said was, we just need to access a section, a piece of the image and bring that through in a higher resolution. Effectively a digital zoom. Which they gave us. That's an excellent feature. So now you don't even have to get into frame yourself. The camera can select the right bit of the high res picture and zoom in itself."
Oliver's comments may obliquely address one of the most curious technical mysteries surrounding Kinect. Hackers have interfaced their PCs with Kinect and attained a full 640x480 resolution from both the RGB camera, and the infra-red depth sensor (which I tested myself with the OpenKinect driver installed on my laptop - download it, it's way cool!). However, Microsoft's own spec says that the depth image's resolution is limited to a quarter of what the hackers are getting via their own experimentation: 320x240. Update: Kinect hacker Hector Martin has confirmed to Digital Foundry full 640x480 from both sensors at 30FPS via his driver, with throughput in the region of 20MB/s.
The question is, why? One decent theory is that while the depth sensor may format in a 640x480 res, the actual sensor resolution quality may be somewhat lower - you see this a lot with the CMOS sensors on so-called HD camcorders. Downscaling (if you can call it that) the depth image may address this, save data throughput and save depth image processing to boot: a worthwhile compromise in minimising the use of console resources.
However, Oliver's comments about USB being the issue brought to mind a previous DF article: our analysis of the USB flash storage update Microsoft added to the 360 dashboard. We saw a limit of around 16MB/s copying from hard disk to USB storage, even when using an ultra-fast SSD as our target drive. This is somewhat at odds with the PC, where you would expect the same HDD to flash operation to top out at just over 30MB/s - pretty much the "real world" limit of USB 2.0. A USB to USB copy operation saw that 16MB/s drop to 10MB/s, perhaps suggesting that the bandwidth of the available ports is shared.
So when Phillip Oliver talks about the "technicalities of the Xbox", you have to wonder if Microsoft's own USB 2.0 controller is allocating certain amounts of available bandwidth for different purposes - after all, in theory that single chip has to handle Kinect, flash drives (which support game installs, remember), WiFi adaptors and wired controllers - all simultaneously. It'll also be curious to test out whether the Xbox 360S has the same bandwidth cap issue on USB transfers, or whether the USB architecture was upgraded in order to accommodate the more numerous ports the new unit has.