mirror of
https://github.com/ynput/ayon-core.git
synced 2025-12-24 21:04:40 +01:00
Merge branch 'develop' into enhancement/AY-4915_Move-Hiero-client-code
This commit is contained in:
commit
84e5c643b2
21 changed files with 173 additions and 45 deletions
|
|
@ -13,6 +13,26 @@ from ayon_maya.api.lib import (
|
|||
from maya import cmds
|
||||
|
||||
|
||||
@contextlib.contextmanager
|
||||
def preserve_time_units():
|
||||
"""Preserve current frame, frame range and fps"""
|
||||
frame = cmds.currentTime(query=True)
|
||||
fps = cmds.currentUnit(query=True, time=True)
|
||||
start = cmds.playbackOptions(query=True, minTime=True)
|
||||
end = cmds.playbackOptions(query=True, maxTime=True)
|
||||
anim_start = cmds.playbackOptions(query=True, animationStartTime=True)
|
||||
anim_end = cmds.playbackOptions(query=True, animationEndTime=True)
|
||||
try:
|
||||
yield
|
||||
finally:
|
||||
cmds.currentUnit(time=fps, updateAnimation=False)
|
||||
cmds.currentTime(frame)
|
||||
cmds.playbackOptions(minTime=start,
|
||||
maxTime=end,
|
||||
animationStartTime=anim_start,
|
||||
animationEndTime=anim_end)
|
||||
|
||||
|
||||
@contextlib.contextmanager
|
||||
def preserve_modelpanel_cameras(container, log=None):
|
||||
"""Preserve camera members of container in the modelPanels.
|
||||
|
|
@ -348,6 +368,15 @@ class MayaUSDReferenceLoader(ReferenceLoader):
|
|||
])
|
||||
options["file_type"] = self.file_type
|
||||
|
||||
return super(MayaUSDReferenceLoader, self).process_reference(
|
||||
context, name, namespace, options
|
||||
)
|
||||
# Maya USD import reference has the tendency to change the time slider
|
||||
# range and current frame, so we force revert it after
|
||||
with preserve_time_units():
|
||||
return super(MayaUSDReferenceLoader, self).process_reference(
|
||||
context, name, namespace, options
|
||||
)
|
||||
|
||||
def update(self, container, context):
|
||||
# Maya USD import reference has the tendency to change the time slider
|
||||
# range and current frame, so we force revert it after
|
||||
with preserve_time_units():
|
||||
super(MayaUSDReferenceLoader, self).update(container, context)
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
name = "maya"
|
||||
title = "Maya"
|
||||
version = "0.2.0"
|
||||
version = "0.2.1"
|
||||
|
||||
ayon_required_addons = {
|
||||
"core": ">0.3.2",
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue