GoingNative 10: Welcome Ale Contenti, VC11 and Beyond with Steve Teixeira and Tarek Madkour

Fresh Paint is an excellent Windows Store App (for Windows 8). It's fun to use, realistic and beautiful ( yes, we really like this app ). In this episode we will meet the developers behind Fresh Paint, Subha Bhattacharyay, Adam Szofran, and Kaushik Barat. Being native developers, they built their Windows Store app using C++. Being modern native Windows developers, they used DirectX and XAML (including DirectX running on XAML surfaces) to generate a beautiful UX with very realistic painting experiences - you can literally watch the paint dry
. The team shares many details that should spark your imagination for writing compelling C++ Windows Store Apps using DirectX and XAML.
C++ + DirectX + XAML is an incredibly compelling combination (the simplicity of XAML and the power of DX, composed in C++). This is how you can really push the boundaries of what's possible for modern Windows apps.
So, go get this free Windows 8 app, make some art (mix different oil colors, zoom in, check out the realistic fluid dynamical effects). Then, come back and learn about what's going on inside of Fresh Paint and meet the developers who wrote it.
[00:00] GoingNative(); //Very quick ctor this month.
[01:34] Charles interviews the Fresh Paint development team
[40:04] ~GoingNative(); // Meet the new Visual C++ Community PM, Eric Battalio!!
Completely yummy! I use SketchBook Pro for concepts and doodles a lot on my iPad, so I'm very keen to see some serious competition coming from WinRT tablets in this space - the fact that its a poster child for native dev too is just the cherry on the cake!
I went to try it out, but alas Win7 isn't sufficient. That wasn't clear from the blog post (maybe the movie says more).
@mlimber: Hi. There is no store for Windows 7 (and therefore no Windows Store Apps for Windows 7). Sorry I didn't make this clearer in the description. I will edit now.
C
Hi Charles,
Thanks for making these great videos, they are really motivating me to get started with some c++ windows store apps! I am also hoping for a c++11 and c++ & XAML video-tutorials down the road :)
Charles,
what type of the ms surface in the video? Is this PRO version or RT?
@John: There is no Surface in the video Those are Samsung Series 7 tablets.
C
@jVangsnes: Right on!
C
This is the first developer/Charles video I've watched on C9 in quite a while.
I seem to remember seeing an early version of this app on C9 a long time ago.
@dentaku: that could be Gustav: http://channel9.msdn.com/Tags/project-gustav
Charles, I've downloaded the High Quality WMV and it doesn't get past the first 15/20minutes. It just springs at the beginning. The same problem I've had with the c++ and beyond panel video. I am not sure if this is a video issue or download issue, but you may want to check it.
Awesome. This is extremely inspiring. Keep up the good work.
I have been using this app every morning on the train to work on my Samsung tablet. It's addictive.
Yup, I forgot what it was called.
9 hours ago, felix9 wrote
@dentaku: that could be Gustav: https://channel9.msdn.com/Tags/project-gustav
@octavian: will look into it. Thank you.
C
It does seem inspired by Gustav which was really cool. Only problem I'm having is the pen doesn't work right. Right clicking with the pen should bring up the app bar. One thing that I really liked about Gustav was the simultaneous pen+touch so it felt very real. This is great though, I like it.
What exactly is this interfacing between Xaml and c++ they are talking about? Is it project-dependent (could it be generated by a future version of vs?) or is it more of a general infrastructure-type interfacing (could it be made public as a library)
Also it seems there are quite a lot of non trivial d3d changes to make a win8 version of a win7 app. What was the motivation for changing d3d so deeply? What kind of support can a dev expect from vs or msft to make the d3d 10->11 conversion take as little dev time as possible?
@cedricmi:
There is useful information on MSDN a la https://msdn.microsoft.com/en-us/library/ff476190
For WinRT programming with DX11, there's this: https://msdn.microsoft.com/en-us/library/ee663275.aspx (a good place to start...)
Use the DirectX11.1 API, but you can target DX9, DX10 or DX11 hardware using feature levels (documentation at https://msdn.microsoft.com/en-us/library/windows/apps/Hh994923.aspx or Chuck Walbourn's excellent blog https://blogs.msdn.com/b/chuckw/archive/2012/06/20/direct3d-feature-levels.aspx).
You should target feature level 9_1 to reach the broadest audience (ARM devices will come with only 9_1 hardware...).
We'd also recommend the following video recorded in May this year: https://channel9.msdn.com/Events/Windows-Camp/Developing-Windows-8-Metro-style-apps-in-Cpp/Cpp-and-DirectX-for-Metro-Style-Games. It highlights some of the changes that need to be done from Desktop to WinRT (Eg; Use CoreWindow instead of hWND...).
The documentation at https://msdn.microsoft.com/en-us/library/windows/apps/hh465061.aspx and the Direct3D Tutorial sample (https://channel9.msdn.com/Events/Windows-Camp/Developing-Windows-8-Metro-style-apps-in-Cpp/Cpp-and-DirectX-for-Metro-Style-Games) are all great resources to get started.
C
the camera zooming in and out is nauseating.... >.<
is it possible to download the project source to learn from.. perhaps on CodePlex?