Skip to content
Permalink
Browse files

New Render Settings, UI controls, parameters exposed (#198)

- Added NEtemplates for asBlendNormals, asRaySwitchSurface, asSurfaceLuminance, asBlendNormals, asASCCDL, asMatte (new shaders added in appleseedhq/appleseed#2426) and icons for the same nodes (#185).
- Added and expose cast indirect controls for delta lights, and reorganize the delta lights appleseed UI sections.
- Reorganize the UI for mesh/geometry attributes, sections for SPPM, and medium priority, and expose bias control.
- Remove duplicate turbitidy scale from physical sky and clean its UI.
- Add completely new render globals (or render settings), split into the default Maya section, appleseed and now lighting, output and system. Toggle the controls and sections, subsections according to values of parent attributes, and added Maya annotation and status bar messages.
- Added render stamp status bar message referencing the string replacement allowed by default.
- Fix attribute spreadsheet hiding the appleseed keyable attributes (#167).
- Minor c++ fixes (missing MString header, fixing wrong order in constructor initializer list, and replacing 0 by nullptr where appropriate).
- Set softmin and softmax in some attributes according to appleseed defaults.
  • Loading branch information...
luisbarrancos authored and dictoon committed Mar 10, 2019
1 parent ba40c33 commit 4ba2039815240a301ec9db78c105fdd28ff80628
Showing with 2,799 additions and 1,002 deletions.
  1. BIN icons/asAscCdl.png
  2. BIN icons/asBlendNormals.png
  3. BIN icons/asColorCorrect.png
  4. BIN icons/asInvertColor.png
  5. BIN icons/asMatte.png
  6. BIN icons/asRaySwitchSurface.png
  7. BIN icons/asSurfaceLuminance.png
  8. BIN icons/asSwitchSurface.png
  9. +1,345 −648 icons/mayaseed_icons1.svg
  10. BIN icons/render_asAscCdl.png
  11. BIN icons/render_asBlendNormals.png
  12. BIN icons/render_asColorCorrect.png
  13. BIN icons/render_asInvertColor.png
  14. BIN icons/render_asMatte.png
  15. BIN icons/render_asRaySwitchSurface.png
  16. BIN icons/render_asSurfaceLuminance.png
  17. +27 −0 scripts/AEappleseedBumpControl.mel
  18. +32 −0 scripts/appleseedMaya/AETemplates/NEasAscCdlTemplate.xml
  19. +24 −0 scripts/appleseedMaya/AETemplates/NEasBlendNormalsTemplate.xml
  20. +44 −0 scripts/appleseedMaya/AETemplates/NEasRaySwitchSurfaceTemplate.xml
  21. +16 −0 scripts/appleseedMaya/AETemplates/NEasSurfaceLuminanceTemplate.xml
  22. +30 −2 scripts/appleseedMaya/AETemplates/__init__.py
  23. +4 −1 scripts/appleseedMaya/AETemplates/appleseedPhysicalSkyLightTemplate.py
  24. +2 −0 scripts/appleseedMaya/AETemplates/appleseedSkyDomeLightTemplate.py
  25. +1 −1 scripts/appleseedMaya/hypershadeCallbacks.py
  26. +2 −1 scripts/appleseedMaya/logger.py
  27. +2 −1 scripts/appleseedMaya/menu.py
  28. +1,121 −331 scripts/appleseedMaya/renderGlobals.py
  29. +1 −1 scripts/appleseedMaya/renderer.py
  30. +1 −1 scripts/appleseedMaya/translator.py
  31. +1 −1 scripts/appleseedMaya/util.py
  32. +1 −1 scripts/appleseedMaya/xgenseed.py
  33. +1 −1 scripts/appleseedMaya/xgenseedui.py
  34. +1 −1 scripts/appleseedMaya/xgenseedutil.py
  35. +1 −1 src/appleseedmaya/attributeutils.cpp
  36. +16 −0 src/appleseedmaya/exporters/lightexporter.cpp
  37. +23 −1 src/appleseedmaya/exporters/meshexporter.cpp
  38. +3 −3 src/appleseedmaya/exporters/shadingnodeexporter.cpp
  39. +67 −0 src/appleseedmaya/extensionattributes.cpp
  40. +24 −0 src/appleseedmaya/renderglobalsnode.cpp
  41. +1 −1 src/appleseedmaya/shadingnodemetadata.cpp
  42. +5 −2 src/appleseedmaya/typeids.h
  43. +3 −3 src/appleseedmaya/utils.h
BIN +19 KB icons/asAscCdl.png
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN +782 Bytes icons/asInvertColor.png
Binary file not shown.
BIN +11.2 KB icons/asMatte.png
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN +6.94 KB (210%) icons/asSwitchSurface.png
Binary file not shown.

Large diffs are not rendered by default.

Oops, something went wrong.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,4 +1,31 @@

//
// This source file is part of appleseed.
// Visit https://appleseedhq.net/ for additional information and resources.
//
// This software is released under the MIT license.
//
// Copyright (c) 2018-2019 Luis Barrancos, The appleseedhq Organization
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
//

//
// Based on the standard MEL included with Lambert, but allowing a specific
// label - needed if you want to have separate bump controls for diffuse,
@@ -0,0 +1,32 @@
<?xml version='1.0' encoding='UTF-8'?>
<templates>
<using package='maya'/>
<template name='NEasAscCdl'>
<attribute name='outColor' type='maya.float3'>
<label>Out Color</label>
</attribute>
<attribute name='color' type='maya.float3'>
<label>Color</label>
</attribute>
<attribute name='slope' type='maya.float'>
<label>Slope</label>
</attribute>
<attribute name='offset' type='maya.float'>
<label>Offset</label>
</attribute>
<attribute name='power' type='maya.float'>
<label>Power</label>
</attribute>
<attribute name='saturation' type='maya.float'>
<label>Saturation</label>
</attribute>
</template>
<view name='NEDefault' template='NEasAscCdl'>
<property name='outColor'/>
<property name='color'/>
<property name='slope'/>
<property name='offset'/>
<property name='power'/>
<property name='saturation'/>
</view>
</templates>
@@ -0,0 +1,24 @@
<?xml version='1.0' encoding='UTF-8'?>
<templates>
<using package='maya'/>
<template name='NEasBlendNormals'>
<attribute name='outNormal' type='maya.float3'>
<label>Out Normal</label>
</attribute>
<attribute name='normalA' type='maya.float3'>
<label>Normal A</label>
</attribute>
<attribute name='normalB' type='maya.float3'>
<label>Normal B</label>
</attribute>
<attribute name='weight' type='maya.float'>
<label>Weight</label>
</attribute>
</template>
<view name='NEDefault' template='NEasBlendNormals'>
<property name='outNormal'/>
<property name='normalA'/>
<property name='normalB'/>
<property name='weight'/>
</view>
</templates>
@@ -0,0 +1,44 @@
<?xml version='1.0' encoding='UTF-8'?>
<templates>
<using package='maya'/>
<template name='NEasRaySwitchSurface'>
<attribute name='outColor' type='maya.float3'>
<label>Out Color</label>
</attribute>
<attribute name='materialCamera' type='maya.float3'>
<label>Material Camera</label>
</attribute>
<attribute name='materialShadow' type='maya.float3'>
<label>Material Shadow</label>
</attribute>
<attribute name='materialTransparency' type='maya.float3'>
<label>Material Transparency</label>
</attribute>
<attribute name='materialDiffuse' type='maya.float3'>
<label>Material Diffuse</label>
</attribute>
<attribute name='materialSpecular' type='maya.float3'>
<label>Material Specular</label>
</attribute>
<attribute name='materialGlossy' type='maya.float3'>
<label>Material Glossy</label>
</attribute>
<attribute name='materialLight' type='maya.float3'>
<label>Material Light</label>
</attribute>
<attribute name='materialSubsurface' type='maya.float3'>
<label>Material Subsurface</label>
</attribute>
</template>
<view name='NEDefault' template='NEasRaySwitchSurface'>
<property name='outColor'/>
<property name='materialCamera'/>
<property name='materialShadow'/>
<property name='materialTransparency'/>
<property name='materialDiffuse'/>
<property name='materialSpecular'/>
<property name='materialGlossy'/>
<property name='materialLight'/>
<property name='materialSubsurface'/>
</view>
</templates>
@@ -0,0 +1,16 @@
<?xml version='1.0' encoding='UTF-8'?>
<templates>
<using package='maya'/>
<template name='NEasSurfaceLuminance'>
<attribute name='outColor' type='maya.float3'>
<label>Out Color</label>
</attribute>
<attribute name='color' type='maya.float3'>
<label>Color</label>
</attribute>
</template>
<view name='NEDefault' template='NEasSurfaceLuminance'>
<property name='outColor'/>
<property name='color'/>
</view>
</templates>
@@ -4,7 +4,7 @@
#
# This software is released under the MIT license.
#
# Copyright (c) 2016-2018 Esteban Tovagliari, The appleseedhq Organization
# Copyright (c) 2016-2019 Esteban Tovagliari, The appleseedhq Organization
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -83,7 +83,16 @@ def buildBody(self, nodeName):
self.beginLayout('appleseed', collapse=1)
self.addControl('asIntensityScale', label='Intensity Scale')
self.addControl('asExposure', label='Exposure')
self.addSeparator()
self.addControl('asNormalize', label='Normalize')
self.addSeparator()
self.__buildVisibilitySection()
self.endLayout()

elif self.thisNode.type() in {'pointLight', 'spotLight', 'directionalLight'}:
self.beginLayout('appleseed', collapse=1)
self.addControl('asCastIndirectLight', label='Cast Indirect Light')
self.addSeparator()
self.__buildVisibilitySection()
self.endLayout()

@@ -105,24 +114,43 @@ def buildBody(self, nodeName):

elif self.thisNode.type() == 'mesh':
self.beginLayout('appleseed', collapse=1)

self.__buildVisibilitySection()

self.beginLayout('Alpha Map', collapse=1)
self.callCustom(
self.meshAlphaMapNew, self.meshAlphaMapUpdate, 'asAlphaMap')
self.endLayout()

self.beginLayout('Rendering', collapse=1)
self.addControl('asMediumPriority', label='Medium Priority')
self.addControl('asIsPhotonTarget', label='Photon Target')
self.addSeparator()
self.addControl('asSubsurfaceSet', label='SSS Set')
self.addSeparator()
self.addControl('asIsPhotonTarget', label='SPPM Photon Target')
self.endLayout()

self.beginLayout('Export', collapse=1)
self.addControl('asExportUVs', label='Export UVs')
self.addControl('asExportNormals', label='Export Normals')
self.addControl('asSmoothTangents', label='Smooth Tangents')
self.endLayout()

"""
# Ray bias isn't working as expected yet, disable it for now.
self.beginLayout('Advanced', collapse=1)
self.addControl('asRayBiasMethod', label='Ray Bias Method')
self.addSeparator()
self.addControl('asRayBiasDistance', label='Ray Bias Distance')
self.endLayout()
"""

self.endLayout()

elif self.thisNode.type() == 'shadingEngine':
self.beginLayout('appleseed', collapse=1)
self.addControl('asDoubleSided', label='Double Sided')
self.addSeparator()
self.addControl('asShadingSamples', label='Shading Samples')
self.endLayout()

@@ -52,18 +52,21 @@ def buildBody(self, nodeName):
self.beginLayout('Sky Attributes', collapse=0)
self.addControl('sunTheta')
self.addControl('sunPhi')
self.addSeparator()
self.addControl('turbidity')
self.addControl('turbidityScale')
self.addControl('turbidityScale')
self.addSeparator()
self.addControl('luminanceScale')
self.addControl('luminanceGamma')
self.addControl('saturationScale')
self.addSeparator()
self.addControl('horizonShift')
self.addControl('groundAlbedo')
self.endLayout()

self.beginLayout('Sun Attributes', collapse=0)
self.addControl('sunEnable')
self.addSeparator()
self.addControl('sunRadianceScale')
self.addControl('sunSizeScale')
self.endLayout()
@@ -51,8 +51,10 @@ def beginLayout(self, name, collapse=True):
def buildBody(self, nodeName):
self.beginLayout('Map', collapse=0)
self.addControl("map")
self.addSeparator()
self.addControl("intensity")
self.addControl("exposure")
self.addSeparator()
self.addControl("hShift")
self.addControl("vShift")
self.endLayout()
@@ -5,7 +5,7 @@
#
# This software is released under the MIT license.
#
# Copyright (c) 2016-2018 Esteban Tovagliari, The appleseedhq Organization
# Copyright (c) 2016-2019 Esteban Tovagliari, The appleseedhq Organization
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -5,7 +5,7 @@
#
# This software is released under the MIT license.
#
# Copyright (c) 2016-2018 Esteban Tovagliari, The appleseedhq Organization
# Copyright (c) 2016-2019 Esteban Tovagliari, The appleseedhq Organization
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -48,4 +48,5 @@ def __createLogger():

return logger


logger = __createLogger()
@@ -5,7 +5,7 @@
#
# This software is released under the MIT license.
#
# Copyright (c) 2016-2018 Esteban Tovagliari, The appleseedhq Organization
# Copyright (c) 2016-2019 Esteban Tovagliari, The appleseedhq Organization
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -72,6 +72,7 @@ def showAbout():
mc.setParent('..')
mc.showWindow(window)


__g_appleseedMenu = None


Oops, something went wrong.

0 comments on commit 4ba2039

Please sign in to comment.
You can’t perform that action at this time.