Here you will find documentation on all the descriptions that Cinema 4D currently has. You can list them Alphabetically, by Type or Plugin . The sample Python and C++ code is automatically generated and in some cases may not be 100% correct. If something doesn't work then please refer to the official Cinema 4D SDK documentation for more information.

IDs and information for XSLABanzi

XSLABanzi

Attributes

  • ENGLISH NAME : BanziShader
  • NAME : XSLABanzi
  • INCLUDE : Mpreview
  • INCLUDE : Mbase
  • INCLUDE : Millum
  • INCLUDE : Massign
  • PATH : sla/description/xslabanzi.res
  • PLUGIN : sla
  • MAXON online help (may not exist): XSLABANZI

Elements

ID UI Name Type Parameters Cycle
SLA_BANZI_WOOD Wood BOOL PARENTMSG
SLA_BANZI_DIFFUSE Diffuse BOOL PARENTMSG
SLA_BANZI_SPECULAR1 Specular1 BOOL PARENTMSG
SLA_BANZI_SPECULAR2 Specular2 BOOL PARENTMSG
SLA_BANZI_SPECULAR3 Specular3 BOOL PARENTMSG
SLA_BANZI_REFLECTION Reflection BOOL PARENTMSG
SLA_BANZI_ENVIRONMENT Environment BOOL PARENTMSG
SLA_BANZI_AMBIENT Ambient BOOL PARENTMSG
SLA_BANZI_ROUGHNESS Roughness BOOL PARENTMSG
SLA_BANZI_ANISOTROPY Anisotropy BOOL PARENTMSG
SLA_BANZI_WOOD_GRADIENT Color GRADIENT ICC_BASEDOCUMENT
SLA_BANZI_WOOD_RING_INTENSITY Ringintensity REAL UNIT
SLA_BANZI_WOOD_RING_SCALE RingScale REAL
UNIT PERCENT
MIN 0
SLA_BANZI_WOOD_RING_TURBULENCE RingTurbulence REAL
UNIT PERCENT
MIN 0
SLA_BANZI_WOOD_TURBULENCE_SCALE TurbulenceScale REAL
UNIT PERCENT
MIN 0
SLA_BANZI_WOOD_RING_VARIANCE RingVariance REAL
UNIT PERCENT
MIN 0
SLA_BANZI_WOOD_CORE_VARIANCE CoreVariance REAL
UNIT PERCENT
MIN 0
SLA_BANZI_WOOD_VARIANCE_SCALE VarianceScale REAL
UNIT PERCENT
MIN 0
SLA_BANZI_WOOD_RADIAL_VARIANCE RadialVariance REAL
UNIT PERCENT
MIN 0
SLA_BANZI_WOOD_RADIAL_VARIANCE_SCALE VarianceScale REAL
UNIT PERCENT
MIN 0
SLA_BANZI_WOOD_GRAIN_INTENSITY GrainIntensity REAL UNIT
SLA_BANZI_WOOD_GRAIN_SCALE GrainScale REAL
UNIT PERCENT
MIN 0
SLA_BANZI_WOOD_ATTENUATION Attenuation REAL
UNIT PERCENT
MIN 0
SLA_BANZI_DIFFUSE_SURF_COLOR SurfaceColor COLOR  
SLA_BANZI_DIFFUSE_ALGORITHM Algorithm LONG  
SLA_BANZI_DIFFUSE_ALGORITHM_INTERNAL Internal
SLA_BANZI_DIFFUSE_ALGORITHM_OREN_NAYAR OrenNayar
SLA_BANZI_DIFFUSE_ROUGHNESS Roughness REAL
UNIT PERCENT
MIN 0
MAX 200
SLA_BANZI_DIFFUSE_SURF_ILLUMINATION SurfaceIllumination REAL
UNIT PERCENT
MIN 0
MAX 1000
SLA_BANZI_DIFFUSE_CONTRAST Contrast REAL
UNIT PERCENT
MIN -1000
MAX 1000
SLA_BANZI_SPEC1_COLOR Color COLOR  
SLA_BANZI_SPEC1_INTENSITY Intensity REAL
UNIT PERCENT
MIN 0
MAX 1000
SLA_BANZI_SPEC1_SIZE Size REAL
UNIT PERCENT
MIN 0
MAX 200
SLA_BANZI_SPEC1_CONTRAST Contrast REAL
UNIT PERCENT
MIN 0
MAX 100
SLA_BANZI_SPEC1_GLARE Glare REAL
UNIT PERCENT
MIN 0
MAX 1000
SLA_BANZI_SPEC1_FALLOFF Falloff REAL
UNIT PERCENT
MIN 0
SLA_BANZI_SPEC2_COLOR Color COLOR  
SLA_BANZI_SPEC2_INTENSITY Intensity REAL
UNIT PERCENT
MIN 0
MAX 1000
SLA_BANZI_SPEC2_SIZE Size REAL
UNIT PERCENT
MIN 0
MAX 200
SLA_BANZI_SPEC2_CONTRAST Contrast REAL
UNIT PERCENT
MIN 0
MAX 100
SLA_BANZI_SPEC2_GLARE Glare REAL
UNIT PERCENT
MIN 0
MAX 1000
SLA_BANZI_SPEC2_FALLOFF Falloff REAL
UNIT PERCENT
MIN 0
SLA_BANZI_SPEC3_COLOR Color COLOR  
SLA_BANZI_SPEC3_INTENSITY Intensity REAL
UNIT PERCENT
MIN 0
MAX 1000
SLA_BANZI_SPEC3_SIZE Size REAL
UNIT PERCENT
MIN 0
MAX 200
SLA_BANZI_SPEC3_CONTRAST Contrast REAL
UNIT PERCENT
MIN 0
MAX 100
SLA_BANZI_SPEC3_GLARE Glare REAL
UNIT PERCENT
MIN 0
MAX 1000
SLA_BANZI_SPEC3_FALLOFF Falloff REAL
UNIT PERCENT
MIN 0
SLA_BANZI_REFLECTION_INTENSITY Intensity REAL
UNIT PERCENT
MIN 0
MAX 1000
SLA_BANZI_REFLECTION_EDGE_INTENSITY EdgeIntensity REAL
UNIT PERCENT
MIN 0
MAX 1000
SLA_BANZI_REFLECTION_FALLOFF Falloff REAL
UNIT PERCENT
MIN 0
SLA_BANZI_REFLECTION_REFLECTION_COLOR ReflectionColor COLOR  
SLA_BANZI_REFLECTION_EDGE_COLOR ReflectionEdgeColor COLOR  
SLA_BANZI_ENVIRONMENT_IMAGE Image SHADERLINK  
SLA_BANZI_ENVIRONMENT_INTENSITY Intensity REAL
UNIT PERCENT
MIN 0
MAX 1000
SLA_BANZI_ENVIRONMENT_GLARE Glare REAL
UNIT PERCENT
MIN 0
MAX 1000
SLA_BANZI_ENVIRONMENT_FALLOFF Falloff REAL
UNIT PERCENT
MIN 0
SLA_BANZI_ENVIRONMENT_UTILIZE_ANISO_SCRATCHES UtilizeAnisotropicScratches BOOL  
SLA_BANZI_ENVIRONMENT_BLUR Blur REAL
UNIT PERCENT
MIN 0
MAX 100
SLA_BANZI_ENVIRONMENT_SAMPLES Samples LONG MIN
SLA_BANZI_ENVIRONMENT_JITTER Jitter REAL
UNIT PERCENT
MIN 0
MAX 1000
SLA_BANZI_ENVIRONMENT_ENVIRONMENT_COLOR EnvironmentColor COLOR  
SLA_BANZI_ENVIRONMENT_EDGE_COLOR EdgeColor COLOR  
SLA_BANZI_AMBIENT_COLOR Color COLOR  
SLA_BANZI_AMBIENT_INTENSITY Intensity REAL
UNIT PERCENT
MIN 0
MAX 1000
SLA_BANZI_AMBIENT_EDGE_INTENSITY EdgeIntensity REAL
UNIT PERCENT
MIN 0
MAX 1000
SLA_BANZI_AMBIENT_FALLOFF Falloff REAL
UNIT PERCENT
MIN 0
SLA_BANZI_ROUGHNESS_AMPLITUDE Amplitude REAL
UNIT PERCENT
MIN -1000
MAX 1000
SLA_BANZI_ROUGHNESS_DELTA Delta REAL
UNIT PERCENT
MIN 0
SLA_BANZI_ROUGHNESS_LOW_CLIP LowClip REAL
UNIT PERCENT
MIN 0
MAX 100
MINSLIDER 0
MAXSLIDER 100
CUSTOMGUI REALSLIDER
SLA_BANZI_ROUGHNESS_HIGH_CLIP HighClip REAL
UNIT PERCENT
MIN 0
MAX 100
MINSLIDER 0
MAXSLIDER 100
CUSTOMGUI REALSLIDER
SLA_BANZI_ROUGHNESS_GRIT_COLOR GritColor COLOR  
SLA_BANZI_ROUGHNESS_GRIT_INTENSITY GritIntensity REAL
UNIT PERCENT
MIN -200
MAX 200
MINSLIDER -200
MAXSLIDER 200
CUSTOMGUI REALSLIDER
SLA_BANZI_ROUGHNESS_GRIT_LOW_CLIP GritLowClip REAL
UNIT PERCENT
MIN 0
MAX 100
MINSLIDER 0
MAXSLIDER 100
CUSTOMGUI REALSLIDER
SLA_BANZI_ROUGHNESS_GRIT_HIGH_CLIP GritHighClip REAL
UNIT PERCENT
MIN 0
MAX 100
MINSLIDER 0
MAXSLIDER 100
CUSTOMGUI REALSLIDER
SLA_BANZI_ANISOTROPY_PROJECTION Projection LONG  
SLA_BANZI_ANISOTROPY_PROJECTION_PLANAR Planar
SLA_BANZI_ANISOTROPY_PROJECTION_AUTO_PLANAR AutoPlanar
SLA_BANZI_ANISOTROPY_PROJECTION_SHRINK_WRAP ShrinkWrap
SLA_BANZI_ANISOTROPY_PROJECTION_RADIAL_AUTO_PLANAR RadialAutoPlanar
SLA_BANZI_ANISOTROPY_PROJECTION_RAD_PATTERN_AUTO_PLANAR RadialPatternAutoPlanar
SLA_BANZI_ANISOTROPY_PROJECTION_RADIAL_PLANAR RadialPlanar
SLA_BANZI_ANISOTROPY_PROJECTION_RAD_PATTERN_PLANAR RadialPatternPlanar
SLA_BANZI_ANISOTROPY_PROJ_SCALE ProjectionScale REAL
UNIT PERCENT
MIN 0
MAX 1000
SLA_BANZI_ANISOTROPY_X_ROUGH RoughnessX REAL
UNIT PERCENT
MIN 0
SLA_BANZI_ANISOTROPY_Y_ROUGH RoughnessY REAL
UNIT PERCENT
MIN 0
SLA_BANZI_ANISOTROPY_AMPL Amplitude REAL
UNIT PERCENT
MIN 0
MAX 100
SLA_BANZI_ANISOTROPY_SCALE Scale REAL
UNIT PERCENT
MIN 0
SLA_BANZI_ANISOTROPY_LENGTH Length REAL
UNIT PERCENT
MIN 0
SLA_BANZI_ANISOTROPY_ATT Attenuation REAL
UNIT PERCENT
MIN 0
SLA_BANZI_ANISOTROPY_CHANNEL1 Specular1 BOOL  
SLA_BANZI_ANISOTROPY_CHANNEL2 Specular2 BOOL  
SLA_BANZI_ANISOTROPY_CHANNEL3 Specular3 BOOL  

