Skip to content

Commit

Permalink
New shaders, maps, UI redesign, 2016 material viewer
Browse files Browse the repository at this point in the history
  • Loading branch information
haggi committed Oct 8, 2015
1 parent 5eca737 commit d3daaf7
Show file tree
Hide file tree
Showing 61 changed files with 3,163 additions and 1,027 deletions.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
458 changes: 458 additions & 0 deletions src/mayaToAppleseed/mtap_devmodule/resources/swatchRender.xml

Large diffs are not rendered by default.

Binary file not shown.
Binary file not shown.
Binary file not shown.
140 changes: 140 additions & 0 deletions src/mayaToCorona/mtco_devmodule/resources/Config-703093.conf
@@ -0,0 +1,140 @@
#####################################################
# Default Corona auto-generated initial config file #
# #
# format: #
# type name = value #
#####################################################
int system.drMaxDumpPixels = 500000
string system.sceneReportFile =
string system.sceneExportPath =
int system.randomSampler = 3
int system.randomSeed = 1234
int system.numThreads = 0
bool system.showPrevisualizations = true
bool system.minimizePrecomp = false
int system.vfbUpdateInterval = 1000
int system.threadPriority = 0
float geometry.shadowBias = -6.07
int geometry.minInstanceSaving = 50000
float geometry.maxNormalDiff = 0.55
int geometry.accelerationStructure = 2
bool geometry.embree.lowMemory = false
bool geometry.embree.highQuality = true
bool geometry.embree.precise = true
float geometry.bvh.costIteration = 1
float geometry.bvh.costTriangle = 1
int geometry.bvh.leafSizeMin = 2
int geometry.bvh.leafSizeMax = 6
int geometry.displace.subdivType = 0
float geometry.displace.maxSizeScreen = 2
float geometry.displace.maxSizeWorld = 1
bool geometry.displace.filterMap = false
bool geometry.displace.smoothNormals = true
float geometry.displace.maxSizeScreenOutFrustumMultiplier = 100
int progressive.passLimit = 0
int progressive.timeLimit = 0
int progressive.adaptivityInterval = 0
float progressive.adaptivityAmount = 0
int bucket.samplesPerIteration = 1
int bucket.passes = 2
float bucket.adaptiveThreshold = 0.03
int bucket.size = 32
bool bucket.showOrder = false
int image.width = 640
int image.height = 480
int image.region.startX = 0
int image.region.startY = 0
int image.region.endX = 0
int image.region.endY = 0
int image.internalResMult = 1
int image.filter.type = 3
float image.filter.width = 1.5
float image.filter.blurring = 0.5
float colorMap.gamma = 2.2
float colorMap.highlightCompression = 1
float colorMap.colorTemp = 6500
float colorMap.contrast = 1
bool colorMap.usePhotographic = false
float colorMap.simpleExposure = 0
float colorMap.iso = 100
float colorMap.fStop = 16
float colorMap.shutterSpeed = 50
Vec3 colorMap.tint = 1 1 1
bool shading.enable = true
bool shading.enableAa = true
int shading.renderEngine = 2
int shading.primarySolver = 1
int shading.secondarySolver = 4
float shading.maxSampleIntensity = 20
int shading.giToAaRatio = 16
float shading.firstPassQuality = 1
Vec3 shading.exitColor = 0 0 0
int shading.maxRayDepth = 25
float lights.samplesMult = 2
float lights.texturedRes = 0.3
int lights.samplingMode = 2
int lights.envResolution = 1000
int lights.areaMethod = 2
int lights.solver = 1
int lights.enviroSolver = 0
float lights.enviroSubdivThreshold = 0.005
float lights.enviroDistance = 10000
float lights.portalSampleFraction = 0.75
float lights.solverFracLocal = 0.33
float lights.solverFractGlobal = 0.33
bool gi.ic.incrementalBuild = false
string gi.ic.incrementalFilename = incrementalIc.dat
int gi.ic.hemisphereSubdiv = 7
float gi.ic.precompAmount = 1
bool gi.ic.pathtracingCorners = true
float gi.ic.maxError = 0.6
float gi.ic.smoothing = 1.8
float gi.ic.colorThreshold = 10
float gi.ic.recordSpacingMin = 1
float gi.ic.recordSpacingMax = 20
bool gi.ic.useRotGrad = true
bool gi.ic.useTransGrad = true
int gi.ic.interpolationSchema = 1
int gi.ic.searchStructure = 0
bool gi.ic.relaxedInterpolation = true
int gi.ic.viz = 2
int gi.ic.minInterpSamples = 2
float gi.hdCache.precompDensity = 1
int gi.hdCache.interpolationCount = 3
float gi.hdCache.dirSensitivity = 2
float gi.hdCache.posSensitivity = 20
float gi.hdCache.normalSensitivity = 3
int gi.hdCache.recordQuality = 256
float gi.hdCache.smoothing = 2
float gi.hdCache.glossyThreshold = 0.9
int gi.hdCache.maxRecords = 100000
int gi.hdCache.writablePasses = 0
bool gi.hdCache.save = false
int gi.hdCache.precalcMode = 0
string gi.hdCache.file = C:/HdCache.hdc
bool gi.hdCache.doViz = false
float gi.uhdcache.precision = 1
float gi.uhdcache.precompDensity = 1
int gi.uhdcache.interpolationCount = 5
int gi.uhdcache.recordQuality = 512
float gi.uhdcache.normalSensitivity = 2
float gi.uhdcache.dirSensitivity = 3
float gi.uhdcache.glossThreshold = 0.9
float gi.uhdcache.strictness = 0.075
float gi.uhdcache.msi = 3
bool gi.uhdcache.correlatePrecomp = true
int gi.photons.emitted = 5000000
bool gi.photons.storeDirect = true
int gi.photons.depth = -1
int gi.photons.lookupCount = 50
int gi.photons.filter = 1
int gi.vpl.emittedCount = 1000000
int gi.vpl.usedCount = 150
int gi.vpl.progressiveBatch = 150
float gi.vpl.clamping = 50
int gi.ppm.ptSamplesPerIter = 1
int gi.ppm.photonsPerIter = 5000000
float gi.ppm.alpha = 0.666
float gi.ppm.initialRadius = 2
bool gi.vcm.mis = true
int gi.vcm.mode = 4
2 changes: 2 additions & 0 deletions src/mayaToCorona/mtco_devmodule/resources/releaseNotes.txt
Expand Up @@ -5,6 +5,8 @@ release 0.42
- fixed some physical sky problems
- added area light render attributes
- added texturing for area lights
- redesigned render globals UI
- added wire/AO/Sky shader

