Я хочу преобразовать координату экрана в координату мира в Directx 11. Я обнаружил, что могу легко это сделать с помощью функции XMVector3Unproject
. Есть один улов, я хочу выбрать свою собственную координату Z, чтобы рассказать о том, как далеко от камеры моя точка (экранные координаты 2d, мировые координаты - 3d). Из того, что я наблюдал, я должен выяснить, какова позиция моей точки в буфере глубины.XMVector3Unproject - Экран к координате мира по конкретному Z
Мой буфер глубины составляет от 0,0 до 1,0 (обычный случай). Мой ближайший самолет - 0.1f и дальняя дальность 1000.0f. Я знаю, что значения в буфере глубины НЕ распределяются равномерно. Фактически, для моей настройки 20.0f находится где-то около 0.995 на буфере глубины (близко к ближайшей плоскости, но почти полностью вниз в буфере глубины). Как определить эти значения?