SOLVED Why are there no Sketch and Toon shaders?

Hello,
I noticed that there are no Sketch and Toon shader symbols in the Python API. Why is that?

Here are the IDs for anyone needing them:

Art = 1012161
Cel = 1012158
Hatch = 1012166
Spots = 1012160

They are in the C++ shader symbols as xartshader, xcelshader, xhatchingshader, and xspotshader.

Here are the Python Shader Symbols:

c4d.Xambientocclusion = 1001191
c4d.Xbase = 5707
c4d.Xbitmap = 5833
c4d.Xbrick = 5804
c4d.Xchanlum = 1007539
c4d.Xcheckerboard = 5800
c4d.Xcloud = 5802
c4d.Xcolor = 5832
c4d.Xcolorizer = 1011112
c4d.Xcolorstripes = 5822
c4d.Xcyclone = 5821
c4d.Xdistorter = 1011114
c4d.Xearth = 5825
c4d.Xfalloff = 1011101
c4d.Xfilter = 1011128
c4d.Xfire = 5803
c4d.Xflame = 5817
c4d.Xformula = 1031433
c4d.Xfresnel = 1011103
c4d.Xfusion = 1011109
c4d.Xgalaxy = 5813
c4d.Xgradient = 1011100
c4d.Xlayer = 1011123
c4d.Xlumas = 1011105
c4d.Xmarble = 5830
c4d.Xmetal = 5827
c4d.Xmosaic = 1022119
c4d.Xnoise = 1011116
c4d.Xnormaldirection = 1011107
c4d.Xnormalizer = 1026588
c4d.Xobjectcolor = 1033961
c4d.Xplanet = 5829
c4d.Xposterizer = 1011111
c4d.Xprojector = 1011115
c4d.Xproximal = 1011106
c4d.Xrainsampler = 1026576
c4d.Xripple = 1011199
c4d.Xrust = 5828
c4d.Xsimplenoise = 5807
c4d.Xsimpleturbulence = 5806
c4d.Xskyshader = 1000
c4d.Xspectral = 5831
c4d.Xspline = 1011124
c4d.Xsss = 1001197
c4d.Xstar = 5816
c4d.Xstarfield = 5808
c4d.Xsubstance = 1032171
c4d.Xsunburst = 5820
c4d.Xterrainmask = 1026277
c4d.Xthinfilm = 1035731
c4d.Xtiles = 1011102
c4d.Xtranslucency = 1011108
c4d.Xvariation = 1033825
c4d.Xvenus = 5826
c4d.Xvertexmap = 1011137
c4d.Xwater = 5818
c4d.Xwood = 5823
c4d.Xxmbsubsurface = 1025614

Thank you.

Hey @blastframe,

Thank you for reaching out to us.

@blastframe said in Why are there no Sketch and Toon shaders?:

There are in C++ shader symbols as xartshader, xcelshader, xhatchingshader, and xspotshader.

This is not quite true. These are the resource files for the shaders you were linking to, if they would be shader identifiers, they would start with a capital letter, e.g., Xartshader. Sometimes we simply forget to expose type symbols for the nodes we expose. But since the exposure of parameter IDs is automated, this is not that much of a hassle, as one only must hardcode the type identifier then. So, it is no oversight in Python, they simply do not exist.

The parameter symbols are documented as for any other node type for these "special" cases. You can find the parameter documentation for the Art shader for example here.

Cheers,
Ferdinand

Hey @blastframe,

Thank you for reaching out to us.

@blastframe said in Why are there no Sketch and Toon shaders?:

There are in C++ shader symbols as xartshader, xcelshader, xhatchingshader, and xspotshader.

This is not quite true. These are the resource files for the shaders you were linking to, if they would be shader identifiers, they would start with a capital letter, e.g., Xartshader. Sometimes we simply forget to expose type symbols for the nodes we expose. But since the exposure of parameter IDs is automated, this is not that much of a hassle, as one only must hardcode the type identifier then. So, it is no oversight in Python, they simply do not exist.

The parameter symbols are documented as for any other node type for these "special" cases. You can find the parameter documentation for the Art shader for example here.

Cheers,
Ferdinand

Hello @blastframe,

without any further questions or other postings, we will consider this topic as solved and flag it as such by Friday, 17/06/2022.

Thank you for your understanding,
Ferdinand