release 0.41
- fixed a problem with esc key which caused a premature stop of the next rendering.
Expand Down
@@ -0,0 +1,54 @@
import pymel.core as pm
import logging

log = logging.getLogger("ui")

class BaseTemplate(pm.ui.AETemplate):

def addControl(self, control, label=None, **kwargs):
pm.ui.AETemplate.addControl(self, control, label=label, **kwargs)

def beginLayout(self, name, collapse=True):
pm.ui.AETemplate.beginLayout(self, name, collapse=collapse)


class AECoronaAOTemplate(BaseTemplate):
def __init__(self, nodeName):
BaseTemplate.__init__(self,nodeName)
log.debug("AECoronaLightTemplate")
self.thisNode = None
self.node = pm.PyNode(self.nodeName)
pm.mel.AEswatchDisplay(nodeName)
self.beginScrollLayout()
self.buildBody(nodeName)
allAttributes = self.node.listAttr()
allowedAttributes = ["maxDist", "maxSamplesCount", "phongExponent", "mixExponent", "invert", "excludeMode", "useOffset", "offset"]
for att in allAttributes:
att = att.split(".")[-1]
if not att in allowedAttributes:
self.suppress(att)
self.addExtraControls("ExtraControls")
self.endScrollLayout()

def updateUI(self, nodeName=None):
self.thisNode = pm.PyNode(nodeName)
self.dimControl(nodeName, "offset", True)
if self.thisNode.useOffset.get():
self.dimControl(nodeName, "offset", False)

def buildBody(self, nodeName):
self.thisNode = pm.PyNode(nodeName)
self.beginLayout("Ambient Occlusion" ,collapse=0)
self.beginNoOptimize()
self.addControl("maxDist", label="Max Dist")
self.addControl("maxSamplesCount", label="Max Samples")
self.addControl("phongExponent", label="Phong Exponent")
self.addControl("mixExponent", label="Mix Exponent")
self.addControl("invert", label="Invert")
self.addControl("excludeMode", label="Exclude Node")
self.addControl("useOffset", label="Use Offset", changeCommand=self.updateUI)
self.addControl("offset", label="Offset")
self.endNoOptimize()
self.endLayout()
self.updateUI(self.thisNode)

