Several small fixes to the DCCsi to match some o3de changes

This commit is contained in:
gallowj
2021-05-26 10:35:50 -05:00
parent c716d812bc
commit 5449c5785b
6 changed files with 45 additions and 24 deletions
@@ -81,8 +81,8 @@ settings = config.get_config_settings()
if __name__ == '__main__':
"""Run this file as main"""
_G_DEBUG = True
_G_TEST_PYSIDE = True
_G_DEBUG = False
_G_TEST_PYSIDE = False
_config = get_dccsi_config()
_settings = config.get_config_settings()
@@ -121,7 +121,7 @@ if __name__ == '__main__':
import PySide2
_LOGGER.info(f'PySide2: {PySide2}')
_LOGGER.info(f'QTFORPYTHON_PATH: {_settings.QTFORPYTHON_PATH}')
#_LOGGER.info(f'QTFORPYTHON_PATH: {_settings.QTFORPYTHON_PATH}')
_LOGGER.info(f'LY_BIN_PATH: {_settings.LY_BIN_PATH}')
_LOGGER.info(f'QT_PLUGIN_PATH: {_settings.QT_PLUGIN_PATH}')
_LOGGER.info(f'QT_QPA_PLATFORM_PLUGIN_PATH: {_settings.QT_QPA_PLATFORM_PLUGIN_PATH}')
@@ -68,14 +68,17 @@ IF "%DEV_REL_PATH%"=="" (set DEV_REL_PATH=..\..\..\..)
echo DEV_REL_PATH = %DEV_REL_PATH%
:: You can define the project name
:: if not defined we just use the DCCsi path as standin
IF "%LY_PROJECT%"=="" (
for %%a in (%CD%..\..\..) do set LY_PROJECT=%%~na
IF "%LY_PROJECT_NAME%"=="" (
for %%a in (%CD%..\..\..) do set LY_PROJECT_NAME=%%~na
)
echo LY_PROJECT_NAME = %LY_PROJECT_NAME%
:: if not defined we just use the DCCsi path as stand-in
IF "%LY_PROJECT%"=="" (set LY_PROJECT=%CD%)
echo LY_PROJECT = %LY_PROJECT%
:: set up the default project path (dccsi)
:: if not set we lso use the DCCsi path as standin
:: if not set we lso use the DCCsi path as stand-in
CD /D ..\..\
IF "%LY_PROJECT_PATH%"=="" (set LY_PROJECT_PATH=%CD%)
echo LY_PROJECT_PATH = %LY_PROJECT_PATH%
@@ -88,7 +91,7 @@ pushd %ABS_PATH%
:: Change to root Lumberyard dev dir
CD /d %LY_PROJECT_PATH%\%DEV_REL_PATH%
set LY_DEV=%CD%
IF "%LY_DEV%"=="" (set LY_DEV=%CD%)
echo LY_DEV = %LY_DEV%
:: Restore original directory
popd
@@ -29,7 +29,7 @@ A general goal of the DCCsi is be self-maintained, and to not taint the users in
So we boostrap additional access to site-packages in our userSetup.py:
"C:\Depot\Lumberyard\Gems\AtomLyIntegration\TechnicalArt\DccScriptingInterface\SDK\Maya\Scripts\userSetup.py"
We don't want users to have to install or use Python2.7 although with maya and possibly other dcc tools we don't have that control. Maya still is on Python2.7, so instead of forcing another install of python we can just use mayapy to manage extensions.
We don't want users to have to install or use Python2.7 although with maya and possibly other dcc tools we don't have that control. Maya 2020 and earlier versions are still on Python2.7, so instead of forcing another install of python we can just use mayapy to manage extensions.
Pip may already be installed, you can check like so (your maya install path may be different):
@@ -109,11 +109,11 @@ def init_ly_pyside(LY_DEV=None):
'bin',
'profile').resolve()
# allows to retreive from settings.QTFORPYTHON_PATH
from azpy.constants import STR_QTFORPYTHON_PATH # a path string constructor
QTFORPYTHON_PATH = Path(STR_QTFORPYTHON_PATH.format(LY_DEV)).resolve()
os.environ["DYNACONF_QTFORPYTHON_PATH"] = str(QTFORPYTHON_PATH)
site.addsitedir(str(QTFORPYTHON_PATH)) # PYTHONPATH
# # allows to retreive from settings.QTFORPYTHON_PATH
# from azpy.constants import STR_QTFORPYTHON_PATH # a path string constructor
# QTFORPYTHON_PATH = Path(STR_QTFORPYTHON_PATH.format(LY_DEV)).resolve()
# os.environ["DYNACONF_QTFORPYTHON_PATH"] = str(QTFORPYTHON_PATH)
# site.addsitedir(str(QTFORPYTHON_PATH)) # PYTHONPATH
QT_PLUGIN_PATH = Path.joinpath(LY_BIN_PATH,
'EditorPlugins').resolve()
@@ -131,15 +131,15 @@ def init_ly_pyside(LY_DEV=None):
# add Qt binaries to the Windows path to handle findings DLL file dependencies
if sys.platform.startswith('win'):
path = os.environ['PATH']
newPath = ''
newPath += str(LY_BIN_PATH) + os.pathsep
newPath += str(Path.joinpath(QTFORPYTHON_PATH,
'shiboken2').resolve()) + os.pathsep
newPath += str(Path.joinpath(QTFORPYTHON_PATH,
'PySide2').resolve()) + os.pathsep
newPath += path
os.environ['PATH']=newPath
# path = os.environ['PATH']
# newPath = ''
# newPath += str(LY_BIN_PATH) + os.pathsep
# newPath += str(Path.joinpath(QTFORPYTHON_PATH,
# 'shiboken2').resolve()) + os.pathsep
# newPath += str(Path.joinpath(QTFORPYTHON_PATH,
# 'PySide2').resolve()) + os.pathsep
# newPath += path
# os.environ['PATH']=newPath
_LOGGER.debug('PySide2 bootstrapped PATH for Windows.')
try:
@@ -319,7 +319,7 @@ if __name__ == '__main__':
settings.setenv() # doing this will add/set the additional DYNACONF_ envars
_LOGGER.info('QTFORPYTHON_PATH: {}'.format(settings.QTFORPYTHON_PATH))
#_LOGGER.info('QTFORPYTHON_PATH: {}'.format(settings.QTFORPYTHON_PATH))
_LOGGER.info('LY_BIN_PATH: {}'.format(settings.LY_BIN_PATH))
_LOGGER.info('QT_PLUGIN_PATH: {}'.format(settings.QT_PLUGIN_PATH))
_LOGGER.info('QT_QPA_PLATFORM_PLUGIN_PATH: {}'.format(settings.QT_QPA_PLATFORM_PLUGIN_PATH))
@@ -0,0 +1,17 @@
{
"gem_name": "Atom_DccScriptingInterface",
"GemFormatVersion": 4,
"Uuid": "7bf5a77dacd8438bb4966a66b5a678d8",
"Name": "Atom_DccScriptingInterface",
"DisplayName": "Atom DccScriptingInterface (DCCsi)",
"Version": "0.1.0",
"Summary": "A python framework for working with various DCC tools and workflows.",
"Tags": ["DCC","Digital","Content","Creation"],
"IconPath": "preview.png",
"Modules": [
{
"Name": "Editor",
"Type": "EditorModule"
}
]
}