0

我想知道调整 DirectX 控件大小的标准方法。控件中显示了一个模型,我希望它在调整大小后具有相同的大小,只有更多的环境应该可见。

我设法通过重置视口和交换链缓冲区来做到这一点,但我也可以用另一种方式(移动相机),也许还有我没有想到的其他方式。我只是不知道哪个是“最好的”方式。

4

1 回答 1

1

更改视口大小应仅显示“更多”查看区域,因为更改纵横比。例如,如果视口的宽度和高度加倍,则纵横比将相同,因此将显示相同的图像,只是更大。

相反,移动相机会改变观看的数量,例如,如果您将相机向后移动,您会看到更多。但是,这可能不是您想要的。您实际上是在将相机移动到另一个位置,而不是简单地更改视图属性。

您可能正在寻找的是更改相机投影属性,这可能会使用“PerspectiveFovLH”来完成,其输入是:(“视野”,“纵横比”,“z 近平面”,“z远平面”)。扩大视野 (FOV) 可以让您看到更多场景。更改纵横比将适当地缩放。通常,纵横比应该是屏幕宽度和高度之间的比率,如果您想要更大的屏幕以显示更多整体,请按照屏幕重新调整大小的量来缩放 FOV。

于 2013-01-17T14:39:08.260 回答