@@ -0,0 +1,50 @@
import pymel.core as pm
import logging

log = logging.getLogger("ui")

class BaseTemplate(pm.ui.AETemplate):

def addControl(self, control, label=None, **kwargs):
pm.ui.AETemplate.addControl(self, control, label=label, **kwargs)

def beginLayout(self, name, collapse=True):
pm.ui.AETemplate.beginLayout(self, name, collapse=collapse)


class AECoronaFrontBackTemplate(BaseTemplate):
def __init__(self, nodeName):
BaseTemplate.__init__(self,nodeName)
log.debug("AECoronaLightTemplate")
self.thisNode = None
self.node = pm.PyNode(self.nodeName)
pm.mel.AEswatchDisplay(nodeName)
self.beginScrollLayout()
self.buildBody(nodeName)
allAttributes = self.node.listAttr()
allowedAttributes = ["frontMaterial", "backMaterial", "opacity"]
for att in allAttributes:
att = att.split(".")[-1]
if not att in allowedAttributes:
self.suppress(att)
self.addExtraControls("ExtraControls")
self.endScrollLayout()

def buildBody(self, nodeName):
self.thisNode = pm.PyNode(nodeName)
self.beginLayout("Emission" ,collapse=0)
self.beginNoOptimize()
self.addControl("frontMaterial", label="Front Material")
self.addControl("backMaterial", label="Back Material")
self.addSeparator()
self.addControl("iesProfile", label="IES Profile")
self.addControl("emissionSharpnessFake", label="Sharp Patterns")
#self.addControl("emissionDisableSampling", label="Disable Sampling")
#self.addControl("emissionSharpnessFakePoint", label="Sharpness Fake Point")
self.endNoOptimize()
self.endLayout()

#self.beginLayout("Hardware Texturing" ,collapse=0)
#pm.mel.eval('AEhardwareTextureTemplate "%s"' % self.nodeName + r'("diffuse emissionColor ")')
#self.endLayout()

@@ -0,0 +1,82 @@
import pymel.core as pm
import logging

log = logging.getLogger("ui")

class BaseTemplate(pm.ui.AETemplate):

def addControl(self, control, label=None, **kwargs):
pm.ui.AETemplate.addControl(self, control, label=label, **kwargs)

def beginLayout(self, name, collapse=True):
pm.ui.AETemplate.beginLayout(self, name, collapse=collapse)


class AECoronaSkyTemplate(BaseTemplate):
def __init__(self, nodeName):
BaseTemplate.__init__(self,nodeName)
log.debug("AECoronaLightTemplate")
self.thisNode = None
self.node = pm.PyNode(self.nodeName)
pm.mel.AEswatchDisplay(nodeName)
self.beginScrollLayout()
self.buildBody(nodeName)
allAttributes = self.node.listAttr()
allowedAttributes = ["emissionColor", "emissionColorMultiplier", "opacity", "emitLight", "emissionGlossyness", "doubleSidedEmission", "iesProfile", "emissionSharpnessFake"]
for att in allAttributes:
att = att.split(".")[-1]
if not att in allowedAttributes:
print "Suppressing", att
self.suppress(att)
self.addExtraControls("ExtraControls")
self.endScrollLayout()

def updateUI(self, nodeName):
self.thisNode = pm.PyNode(nodeName)
self.dimControl(self.thisNode, "pSkyPreethamTurb", True)
self.dimControl(self.thisNode, "pSkyZenith", True)
self.dimControl(self.thisNode, "pSkyHorizon", True)
self.dimControl(self.thisNode, "pSkySunGlow", True)
self.dimControl(self.thisNode, "pSkySunSideGlow", True)
self.dimControl(self.thisNode, "pSkySunBleed", True)
self.dimControl(self.thisNode, "pSkySunFalloff", True)
if (self.thisNode.pSkyModel.get() == 0) or (self.thisNode.pSkyModel.get() == 2): #preetham or hosek
self.dimControl(self.thisNode, "pSkyPreethamTurb", False)
if self.thisNode.pSkyModel.get() == 1:
self.dimControl(self.thisNode, "pSkyZenith", False)
self.dimControl(self.thisNode, "pSkyHorizon", False)
self.dimControl(self.thisNode, "pSkySunGlow", False)
self.dimControl(self.thisNode, "pSkySunSideGlow", False)
self.dimControl(self.thisNode, "pSkySunBleed", False)
self.dimControl(self.thisNode, "pSkySunFalloff", False)

