Вместо того, чтобы пытаться угнать расстояние от объекта до камеры, вы можете просто вычислить его самостоятельно.
import math
import maya.cmds as cmds
def distance_to_camera(obj, cam):
cam_pos = cmds.xform(cam, t=True, ws=True, q=True)
object_pos = cmds.xform(obj, t=True, ws=True, q=True)
raw_dist = [a-b for a, b in zip(cam_pos, object_pos)]
return math.sqrt (sum([a**2 for a in raw_dist]))
distance_to_camera ('pCube1', 'persp')
raw_dist = [a-b for a, b in zip(cam_pos, object_pos)]
принимаетдва списка по 3 числа (позиции) и вычитание каждого элемента в одном списке из его противоположного числа в другом.
math.sqrt (sum([a**2 for a in raw_dist]))
- квадратный корень из квадратов трех чисел в raw_dist
-то есть расстояние.Вы можете сделать это с помощью API Maya, но эта версия не требует дополнительного импорта, кроме math