Example Code

The following code does not use the correct values when setting the data. You should check directly in C4D for the correct values that you should use in place of the ones that are shown. This code is just to show you how to access the values for getting and setting the parameters.

Python

import c4d
from c4d import gui
def main():
    material = c4d.BaseMaterial(c4d.XSLABanzi)
    
    #You can set parameters two different ways. 
    #First way              
    material[c4d.SLA_BANZI_WOOD] = True
    material[c4d.SLA_BANZI_DIFFUSE] = True
    material[c4d.SLA_BANZI_SPECULAR1] = True
    material[c4d.SLA_BANZI_SPECULAR2] = True
    material[c4d.SLA_BANZI_SPECULAR3] = True
    material[c4d.SLA_BANZI_REFLECTION] = True
    material[c4d.SLA_BANZI_ENVIRONMENT] = True
    material[c4d.SLA_BANZI_AMBIENT] = True
    material[c4d.SLA_BANZI_ROUGHNESS] = True
    material[c4d.SLA_BANZI_ANISOTROPY] = True
    material[c4d.SLA_BANZI_WOOD_RING_INTENSITY] = 0.1
    material[c4d.SLA_BANZI_WOOD_RING_SCALE] = 0.1
    material[c4d.SLA_BANZI_WOOD_RING_TURBULENCE] = 0.1
    material[c4d.SLA_BANZI_WOOD_TURBULENCE_SCALE] = 0.1
    material[c4d.SLA_BANZI_WOOD_RING_VARIANCE] = 0.1
    material[c4d.SLA_BANZI_WOOD_CORE_VARIANCE] = 0.1
    material[c4d.SLA_BANZI_WOOD_VARIANCE_SCALE] = 0.1
    material[c4d.SLA_BANZI_WOOD_RADIAL_VARIANCE] = 0.1
    material[c4d.SLA_BANZI_WOOD_RADIAL_VARIANCE_SCALE] = 0.1
    material[c4d.SLA_BANZI_WOOD_GRAIN_INTENSITY] = 0.1
    material[c4d.SLA_BANZI_WOOD_GRAIN_SCALE] = 0.1
    material[c4d.SLA_BANZI_WOOD_ATTENUATION] = 0.1
    material[c4d.SLA_BANZI_DIFFUSE_ALGORITHM] = c4d.SLA_BANZI_DIFFUSE_ALGORITHM_INTERNAL
    material[c4d.SLA_BANZI_DIFFUSE_ROUGHNESS] = 0.1
    material[c4d.SLA_BANZI_DIFFUSE_SURF_ILLUMINATION] = 0.1
    material[c4d.SLA_BANZI_DIFFUSE_CONTRAST] = 0.1
    material[c4d.SLA_BANZI_SPEC1_INTENSITY] = 0.1
    material[c4d.SLA_BANZI_SPEC1_SIZE] = 0.1
    material[c4d.SLA_BANZI_SPEC1_CONTRAST] = 0.1
    material[c4d.SLA_BANZI_SPEC1_GLARE] = 0.1
    material[c4d.SLA_BANZI_SPEC1_FALLOFF] = 0.1
    material[c4d.SLA_BANZI_SPEC2_INTENSITY] = 0.1
    material[c4d.SLA_BANZI_SPEC2_SIZE] = 0.1
    material[c4d.SLA_BANZI_SPEC2_CONTRAST] = 0.1
    material[c4d.SLA_BANZI_SPEC2_GLARE] = 0.1
    material[c4d.SLA_BANZI_SPEC2_FALLOFF] = 0.1
    material[c4d.SLA_BANZI_SPEC3_INTENSITY] = 0.1
    material[c4d.SLA_BANZI_SPEC3_SIZE] = 0.1
    material[c4d.SLA_BANZI_SPEC3_CONTRAST] = 0.1
    material[c4d.SLA_BANZI_SPEC3_GLARE] = 0.1
    material[c4d.SLA_BANZI_SPEC3_FALLOFF] = 0.1
    material[c4d.SLA_BANZI_REFLECTION_INTENSITY] = 0.1
    material[c4d.SLA_BANZI_REFLECTION_EDGE_INTENSITY] = 0.1
    material[c4d.SLA_BANZI_REFLECTION_FALLOFF] = 0.1
    material[c4d.SLA_BANZI_ENVIRONMENT_INTENSITY] = 0.1
    material[c4d.SLA_BANZI_ENVIRONMENT_GLARE] = 0.1
    material[c4d.SLA_BANZI_ENVIRONMENT_FALLOFF] = 0.1
    material[c4d.SLA_BANZI_ENVIRONMENT_UTILIZE_ANISO_SCRATCHES] = True
    material[c4d.SLA_BANZI_ENVIRONMENT_BLUR] = 0.1
    material[c4d.SLA_BANZI_ENVIRONMENT_SAMPLES] = 1
    material[c4d.SLA_BANZI_ENVIRONMENT_JITTER] = 0.1
    material[c4d.SLA_BANZI_AMBIENT_INTENSITY] = 0.1
    material[c4d.SLA_BANZI_AMBIENT_EDGE_INTENSITY] = 0.1
    material[c4d.SLA_BANZI_AMBIENT_FALLOFF] = 0.1
    material[c4d.SLA_BANZI_ROUGHNESS_AMPLITUDE] = 0.1
    material[c4d.SLA_BANZI_ROUGHNESS_DELTA] = 0.1
    material[c4d.SLA_BANZI_ROUGHNESS_LOW_CLIP] = 0.1
    material[c4d.SLA_BANZI_ROUGHNESS_HIGH_CLIP] = 0.1
    material[c4d.SLA_BANZI_ROUGHNESS_GRIT_INTENSITY] = 0.1
    material[c4d.SLA_BANZI_ROUGHNESS_GRIT_LOW_CLIP] = 0.1
    material[c4d.SLA_BANZI_ROUGHNESS_GRIT_HIGH_CLIP] = 0.1
    material[c4d.SLA_BANZI_ANISOTROPY_PROJECTION] = c4d.SLA_BANZI_ANISOTROPY_PROJECTION_PLANAR
    material[c4d.SLA_BANZI_ANISOTROPY_PROJ_SCALE] = 0.1
    material[c4d.SLA_BANZI_ANISOTROPY_X_ROUGH] = 0.1
    material[c4d.SLA_BANZI_ANISOTROPY_Y_ROUGH] = 0.1
    material[c4d.SLA_BANZI_ANISOTROPY_AMPL] = 0.1
    material[c4d.SLA_BANZI_ANISOTROPY_SCALE] = 0.1
    material[c4d.SLA_BANZI_ANISOTROPY_LENGTH] = 0.1
    material[c4d.SLA_BANZI_ANISOTROPY_ATT] = 0.1
    material[c4d.SLA_BANZI_ANISOTROPY_CHANNEL1] = True
    material[c4d.SLA_BANZI_ANISOTROPY_CHANNEL2] = True
    material[c4d.SLA_BANZI_ANISOTROPY_CHANNEL3] = True
    
    #Second way, using the base container.
    bc = material.GetDataInstance()
    bc.SetBool(c4d.SLA_BANZI_WOOD,True)
    bc.SetBool(c4d.SLA_BANZI_DIFFUSE,True)
    bc.SetBool(c4d.SLA_BANZI_SPECULAR1,True)
    bc.SetBool(c4d.SLA_BANZI_SPECULAR2,True)
    bc.SetBool(c4d.SLA_BANZI_SPECULAR3,True)
    bc.SetBool(c4d.SLA_BANZI_REFLECTION,True)
    bc.SetBool(c4d.SLA_BANZI_ENVIRONMENT,True)
    bc.SetBool(c4d.SLA_BANZI_AMBIENT,True)
    bc.SetBool(c4d.SLA_BANZI_ROUGHNESS,True)
    bc.SetBool(c4d.SLA_BANZI_ANISOTROPY,True)
    bc.SetFloat(c4d.SLA_BANZI_WOOD_RING_INTENSITY,0.1)
    bc.SetFloat(c4d.SLA_BANZI_WOOD_RING_SCALE,0.1)
    bc.SetFloat(c4d.SLA_BANZI_WOOD_RING_TURBULENCE,0.1)
    bc.SetFloat(c4d.SLA_BANZI_WOOD_TURBULENCE_SCALE,0.1)
    bc.SetFloat(c4d.SLA_BANZI_WOOD_RING_VARIANCE,0.1)
    bc.SetFloat(c4d.SLA_BANZI_WOOD_CORE_VARIANCE,0.1)
    bc.SetFloat(c4d.SLA_BANZI_WOOD_VARIANCE_SCALE,0.1)
    bc.SetFloat(c4d.SLA_BANZI_WOOD_RADIAL_VARIANCE,0.1)
    bc.SetFloat(c4d.SLA_BANZI_WOOD_RADIAL_VARIANCE_SCALE,0.1)
    bc.SetFloat(c4d.SLA_BANZI_WOOD_GRAIN_INTENSITY,0.1)
    bc.SetFloat(c4d.SLA_BANZI_WOOD_GRAIN_SCALE,0.1)
    bc.SetFloat(c4d.SLA_BANZI_WOOD_ATTENUATION,0.1)
    bc.SetInt32(c4d.SLA_BANZI_DIFFUSE_ALGORITHM,c4d.SLA_BANZI_DIFFUSE_ALGORITHM_INTERNAL)
    bc.SetFloat(c4d.SLA_BANZI_DIFFUSE_ROUGHNESS,0.1)
    bc.SetFloat(c4d.SLA_BANZI_DIFFUSE_SURF_ILLUMINATION,0.1)
    bc.SetFloat(c4d.SLA_BANZI_DIFFUSE_CONTRAST,0.1)
    bc.SetFloat(c4d.SLA_BANZI_SPEC1_INTENSITY,0.1)
    bc.SetFloat(c4d.SLA_BANZI_SPEC1_SIZE,0.1)
    bc.SetFloat(c4d.SLA_BANZI_SPEC1_CONTRAST,0.1)
    bc.SetFloat(c4d.SLA_BANZI_SPEC1_GLARE,0.1)
    bc.SetFloat(c4d.SLA_BANZI_SPEC1_FALLOFF,0.1)
    bc.SetFloat(c4d.SLA_BANZI_SPEC2_INTENSITY,0.1)
    bc.SetFloat(c4d.SLA_BANZI_SPEC2_SIZE,0.1)
    bc.SetFloat(c4d.SLA_BANZI_SPEC2_CONTRAST,0.1)
    bc.SetFloat(c4d.SLA_BANZI_SPEC2_GLARE,0.1)
    bc.SetFloat(c4d.SLA_BANZI_SPEC2_FALLOFF,0.1)
    bc.SetFloat(c4d.SLA_BANZI_SPEC3_INTENSITY,0.1)
    bc.SetFloat(c4d.SLA_BANZI_SPEC3_SIZE,0.1)
    bc.SetFloat(c4d.SLA_BANZI_SPEC3_CONTRAST,0.1)
    bc.SetFloat(c4d.SLA_BANZI_SPEC3_GLARE,0.1)
    bc.SetFloat(c4d.SLA_BANZI_SPEC3_FALLOFF,0.1)
    bc.SetFloat(c4d.SLA_BANZI_REFLECTION_INTENSITY,0.1)
    bc.SetFloat(c4d.SLA_BANZI_REFLECTION_EDGE_INTENSITY,0.1)
    bc.SetFloat(c4d.SLA_BANZI_REFLECTION_FALLOFF,0.1)
    bc.SetFloat(c4d.SLA_BANZI_ENVIRONMENT_INTENSITY,0.1)
    bc.SetFloat(c4d.SLA_BANZI_ENVIRONMENT_GLARE,0.1)
    bc.SetFloat(c4d.SLA_BANZI_ENVIRONMENT_FALLOFF,0.1)
    bc.SetBool(c4d.SLA_BANZI_ENVIRONMENT_UTILIZE_ANISO_SCRATCHES,True)
    bc.SetFloat(c4d.SLA_BANZI_ENVIRONMENT_BLUR,0.1)
    bc.SetInt32(c4d.SLA_BANZI_ENVIRONMENT_SAMPLES,1)
    bc.SetFloat(c4d.SLA_BANZI_ENVIRONMENT_JITTER,0.1)
    bc.SetFloat(c4d.SLA_BANZI_AMBIENT_INTENSITY,0.1)
    bc.SetFloat(c4d.SLA_BANZI_AMBIENT_EDGE_INTENSITY,0.1)
    bc.SetFloat(c4d.SLA_BANZI_AMBIENT_FALLOFF,0.1)
    bc.SetFloat(c4d.SLA_BANZI_ROUGHNESS_AMPLITUDE,0.1)
    bc.SetFloat(c4d.SLA_BANZI_ROUGHNESS_DELTA,0.1)
    bc.SetFloat(c4d.SLA_BANZI_ROUGHNESS_LOW_CLIP,0.1)
    bc.SetFloat(c4d.SLA_BANZI_ROUGHNESS_HIGH_CLIP,0.1)
    bc.SetFloat(c4d.SLA_BANZI_ROUGHNESS_GRIT_INTENSITY,0.1)
    bc.SetFloat(c4d.SLA_BANZI_ROUGHNESS_GRIT_LOW_CLIP,0.1)
    bc.SetFloat(c4d.SLA_BANZI_ROUGHNESS_GRIT_HIGH_CLIP,0.1)
    bc.SetInt32(c4d.SLA_BANZI_ANISOTROPY_PROJECTION,c4d.SLA_BANZI_ANISOTROPY_PROJECTION_PLANAR)
    bc.SetFloat(c4d.SLA_BANZI_ANISOTROPY_PROJ_SCALE,0.1)
    bc.SetFloat(c4d.SLA_BANZI_ANISOTROPY_X_ROUGH,0.1)
    bc.SetFloat(c4d.SLA_BANZI_ANISOTROPY_Y_ROUGH,0.1)
    bc.SetFloat(c4d.SLA_BANZI_ANISOTROPY_AMPL,0.1)
    bc.SetFloat(c4d.SLA_BANZI_ANISOTROPY_SCALE,0.1)
    bc.SetFloat(c4d.SLA_BANZI_ANISOTROPY_LENGTH,0.1)
    bc.SetFloat(c4d.SLA_BANZI_ANISOTROPY_ATT,0.1)
    bc.SetBool(c4d.SLA_BANZI_ANISOTROPY_CHANNEL1,True)
    bc.SetBool(c4d.SLA_BANZI_ANISOTROPY_CHANNEL2,True)
    bc.SetBool(c4d.SLA_BANZI_ANISOTROPY_CHANNEL3,True)

