The June 2014 release of the Xbox One XDK from Microsoft contains the following new features, tools, and documentation. For features that shipped in a previous release of the Xbox One XDK, see the What’s New document for that release, available from Features Introduced in Previous Releases.
Sections:
The most recent release notes for and updates to the Xbox One XDK can always be found on Xbox One XDK Software Downloads on the Xbox Game Developer site. For access, log in with your ID and password on https://developer.microsoft.com/en-us/games/xbox/partner/index; at the top of the page, point to Development and click Downloads.
You can check with your account manager for the latest information about upcoming Xbox One XDK releases.
The June 2014 Xbox One XDK contains the latest tools and libraries for Xbox One.
The Xbox One Developer Roadmap on the XGD site has been updated with projections of developer-facing feature work from the June XDK through Q4 of this year. The roadmap is intended to help developers plan their implementation schedules around upcoming feature and tooling efforts for the Xbox One console and related services.
Edit and Continue for Shaders (Preview)
Edit and Continue returns for shaders in PIX. This release re-enables the functionality previously shipped with an entirely new infrastructure that is faster and more stable, fulfilling the promise of rapid optimization iteration on shader code within the context of PIX GPU captures. This feature release includes an entirely new Shaders view, showing the original and modified versions of both HLSL and shader disassembly. This release is considered a Preview of the functionality; please provide feedback in the forums on the direction we are taking.
Visualizations: Overdraw and Wireframe colors
A new Overdraw visualization for render targets has been added to the Resources view, allowing you to quickly visualize the portions of the scene with the most rendering to the same pixel. Additionally, the Wireframe visualization is updated with a choice of colors, rendering the wireframe more distinct against the rest of the frame.
CPU Instruction Trace Captures: Added L1 and L2 Cache Simulation
Instruction trace captures can now be used to determine places in your code that have caused L1 and L2 cache misses. Summary statistics describing L1 and L2 cache behavior are also provided for each capture.
Callgraph Captures: Added Callers and Callees
Callgraph captures have been enhanced to show all callers and callees for the captured function.
System Monitor: Now displaying L2 Interface Counters
Performance counters are now available for the L2 Interface. These counters allow you to monitor L2 cache misses, fills and writebacks.
SetFormatX arbitrary swizzling support in PIX
The Resources view in PIX as of the June 2014 release supports arbitrary swizzling of textures using SetFormatX. Textures with non-default swizzling will now show properly in PIX. However, PIX in this release still does not support altering the data or number format to a format that does not map to a standard DXGI format.
Xbox One Manager
Xbox One Manager adds improved support for recovery, deploying a packaged app, browsing the console file system, and UI improvements. For more information, see Xbox One Manager.
Xbox One Neighborhood
You can now connect to the console file system as a set of network shares, for example: “\mydevconsole\TitleScratch”. This works both from File Explorer and the Windows Command Prompt. You can “net use” to the drives on the console. This means that you can use File Explorer or standard Windows commands such as “dir” or “robocopy” to access the files and file system on the console. To edit a file on the console, for example, you would use: “notepad \mydevconsole\TitleScratch\MyGame.log”. For more information, see Xbox One Neighborhood: Accessing the Console File System from Your PC.
Push deployment performance improvements
We continue to improve push deployment performance with each XDK release. In the June release you can expect to see another 10-15% improvement for initial deployment and an additional 40-60% improvement in incremental deployment.
More options available for Load Simulation (xbStress)
xbStress now has options for memory stress and to simulate the display of UI from the SRA while your title is running.
Packaging Utility (PackageUtil)
The new PackageUtil command gives information about how a package was signed (/l vs. /lt) and allows you to check that a particular EKB matches a package.
xbConnect: New flag
We have added xbconnect /QG that helps determine whether a title is running or not. This useful if you wish to write a script that does different operations if the title is running vs. not running. For more information, see Connect (xbconnect.exe).
Detailed Debugging information for GPU hangs
Direct3D now provides detailed debugging information for GPU hangs. The information is sent directly to the debugger, provided to the title through new optional callbacks through ID3D11DeviceX::SetHangCallbacks, and saved to a file that can be analyzed offline using the new Xbox Hang Investigation Tool (XHIT). The information provided includes what blocks are hung, likely causes, and information on the current wave-fronts. Also included is the PIX PIXBeginEvent/PIXEndEvent hierarchy at the point of the hang which is useful for understanding and isolating the location and context of where the hang occurred in the frame. Developers can use the XHIT file to do postmortem debugging of GPU hangs during development or in automated telemetry collection from end-users. If it’s not possible to discern the cause of the hang using the XHIT tool, the file can be sent to Microsoft for further analysis.
Improved multisample anti-aliasing (MSAA) and enhanced quality anti-aliasing (EQAA) support
New APIs have been added to control scan converter and EQAA settings directly:
New APIs for Updating Descriptors
New permutations of the D3D11XUpdateDescriptorView function have been added to allow efficient incremental modifications to descriptors.
New APIs for Explicit Control of Compression State
The methods ID3D11DeviceContextX::SetResourceCompression and ID3D11DeviceContextX::SetResourceCompressionX have been added to allow titles to reflect cumulative subregion decompress operations altering the state of a resource.
GPU Allocation Update
Titles can now access up to 100% of the GPU if the titles do not use NUI depth and IR and additionally handles a variable Extended GPU System Reserve.
Connected Storage
The following updates and improvements have been made to connected storage:
New API to correctly determine your marketplace
The Configuration.MarketplaceId Property property should be used to determine which marketplace your app or game should use. The results of this property should be in all RESTful API calls to the marketplace.
Skeletal tracking: Reduced tracking loss during floor poses
Skeletal tracking is less likely to lose player tracking for players that are laying on the ground. Poses where the player is leaning far forward are also improved.
Skeletal tracking: Improved seated lock-on
Skeletal tracking is much better at locking on to players that are seated. The largest improvements are in cases where the player is holding still or leaning back into a couch.
API to allow titles to tape game DVR clips when Kinect feed is present.
This adds ApplicationClipCapture:: ClipContentAttributes property that allows the developer to annotate a section of game play as having user generated audio, user generated video, both, or none.
Middleware Sample for Xbox Data Platform Event Logging
A sample application that demonstrates how game engines and other middleware applications may provide a generic API to their application developers for logging XCE Events. This sample logs XCE events by parsing event manifests and dynamically creating event providers at runtime.