Подтвердить что ты не робот

Как отображать значения глубины на основе расстояния до плоскости изображения в Blender

Я хочу отобразить карту глубины сцены в Blender (v2.65a, используя движок Cycles), который использует расстояние до плоскости изображения (или любой плоскости, параллельной ей, например yz-plane) в качестве значения глубины,

Можно использовать составные узлы для отображения простой карты глубины, как описано в документации. Проблема здесь в том, что используемые значения z основаны на расстоянии до камеры, а не от плоскости изображения. Это означает, что линии, параллельные плоскости изображения, будут иметь разные значения z в зависимости от их местоположения в визуализированном изображении, как это видно в этом примере (рендеринг изображает фронт куба, значения нормализованы):

Depth map using the camera distance

Я хочу, чтобы карта глубины имела ту же глубину для точек на плоскости, параллельной плоскости изображения (без изменения общей проекции, так как карта глубины все равно должна совпадать с обычной рендерингом).

Это может быть достигнуто путем последующей обработки текущей карты глубины с помощью script, которая корректирует значения в соответствии с их углом от направления просмотра, но мне было интересно, есть ли способ получить правильную информацию прямо из процесс рендеринга.

Итак, есть ли способ использовать составные узлы (или аналогичную функцию Blender) для рендеринга карты глубины, основанной на расстоянии до плоскости изображения?

4b9b3361