The goal of this site is to put relevant and applicable tools and information at the fingertips
With this blog we want to inform you on our latest initiatives.
Enjoy reading and stay tuned!
Last night I was attending the mentors and advisors sessions at the Launch of our latest Microsoft Ventures UK cohort.
I was speaking with the new cohort and was NOT surprised to hear that they had or were facing issues which sharing of content with third parties..
On of the key aspects of the accelerator is the availability of sharing materials with the teams mentors and advisors who is all purposes are a third parties. We have made this possible for the team via Visual Studio Online.
Visual Studio Online now provides an easy to services allowing the the teams to share content and enable unlimited numbers of stakeholders to easily work with their Visual Studio Online projects.
So what is the Visual Studio Online Stakeholder License
Within any development project their are number of stakeholders additionally these may not be core members of the project. Whether it’s management who periodically wants to see the status of a project, business leads defining user stories for a project, or occasional contributors reporting bugs during development.
With Visual Studio Online Stakeholders now have access to the project home page and most of the “work” related functionality. This includes the ability to view the backlog, add and edit items, run work item queries and more and more importantly any number of users in an account can be assigned a stakeholder license at no charge.
The stakeholder license enables a much broader set of users within the organization to participate in your projects. You can learn more about the stakeholder license here.
The stakeholder license is another key step to enabling everyone in the organization to participate in software development projects through access to Visual Studio Online services. If you haven’t tried out Visual Studio Online yet, I encourage you to sign up and take a look today.
We all love gamejams or hackathons but sometimes not all the participants have any prior knowledge of middleware or where to start with a game.
Over the past year we have done lots of work with unity3d and construct2 would like to share some game templates to help you get started building amazing gamejam games on Windows Phone and Windows 8.
Here a selection of Unity3D game templates:
https://github.com/jasonrwalters/Unity-3DRunner Game reference here: http://aka.ms/hypernaut
TopDown2D_UnityKit Unity 2D Starter Kit. Top down adventure kit. Use the skeleton to destroy all the spiders invading your dungeon. Use this kit to add more levels, powers, characters etc.
SteamLandsUnity Unity Game Starter Kit for Windows 8 and Windows Phone
EightFacts Construct 2 Starter Kit
One of the questions I get from game developers is around debugging of a App/Game after they see reported crashes
Here is a quick guide to how to debug the crash logs from the WP8 dev center
Firstly you need to download and analysis the crash logs
Login to https://dev.windowsphone.com Click Dashboard Click Reports Select Crash Count Click Export Strack Traces This will download a .cab
If you then look up specific error numbers at https://dev.windowsphone.com/ and http://msdn.microsoft.com a specific link to Debugging on Windows Phone http://dev.windowsphone.com/en-US/OEM/docs/Debugging/Debugging_Windows_Phone
To Analyse the log
You need to save the .cab then right click and extract it.
Then double click on the mini dump file and open into VS.
They will see something similar to below.
This gives limited info because the debug symbols are missing.
The symbols are located in two places. To install all available symbols, do the following two steps:
Run the provided symbols installers from the WDK download on the Windows Connect site http://msdn.microsoft.com/en-us/library/windows/hardware/ff557573(v=vs.85).aspx.
Run setup.exe from the Windows Phone download on the Connect site. Check the desired boxes for Debugger Symbols, and click the Next button.
Add the paths of the symbols to the symbol path. For example, you can use .sympath inside the debugger to add folder locations. For more information, see Symbol path.
For a large workgroup, consider creating a symbol server. For more information, see Symbol stores and symbol servers.
You can then load them in using the links on the right.
If you don't install the symbols “Debugging with native only “ gives the limited call stack:
Marmalade is a popular C++ toolkit and gaming engine for 2D and 3D games that is used by a wide range of pro and indie developers to build games such as Lara Croft and the Guardian of Light, Godus, Vector, and Draw Something. In this hands on lab, you will learn how to create a basic game framework, add and use 3D resources, interact with objects and deploy the game to Windows Phone and Store devices.
Download the source code
Wordament is a multiplayer, original word puzzle game and is available cross platform Xbox Live title with over 1,000,000 players which was developed by two indie developers.
To help you understand the opportunity of cloud connected games we have developed a three part series on MSDN,
The series goes into all the details on how the Wordament developers made this happen, using Azure as a backend, and Xamarin to take their native C# projects to other platforms.
Part I. Anywhere, anytime, any device: Wordament’s cloud architecture Part II. Developing a cross platform app Part III. Running a business
As game developers were looking a providing the best experience across all our devices and many of you want to get results from devices which do not have Visual Studio installed.
To enable this we are now shipping a command line tool called DXcap which is a great tool for capturing and playback which is included in the Windows SDK.
If your a Visual Studio user Windows SDK comes with Visual Studio.
You can use this tool to capture frames from desktop apps, store apps, and phone apps.
Once you installed Visual Studio 2013 Update 3 RC (Download) or standalone Windows SDK (Download). You can find dxcap.exe in C:\Windows\System32 and C:\Windows\SysWOW64. Simply pass in -c and the name of the exe to capture and –p to playback the most recent captured log.
A quick example:
DXCap.exe is a command-line tool for graphics diagnostics capture and playback. It supports Direct3D 10 through Direct3D 11.2 across all feature levels.
DXCap.exe [-file filename] [-frame frames | -period periods | -manual] -c app [args...]
DXCap.exe -p [filename] [-debug | -warp | -hw] [-config] [-rawmode]
DXCap.exe –p [filename] –screenshot [-frame frames]
DXCap.exe –p [filename] –toXML [xml_filename]
DXCap.exe –v [–file filename] [-examine events] [-haltonfail | -exitonfail] [-showprogress]
DXCap.exe -e [search_string]
So to capture frame 100 from a desktop app: dxcap.exe –frame 100 -c "C:\TestProjects\MyApp.exe"
To playback: dxcap.exe -p
You can find details in DXCap's help information (Dxcap /?) or MSDN document Command-Line Capture Tool .
We are now exposing a number of options for capture which you can find by opening TOOLS->Options->Graphics Diagnostics page in Visual Studio 2013 Update 3.
Visual Studio 2013 Update 3 has made significant cnages to the shader editing experience.
One of the great new features is that ability to Edit and Apply a new shader as well as a side by side view of shader source code and compiler output.
You can access the new features by simply clicking on the shader file name in the Pipeline Stages window or the Pixel History window.
This will open the shader editor what is cool, is that the pixel shader shows both the source code and disassembly code generated by HLSL Shader Compiler.
This allows you to directly make changes in the source code, and once the tool detects differences in output, the Apply button at the will be enabled.
You simply need to click Apply to apply the changes to the current vsglog file and you can view how the changes impact the rendering result immediately, including..
1. Render Target view 2. Pipeline Stages 3. Pixel History windows
Some additional great resources/features
The source code which you edit will be keep it in a temporary location (the path is underneath the window) and changes are only applied to the vsglog file and does not affect your original source.
Therefore you can use the vsglog file as a "playground" to try out different shader effects and view their impacts.
If your not keen on the changes or they have a detrimental impact to performance the changes can be easily reverted back to when the frame was captured by clicking the Reset button.
However if you like the changes and want to move the changes to the original source, you can use the Copy to… button which brings up a dialog where you can specify the location of the source file we should copy these changes to.
Ability to make live changes during debug
During shader debugging, you can make changes to the shader code, but the Apply button will only be enabled after debugging is stopped which is another nice feature.
With the update to Visual Studio with Update 3 there is a new experience for helping you Analyse your Graphics
Once frames are captured, in the Visual Studio Graphic Diagnostic you can analyse their performance.
To do this simply double click on any frame in the diagsession file you can also save the diagsession file in Visual Studio or save the vsglog file in VSGA for later inspections. By just clicking on the Frame# link. This will open the frame in another instance of Visual Studio 2013 named Visual Studio Graphics Analyser (VSGA).
VSGA is a customized VS environment that only contains the necessary components for analysing frames.
The huge benefit of using VSGA is it's lightweight and has a low memory footprint.
More importantly the VSGA provides within a Visual Studio IDE as is a highly focused environment for analysing frames. You also have access to all the familiar features including..
1. Event List 2. Pixel History 3. Pipeline Stage 4. Objects 5. Event Call Stack 6. Debugging shader code.
You can also configure how VSGA looks so it's easier to distinguish it from your regular VS IDE window by using VIEW->Options page in VSGA.
For example you can simply change the theme as in the screenshot below where the VSGA window is using the dark theme while Visual Studio is using the light theme.
Visual Studio 2013 Update 3 RC (Download)
Visual Studio 2013 Update 3 RC (Download)isual Studio Graphics Analyzer IDE is a new feature of Visual Studio 2013 update 3 which is a dedicated space for analyzing graphics frames
With the updates to Visual Studio 2013 the Graphics Diagnostics tool is now running in the Performance and Diagnostics hub to provide a consistent view with other diagnostics tools you might be familiar with such as CPU Usage and Memory Usage.
To access the Graphics Diagnostics tool you need to select the DEBUG menu
Debug -> Graphics menu.
In the upper part of the session file, there is one swimlane for Frame time and another one for FPS which would give you an idea of how fast your app is running.
You can set a threshold value (Red Line in Screenshot below) which you can configure in the dropdown for each swimlane.
The default threshold value is 60 FPS.
VSGD is a new is a tool to help diagnose graphics rendering and performance issues in DirectX apps which has been made available with Visual Studio 2013 Update 3 RC (Download)
So where do you find VSGD
VSGD is a new option under the DEBUG->Graphics->Start Diagnostics menu or you can quick access the feature by pressing Alt+F5 on the current solution or an exe in VS.
More details on VSGD
A must read for Graphics Enthusiast is Graphics Diagnostics Overview this provides a high level summary of what's new in VSGD in VS 2013 Update 3 RC but here a quick list of new features.
1. New Visual Studio Graphics Analyzer IDE: A dedicated space for analyzing graphics frames
2. Shader Edit and Apply: View the impact of shader code changes in a captured log without re-running the app
If you prefer to watch these features in action, check out the latest Channel9 video I will also be doing some additional blogs about the Visual Studio Graphics Analyser and Visual Studio PixelShader