C#将屏幕空间坐标转换为特定Z位置的世界空间坐标的函数?

C#将屏幕空间坐标转换为特定Z位置的世界空间坐标的函数?,c#,xna,C#,Xna,我正在制作一个2D游戏,渲染为3D 当点击我的游戏时,我希望它将屏幕空间像素坐标转换为世界空间坐标,知道该点应该击中的Z轴点(0) 我如何使用函数实现这一点 我将XNA与C#一起使用。从2d转换为3d是不投射的。xna中有一个内置的方法: Vector3 3dWorldPosition = GraphicsDevice.Viewport.Unproject(2DscreenVector & desired Z comp, viewMatrix, projectionMatrix);

我正在制作一个2D游戏,渲染为3D

当点击我的游戏时,我希望它将屏幕空间像素坐标转换为世界空间坐标,知道该点应该击中的Z轴点(0)

我如何使用函数实现这一点


我将XNA与C#一起使用。

从2d转换为3d是不投射的。xna中有一个内置的方法:

 Vector3 3dWorldPosition = GraphicsDevice.Viewport.Unproject(2DscreenVector & desired Z comp, viewMatrix, projectionMatrix);

从2d转换为3d是不投射的。xna中有一个内置的方法:

 Vector3 3dWorldPosition = GraphicsDevice.Viewport.Unproject(2DscreenVector & desired Z comp, viewMatrix, projectionMatrix);

那没用。当放大时,缩放比例增加,它会被偏移。这不起作用。当放大和缩放增加时,它会被偏移。