1

我们在 Freescale iMX53 平台上使用 OpenGLES 加速 Silverlight 时存在渲染问题:BSP 带有环境标志 bsp_xrplugin_opengl=1,它将 XAML 渲染引擎配置为使用 OpenGLES。但是,在使用此标志时,我们遇到了一些伪影和图形渲染问题。例如,当拉起 Microsoft (Silverlight) 软输入面板时,大部分窗口,有时甚至是所有窗口,都呈现为纯黑色。

在我们的 Silverlight 应用程序中,我们遇到了图形消失的问题,有时区域会被黑色填充。该应用程序是使用 XAML in Hand 框架用 C# 编写的,但我们还创建了一个 C++ Silverlight 测试应用程序,它产生了相同的结果 - 所以这似乎是一个 Silverlight 渲染问题。

禁用硬件加速 XAML 渲染时,图形渲染正确,但 CPU 成本更高,这是我们不希望的。

我们已经安装了所有最新的 WCE7 更新。任何人都可以建议修复,或者建议任何尝试吗?

4

2 回答 2

1

我遇到了同样的问题,我在 Microsoft 源文件之一中发现了该错误,它位于 OpenGL 插件上,因此它发生在所有启用了 OpenGL 的平台上(似乎也发生在 compact 2013 中)。文件:

C:\WINCE700\public\COMMON\oak\xamlrenderplugin\opengl\opengldevice.cpp

在第 537 行:

MatrixProjection.SetToTranslation(-1.0f*(uWidth/2), -1.0f*(uHeight/2), -1.0f*uWidth);

用。。。来代替:

MatrixProjection.SetToTranslation(-1.0f*(((float)uWidth)/2), -1.0f*(((float)uHeight)/2), -1.0f*uWidth);

为 OpenGL 重新编译 xamlrenderplugin,然后制作图像。

于 2015-01-20T14:47:49.233 回答
1

在与飞思卡尔进行了漫长而艰巨的支持会议后,我们找到了部分解决方案。当我在图像中包含这些环境变量时:

<Entry Name="gsl_tgthal">mx53</Entry>
<Entry Name="egl_platform">z430</Entry>

...在具有 OpenGL 渲染的本机应用程序中使用嵌入式 XAML 时,图形问题消失了。但是,我使用了“部分解决方案”这个短语,因为当使用 XAML In The Hand 库在托管应用程序中使用嵌入式 XAML 时,它没有解决问题。

于 2014-05-15T12:43:29.020 回答