Visual Studio 3D Starter Kit

This sample contains the starting point for a basic game for Windows 8.1 and Windows Phone 8.1, a “Starter Kit” which provides support for consuming runtime assets produced by the VS tools. This includes loading and rendering assets (meshes, textures and shaders).

C++ (848.5 KB)
17,736 times
Add to favorites
E-mail Twitter Digg Facebook
Sign in to ask a question

  • Question about hit effect
    2 Posts | Last post February 18, 2014
    • I have a couple of questions.
      - I've searched through the whole code and I don't see where it's calling 'OnHitObject' to increment the counters on the top of the screen? Or where it's even rendering the text on the top of the screen?
      - Where is it using the Logo.png and Splashscreen images when loading the app? I can't seem to find a reference to those images anywhere at all.
      - I also can't seem to modify the window bounds and make it windowed mode?
    • Hi LibrosMint,
      Here are the answers to your questions:
      1. OnHitObject is called on the XAML side (DirectXPage.xaml.cpp) - it happens when the user taps anywhere. What renders the text on the top of the screen is XAML - the sample shows a way to interoperate between XAML and DX rendering/input.
      2. Those are referenced on the APPX Manifest (Package.appxmanifest). Windows Store apps require the images as part of the app description.
      3. Windows Store apps run full screen by default, and you can snap them by dragging the app from the top of the screen (using touch or mouse), or using Windows + left and right arrows. You can't run them in a window on the desktop.
      Hope it helps!
  • SkinnedMeshRenderer and mesh->Tag
    2 Posts | Last post February 18, 2014
    • Hi,
      I am working with VSD3DStarter.h and Animation.h from the Starter Kit. I am able to render a skinned biped with Mesh::Render in a static pose. When I switch to SkinnedMeshRenderer I find that the code in SkinnedMeshRenderer::UpdateAnimation and SkinnedMeshRenderer::RenderSkinnedMesh is looking for mesh->Tag. In both functions if Tag is NULL, the function fails and there is no rendering. I have found nothing in the class Mesh that sets Tag to an AnimationState* which is what SkinnedMeshRenderer is looking for. I don't see a way for this code to work. Can someone shed some light on this for me?
    • Hi japrice3,
      The mesh tag is set on Game.cpp, line 75. The animation code (Animation.h/SkinnedMeshRenderer) is just a sample of how to use the loaded animation, and you should definitely change it to fit your needs.
      Hope it helps!
  • Animation and Unlit .fbx
    2 Posts | Last post February 14, 2014
    • I have 2 issues going on:
      1. I changed the material to 'unlit.dgsl' and it appears like it should in the editor, but once run, using the starter kit base code, I replaced teacup.cmo with my model's cmo and the model appears reddish and dark and not as it appears in the editor at all (which is unlit)
      2. I don't understand how to choose which animation to play when you have multiple animation clips in 1 .fbx file, it wasn't in any of the videos I watched of the starter kit.
      A little help please?
    • Hi LibrosMint,
      1. The cmo includes the information of which shader to load. The Teacup uses GlowEffect.dgsl, which makes it reddish and dark. Make sure you are deploying and loading the right effect (cso) -> you can set breakpoints in VSD3DStarter to help with that.
      2. The Starter Kit only implements one animation clip. You will need to change the code in Animation.h to make it happen (note that we select "Take 001" as the clip)
  • Error KernelBase.dll
    1 Posts | Last post January 20, 2014
    • Hello,
      I hope I could find an answer, I am using your nice 3d Starter kit to create an app for win 8.1. I added a new vars to the constant buffer "Lights" and when I Update the constants, using your code (UpdateLightConstants) I have this error on different lines but all related to direct 3d, is there something to avoid it. 
      I would like to add that, when i run the app under graphic debugging mode, the error disappear totally !
      also if i run it in release mode the error is happening much fewer time.
  • CMO reference
    3 Posts | Last post December 12, 2013
    • Hi, where can I find the file specification for CMO files?
    • You can find most of what you are after within the source code here but also in DirectXTK:
    • Hi Alessio T,
      As _Justin_S said, the best documentation we have published about the CMO format is in the Starter Kit and DirectXTK code itself. Don't hesitate to ask if you have any questions!
  • Windows 7
    2 Posts | Last post November 08, 2013
    • Is there any way to compile and run this on windows 7? Or do I have change de starter kit myself to achieve this(if that is even possible)? I would really love to use this kit for making my game on windows 7 with visual studio 2012.
    • Hi Yanniiiiiick,
      The Starter Kit is tailored for Windows Store apps. While it's technically possible to modify it to compile on Windows 7/Desktop, it might not be very simple. The big header (VSD3DStarter.h) should remain mostly the same.
  • template problem
    2 Posts | Last post August 28, 2013
    • ive loaded the starterkit solution into vs2012, but i keep getting a unsupported project error. what could i be missing. im able to build c++ and C# apps with out a problem.
    • Hi kiwidave,
      This error appears because you don't have the Windows Phone 8 SDK installed on your machine, or you're using Visual Studio Express for Windows Store. Try using the version of the Starter Kit for Windows Store only:
  • How to access a property in Direct3DBackground from Game.cpp
    2 Posts | Last post August 28, 2013
    • Hi Roberto,
      I have a public property created in Direct3DBackground and value set in xaml page. Now I am trying to access this property in game.cpp but not able to do so. Can you please help me out? All this I am trying to do on top this example.
    • Hi Kruisers,
      The best way to do this is to store your property in Game.cpp and access it on via the Direct3DBackground instead, or use a ViewModel object to pass data between the layers. Take a look at the Hanoi3D sample for more information on how to do that:
      Hope it helps!
  • Skinned animation using .cmo format(windows8 desktop app)
    2 Posts | Last post August 28, 2013
    • Hello  Roberto,
      I am  developing skinned animation  for desktop games.Can I use the .cmo  for skinned animation?
    • Hi Jasper,
      Yes, you can use CMO for Skinned animations. It does not work for all kinds of models, but most models work fine. Check out this interview with Gokhan Sengun, where he shows some interesting applications of skinned animations that he used on his app.
  • Shaders Issue In Metro Application (Windows 8/RT)
    3 Posts | Last post June 14, 2013
    • I am developing a 3D game for Windows Store (Metro application) using Visual Studio 2012 Express and Blender for creating 3D objects (fbx). When I am applying Lambert shader (hlsl) to the 3D objects in the application, the movement of the 3D objects on the screen works smooth in Windows 8 but it lags a lot on Windows RT machine (Surface RT). Please suggest me some solution.
      Any help will be appreciated.
    • Hello Devendra,
      Please make sure that your app is running on the hardware graphics card on the Windows RT machine. To do that, try limiting your supported DirectX Feature level to 9_1 (on GameBase.cpp) - if the app crashes, it means your app is not ready for that feature level.
      To learn more about how to support lower feature levels see
      Hope it helps!
    • Thanks a lot for the reply, Roberto.
      I went through the link that you provided in your comment. I made the changes in the shader property as suggested in the link but I am not able to limit the DirectX feature level to 9_1 (on GameBase.cpp). Could you please provide me with more details or provide me a link related to this.
1 - 10 of 47 Items