XNA有摄像头库吗?

XNA有摄像头库吗?,xna,xna-4.0,Xna,Xna 4.0,XNA是否存在不同摄像头的库?我搜索了很多不同的相机类,它们有不同的接口(或者根本没有定义接口),但没有标准相机定义的通用接口 我觉得一定有我遗漏的东西,这似乎是任何游戏的一个关键方面,因此缺少相机库肯定有很好的理由。你的问题有点模棱两可。因此,我将尽我所能解释如何在XNA中使用相机 基本上,相机只是一个矩阵(正如你已经知道的),或者矩阵的集合。通常,您有一个视图矩阵(将摄影机放置在世界中)和一个投影矩阵(将世界的三维点投影到二维视口中) 因为相机就这么简单-真的不需要某种全面的相机库。对于一个

XNA是否存在不同摄像头的库?我搜索了很多不同的相机类,它们有不同的接口(或者根本没有定义接口),但没有标准相机定义的通用接口


我觉得一定有我遗漏的东西,这似乎是任何游戏的一个关键方面,因此缺少相机库肯定有很好的理由。

你的问题有点模棱两可。因此,我将尽我所能解释如何在XNA中使用相机

基本上,相机只是一个矩阵(正如你已经知道的),或者矩阵的集合。通常,您有一个视图矩阵(将摄影机放置在世界中)和一个投影矩阵(将世界的三维点投影到二维视口中)

因为相机就这么简单-真的不需要某种全面的相机库。对于一个游戏来说,要“硬编码”一个满足该游戏所需功能的简单摄像头类,通常比尝试解决一个指数级的复杂问题要容易得多,即制作一个适用于所有游戏的通用摄像头类

要为相机创建有用的矩阵,XNA
Matrix
类提供了。类似于投影矩阵的
CreatePerspective
,或视图矩阵的
CreateLookAt

(因此,为了创建一个简单的camera类,让它获取您的相机设置信息—位置、视野等—并输出必要的矩阵。)


若要在绘制时使用这些矩阵,需要在效果上设置它们(它们将用于将顶点变换到顶点着色器中的屏幕位置),它提供了一个一致的界面来执行此操作。

什么是“标准照相机定义”?抱歉,我不认为我说得很清楚。我是一个完整的3d游戏和XNA nub,所以我不知道什么是标准的相机定义。然而,我感到困惑的是,似乎没有。它看起来(从一个非常天真的第一眼看)好像有一些界面可以更新相机,得到一个视图矩阵和一个投影矩阵。谢谢,这确实回答了我的问题。