def buildBody(self, nodeName):
self.thisNode = pm.PyNode(nodeName)
self.beginLayout("Sky" ,collapse=0)
self.beginNoOptimize()
self.addControl("pSkyModel", label="Model", changeCommand=self.updateUI)
self.addSeparator()
self.addControl("pSkyMultiplier", label="Multiplier")
self.addControl("pSkyHorizBlur", label="Horizon Blur")
self.addControl("pSkyGroundColor", label="Ground Color")
self.addControl("pSkyAffectGround", label="Affect Ground")
self.addControl("sunSizeMulti", label="Sun Size Multiplier")
self.beginLayout("Rawafake" ,collapse=0)
self.addControl("pSkySunFalloff", label="Sun Falloff")
self.addControl("pSkyZenith", label="Zenit Color")
self.addControl("pSkyHorizon", label="Horizon Color")
self.addControl("pSkySunGlow", label="Sun Glow")
self.addControl("pSkySunSideGlow", label="Sun Side Glow")
self.addControl("pSkySunBleed", label="Sun Bleed")
self.endLayout()
self.beginLayout("Preetham/Hosek" ,collapse=0)
self.addControl("pSkyPreethamTurb", label="Turbidity")
self.endLayout()

self.endNoOptimize()
self.endLayout()

#self.beginLayout("Hardware Texturing" ,collapse=0)
#pm.mel.eval('AEhardwareTextureTemplate "%s"' % self.nodeName + r'("diffuse emissionColor ")')
#self.endLayout()

@@ -0,0 +1,55 @@
import pymel.core as pm
import logging

log = logging.getLogger("ui")

class BaseTemplate(pm.ui.AETemplate):

def addControl(self, control, label=None, **kwargs):
pm.ui.AETemplate.addControl(self, control, label=label, **kwargs)

def beginLayout(self, name, collapse=True):
pm.ui.AETemplate.beginLayout(self, name, collapse=collapse)


class AECoronaLightTemplate(BaseTemplate):
def __init__(self, nodeName):
BaseTemplate.__init__(self,nodeName)
log.debug("AECoronaLightTemplate")
self.thisNode = None
self.node = pm.PyNode(self.nodeName)
pm.mel.AEswatchDisplay(nodeName)
self.beginScrollLayout()
self.buildBody(nodeName)
allAttributes = self.node.listAttr()
allowedAttributes = ["emissionColor", "emissionColorMultiplier", "opacity", "emitLight", "emissionGlossyness", "doubleSidedEmission", "iesProfile", "emissionSharpnessFake"]
for att in allAttributes:
att = att.split(".")[-1]
if not att in allowedAttributes:
print "Suppressing", att
self.suppress(att)
self.addExtraControls("ExtraControls")
self.endScrollLayout()

def buildBody(self, nodeName):
self.thisNode = pm.PyNode(nodeName)
self.beginLayout("Emission" ,collapse=0)
self.beginNoOptimize()
self.addControl("emissionColor", label="Color")
self.addControl("emissionColorMultiplier", label="Multiplier")
self.addControl("opacity", label="Opacity")
self.addControl("emitLight", label="Emit Light")
self.addControl("emissionGlossyness", label="Directionality")
self.addControl("doubleSidedEmission", label="Double Sided")
self.addSeparator()
self.addControl("iesProfile", label="IES Profile")
self.addControl("emissionSharpnessFake", label="Sharp Patterns")
#self.addControl("emissionDisableSampling", label="Disable Sampling")
#self.addControl("emissionSharpnessFakePoint", label="Sharpness Fake Point")
self.endNoOptimize()
self.endLayout()

#self.beginLayout("Hardware Texturing" ,collapse=0)
#pm.mel.eval('AEhardwareTextureTemplate "%s"' % self.nodeName + r'("diffuse emissionColor ")')
#self.endLayout()

0 comments on commit d3daaf7

Please sign in to comment.