Houdini abc cam import wrong logic

Hi

i found the brocken logic in imported abc camera from nuke to houdini
it always messes up APERTURE trying to mimic maya logic as code says

root = hou.pwd().node('../../..')
aperture = __import__("_alembic_hom_extensions").alembicGetCameraDict(root.hdaModule().GetFileName(root), '/Cameras/Camera3/object', root.evalParm("frame")/root.evalParm("fps")).get('aperture')
# Match maya render mask (logic from Houdini's own FBX importer)
node = hou.pwd()
resx = node.evalParm('resx')
resy = node.evalParm('resy')
aspect = node.evalParm('aspect')
aperture *= min(1, (resx / resy * aspect) / 1.5)
return aperture

so when i have this in nuke


ill get this in houdini
image

original houdini’s abc import logic gives me right aperture

root = hou.pwd().node('../../..')
return __import__("_alembic_hom_extensions").alembicGetCameraDict(root.hdaModule().GetFileName(root), '/Cameras/Camera3/object', root.evalParm("frame")/root.evalParm("fps")).get('aperture')

image

i believe this ayon abc cam logic is not rowking with some resolutions because my footage is 4608 x 3164 so calculation will give me number less then a 1 so it will be used as a multiplayer but shouldnt. It leads to situation when i import a camera from nuke and a modelbuildrs geo all from ayon and i dont have geo match from camera perspective. If i put right aperture by hand or use code from native abc importer

Known issue: AY-6773_wrong camera aperture · Issue #106 · ynput/ayon-houdini · GitHub

Here’s a PR: Do not enforce "Match Maya Mask" aperture expression on Load Camera (abc) by BigRoy · Pull Request #152 · ynput/ayon-houdini · GitHub

1 Like