A Windows Phone 8 port of the ​Drumkit XNA example using Direct3D and XAudio for fast graphics and low latency sample playback. This demo app lets you play percussion sounds by tapping the screen. You can record your beats, play them back later and also play drums on top of your latest recording.
Перейти к файлу
Tomi Paananen 90a16297a1 Update README.md 2014-11-28 14:14:50 +02:00
DrumkitX Batch update 2014-11-27 13:32:56 +02:00
doc Added few new screenshots with WXGA resolution. 2013-12-18 18:45:31 +02:00
DrumkitX.sln Move revision 121 from Projects to GitHub 2013-10-18 14:37:11 +03:00
License.txt Update License.txt 2014-11-28 14:14:18 +02:00
MS-LPL.txt Move revision 121 from Projects to GitHub 2013-10-18 14:37:11 +03:00
README.md Update README.md 2014-11-28 14:14:50 +02:00

README.md

DrumkitX

DrumkitX is a Windows Phone 8 port of the Drumkit XNA example using Direct3D and XAudio for fast graphics and low latency sample playback. This demo app lets you play percussion sounds by tapping the screen. You can record your beats, play them back later and also play drums on top of your latest recording.

This example application is hosted in GitHub: https://github.com/Microsoft/drumkitx

Developed with Microsoft Visual Studio Express for Windows Phone 2012.

Compatible with:

  • Windows Phone 8

Tested to work on:

  • Nokia Lumia 520
  • Nokia Lumia 820
  • Nokia Lumia 920

Instructions

Make sure you have the following installed:

  • Windows 8
  • Windows Phone SDK 8.0

To build and run the sample:

  • Open the SLN file
    • File > Open Project, select the file DrumkitX.sln
  • Select the target, for example 'Emulator WVGA 512MB'.
  • Press F5 to build the project and run it on the Windows Phone Emulator.

To deploy the sample on Windows Phone 8 device:

About the implementation

Important folders:

Folder Description
/ Contains the project file, the license information and this file (README.md)
DrumkitX Root folder for the implementation files.
DrumkitX/DirectXTK DirectX ToolKit.
DrumkitX/DrumkitX DrumkitX Windows Phone managed application implementation.
DrumkitX/DrumkitX/Assets Application assets, tiles for example.
DrumkitX/DrumkitX/Properties Application property files.
DrumkitX/DrumkitX/Resources Application resources.
DrumkitX/DrumkitXComp Native components for DrumkitX application.
DrumkitX/DrumkitXComp/images DirectDraw surface files for drumkit graphics.
DrumkitX/DrumkitXComp/sounds Audio files for drum sounds.

Important files:

File Description
MainPage.xaml The main page of the application with a drawing surface for DirectX graphics.
MainPage.xaml.cs The code-behind file of the main page bridging managed side with native side.

Important classes:

Class Description
Direct3DInterop Acts as a bridge between the managed and native worlds.
DrumkitRenderer Responsible of rendering the drumkit and playing the drum sounds.
Recorder.cs Records the drum strokes.

You can read more about Direct3D for Windows Phone 8 from http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj207062(v=vs.105).aspx

Another Nokia Developer example on creating DirectX application on Windows Phone is available at http://www.developer.nokia.com/Community/Wiki/DirectX_on_Windows_Phone:_2D_Game_Example_using_DirectX_Toolkit

More information on XAudio2 can be found from http://msdn.microsoft.com/en-us/library/windows/apps/Hh405049 and from an example application http://code.msdn.microsoft.com/windowsapps/Basic-Audio-Sample-9a5bb0b7 demonstrating the use of XAudio2 in an app.

Known issues

No known issues.

License

See the license file delivered with this project. The license is also available online at https://github.com/Microsoft/drumkitx/blob/master/License.txt

Version history

  • 1.1 Support for 720p resolution.
  • 1.0 Application tiles and icons. Removed unnecessary capabilities.
  • 0.6 Code cleaning, copyrighting and commenting. Button graphics added.
  • 0.5 First public beta version