if __name__=='__main__':
    main()
             

C++

#include "c4d.h"
#include "../sla/description/xslabanzi.h"
void SampleFunction()
{
    BaseDocument *pDoc = GetActiveDocument();
    BaseMaterial *pMaterial = BaseMaterial::Alloc(XSLABanzi);  
    
    //You can set parameters two different ways. 

    //First way              
    //Some objects do not store all their data in the container. You need to use GetParameter()/SetParameter() instead. 

    DESCFLAGS_SET flags = DESCFLAGS_SET_PARAM_SET;
    pMaterial->SetParameter(DescID(SLA_BANZI_WOOD),GeData(true),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_DIFFUSE),GeData(true),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_SPECULAR1),GeData(true),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_SPECULAR2),GeData(true),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_SPECULAR3),GeData(true),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_REFLECTION),GeData(true),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ENVIRONMENT),GeData(true),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_AMBIENT),GeData(true),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ROUGHNESS),GeData(true),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ANISOTROPY),GeData(true),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_WOOD_RING_INTENSITY),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_WOOD_RING_SCALE),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_WOOD_RING_TURBULENCE),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_WOOD_TURBULENCE_SCALE),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_WOOD_RING_VARIANCE),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_WOOD_CORE_VARIANCE),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_WOOD_VARIANCE_SCALE),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_WOOD_RADIAL_VARIANCE),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_WOOD_RADIAL_VARIANCE_SCALE),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_WOOD_GRAIN_INTENSITY),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_WOOD_GRAIN_SCALE),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_WOOD_ATTENUATION),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_DIFFUSE_ALGORITHM),GeData(SLA_BANZI_DIFFUSE_ALGORITHM_INTERNAL),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_DIFFUSE_ROUGHNESS),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_DIFFUSE_SURF_ILLUMINATION),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_DIFFUSE_CONTRAST),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_SPEC1_INTENSITY),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_SPEC1_SIZE),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_SPEC1_CONTRAST),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_SPEC1_GLARE),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_SPEC1_FALLOFF),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_SPEC2_INTENSITY),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_SPEC2_SIZE),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_SPEC2_CONTRAST),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_SPEC2_GLARE),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_SPEC2_FALLOFF),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_SPEC3_INTENSITY),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_SPEC3_SIZE),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_SPEC3_CONTRAST),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_SPEC3_GLARE),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_SPEC3_FALLOFF),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_REFLECTION_INTENSITY),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_REFLECTION_EDGE_INTENSITY),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_REFLECTION_FALLOFF),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ENVIRONMENT_INTENSITY),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ENVIRONMENT_GLARE),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ENVIRONMENT_FALLOFF),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ENVIRONMENT_UTILIZE_ANISO_SCRATCHES),GeData(true),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ENVIRONMENT_BLUR),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ENVIRONMENT_SAMPLES),GeData(1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ENVIRONMENT_JITTER),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_AMBIENT_INTENSITY),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_AMBIENT_EDGE_INTENSITY),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_AMBIENT_FALLOFF),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ROUGHNESS_AMPLITUDE),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ROUGHNESS_DELTA),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ROUGHNESS_LOW_CLIP),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ROUGHNESS_HIGH_CLIP),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ROUGHNESS_GRIT_INTENSITY),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ROUGHNESS_GRIT_LOW_CLIP),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ROUGHNESS_GRIT_HIGH_CLIP),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ANISOTROPY_PROJECTION),GeData(SLA_BANZI_ANISOTROPY_PROJECTION_PLANAR),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ANISOTROPY_PROJ_SCALE),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ANISOTROPY_X_ROUGH),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ANISOTROPY_Y_ROUGH),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ANISOTROPY_AMPL),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ANISOTROPY_SCALE),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ANISOTROPY_LENGTH),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ANISOTROPY_ATT),GeData(0.1),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ANISOTROPY_CHANNEL1),GeData(true),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ANISOTROPY_CHANNEL2),GeData(true),flags);
    pMaterial->SetParameter(DescID(SLA_BANZI_ANISOTROPY_CHANNEL3),GeData(true),flags);
    pMaterial->Message(MSG_UPDATE);            

    //Second way, using the base container.
    BaseContainer *bc =     pMaterial->GetDataInstance();
    bc->SetBool(SLA_BANZI_WOOD,true);
    bc->SetBool(SLA_BANZI_DIFFUSE,true);
    bc->SetBool(SLA_BANZI_SPECULAR1,true);
    bc->SetBool(SLA_BANZI_SPECULAR2,true);
    bc->SetBool(SLA_BANZI_SPECULAR3,true);
    bc->SetBool(SLA_BANZI_REFLECTION,true);
    bc->SetBool(SLA_BANZI_ENVIRONMENT,true);
    bc->SetBool(SLA_BANZI_AMBIENT,true);
    bc->SetBool(SLA_BANZI_ROUGHNESS,true);
    bc->SetBool(SLA_BANZI_ANISOTROPY,true);
    bc->SetFloat(SLA_BANZI_WOOD_RING_INTENSITY,0.1);
    bc->SetFloat(SLA_BANZI_WOOD_RING_SCALE,0.1);
    bc->SetFloat(SLA_BANZI_WOOD_RING_TURBULENCE,0.1);
    bc->SetFloat(SLA_BANZI_WOOD_TURBULENCE_SCALE,0.1);
    bc->SetFloat(SLA_BANZI_WOOD_RING_VARIANCE,0.1);
    bc->SetFloat(SLA_BANZI_WOOD_CORE_VARIANCE,0.1);
    bc->SetFloat(SLA_BANZI_WOOD_VARIANCE_SCALE,0.1);
    bc->SetFloat(SLA_BANZI_WOOD_RADIAL_VARIANCE,0.1);
    bc->SetFloat(SLA_BANZI_WOOD_RADIAL_VARIANCE_SCALE,0.1);
    bc->SetFloat(SLA_BANZI_WOOD_GRAIN_INTENSITY,0.1);
    bc->SetFloat(SLA_BANZI_WOOD_GRAIN_SCALE,0.1);
    bc->SetFloat(SLA_BANZI_WOOD_ATTENUATION,0.1);
    bc->SetInt32(SLA_BANZI_DIFFUSE_ALGORITHM,SLA_BANZI_DIFFUSE_ALGORITHM_INTERNAL);
    bc->SetFloat(SLA_BANZI_DIFFUSE_ROUGHNESS,0.1);
    bc->SetFloat(SLA_BANZI_DIFFUSE_SURF_ILLUMINATION,0.1);
    bc->SetFloat(SLA_BANZI_DIFFUSE_CONTRAST,0.1);
    bc->SetFloat(SLA_BANZI_SPEC1_INTENSITY,0.1);
    bc->SetFloat(SLA_BANZI_SPEC1_SIZE,0.1);
    bc->SetFloat(SLA_BANZI_SPEC1_CONTRAST,0.1);
    bc->SetFloat(SLA_BANZI_SPEC1_GLARE,0.1);
    bc->SetFloat(SLA_BANZI_SPEC1_FALLOFF,0.1);
    bc->SetFloat(SLA_BANZI_SPEC2_INTENSITY,0.1);
    bc->SetFloat(SLA_BANZI_SPEC2_SIZE,0.1);
    bc->SetFloat(SLA_BANZI_SPEC2_CONTRAST,0.1);
    bc->SetFloat(SLA_BANZI_SPEC2_GLARE,0.1);
    bc->SetFloat(SLA_BANZI_SPEC2_FALLOFF,0.1);
    bc->SetFloat(SLA_BANZI_SPEC3_INTENSITY,0.1);
    bc->SetFloat(SLA_BANZI_SPEC3_SIZE,0.1);
    bc->SetFloat(SLA_BANZI_SPEC3_CONTRAST,0.1);
    bc->SetFloat(SLA_BANZI_SPEC3_GLARE,0.1);
    bc->SetFloat(SLA_BANZI_SPEC3_FALLOFF,0.1);
    bc->SetFloat(SLA_BANZI_REFLECTION_INTENSITY,0.1);
    bc->SetFloat(SLA_BANZI_REFLECTION_EDGE_INTENSITY,0.1);
    bc->SetFloat(SLA_BANZI_REFLECTION_FALLOFF,0.1);
    bc->SetFloat(SLA_BANZI_ENVIRONMENT_INTENSITY,0.1);
    bc->SetFloat(SLA_BANZI_ENVIRONMENT_GLARE,0.1);
    bc->SetFloat(SLA_BANZI_ENVIRONMENT_FALLOFF,0.1);
    bc->SetBool(SLA_BANZI_ENVIRONMENT_UTILIZE_ANISO_SCRATCHES,true);
    bc->SetFloat(SLA_BANZI_ENVIRONMENT_BLUR,0.1);
    bc->SetInt32(SLA_BANZI_ENVIRONMENT_SAMPLES,1);
    bc->SetFloat(SLA_BANZI_ENVIRONMENT_JITTER,0.1);
    bc->SetFloat(SLA_BANZI_AMBIENT_INTENSITY,0.1);
    bc->SetFloat(SLA_BANZI_AMBIENT_EDGE_INTENSITY,0.1);
    bc->SetFloat(SLA_BANZI_AMBIENT_FALLOFF,0.1);
    bc->SetFloat(SLA_BANZI_ROUGHNESS_AMPLITUDE,0.1);
    bc->SetFloat(SLA_BANZI_ROUGHNESS_DELTA,0.1);
    bc->SetFloat(SLA_BANZI_ROUGHNESS_LOW_CLIP,0.1);
    bc->SetFloat(SLA_BANZI_ROUGHNESS_HIGH_CLIP,0.1);
    bc->SetFloat(SLA_BANZI_ROUGHNESS_GRIT_INTENSITY,0.1);
    bc->SetFloat(SLA_BANZI_ROUGHNESS_GRIT_LOW_CLIP,0.1);
    bc->SetFloat(SLA_BANZI_ROUGHNESS_GRIT_HIGH_CLIP,0.1);
    bc->SetInt32(SLA_BANZI_ANISOTROPY_PROJECTION,SLA_BANZI_ANISOTROPY_PROJECTION_PLANAR);
    bc->SetFloat(SLA_BANZI_ANISOTROPY_PROJ_SCALE,0.1);
    bc->SetFloat(SLA_BANZI_ANISOTROPY_X_ROUGH,0.1);
    bc->SetFloat(SLA_BANZI_ANISOTROPY_Y_ROUGH,0.1);
    bc->SetFloat(SLA_BANZI_ANISOTROPY_AMPL,0.1);
    bc->SetFloat(SLA_BANZI_ANISOTROPY_SCALE,0.1);
    bc->SetFloat(SLA_BANZI_ANISOTROPY_LENGTH,0.1);
    bc->SetFloat(SLA_BANZI_ANISOTROPY_ATT,0.1);
    bc->SetBool(SLA_BANZI_ANISOTROPY_CHANNEL1,true);
    bc->SetBool(SLA_BANZI_ANISOTROPY_CHANNEL2,true);
    bc->SetBool(SLA_BANZI_ANISOTROPY_CHANNEL3,true);
    pMaterial->Message(MSG_UPDATE);                                                      
}
             

Gradients

This node has gradients. Gradients can manually be edited by calling the following code

Python


C++

           
#include "customgui_gradient.h"
SLA_BANZI_WOOD_GRADIENT
GeData data; pMaterial->GetParameter(DescID(SLA_BANZI_WOOD_GRADIENT),data,DESCFLAGS_GET_PARAM_GET)); Gradient *pGradient = (Gradient*)data.GetCustomDataType(CUSTOMDATATYPE_GRADIENT); if(pGradient) { //must be set before any knot is set pGradient->SetData(GRADIENT_MODE, GeData(GRADIENTMODE_ALPHA)); GradientKnot k1, k2; k1.col = Vector(0.0, 0.0, 1.0); k1.pos = 0.0; k2.col = 1.0; k2.pos = 1.0; pGradient->InsertKnot(k1); pGradient->InsertKnot(k2); } pMaterial->SetParameter(DescID(SLA_BANZI_WOOD_GRADIENT),data,DESCFLAGS_SET_PARAM_SET));