Windows 8 API是否允许我编写一个使用XAML进行UI和DirectX渲染3D对象的应用程序?说我正在写一个3D建模应用程序。我想在XAML中创建很多对话框和UI元素,以及使用DirectX渲染的单个矩形窗口。我更喜欢使用C ++。这可能吗?
答案 0 :(得分:7)
这是我们在发布开发者预览版后听到的一个常见主题。像您这样的开发人员希望将DirectX的高性能即时模式渲染功能与XAML的丰富交互性,控制模型和设计时体验相结合。
我们听到了你。通过Consumer Preview,您现在可以在同一个Metro风格的应用程序中顺利集成XAML和DirectX 11,从而创建快速流畅的体验。例如,您现在可以创建DirectX游戏并使用XAML处理输入,为抬头显示和菜单创建图形,或绑定到应用程序的数据模型。
为此,我们添加了3种新的XAML类型,以支持各种具有不同功能的DirectX互操作方案:
SurfaceImageSource可将DirectX内容完全合成到XAML应用程序中。这允许将DirectX内容绘制到XAML中 可视树,适用于复杂的图像效果,数据可视化, 和其他即时模式绘图方案。
VirtualSurfaceImageSource用于大规模虚拟化内容。这是针对需要平移和应用的应用程序 缩放大型内容,如地图和文档查看器。
SwapChainBackgroundPanel面向全屏,以DirectX为中心的场景。这非常适合游戏和其他低延迟,全屏 具有XAML覆盖的DirectX应用程序。
请查看this msdn page了解更多详情。
根据结果的好坏(或者很糟糕),您仍然可以选择放弃Metro for WPF,因为WPF和Direct3D可以互操作。