Closed tws0002 closed 5 years ago
Hi,
Thanks for wanting to test out the Houdini pipeline. Let us know when there are any issues :)
IMPORTANT: Replace the following parts throughout the example shown:
<INSERT HOUDINI VERSION>
, example: 16.5.268
<INSERT INSTALL FOLDER>
, example: C:/Programs Files
Dependencies:
What you will need is our the colorbleed-config.master
, the avalon.houdini
files and the MainMenuCommon.xml
and 123.py
123.py
is needed to run start up code when Houdini starts.
MainMenuCommon.xml
is the Avalon menu definition (this will be replaced with a dynamic menu later on)
Place them in their respective folders so that avalon can pick them up.
Mongo:
In MongoDB you will need to add the application to a project definition under apps
.
Add the following lines:
{
"name" : "houdini16",
"label" : "Houdini <INSERT HOUDINI VERSION>"
},
Note that the name
here is similar to the executable in the example of the toml
, it is a requirement that they match else avalon won't be able to find and start the application.
Launch files:
You will need to create a .toml
file similar to the example below and place it in avalon-setup/bin
.
executable = "houdini16"
schema = "avalon-core:application-1.0"
application_dir = "houdini"
label = "Houdini <INSERT HOUDINI VERSION>"
icon = "magic"
color = "#3B9C6F"
order = 5 # move a bit to the end
[copy]
"{AVALON_CORE}/res/houdini/MainMenuCommon.xml" = "MainMenuCommon.xml"
[environment]
HOUDINI_SCRIPT_PATH = [
"{AVALON_CORE}/res/houdini",
"<INSERT INSTALL FOLDER>/Side Effects Software/Houdini <INSERT HOUDINI VERSION>/houdini/scripts"
]
Create a simple .bat
or .shell
file, name it exactly as the executable
variable in the .toml
and place it in the avalon-setup/bin/<linux or windows>
, see example below for content:
BAT:
@echo off
set __app__="Houndini <INSERT HOUDINI VERSION>"
set __exe__="<INSERT INSTALL FOLDER>/Side Effects Software/Houdini <INSERT HOUDINI VERSION>/bin/houdinifx.exe"
if not exist %__exe__% goto :missing_app
call %__exe__% %*
goto :eof
:missing_app
echo ERROR: %__app__% not found at %__exe__%
exit /B 1
BASH
#!/usr/bin/env bash
<INSERT INSTALL FOLDER>/Side Effects Software/Houdini <INSERT HOUDINI VERSION>/bin/houdinifx
Hope that helps! Good luck.
hi, @aardschok thx for the guide. it works for me now.
it will be great if you don't mind to tell me more about what you already integrate into Avalon Houdini pipeline. so that I will take note when testing on it.
Thanks Desmond
Currently supported in the Avalon Houdini pipeline:
Create / Load / Manage tools
Publish
Create point cache, camera and vdb instances
Load Alembic, point cache and camera
Export Alembic, point cache and camera
Export VDB
Houdini to 3rd party:
colorbleed.plugins.maya.load
)colorbleed.plugins.maya.load
)Improved but not pushed / merged yet:
Todo:
great. Thanks for the quick reply. One-off topic question do you guys using Adobe product like photoshop and after effects? if so do you guys have any plan to integrate into Avalon?
We do use it Adobe packages but they are not integrated. It would be ideally to integrate them into Avalon but for now they are of low priority.
ok noted. Thx.
would you mind to share me .toml
and .bat
for fusion launch files?
my configuration for seems to have some issues.
Thanks Desmond
The .bat
file is similar to the one of Houdini, replace the value of __app__
with Fusion <VERISON>
and the value of __exe__
with the path of the fusion executable.
The .toml
file will need to have the following environment keys:
FUSION9_MasterPrefs
OFX_PLUGIN_PATH
Again, remember that the executable
in the .toml
file will need to be the name of the .bat
file.
thanks for the advice.
after following the step, I still cannot get the Avalon menu in fusion!!
here is my .motl
executable = "fusion9"
schema = "avalon-core:application-1.0"
application_dir = "fusion"
label = "Black Magic Fusion 9"
[environment]
PYTHONPATH = [
"{AVALON_CORE}/setup/fusion",
"{PYTHONPATH}"
]
FUSION9_MasterPrefs = [
"{AVALON_CORE}/setup/fusion/scripts/Comp"
]
OFX_PLUGIN_PATH = [
"K:/SES/Library/spipe/avalon-setup/git/OFX/Plugins"
]
am I doing right? im very new to fusion so I might be doing wrong!! bcos of the pricey nuke license!! I would like to give fusion a try.
Thanks
Avalon menu in fusion!!
This will need to be done through the fusion.prefs
file. The FUSION9_MasterPrefs
needs to point to an actual file like: studio_shared.prefs
. You can view an example how such a file is build here
On the note of Fusion: Be careful to not start a QApplication from Fusion, it will crash the program. For more information on Fusion development visit / register on this website
Good luck!
Be careful to not start a QApplication from Fusion, it will crash the program.
To clarify this, specifically don't run it from the Python console in the Fusion UI. You can run an external script with the RunScript
commands or alike with a Qt application just fine since it doesn't run in Fusion's main thread. :)
@aardschok Thanks for the advice. I will try it. @BigRoy Thanks for the clarify.
Do you guys mind to share how your studio pipeline workflow from concept to final output? seems everything now still under development stage. how you guys manage the studio pipeline workflow?
seems everything now still under development stage.
The pipeline is always under development as production demands new things, developers come with new software and versions of that software.
Managing the pipeline (Avalon) is just a part of it, we mostly manage the configuration of the pipeline. If you dive into the Colorbleed config you will see a separation based on application.
# Config modules
config/
- fusion
- houdini
- maya
- plugins
# Avalon
avalon/
- fusion
- houdini
- maya
Each application folder in the configuration will call function from modules found in Avalon to setup everything we need for our pipeline flow. If the artists need a new application it is easy to integrate it in the pipeline.
how you guys manage the studio pipeline workflow?
The goal of Avalon is to have a very flexible workflow, artists should never be limited by the pipeline. This is a general workflow, not specific to our studio:
Concept >
Modeling >
Texturing & Shading
Rigging >
Animation >
FX
Environment >
Lighting >
Rendering >
Compositing
With the tools which come along with Avalon the artists will be able to update and manage the content of the scenes on the fly.
I hope this answered some of your questions.
Thanks for the explanation. because of the flexibility, I have some issues with setting up stuff in Avalon. not sure am I do it right but have few questions to ask.
Question
maya2017.toml
.
application_dir = "maya"
default_dirs = [
"scenes",
"data",
"renderData/shaders",
"images"
]
label = "Autodesk Maya 2017"
schema = "avalon-core:application-1.0"
executable = "maya2017"
description = ""
[ARNOLD_LICENSE] solidangle_LICENSE="####@SERVER-PC"
VRAY_AUTH_CLIENT_FILE_PATH="{SPIPEDIR}/Third-Party/vray/license"
[copy] "{AVALON_CORE}/res/workspace.mel" = "workspace.mel"
[environment] MAYA_DISABLE_CLIC_IPM = "Yes" # Disable the AdSSO process MAYA_DISABLE_CIP = "Yes" # Shorten time to boot MAYA_DISABLE_CER = "Yes" PYMEL_SKIP_MEL_INIT = "Yes" LC_ALL= "C" # Mute color management warnings
VRAY_FOR_MAYA2017_MAIN_x64="{SPIPEDIR}/Third-Party/vray/maya/2017/{VRAY_VERSION}/maya_vray" VRAY_FOR_MAYA2017_PLUGINS_x64="{SPIPEDIR}/Third-Party/vray/maya/2017/{VRAY_VERSION}/maya_vray/vrayplugins" VRAY_PLUGINS_x64="{SPIPEDIR}/Third-Party/vray/maya/2017/{VRAY_VERSION}/maya_vray/vrayplugins" VRAY_TOOLS_MAYA2017_x64="{SPIPEDIR}/Third-Party/vray/maya/2017/{VRAY_VERSION}/vray/bin"
PATH = [ "{SPIPEDIR}/Third-Party/arnold/mtoadeploy/2017/bin", "{SPIPEDIR}/Third-Party/vray/maya/2017/{VRAY_VERSION}/maya_root/bin", "{PATH}" ] PYTHONPATH = [ "{AVALON_CORE}/setup/maya", "{AF_ROOT}/python", "{CGRU_LOCATION}/lib/python", "{CGRU_LOCATION}/plugins/maya", "{BONUS_PATH}/python-2017", "{SPIPEDIR}/Third-Party/vray/maya/2017/{VRAY_VERSION}/maya_vray/scripts", "{PYTHONPATH}" ] MAYA_MODULE_PATH = [ "{SPIPEDIR}/Third-Party/arnold/mtoadeploy/2017", "{BONUS_PATH}", ] MAYA_RENDER_DESC_PATH = [ "{SPIPEDIR}/Third-Party/arnold/mtoadeploy/2017", "{SPIPEDIR}/Third-Party/vray/maya/2017/{VRAY_VERSION}/maya_root/bin/rendererDesc", ] MAYA_PLUG_IN_PATH = [ "{BONUS_PATH}/plug-ins/win64-2017", "{SPIPEDIR}/Third-Party/vray/maya/2017/{VRAY_VERSION}/maya_vray/plug-ins", ] XBMLANGPATH = [ "{CGRU_LOCATION}/plugins/maya/icons", "{BONUS_PATH}/icons", "{SPIPEDIR}/Third-Party/vray/maya/2017/{VRAY_VERSION}/maya_vray/icons", ] MAYA_SCRIPT_PATH = [ "{CGRU_LOCATION}/plugins/maya/mel/AETemplates", "{CGRU_LOCATION}/plugins/maya/afanasy", "{BONUS_PATH}/scripts-2017", "{SPIPEDIR}/Third-Party/vray/maya/2017/{VRAY_VERSION}/maya_vray/scripts", ] XGEN_CONFIG_PATH = [ "{SPIPEDIR}/Third-Party/vray/maya/2017/{VRAY_VERSION}/maya_root/plug-ins/xgen/presets", ]
I have everything load in Maya but all the menu does not show up in Maya.
hope you can give some advice on this.
Thanks
Desmond
I have everything load in Maya but all the menu does not show up in Maya.
I am assuming you mean that all the plugins are loaded at boot up? Correct me if I am wrong. Try out the following:
Load
and Auto Load
for all third party pluginsThis way you can check which plugin fails / succeeds on its own.
From what I can recall, the license server needs to be stored in an environment variable. What I see in you .toml
is that the Arnold license has a custom header. See this link and move you solidangle_LICENSE
under [environment]
Why under environment?:
The code found in core.lib
here adds the keys/values under the header [environment]
in the .toml
to the environment which will be used by Avalon to launch the application in.
Good luck!
hey,
Thanks for the explanation. I have a problem after adding other plugin environments in maya2017.toml
which is the Avalon menu is not loaded!! how do you guys manage the third party plugins environments for Avalon?
I found this in @BigRoy colorbleed-config https://github.com/BigRoy/colorbleed-config/blob/app_env/colorbleed/environments/maya2018.json are you guys using this method to manage all the environments?
One more question where can i found this cbMayaScripts
? or this is just for inhouse use only?
@tws0002 were you able to continue testing or still totally stuck?
Thanks for the explanation. I have a problem after adding other plugin environments in maya2017.toml which is the Avalon menu is not loaded!! how do you guys manage the third party plugins environments for Avalon?
Were you able to solve this particular problem?
I found this in @BigRoy colorbleed-config https://github.com/BigRoy/colorbleed-config/blob/app_env/colorbleed/environments/maya2018.json are you guys using this method to manage all the environments?
These are currently unused. We are implementing some sort of support like that with acre but have not yet used it in production.
One more question where can i found this cbMayaScripts? or this is just for inhouse use only?
These are currently still internal - you wouldn't need it to operate productions with the colorbleed configuration though. It should be able to operate without.
Anything specific you are looking for?
Were you able to solve this particular problem?
yes, I just get this problem fix. Thanks.
Anything specific you are looking for?
- I still stuck at fusion integration with Avalon!! maybe i don't have enough understanding on how to set up
fusion.prefs
andFUSION9_MasterPrefs
- do you guys have any daily wip preview tools integrated with Avalon?
I start trying the Maya to houdini17 workflow now.
Thanks for the help
Here's our fusion_shared.prefs
:
{
Locked = true,
Global = {
Paths = {
Map = {
["Scripts:"] = "$(AVALON_CORE)/setup/fusion/scripts;$(COLORBLEED_CONFIG)/setup/fusion/scripts;Fusion:Scripts",
["Macros:"] = "AllDocs:Macros;Fusion:Macros",
["Fuses:"] = "AllDocs:Fuses;Fusion:Fuses",
["Plugins:"] = "AllDocs:Plugins;Fusion:Plugins",
["Config:"] = "$(AVALON_CORE)/setup/fusion/config;$(COLORBLEED_CONFIG)/setup/fusion/config;AllDocs:Config;Fusion:Config"
},
},
},
}
_Note that for the above to load correctly the AVALON_CORE
and COLORBLEED_CONFIG
environment variables must be set prior to launching Fusion to respectively the full path of avalon core and the colorbleed config. You can just do that in the .toml
if you'd like, we just happen to have it placed somewhere else._
And here's our Fusion .toml
(slightly simplified):
application_dir = "fusion"
default_dirs = [
"scenes",
"renders",
"renders/preview"
]
executable = "fusion9"
schema = "avalon-core:application-1.0"
label = "Black Magic Fusion 9"
icon = "object-group"
color = "#3B879C"
[environment]
FUSION9_MasterPrefs=[
"path/to/fusion_shared.prefs"
]
OFX_PLUGIN_PATH=[
"path/to/ofx",
"path/to/ofx/Plugins",
]
The OFX_PLUGIN_PATH
is just to show how you might point to a custom storage point for OFX plug-ins. I believe that OFX plug-ins will only work with Fusion Studio so keep that in mind.
Hope this helps!
do you guys have any daily wip preview tools integrated with Avalon?
Not specifically, no. We do have an internal issue regarding something like that but have been unable to create a useful design/tooling system for that. If you have ideas/references I'd recommend creating a new issue specifically regarding that so we can keep discussions contained regarding a single topic. This makes it easier to follow the conversation, but also make it easier to find the conversation for others and allow them to join the discussion.
Looking forward to more input.
@BigRoy Thanks for the Fusion ENV config.
Not specifically, no. We do have an internal issue regarding something like that but have been unable to create a useful design/tooling system for that. If you have ideas/references I'd recommend creating a new issue specifically regarding that so we can keep discussions contained regarding a single topic. This makes it easier to follow the conversation, but also make it easier to find the conversation for others and allow them to join the discussion.
sure I will create a topic at Avalon core.
Thanks
hi, guys, I have a problem when launch pyblish in Houdini here is the error!! houdini using python 27 but pyblish is using python3.
Installing Avalon ...
Registering callbacks
Registering global plug-ins..
Setting up Pyblish QML in Houdini
Using Python @ 'C:/PROGRA~1/SIDEEF~1/HOUDIN~1.352/python27\python.exe'
Using PyQt5 @ 'None'
Success. QML server available as pyblish_qml.api.current_server()
Traceback (most recent call last):
File "C:\PROGRA~1\SIDEEF~1\HOUDIN~1.352\python27\lib\runpy.py", line 162, in _run_module_as_main
"__main__", fname, loader, pkg_name)
File "C:\PROGRA~1\SIDEEF~1\HOUDIN~1.352\python27\lib\runpy.py", line 72, in _run_code
exec code in run_globals
File "\avalon-setup\git\pyblish-qml\pyblish_qml\__main__.py", line 6, in <module>
from . import app
File "\avalon-setup\git\pyblish-qml\pyblish_qml\app.py", line 12, in <module>
from PyQt5 import QtCore, QtGui, QtQuick, QtTest
ImportError: Module use of python3.dll conflicts with this version of Python.
do u guys have this error before?
Thanks Desmond
I haven't seen this before. Maybe @aardschok knows what's up? Or @mottosso might have seen that before regarding Qt.py or pyblish_qml?
Using Python @
'C:/PROGRA~1/SIDEEF~1/HOUDIN~1.352/python27\python.exe'
QML is using the wrong Python. Try setting the PYBLISH_QML_PYTHON_EXECUTABLE
to force it to pick your Python 3 exe. Also remove any notion of Python 3 from your PATH
, if there is any.
@mottosso Thanks for the help. it works for now.
@aardschokI have a question, Avalon for Houdini haveWork Files
function like Maya?
I don't believe it's implemented. Do you need this urgently? I could have a look next week probably if you need it. :)
Had a quick look in the Work Files code in avalon.tools
and indeed, it's not implemented as of yet. However, it should be trivial. Is that something you feel comfortable with yourself or would you need assistance?
The code can be found here
"maya"
ensure you have the relevant function implemented for Houdini and add "houdini" to the lookups for save, open and current fileThanks for the explanation. I do like to give it a try. it will be great if you can give me some guidance.
how does your studio handle the Houdini work file by using Avalon for now?
I do like to give it a try. it will be great if you can give me some guidance.
The comment above, does that help you enough?
how does your studio handle the Houdini work file by using Avalon for now?
Artists manually save/open with Houdini. Though use Avalon launcher to launch Houdini to allow publishing, etc.
Regarding the Work Files. I've started some work on improving that tool - the current state would be: https://github.com/Colorbleed/core/pull/37
I might work some more on it over the next few weeks.
@tws0002 Little update, long overdue as I had to focus on other things.
Work on Houdini support for Work Files tool has also started, see: https://github.com/getavalon/core/issues/365 - and the related commit here: https://github.com/BigRoy/core/commit/241864fa5b82fa1348540679bed2618038356745
I will likely polish out the code more (see the linked issue) and then fix some other bits of the improvements to the Workfiles tool. I'm expecting code should be ready early next week.
Are you still playing around with Avalon and the Colorbleed-config?
@tws0002 work files api has been merged into avalon core with built-in support for Maya, Houdini and Fusion. :muscle:
I will close this issue for now as I believe you are still using/testing Avalon but it's unrelated to this issue.
hi
how can i try colorbleed houdini in avalon?
Desmond