You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
94 lines
3.0 KiB
Python
94 lines
3.0 KiB
Python
# coding:utf-8
|
|
#!/usr/bin/python
|
|
#
|
|
# Copyright (c) Contributors to the Open 3D Engine Project.
|
|
# For complete copyright and license terms please see the LICENSE at the root of this distribution.
|
|
#
|
|
# SPDX-License-Identifier: Apache-2.0 OR MIT
|
|
#
|
|
#
|
|
# -- This line is 75 characters -------------------------------------------
|
|
"""
|
|
Module Documentation:
|
|
DccScriptingInterface:: SDK//maya//scripts//set_pref_defaults.py
|
|
|
|
This module manages a predefined set of prefs for maya
|
|
"""
|
|
# -------------------------------------------------------------------------
|
|
# -- Standard Python modules
|
|
import os
|
|
import sys
|
|
# -- External Python modules
|
|
|
|
# -- DCCsi Extension Modules
|
|
import azpy
|
|
from azpy.constants import *
|
|
|
|
# -- maya imports
|
|
import maya.cmds as mc
|
|
import maya.mel as mm
|
|
|
|
# -------------------------------------------------------------------------
|
|
|
|
|
|
# -------------------------------------------------------------------------
|
|
from azpy.env_bool import env_bool
|
|
from azpy.constants import ENVAR_DCCSI_GDEBUG
|
|
from azpy.constants import ENVAR_DCCSI_DEV_MODE
|
|
|
|
# global space
|
|
_DCCSI_GDEBUG = env_bool(ENVAR_DCCSI_GDEBUG, False)
|
|
_DCCSI_DEV_MODE = env_bool(ENVAR_DCCSI_DEV_MODE, False)
|
|
|
|
_MODULENAME = r'DCCsi.SDK.Maya.Scripts.set_defaults'
|
|
|
|
_LOGGER = azpy.initialize_logger(_MODULENAME, default_log_level=int(20))
|
|
_LOGGER.debug('Invoking:: {0}.'.format({_MODULENAME}))
|
|
# -------------------------------------------------------------------------
|
|
|
|
|
|
# -------------------------------------------------------------------------
|
|
def set_defaults(units='meter'):
|
|
"""This method will make defined settings changes to Maya prefs,
|
|
to better configure maya to work with Lumberyard"""
|
|
# To Do: make this data-driven env/settings, game teams should be able
|
|
# to opt out and/or set their prefered configuration.
|
|
|
|
_LOGGER.debug('set_defaults_lumberyard() fired')
|
|
|
|
# set up default units ... this should be moved to bootstrap config
|
|
_LOGGER.info('Default, 1 Linear Game Unit in Lumberyard == 1 Meter'
|
|
' in Maya content. Setting default linear units to Meters'
|
|
' (user can change to other units in the preferences)')
|
|
|
|
result = mc.currentUnit(linear=units)
|
|
|
|
# set up grid defaults
|
|
_LOGGER.info('Setting Grid defaults, to match default unit scale.'
|
|
'(user can change grid config manually')
|
|
try:
|
|
mc.grid(size=32, spacing=1, divisions=10)
|
|
except Exception as e:
|
|
_LOGGER.warning('{0}'.format(e))
|
|
|
|
# viewFit
|
|
_LOGGER.info('Changing default mc.viewFit')
|
|
try:
|
|
mc.viewFit()
|
|
except Exception as e:
|
|
_LOGGER.warning('{0}'.format(e))
|
|
|
|
# some mel commands
|
|
_LOGGER.info('Changing sersp camera clipping planes')
|
|
try:
|
|
mm.eval(str(r'setAttr "perspShape.nearClipPlane" 0.01;'))
|
|
mm.eval(str(r'setAttr "perspShape.farClipPlane" 1000;'))
|
|
except Exception as e:
|
|
_LOGGER.warning('{0}'.format(e))
|
|
|
|
# set up fixPaths
|
|
_LOGGER.info('~ Setting up fixPaths in default scene')
|
|
|
|
return 0
|
|
# -------------------------------------------------------------------------
|