如何在带有XAML的Windows Phone Direct3D中实现从DirectX (c++)到XAML (c#)的

本文关键字:XAML DirectX c++ 实现 Direct3D Windows Phone | 更新日期: 2023-09-27 18:15:12

我使用Visual Studio 2012创建了一个基于"Windows Phone Direct3D with XAML"模板的新项目。我需要XAML (c#)部分和DirectX (c++)部分之间的变量和函数的双向通信。

我可以通过Direct3DBackground (m_d3dBackground)对象在XAML->DirectX方向进行通信,该对象可从MainPage.xaml.cs.

是否可以在反向(DirectX->XAML)方向做到这一点?Direct3DBackground容器有它嵌入的XAML页面的任何知识吗?

或者:作为穷人的替代品,我可以在XAML页面上设置一个事件,在每帧上触发并轮询Direct3DBackground的成员变量的变化吗?

如何在带有XAML的Windows Phone Direct3D中实现从DirectX (c++)到XAML (c#)的

如果你正在创建一个新项目,为什么不在Windows Phone 8.1上尝试新的互操作模式呢?WP8.1采用了SwapChainBackgroundPanel和SurfaceImageSource,它们已经可以在Windows Store应用程序中使用,因此应用程序可以将DirectX图形与XAML结合起来。这取代了你在Windows Phone 8应用程序中使用的XAML和Direct3D项目模板。有关一起使用XAML和Direct3D的信息,请参阅DirectX和XAML互操作。

在这里你可以得到关于windows phone 8.1更详细的功能介绍