uwp directx 和 c# 开发
uwp directx and c# development
我正在开发具有 3d 表示视图的 UWP
C# 蓝牙应用程序。
(手和手指将接收传感器 ST 微电子 WESU)
目前,我使用 windows phone 8 应用程序(桌面和 Windows phone)用于带有 ti 传感器标签和 DirectX
的蓝牙例如。
现在我开始使用自定义 UWP BLE 示例(最初出现在 Windows SDK 中)从 stmicro wesu 传感器读取计算的四元数。
但现在它可以与 ble /sharpdx /uwp 和 Windows 10 一起正常工作。但是当我现在尝试在 Lumia 640 上执行应用程序时,出现异常。
问题是它使用 DirectX
9 并且在 UWP
中不受 sharp dx 的支持。
sharp dx 团队确认 UWP
不适用于 DirectX
9(core.net 如果我没记错的话)。
我尝试如下降级用于像素着色器和顶点着色器的版本,但没有成功。
所以我的问题是我怎样才能到达 运行 DirectX
9 在 Lumia 640 的 UWP
下?
//
using (var vertexShaderByteCode = ShaderBytecode.CompileFromFile("vertexShader.hlsl", "main", "vs_4_0_level_9_1", ShaderFlags.None))
{
vertexShader = new D3D11.VertexShader(this.device,vertexShaderByteCode);
inputSignature = new ShaderSignature(vertexShaderByteCode);
}
//
using (var pixelShaderByteCode = ShaderBytecode.CompileFromFile("pixelShader.hlsl", "main", "ps_4_0_level_9_1", ShaderFlags.None))
{
pixelShader = new D3D11.PixelShader(this.device , pixelShaderByteCode);
}
好的,我同意你的看法,这只是关于 de shader
vs_4_0_level_9_1
ps_4_0_level_9_1
和
使用 (D3D11.Device defaultDevice = new D3D11.Device(D3D.DriverType.Hardware, D3D11.DeviceCreationFlags.None) )
enter image description here
我正在开发具有 3d 表示视图的 UWP
C# 蓝牙应用程序。
(手和手指将接收传感器 ST 微电子 WESU)
目前,我使用 windows phone 8 应用程序(桌面和 Windows phone)用于带有 ti 传感器标签和 DirectX
的蓝牙例如。
现在我开始使用自定义 UWP BLE 示例(最初出现在 Windows SDK 中)从 stmicro wesu 传感器读取计算的四元数。
但现在它可以与 ble /sharpdx /uwp 和 Windows 10 一起正常工作。但是当我现在尝试在 Lumia 640 上执行应用程序时,出现异常。
问题是它使用 DirectX
9 并且在 UWP
中不受 sharp dx 的支持。
sharp dx 团队确认 UWP
不适用于 DirectX
9(core.net 如果我没记错的话)。
我尝试如下降级用于像素着色器和顶点着色器的版本,但没有成功。
所以我的问题是我怎样才能到达 运行 DirectX
9 在 Lumia 640 的 UWP
下?
//
using (var vertexShaderByteCode = ShaderBytecode.CompileFromFile("vertexShader.hlsl", "main", "vs_4_0_level_9_1", ShaderFlags.None))
{
vertexShader = new D3D11.VertexShader(this.device,vertexShaderByteCode);
inputSignature = new ShaderSignature(vertexShaderByteCode);
}
//
using (var pixelShaderByteCode = ShaderBytecode.CompileFromFile("pixelShader.hlsl", "main", "ps_4_0_level_9_1", ShaderFlags.None))
{
pixelShader = new D3D11.PixelShader(this.device , pixelShaderByteCode);
}
好的,我同意你的看法,这只是关于 de shader
vs_4_0_level_9_1 ps_4_0_level_9_1 和
使用 (D3D11.Device defaultDevice = new D3D11.Device(D3D.DriverType.Hardware, D3D11.DeviceCreationFlags.None) )
enter image description here