Skip to content
This repository has been archived by the owner on Sep 20, 2024. It is now read-only.

Commit

Permalink
fix aov separator character usage
Browse files Browse the repository at this point in the history
  • Loading branch information
antirotor committed Nov 12, 2021
1 parent 75893ad commit 5916389
Show file tree
Hide file tree
Showing 4 changed files with 31 additions and 3 deletions.
3 changes: 2 additions & 1 deletion openpype/hosts/maya/api/lib_renderproducts.py
Original file line number Diff line number Diff line change
Expand Up @@ -180,6 +180,7 @@ def __init__(self, layer, render_instance):
self.layer = layer
self.render_instance = render_instance
self.multipart = False
self.aov_separator = render_instance.data.get("aovSeparator", "_")

# Initialize
self.layer_data = self._get_layer_data()
Expand Down Expand Up @@ -676,7 +677,7 @@ def get_renderer_prefix(self):
"""
prefix = super(RenderProductsVray, self).get_renderer_prefix()
prefix = "{}.<aov>".format(prefix)
prefix = "{}{}<aov>".format(prefix, self.aov_separator)
return prefix

def _get_layer_data(self):
Expand Down
17 changes: 16 additions & 1 deletion openpype/hosts/maya/plugins/create/create_render.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
from openpype.modules import ModulesManager

from avalon.api import Session
from avalon.api import CreatorError


class CreateRender(plugin.Creator):
Expand Down Expand Up @@ -476,7 +477,21 @@ def _set_vray_settings(self, asset):

# set separator
# set it in vray menu
cmds.optionMenuGrp("vrayRenderElementSeparator", v=self.aov_separator)
if cmds.optionMenuGrp("vrayRenderElementSeparator", exists=True,
q=True):
items = cmds.optionMenuGrp(
"vrayRenderElementSeparator", ill=True, query=True)

separators = [cmds.menuItem(i, label=True, query=True) for i in items] # noqa: E501
try:
sep_idx = separators.index(self.aov_separator)
except ValueError:
raise CreatorError(
"AOV character {} not in {}".format(
self.aov_separator, separators))

cmds.optionMenuGrp(
"vrayRenderElementSeparator", sl=sep_idx + 1, edit=True)
cmds.setAttr(
"{}.fileNameRenderElementSeparator".format(node),
self.aov_separator,
Expand Down
12 changes: 12 additions & 0 deletions openpype/hosts/maya/plugins/publish/collect_render.py
Original file line number Diff line number Diff line change
Expand Up @@ -172,6 +172,18 @@ def process(self, context):
if renderer.startswith("renderman"):
renderer = "renderman"

try:
aov_separator = self._aov_chars[(
context.data["project_settings"]
["create"]
["CreateRender"]
["aov_separator"]
)]
except KeyError:
aov_separator = "_"

render_instance.data["aovSeparator"] = aov_separator

# return all expected files for all cameras and aovs in given
# frame range
layer_render_products = get_layer_render_products(
Expand Down
2 changes: 1 addition & 1 deletion tools/run_mongo.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ $port = 2707
# path to database
$dbpath = (Get-Item $openpype_root).parent.FullName + "\mongo_db_data"

$preferred_version = "4.0"
$preferred_version = "5.0"

$mongoPath = Find-Mongo $preferred_version
Write-Host ">>> " -NoNewLine -ForegroundColor Green
Expand Down

0 comments on commit 5916389

Please sign in to comment.