{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Library Comparison\n",
"\n",
"In this notebook we will look at how MaterialX Elements can be compared with one another.\n",
"\n",
"The example case chosen is to determine what has changed between two versions of the standard\n",
"libraries. In this case version 1.38 versus the current version used to test with.\n",
"\n",
"The compareVersions.py script is an sample utility which uses\n",
"the logic in this notebook. The results of a comparison can be seen here\n",
"\n",
"The following aspects will be covered:\n",
"1. Loading in different versions into separate Documents.\n",
"2. Looking at what has been added or removed.\n",
"3. Performing a detailed comparison between Elements.\n",
"\n",
"### Library Loading\n",
"\n",
"We will first load in two versions of the standard libraries.\n",
"- One is the \"current\" one found in the 'libraries' folder of the MaterialX\n",
"Python distribution. \n",
"- The other is a downloaded version of the same libraries copied into a renamed folder. "
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"- Loaded 750 library definitions from 46 files\n",
"- Loaded 0 old library definitions from 0 files\n"
]
}
],
"source": [
"import MaterialX as mx\n",
"from mtlxutils.mxfile import *\n",
"from IPython.display import display_markdown\n",
"\n",
"# Load the current standard libraries\n",
"currLibrary, currlibFiles, status = MtlxFile.createLibraryDocument()\n",
"print(status)\n",
"\n",
"# Load in the old standard libraries\n",
"otherVersion = ''\n",
"libraryFolders = [ 'libraries1.38' ]\n",
"otherLibrary = mx.createDocument()\n",
"searchPath = mx.FileSearchPath('../resources/')\n",
"# Attempt to preserve the original version of the library\n",
"options = mx.XmlReadOptions()\n",
"options.upgradeVersion = False\n",
"\n",
"libFiles = mx.loadLibraries(libraryFolders, searchPath, otherLibrary)\n",
"print('- Loaded %d old library definitions from %d files' % (len(otherLibrary.getNodeDefs()), len(libFiles)))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"It is possible to selectively filter out which files by providing additional arguments to `loadLibraries` or to perform the equivalent traversal explicitly as shown below."
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Read in 0 definitions from 0 files. Version: \n"
]
}
],
"source": [
"otherLibrary2 = mx.createDocument()\n",
"otherVersion2 = ''\n",
"loadedLibraries = set()\n",
"readOptions = mx.XmlReadOptions()\n",
"readOptions.upgradeVersion = False\n",
"for libraryName in libraryFolders:\n",
" libraryPath = searchPath.find(libraryName)\n",
" for path in libraryPath.getSubDirectories():\n",
" for filename in path.getFilesInDirectory('mtlx'):\n",
" file = path / filename;\n",
" if file.asString() not in loadedLibraries:\n",
" mx.loadLibrary(file, otherLibrary2, searchPath, readOptions) \n",
" loadedLibraries.add(file.asString())\n",
" otherVersion2 = otherLibrary2.getVersionString() \n",
"\n",
"print('Read in %d definitions from %d files. Version: %s' % \n",
" (len(otherLibrary2.getNodeDefs()), len(loadedLibraries), otherVersion2))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Note that both libraries will return same version when querying using `getVersionString()` on the document.\n",
"At the time of writing we are using a patch and thus grab the version from the Python package instead.\n",
"\n",
"It would be useful if there was a way to find patch versions on documents but this is currently\n",
"not supported. Integrations could write additional `patch` meta-data atttibutes but this would not\n",
"be standard."
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"- Current library / package version: 1.39.0\n",
"- Old library version: 1.39\n"
]
}
],
"source": [
"print('- Current library / package version: %s' % mx.getVersionString())\n",
"print('- Old library version: %s' % otherLibrary.getVersionString())"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Testing for Definition Additions and Removals \n",
"\n",
"The first test is just a check on the number of definitions in each file. The result found is that there are more definitions, and there appear to be no definitions which have been removed."
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"There are 750 new definitions.\n",
"- Current library has 750 nodedefs\n",
"- Other library has 0 nodedefs\n"
]
}
],
"source": [
"# Compare number of nodedefs\n",
"currNodeDefs = currLibrary.getNodeDefs()\n",
"currNodeDefsCount = len(currNodeDefs)\n",
"otherNodeDefs = otherLibrary.getNodeDefs()\n",
"otherNodeDefsCount = len(otherNodeDefs) # There seems to be no way to get the previous version?\n",
"print('There are %d new definitions.' % (currNodeDefsCount - otherNodeDefsCount))\n",
"print('- Current library has %d nodedefs' % currNodeDefsCount)\n",
"print('- Other library has %d nodedefs' % otherNodeDefsCount)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"To setup for comparision testing, we build up a dictionary of node definitions keyed by the name of the definition.\n",
"\n",
"At time of writing the convention is that definitions cannot be defined at any location other that the child of root Document. Thus only the name is used as the key. The path could also be used for long term robustness if this convention ever changes."
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [],
"source": [
"# Create dictionary of current node definitions\n",
"currNodeDefSet = {}\n",
"for nodeDef in currNodeDefs:\n",
" currNodeDefSet[nodeDef.getName()] = nodeDef\n",
"\n",
"# Create dictionary of old node definitions\n",
"otherNodeDefSet = {}\n",
"for nodeDef in otherNodeDefs:\n",
" otherNodeDefSet[nodeDef.getName()] = nodeDef\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The first check is to see if any definitions have been removed. \n",
"\n",
"If a definition has been remapped then the hope is that the update process performed on load will handle this. For example when material nodes replaced material elements as part of 1.38.7 the update process performed the appropriate remapping. \n",
"\n",
"If the definition no longer exists then the integration will need to find out how to handle this. In general, this should hopefully never occur."
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [],
"source": [
" \n",
"# Find out if any definitions were removed\n",
"removedNodeDefs = []\n",
"for nodeDef in otherNodeDefs:\n",
" if nodeDef.getName() not in currNodeDefSet:\n",
" removedNodeDefs.append(nodeDef)\n",
"\n",
"text = '' \n",
"if removedNodeDefs:\n",
" removedNodeDefs = sorted(removedNodeDefs, key=lambda x: x.getName())\n",
" text = text + '| Name | Category |\\n'\n",
" text = text + '| :--- | :--- |\\n'\n",
" for nd in removedNodeDefs:\n",
" text = text + '| %s | %s |\\n' % (nd.getName(), nd.getNodeString())\n",
"\n",
" delta = '%d node definitions removed' % len(removedNodeDefs)\n",
" text = '' + delta + '
\\n\\n' + text + '\\n' + ' \\n' \n",
" display_markdown(text, raw=True)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The next check is to see if any definitions have been added and list them out.\n",
"\n",
"At the same time we cache a list of definitions which exist in both the old and new library versions for later\n",
"comparison."
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/markdown": [
"750 node definitions added. (Sorted by category)
\n",
"\n",
"| Name | Category | NodeGroup |\n",
"| :--- | :--- | :---| \n",
"| ND_lama_add_bsdf | LamaAdd | pbr |\n",
"| ND_lama_add_edf | LamaAdd | pbr |\n",
"| ND_lama_conductor | LamaConductor | pbr |\n",
"| ND_lama_dielectric | LamaDielectric | pbr |\n",
"| ND_lama_diffuse | LamaDiffuse | pbr |\n",
"| ND_lama_emission | LamaEmission | pbr |\n",
"| ND_lama_layer_bsdf | LamaLayer | pbr |\n",
"| ND_lama_mix_bsdf | LamaMix | pbr |\n",
"| ND_lama_mix_edf | LamaMix | pbr |\n",
"| ND_lama_sss | LamaSSS | pbr |\n",
"| ND_lama_sheen | LamaSheen | pbr |\n",
"| ND_lama_translucent | LamaTranslucent | pbr |\n",
"| ND_UsdPreviewSurface_surfaceshader | UsdPreviewSurface | pbr |\n",
"| ND_UsdPrimvarReader_integer | UsdPrimvarReader | geometric |\n",
"| ND_UsdPrimvarReader_boolean | UsdPrimvarReader | geometric |\n",
"| ND_UsdPrimvarReader_string | UsdPrimvarReader | geometric |\n",
"| ND_UsdPrimvarReader_float | UsdPrimvarReader | geometric |\n",
"| ND_UsdPrimvarReader_vector2 | UsdPrimvarReader | geometric |\n",
"| ND_UsdPrimvarReader_vector3 | UsdPrimvarReader | geometric |\n",
"| ND_UsdPrimvarReader_vector4 | UsdPrimvarReader | geometric |\n",
"| ND_UsdTransform2d | UsdTransform2d | math |\n",
"| ND_UsdUVTexture | UsdUVTexture | texture2d |\n",
"| ND_UsdUVTexture_23 | UsdUVTexture | texture2d |\n",
"| ND_absorption_vdf | absorption_vdf | pbr |\n",
"| ND_absval_float | absval | math |\n",
"| ND_absval_color3 | absval | math |\n",
"| ND_absval_color4 | absval | math |\n",
"| ND_absval_vector2 | absval | math |\n",
"| ND_absval_vector3 | absval | math |\n",
"| ND_absval_vector4 | absval | math |\n",
"| ND_acescg_to_lin_rec709_color3 | acescg_to_lin_rec709 | colortransform |\n",
"| ND_acescg_to_lin_rec709_color4 | acescg_to_lin_rec709 | colortransform |\n",
"| ND_acos_float | acos | math |\n",
"| ND_acos_vector2 | acos | math |\n",
"| ND_acos_vector3 | acos | math |\n",
"| ND_acos_vector4 | acos | math |\n",
"| ND_add_bsdf | add | pbr |\n",
"| ND_add_edf | add | pbr |\n",
"| ND_add_vdf | add | pbr |\n",
"| ND_add_float | add | math |\n",
"| ND_add_color3 | add | math |\n",
"| ND_add_color4 | add | math |\n",
"| ND_add_vector2 | add | math |\n",
"| ND_add_vector3 | add | math |\n",
"| ND_add_vector4 | add | math |\n",
"| ND_add_matrix33 | add | math |\n",
"| ND_add_matrix44 | add | math |\n",
"| ND_add_color3FA | add | math |\n",
"| ND_add_color4FA | add | math |\n",
"| ND_add_vector2FA | add | math |\n",
"| ND_add_vector3FA | add | math |\n",
"| ND_add_vector4FA | add | math |\n",
"| ND_add_matrix33FA | add | math |\n",
"| ND_add_matrix44FA | add | math |\n",
"| ND_adobergb_to_lin_rec709_color3 | adobergb_to_lin_rec709 | colortransform |\n",
"| ND_adobergb_to_lin_rec709_color4 | adobergb_to_lin_rec709 | colortransform |\n",
"| ND_ambientocclusion_float | ambientocclusion | global |\n",
"| ND_anisotropic_vdf | anisotropic_vdf | pbr |\n",
"| ND_artistic_ior | artistic_ior | pbr |\n",
"| ND_asin_float | asin | math |\n",
"| ND_asin_vector2 | asin | math |\n",
"| ND_asin_vector3 | asin | math |\n",
"| ND_asin_vector4 | asin | math |\n",
"| ND_atan2_float | atan2 | math |\n",
"| ND_atan2_vector2 | atan2 | math |\n",
"| ND_atan2_vector3 | atan2 | math |\n",
"| ND_atan2_vector4 | atan2 | math |\n",
"| ND_bitangent_vector3 | bitangent | geometric |\n",
"| ND_blackbody | blackbody | pbr |\n",
"| ND_blur_float | blur | convolution2d |\n",
"| ND_blur_color3 | blur | convolution2d |\n",
"| ND_blur_color4 | blur | convolution2d |\n",
"| ND_blur_vector2 | blur | convolution2d |\n",
"| ND_blur_vector3 | blur | convolution2d |\n",
"| ND_blur_vector4 | blur | convolution2d |\n",
"| ND_bump_vector3 | bump | geometric |\n",
"| ND_burley_diffuse_bsdf | burley_diffuse_bsdf | pbr |\n",
"| ND_burn_float | burn | compositing |\n",
"| ND_burn_color3 | burn | compositing |\n",
"| ND_burn_color4 | burn | compositing |\n",
"| ND_ceil_float | ceil | math |\n",
"| ND_ceil_color3 | ceil | math |\n",
"| ND_ceil_color4 | ceil | math |\n",
"| ND_ceil_vector2 | ceil | math |\n",
"| ND_ceil_vector3 | ceil | math |\n",
"| ND_ceil_vector4 | ceil | math |\n",
"| ND_ceil_integer | ceil | math |\n",
"| ND_cellnoise2d_float | cellnoise2d | procedural2d |\n",
"| ND_cellnoise3d_float | cellnoise3d | procedural3d |\n",
"| ND_checkerboard_color3 | checkerboard | procedural2d |\n",
"| ND_circle_float | circle | procedural2d |\n",
"| ND_clamp_float | clamp | math |\n",
"| ND_clamp_color3 | clamp | math |\n",
"| ND_clamp_color4 | clamp | math |\n",
"| ND_clamp_vector2 | clamp | math |\n",
"| ND_clamp_vector3 | clamp | math |\n",
"| ND_clamp_vector4 | clamp | math |\n",
"| ND_clamp_color3FA | clamp | math |\n",
"| ND_clamp_color4FA | clamp | math |\n",
"| ND_clamp_vector2FA | clamp | math |\n",
"| ND_clamp_vector3FA | clamp | math |\n",
"| ND_clamp_vector4FA | clamp | math |\n",
"| ND_cloverleaf_float | cloverleaf | procedural2d |\n",
"| ND_colorcorrect_color3 | colorcorrect | adjustment |\n",
"| ND_colorcorrect_color4 | colorcorrect | adjustment |\n",
"| ND_combine2_vector2 | combine2 | channel |\n",
"| ND_combine2_color4CF | combine2 | channel |\n",
"| ND_combine2_vector4VF | combine2 | channel |\n",
"| ND_combine2_vector4VV | combine2 | channel |\n",
"| ND_combine3_color3 | combine3 | channel |\n",
"| ND_combine3_vector3 | combine3 | channel |\n",
"| ND_combine4_color4 | combine4 | channel |\n",
"| ND_combine4_vector4 | combine4 | channel |\n",
"| ND_conductor_bsdf | conductor_bsdf | pbr |\n",
"| ND_conical_edf | conical_edf | pbr |\n",
"| ND_constant_float | constant | procedural |\n",
"| ND_constant_color3 | constant | procedural |\n",
"| ND_constant_color4 | constant | procedural |\n",
"| ND_constant_vector2 | constant | procedural |\n",
"| ND_constant_vector3 | constant | procedural |\n",
"| ND_constant_vector4 | constant | procedural |\n",
"| ND_constant_boolean | constant | procedural |\n",
"| ND_constant_integer | constant | procedural |\n",
"| ND_constant_matrix33 | constant | procedural |\n",
"| ND_constant_matrix44 | constant | procedural |\n",
"| ND_constant_string | constant | procedural |\n",
"| ND_constant_filename | constant | procedural |\n",
"| ND_contrast_float | contrast | adjustment |\n",
"| ND_contrast_color3 | contrast | adjustment |\n",
"| ND_contrast_color4 | contrast | adjustment |\n",
"| ND_contrast_vector2 | contrast | adjustment |\n",
"| ND_contrast_vector3 | contrast | adjustment |\n",
"| ND_contrast_vector4 | contrast | adjustment |\n",
"| ND_contrast_color3FA | contrast | adjustment |\n",
"| ND_contrast_color4FA | contrast | adjustment |\n",
"| ND_contrast_vector2FA | contrast | adjustment |\n",
"| ND_contrast_vector3FA | contrast | adjustment |\n",
"| ND_contrast_vector4FA | contrast | adjustment |\n",
"| ND_convert_float_color3 | convert | channel |\n",
"| ND_convert_float_color4 | convert | channel |\n",
"| ND_convert_float_vector2 | convert | channel |\n",
"| ND_convert_float_vector3 | convert | channel |\n",
"| ND_convert_float_vector4 | convert | channel |\n",
"| ND_convert_vector2_vector3 | convert | channel |\n",
"| ND_convert_vector3_color3 | convert | channel |\n",
"| ND_convert_vector3_vector2 | convert | channel |\n",
"| ND_convert_vector3_vector4 | convert | channel |\n",
"| ND_convert_vector4_color4 | convert | channel |\n",
"| ND_convert_vector4_vector3 | convert | channel |\n",
"| ND_convert_color3_vector3 | convert | channel |\n",
"| ND_convert_color4_vector4 | convert | channel |\n",
"| ND_convert_color3_color4 | convert | channel |\n",
"| ND_convert_color4_color3 | convert | channel |\n",
"| ND_convert_boolean_float | convert | channel |\n",
"| ND_convert_integer_float | convert | channel |\n",
"| ND_convert_color3_surfaceshader | convert | shader |\n",
"| ND_convert_color4_surfaceshader | convert | shader |\n",
"| ND_convert_float_surfaceshader | convert | shader |\n",
"| ND_convert_vector2_surfaceshader | convert | shader |\n",
"| ND_convert_vector3_surfaceshader | convert | shader |\n",
"| ND_convert_vector4_surfaceshader | convert | shader |\n",
"| ND_convert_integer_surfaceshader | convert | shader |\n",
"| ND_convert_boolean_surfaceshader | convert | shader |\n",
"| ND_cos_float | cos | math |\n",
"| ND_cos_vector2 | cos | math |\n",
"| ND_cos_vector3 | cos | math |\n",
"| ND_cos_vector4 | cos | math |\n",
"| ND_creatematrix_vector3_matrix33 | creatematrix | math |\n",
"| ND_creatematrix_vector3_matrix44 | creatematrix | math |\n",
"| ND_creatematrix_vector4_matrix44 | creatematrix | math |\n",
"| ND_crosshatch_color3 | crosshatch | procedural2d |\n",
"| ND_crossproduct_vector3 | crossproduct | math |\n",
"| ND_curveadjust_float | curveadjust | adjustment |\n",
"| ND_curveadjust_color3 | curveadjust | adjustment |\n",
"| ND_curveadjust_color4 | curveadjust | adjustment |\n",
"| ND_curveadjust_vector2 | curveadjust | adjustment |\n",
"| ND_curveadjust_vector3 | curveadjust | adjustment |\n",
"| ND_curveadjust_vector4 | curveadjust | adjustment |\n",
"| ND_determinant_matrix33 | determinant | math |\n",
"| ND_determinant_matrix44 | determinant | math |\n",
"| ND_dielectric_bsdf | dielectric_bsdf | pbr |\n",
"| ND_difference_float | difference | compositing |\n",
"| ND_difference_color3 | difference | compositing |\n",
"| ND_difference_color4 | difference | compositing |\n",
"| ND_directional_light | directional_light | light |\n",
"| ND_disjointover_color4 | disjointover | compositing |\n",
"| ND_disney_brdf_2012_surface | disney_brdf_2012 | pbr |\n",
"| ND_disney_bsdf_2015_surface | disney_bsdf_2015 | pbr |\n",
"| ND_displacement_float | displacement | pbr |\n",
"| ND_displacement_vector3 | displacement | pbr |\n",
"| ND_distance_vector2 | distance | math |\n",
"| ND_distance_vector3 | distance | math |\n",
"| ND_distance_vector4 | distance | math |\n",
"| ND_divide_float | divide | math |\n",
"| ND_divide_color3 | divide | math |\n",
"| ND_divide_color4 | divide | math |\n",
"| ND_divide_vector2 | divide | math |\n",
"| ND_divide_vector3 | divide | math |\n",
"| ND_divide_vector4 | divide | math |\n",
"| ND_divide_matrix33 | divide | math |\n",
"| ND_divide_matrix44 | divide | math |\n",
"| ND_divide_color3FA | divide | math |\n",
"| ND_divide_color4FA | divide | math |\n",
"| ND_divide_vector2FA | divide | math |\n",
"| ND_divide_vector3FA | divide | math |\n",
"| ND_divide_vector4FA | divide | math |\n",
"| ND_dodge_float | dodge | compositing |\n",
"| ND_dodge_color3 | dodge | compositing |\n",
"| ND_dodge_color4 | dodge | compositing |\n",
"| ND_dot_float | dot | organization |\n",
"| ND_dot_color3 | dot | organization |\n",
"| ND_dot_color4 | dot | organization |\n",
"| ND_dot_vector2 | dot | organization |\n",
"| ND_dot_vector3 | dot | organization |\n",
"| ND_dot_vector4 | dot | organization |\n",
"| ND_dot_boolean | dot | organization |\n",
"| ND_dot_integer | dot | organization |\n",
"| ND_dot_matrix33 | dot | organization |\n",
"| ND_dot_matrix44 | dot | organization |\n",
"| ND_dot_string | dot | organization |\n",
"| ND_dot_filename | dot | organization |\n",
"| ND_dot_surfaceshader | dot | organization |\n",
"| ND_dot_displacementshader | dot | organization |\n",
"| ND_dot_volumeshader | dot | organization |\n",
"| ND_dot_lightshader | dot | organization |\n",
"| ND_dotproduct_vector2 | dotproduct | math |\n",
"| ND_dotproduct_vector3 | dotproduct | math |\n",
"| ND_dotproduct_vector4 | dotproduct | math |\n",
"| ND_exp_float | exp | math |\n",
"| ND_exp_vector2 | exp | math |\n",
"| ND_exp_vector3 | exp | math |\n",
"| ND_exp_vector4 | exp | math |\n",
"| ND_extract_color3 | extract | channel |\n",
"| ND_extract_color4 | extract | channel |\n",
"| ND_extract_vector2 | extract | channel |\n",
"| ND_extract_vector3 | extract | channel |\n",
"| ND_extract_vector4 | extract | channel |\n",
"| ND_facingratio_float | facingratio | npr |\n",
"| ND_floor_float | floor | math |\n",
"| ND_floor_color3 | floor | math |\n",
"| ND_floor_color4 | floor | math |\n",
"| ND_floor_vector2 | floor | math |\n",
"| ND_floor_vector3 | floor | math |\n",
"| ND_floor_vector4 | floor | math |\n",
"| ND_floor_integer | floor | math |\n",
"| ND_fractal3d_float | fractal3d | procedural3d |\n",
"| ND_fractal3d_color3 | fractal3d | procedural3d |\n",
"| ND_fractal3d_color4 | fractal3d | procedural3d |\n",
"| ND_fractal3d_vector2 | fractal3d | procedural3d |\n",
"| ND_fractal3d_vector3 | fractal3d | procedural3d |\n",
"| ND_fractal3d_vector4 | fractal3d | procedural3d |\n",
"| ND_fractal3d_color3FA | fractal3d | procedural3d |\n",
"| ND_fractal3d_color4FA | fractal3d | procedural3d |\n",
"| ND_fractal3d_vector2FA | fractal3d | procedural3d |\n",
"| ND_fractal3d_vector3FA | fractal3d | procedural3d |\n",
"| ND_fractal3d_vector4FA | fractal3d | procedural3d |\n",
"| ND_frame_float | frame | application |\n",
"| ND_g18_rec709_to_lin_rec709_color3 | g18_rec709_to_lin_rec709 | colortransform |\n",
"| ND_g18_rec709_to_lin_rec709_color4 | g18_rec709_to_lin_rec709 | colortransform |\n",
"| ND_g22_ap1_to_lin_rec709_color3 | g22_ap1_to_lin_rec709 | colortransform |\n",
"| ND_g22_ap1_to_lin_rec709_color4 | g22_ap1_to_lin_rec709 | colortransform |\n",
"| ND_g22_rec709_to_lin_rec709_color3 | g22_rec709_to_lin_rec709 | colortransform |\n",
"| ND_g22_rec709_to_lin_rec709_color4 | g22_rec709_to_lin_rec709 | colortransform |\n",
"| ND_generalized_schlick_bsdf | generalized_schlick_bsdf | pbr |\n",
"| ND_generalized_schlick_edf | generalized_schlick_edf | pbr |\n",
"| ND_geomcolor_float | geomcolor | geometric |\n",
"| ND_geomcolor_color3 | geomcolor | geometric |\n",
"| ND_geomcolor_color4 | geomcolor | geometric |\n",
"| ND_geompropvalue_integer | geompropvalue | geometric |\n",
"| ND_geompropvalue_boolean | geompropvalue | geometric |\n",
"| ND_geompropvalue_string | geompropvalue | geometric |\n",
"| ND_geompropvalue_float | geompropvalue | geometric |\n",
"| ND_geompropvalue_color3 | geompropvalue | geometric |\n",
"| ND_geompropvalue_color4 | geompropvalue | geometric |\n",
"| ND_geompropvalue_vector2 | geompropvalue | geometric |\n",
"| ND_geompropvalue_vector3 | geompropvalue | geometric |\n",
"| ND_geompropvalue_vector4 | geompropvalue | geometric |\n",
"| ND_glossiness_anisotropy | glossiness_anisotropy | pbr |\n",
"| ND_gltf_colorimage | gltf_colorimage | texture2d |\n",
"| ND_gltf_image_color3_color3_1_0 | gltf_image | texture2d |\n",
"| ND_gltf_image_color4_color4_1_0 | gltf_image | texture2d |\n",
"| ND_gltf_image_float_float_1_0 | gltf_image | texture2d |\n",
"| ND_gltf_image_vector3_vector3_1_0 | gltf_image | texture2d |\n",
"| ND_gltf_iridescence_thickness_float_1_0 | gltf_iridescence_thickness | texture2d |\n",
"| ND_gltf_normalmap_vector3_1_0 | gltf_normalmap | texture2d |\n",
"| ND_gltf_pbr_surfaceshader | gltf_pbr | pbr |\n",
"| ND_gooch_shade | gooch_shade | npr |\n",
"| ND_grid_color3 | grid | procedural2d |\n",
"| ND_heighttonormal_vector3 | heighttonormal | convolution2d |\n",
"| ND_hexagon_float | hexagon | procedural2d |\n",
"| ND_hsvadjust_color3 | hsvadjust | adjustment |\n",
"| ND_hsvadjust_color4 | hsvadjust | adjustment |\n",
"| ND_hsvtorgb_color3 | hsvtorgb | adjustment |\n",
"| ND_hsvtorgb_color4 | hsvtorgb | adjustment |\n",
"| ND_ifequal_float | ifequal | conditional |\n",
"| ND_ifequal_color3 | ifequal | conditional |\n",
"| ND_ifequal_color4 | ifequal | conditional |\n",
"| ND_ifequal_vector2 | ifequal | conditional |\n",
"| ND_ifequal_vector3 | ifequal | conditional |\n",
"| ND_ifequal_vector4 | ifequal | conditional |\n",
"| ND_ifequal_floatI | ifequal | conditional |\n",
"| ND_ifequal_color3I | ifequal | conditional |\n",
"| ND_ifequal_color4I | ifequal | conditional |\n",
"| ND_ifequal_vector2I | ifequal | conditional |\n",
"| ND_ifequal_vector3I | ifequal | conditional |\n",
"| ND_ifequal_vector4I | ifequal | conditional |\n",
"| ND_ifequal_floatB | ifequal | conditional |\n",
"| ND_ifequal_color3B | ifequal | conditional |\n",
"| ND_ifequal_color4B | ifequal | conditional |\n",
"| ND_ifequal_vector2B | ifequal | conditional |\n",
"| ND_ifequal_vector3B | ifequal | conditional |\n",
"| ND_ifequal_vector4B | ifequal | conditional |\n",
"| ND_ifgreater_float | ifgreater | conditional |\n",
"| ND_ifgreater_color3 | ifgreater | conditional |\n",
"| ND_ifgreater_color4 | ifgreater | conditional |\n",
"| ND_ifgreater_vector2 | ifgreater | conditional |\n",
"| ND_ifgreater_vector3 | ifgreater | conditional |\n",
"| ND_ifgreater_vector4 | ifgreater | conditional |\n",
"| ND_ifgreater_floatI | ifgreater | conditional |\n",
"| ND_ifgreater_color3I | ifgreater | conditional |\n",
"| ND_ifgreater_color4I | ifgreater | conditional |\n",
"| ND_ifgreater_vector2I | ifgreater | conditional |\n",
"| ND_ifgreater_vector3I | ifgreater | conditional |\n",
"| ND_ifgreater_vector4I | ifgreater | conditional |\n",
"| ND_ifgreatereq_float | ifgreatereq | conditional |\n",
"| ND_ifgreatereq_color3 | ifgreatereq | conditional |\n",
"| ND_ifgreatereq_color4 | ifgreatereq | conditional |\n",
"| ND_ifgreatereq_vector2 | ifgreatereq | conditional |\n",
"| ND_ifgreatereq_vector3 | ifgreatereq | conditional |\n",
"| ND_ifgreatereq_vector4 | ifgreatereq | conditional |\n",
"| ND_ifgreatereq_floatI | ifgreatereq | conditional |\n",
"| ND_ifgreatereq_color3I | ifgreatereq | conditional |\n",
"| ND_ifgreatereq_color4I | ifgreatereq | conditional |\n",
"| ND_ifgreatereq_vector2I | ifgreatereq | conditional |\n",
"| ND_ifgreatereq_vector3I | ifgreatereq | conditional |\n",
"| ND_ifgreatereq_vector4I | ifgreatereq | conditional |\n",
"| ND_image_float | image | texture2d |\n",
"| ND_image_color3 | image | texture2d |\n",
"| ND_image_color4 | image | texture2d |\n",
"| ND_image_vector2 | image | texture2d |\n",
"| ND_image_vector3 | image | texture2d |\n",
"| ND_image_vector4 | image | texture2d |\n",
"| ND_in_color4 | in | compositing |\n",
"| ND_inside_float | inside | compositing |\n",
"| ND_inside_color3 | inside | compositing |\n",
"| ND_inside_color4 | inside | compositing |\n",
"| ND_invert_float | invert | math |\n",
"| ND_invert_color3 | invert | math |\n",
"| ND_invert_color4 | invert | math |\n",
"| ND_invert_vector2 | invert | math |\n",
"| ND_invert_vector3 | invert | math |\n",
"| ND_invert_vector4 | invert | math |\n",
"| ND_invert_color3FA | invert | math |\n",
"| ND_invert_color4FA | invert | math |\n",
"| ND_invert_vector2FA | invert | math |\n",
"| ND_invert_vector3FA | invert | math |\n",
"| ND_invert_vector4FA | invert | math |\n",
"| ND_invertmatrix_matrix33 | invertmatrix | math |\n",
"| ND_invertmatrix_matrix44 | invertmatrix | math |\n",
"| ND_layer_bsdf | layer | pbr |\n",
"| ND_layer_vdf | layer | pbr |\n",
"| ND_light | light | pbr |\n",
"| ND_lin_adobergb_to_lin_rec709_color3 | lin_adobergb_to_lin_rec709 | colortransform |\n",
"| ND_lin_adobergb_to_lin_rec709_color4 | lin_adobergb_to_lin_rec709 | colortransform |\n",
"| ND_lin_displayp3_to_lin_rec709_color3 | lin_displayp3_to_lin_rec709 | colortransform |\n",
"| ND_lin_displayp3_to_lin_rec709_color4 | lin_displayp3_to_lin_rec709 | colortransform |\n",
"| ND_line_float | line | procedural2d |\n",
"| ND_ln_float | ln | math |\n",
"| ND_ln_vector2 | ln | math |\n",
"| ND_ln_vector3 | ln | math |\n",
"| ND_ln_vector4 | ln | math |\n",
"| ND_luminance_color3 | luminance | adjustment |\n",
"| ND_luminance_color4 | luminance | adjustment |\n",
"| ND_magnitude_vector2 | magnitude | math |\n",
"| ND_magnitude_vector3 | magnitude | math |\n",
"| ND_magnitude_vector4 | magnitude | math |\n",
"| ND_mask_color4 | mask | compositing |\n",
"| ND_matte_color4 | matte | compositing |\n",
"| ND_max_float | max | math |\n",
"| ND_max_color3 | max | math |\n",
"| ND_max_color4 | max | math |\n",
"| ND_max_vector2 | max | math |\n",
"| ND_max_vector3 | max | math |\n",
"| ND_max_vector4 | max | math |\n",
"| ND_max_color3FA | max | math |\n",
"| ND_max_color4FA | max | math |\n",
"| ND_max_vector2FA | max | math |\n",
"| ND_max_vector3FA | max | math |\n",
"| ND_max_vector4FA | max | math |\n",
"| ND_measured_edf | measured_edf | pbr |\n",
"| ND_min_float | min | math |\n",
"| ND_min_color3 | min | math |\n",
"| ND_min_color4 | min | math |\n",
"| ND_min_vector2 | min | math |\n",
"| ND_min_vector3 | min | math |\n",
"| ND_min_vector4 | min | math |\n",
"| ND_min_color3FA | min | math |\n",
"| ND_min_color4FA | min | math |\n",
"| ND_min_vector2FA | min | math |\n",
"| ND_min_vector3FA | min | math |\n",
"| ND_min_vector4FA | min | math |\n",
"| ND_minus_float | minus | compositing |\n",
"| ND_minus_color3 | minus | compositing |\n",
"| ND_minus_color4 | minus | compositing |\n",
"| ND_mix_bsdf | mix | pbr |\n",
"| ND_mix_edf | mix | pbr |\n",
"| ND_mix_vdf | mix | pbr |\n",
"| ND_mix_float | mix | compositing |\n",
"| ND_mix_color3 | mix | compositing |\n",
"| ND_mix_color3_color3 | mix | compositing |\n",
"| ND_mix_color4 | mix | compositing |\n",
"| ND_mix_color4_color4 | mix | compositing |\n",
"| ND_mix_vector2 | mix | compositing |\n",
"| ND_mix_vector2_vector2 | mix | compositing |\n",
"| ND_mix_vector3 | mix | compositing |\n",
"| ND_mix_vector3_vector3 | mix | compositing |\n",
"| ND_mix_vector4 | mix | compositing |\n",
"| ND_mix_vector4_vector4 | mix | compositing |\n",
"| ND_mix_surfaceshader | mix | compositing |\n",
"| ND_mix_displacementshader | mix | compositing |\n",
"| ND_mix_volumeshader | mix | compositing |\n",
"| ND_modulo_float | modulo | math |\n",
"| ND_modulo_color3 | modulo | math |\n",
"| ND_modulo_color4 | modulo | math |\n",
"| ND_modulo_vector2 | modulo | math |\n",
"| ND_modulo_vector3 | modulo | math |\n",
"| ND_modulo_vector4 | modulo | math |\n",
"| ND_modulo_color3FA | modulo | math |\n",
"| ND_modulo_color4FA | modulo | math |\n",
"| ND_modulo_vector2FA | modulo | math |\n",
"| ND_modulo_vector3FA | modulo | math |\n",
"| ND_modulo_vector4FA | modulo | math |\n",
"| ND_multiply_bsdfC | multiply | pbr |\n",
"| ND_multiply_bsdfF | multiply | pbr |\n",
"| ND_multiply_edfC | multiply | pbr |\n",
"| ND_multiply_edfF | multiply | pbr |\n",
"| ND_multiply_vdfC | multiply | pbr |\n",
"| ND_multiply_vdfF | multiply | pbr |\n",
"| ND_multiply_float | multiply | math |\n",
"| ND_multiply_color3 | multiply | math |\n",
"| ND_multiply_color4 | multiply | math |\n",
"| ND_multiply_vector2 | multiply | math |\n",
"| ND_multiply_vector3 | multiply | math |\n",
"| ND_multiply_vector4 | multiply | math |\n",
"| ND_multiply_matrix33 | multiply | math |\n",
"| ND_multiply_matrix44 | multiply | math |\n",
"| ND_multiply_color3FA | multiply | math |\n",
"| ND_multiply_color4FA | multiply | math |\n",
"| ND_multiply_vector2FA | multiply | math |\n",
"| ND_multiply_vector3FA | multiply | math |\n",
"| ND_multiply_vector4FA | multiply | math |\n",
"| ND_noise2d_float | noise2d | procedural2d |\n",
"| ND_noise2d_color3 | noise2d | procedural2d |\n",
"| ND_noise2d_color4 | noise2d | procedural2d |\n",
"| ND_noise2d_vector2 | noise2d | procedural2d |\n",
"| ND_noise2d_vector3 | noise2d | procedural2d |\n",
"| ND_noise2d_vector4 | noise2d | procedural2d |\n",
"| ND_noise2d_color3FA | noise2d | procedural2d |\n",
"| ND_noise2d_color4FA | noise2d | procedural2d |\n",
"| ND_noise2d_vector2FA | noise2d | procedural2d |\n",
"| ND_noise2d_vector3FA | noise2d | procedural2d |\n",
"| ND_noise2d_vector4FA | noise2d | procedural2d |\n",
"| ND_noise3d_float | noise3d | procedural3d |\n",
"| ND_noise3d_color3 | noise3d | procedural3d |\n",
"| ND_noise3d_color4 | noise3d | procedural3d |\n",
"| ND_noise3d_vector2 | noise3d | procedural3d |\n",
"| ND_noise3d_vector3 | noise3d | procedural3d |\n",
"| ND_noise3d_vector4 | noise3d | procedural3d |\n",
"| ND_noise3d_color3FA | noise3d | procedural3d |\n",
"| ND_noise3d_color4FA | noise3d | procedural3d |\n",
"| ND_noise3d_vector2FA | noise3d | procedural3d |\n",
"| ND_noise3d_vector3FA | noise3d | procedural3d |\n",
"| ND_noise3d_vector4FA | noise3d | procedural3d |\n",
"| ND_normal_vector3 | normal | geometric |\n",
"| ND_normalize_vector2 | normalize | math |\n",
"| ND_normalize_vector3 | normalize | math |\n",
"| ND_normalize_vector4 | normalize | math |\n",
"| ND_normalmap_float | normalmap | math |\n",
"| ND_normalmap_vector2 | normalmap | math |\n",
"| ND_open_pbr_surface_surfaceshader | open_pbr_surface | pbr |\n",
"| ND_oren_nayar_diffuse_bsdf | oren_nayar_diffuse_bsdf | pbr |\n",
"| ND_out_color4 | out | compositing |\n",
"| ND_outside_float | outside | compositing |\n",
"| ND_outside_color3 | outside | compositing |\n",
"| ND_outside_color4 | outside | compositing |\n",
"| ND_over_color4 | over | compositing |\n",
"| ND_overlay_float | overlay | compositing |\n",
"| ND_overlay_color3 | overlay | compositing |\n",
"| ND_overlay_color4 | overlay | compositing |\n",
"| ND_place2d_vector2 | place2d | math |\n",
"| ND_plus_float | plus | compositing |\n",
"| ND_plus_color3 | plus | compositing |\n",
"| ND_plus_color4 | plus | compositing |\n",
"| ND_point_light | point_light | light |\n",
"| ND_position_vector3 | position | geometric |\n",
"| ND_power_float | power | math |\n",
"| ND_power_color3 | power | math |\n",
"| ND_power_color4 | power | math |\n",
"| ND_power_vector2 | power | math |\n",
"| ND_power_vector3 | power | math |\n",
"| ND_power_vector4 | power | math |\n",
"| ND_power_color3FA | power | math |\n",
"| ND_power_color4FA | power | math |\n",
"| ND_power_vector2FA | power | math |\n",
"| ND_power_vector3FA | power | math |\n",
"| ND_power_vector4FA | power | math |\n",
"| ND_premult_color4 | premult | compositing |\n",
"| ND_ramp4_float | ramp4 | procedural2d |\n",
"| ND_ramp4_color3 | ramp4 | procedural2d |\n",
"| ND_ramp4_color4 | ramp4 | procedural2d |\n",
"| ND_ramp4_vector2 | ramp4 | procedural2d |\n",
"| ND_ramp4_vector3 | ramp4 | procedural2d |\n",
"| ND_ramp4_vector4 | ramp4 | procedural2d |\n",
"| ND_ramplr_float | ramplr | procedural2d |\n",
"| ND_ramplr_color3 | ramplr | procedural2d |\n",
"| ND_ramplr_color4 | ramplr | procedural2d |\n",
"| ND_ramplr_vector2 | ramplr | procedural2d |\n",
"| ND_ramplr_vector3 | ramplr | procedural2d |\n",
"| ND_ramplr_vector4 | ramplr | procedural2d |\n",
"| ND_ramptb_float | ramptb | procedural2d |\n",
"| ND_ramptb_color3 | ramptb | procedural2d |\n",
"| ND_ramptb_color4 | ramptb | procedural2d |\n",
"| ND_ramptb_vector2 | ramptb | procedural2d |\n",
"| ND_ramptb_vector3 | ramptb | procedural2d |\n",
"| ND_ramptb_vector4 | ramptb | procedural2d |\n",
"| ND_randomcolor_float | randomcolor | procedural3d |\n",
"| ND_randomcolor_integer | randomcolor | procedural3d |\n",
"| ND_randomfloat_float | randomfloat | procedural |\n",
"| ND_randomfloat_integer | randomfloat | procedural |\n",
"| ND_range_float | range | adjustment |\n",
"| ND_range_color3 | range | adjustment |\n",
"| ND_range_color4 | range | adjustment |\n",
"| ND_range_vector2 | range | adjustment |\n",
"| ND_range_vector3 | range | adjustment |\n",
"| ND_range_vector4 | range | adjustment |\n",
"| ND_range_color3FA | range | adjustment |\n",
"| ND_range_color4FA | range | adjustment |\n",
"| ND_range_vector2FA | range | adjustment |\n",
"| ND_range_vector3FA | range | adjustment |\n",
"| ND_range_vector4FA | range | adjustment |\n",
"| ND_rec709_display_to_lin_rec709_color3 | rec709_display_to_lin_rec709 | colortransform |\n",
"| ND_rec709_display_to_lin_rec709_color4 | rec709_display_to_lin_rec709 | colortransform |\n",
"| ND_reflect_vector3 | reflect | math |\n",
"| ND_refract_vector3 | refract | math |\n",
"| ND_remap_float | remap | adjustment |\n",
"| ND_remap_color3 | remap | adjustment |\n",
"| ND_remap_color4 | remap | adjustment |\n",
"| ND_remap_vector2 | remap | adjustment |\n",
"| ND_remap_vector3 | remap | adjustment |\n",
"| ND_remap_vector4 | remap | adjustment |\n",
"| ND_remap_color3FA | remap | adjustment |\n",
"| ND_remap_color4FA | remap | adjustment |\n",
"| ND_remap_vector2FA | remap | adjustment |\n",
"| ND_remap_vector3FA | remap | adjustment |\n",
"| ND_remap_vector4FA | remap | adjustment |\n",
"| ND_rgbtohsv_color3 | rgbtohsv | adjustment |\n",
"| ND_rgbtohsv_color4 | rgbtohsv | adjustment |\n",
"| ND_rotate2d_vector2 | rotate2d | math |\n",
"| ND_rotate3d_vector3 | rotate3d | math |\n",
"| ND_roughness_anisotropy | roughness_anisotropy | pbr |\n",
"| ND_roughness_dual | roughness_dual | pbr |\n",
"| ND_round_float | round | math |\n",
"| ND_round_color3 | round | math |\n",
"| ND_round_color4 | round | math |\n",
"| ND_round_vector2 | round | math |\n",
"| ND_round_vector3 | round | math |\n",
"| ND_round_vector4 | round | math |\n",
"| ND_round_integer | round | math |\n",
"| ND_safepower_float | safepower | math |\n",
"| ND_safepower_color3 | safepower | math |\n",
"| ND_safepower_color4 | safepower | math |\n",
"| ND_safepower_vector2 | safepower | math |\n",
"| ND_safepower_vector3 | safepower | math |\n",
"| ND_safepower_vector4 | safepower | math |\n",
"| ND_safepower_color3FA | safepower | math |\n",
"| ND_safepower_color4FA | safepower | math |\n",
"| ND_safepower_vector2FA | safepower | math |\n",
"| ND_safepower_vector3FA | safepower | math |\n",
"| ND_safepower_vector4FA | safepower | math |\n",
"| ND_saturate_color3 | saturate | adjustment |\n",
"| ND_saturate_color4 | saturate | adjustment |\n",
"| ND_screen_float | screen | compositing |\n",
"| ND_screen_color3 | screen | compositing |\n",
"| ND_screen_color4 | screen | compositing |\n",
"| ND_separate2_vector2 | separate2 | channel |\n",
"| ND_separate3_color3 | separate3 | channel |\n",
"| ND_separate3_vector3 | separate3 | channel |\n",
"| ND_separate4_color4 | separate4 | channel |\n",
"| ND_separate4_vector4 | separate4 | channel |\n",
"| ND_sheen_bsdf | sheen_bsdf | pbr |\n",
"| ND_sign_float | sign | math |\n",
"| ND_sign_color3 | sign | math |\n",
"| ND_sign_color4 | sign | math |\n",
"| ND_sign_vector2 | sign | math |\n",
"| ND_sign_vector3 | sign | math |\n",
"| ND_sign_vector4 | sign | math |\n",
"| ND_sin_float | sin | math |\n",
"| ND_sin_vector2 | sin | math |\n",
"| ND_sin_vector3 | sin | math |\n",
"| ND_sin_vector4 | sin | math |\n",
"| ND_smoothstep_float | smoothstep | adjustment |\n",
"| ND_smoothstep_color3 | smoothstep | adjustment |\n",
"| ND_smoothstep_color4 | smoothstep | adjustment |\n",
"| ND_smoothstep_vector2 | smoothstep | adjustment |\n",
"| ND_smoothstep_vector3 | smoothstep | adjustment |\n",
"| ND_smoothstep_vector4 | smoothstep | adjustment |\n",
"| ND_smoothstep_color3FA | smoothstep | adjustment |\n",
"| ND_smoothstep_color4FA | smoothstep | adjustment |\n",
"| ND_smoothstep_vector2FA | smoothstep | adjustment |\n",
"| ND_smoothstep_vector3FA | smoothstep | adjustment |\n",
"| ND_smoothstep_vector4FA | smoothstep | adjustment |\n",
"| ND_splitlr_float | splitlr | procedural2d |\n",
"| ND_splitlr_color3 | splitlr | procedural2d |\n",
"| ND_splitlr_color4 | splitlr | procedural2d |\n",
"| ND_splitlr_vector2 | splitlr | procedural2d |\n",
"| ND_splitlr_vector3 | splitlr | procedural2d |\n",
"| ND_splitlr_vector4 | splitlr | procedural2d |\n",
"| ND_splittb_float | splittb | procedural2d |\n",
"| ND_splittb_color3 | splittb | procedural2d |\n",
"| ND_splittb_color4 | splittb | procedural2d |\n",
"| ND_splittb_vector2 | splittb | procedural2d |\n",
"| ND_splittb_vector3 | splittb | procedural2d |\n",
"| ND_splittb_vector4 | splittb | procedural2d |\n",
"| ND_spot_light | spot_light | light |\n",
"| ND_sqrt_float | sqrt | math |\n",
"| ND_sqrt_vector2 | sqrt | math |\n",
"| ND_sqrt_vector3 | sqrt | math |\n",
"| ND_sqrt_vector4 | sqrt | math |\n",
"| ND_srgb_displayp3_to_lin_rec709_color3 | srgb_displayp3_to_lin_rec709 | colortransform |\n",
"| ND_srgb_displayp3_to_lin_rec709_color4 | srgb_displayp3_to_lin_rec709 | colortransform |\n",
"| ND_srgb_texture_to_lin_rec709_color3 | srgb_texture_to_lin_rec709 | colortransform |\n",
"| ND_srgb_texture_to_lin_rec709_color4 | srgb_texture_to_lin_rec709 | colortransform |\n",
"| ND_standard_surface_surfaceshader | standard_surface | pbr |\n",
"| ND_standard_surface_surfaceshader_100 | standard_surface | pbr |\n",
"| ND_standard_surface_to_UsdPreviewSurface | standard_surface_to_UsdPreviewSurface | translation |\n",
"| ND_standard_surface_to_gltf_pbr | standard_surface_to_gltf_pbr | translation |\n",
"| ND_subsurface_bsdf | subsurface_bsdf | pbr |\n",
"| ND_subtract_float | subtract | math |\n",
"| ND_subtract_color3 | subtract | math |\n",
"| ND_subtract_color4 | subtract | math |\n",
"| ND_subtract_vector2 | subtract | math |\n",
"| ND_subtract_vector3 | subtract | math |\n",
"| ND_subtract_vector4 | subtract | math |\n",
"| ND_subtract_matrix33 | subtract | math |\n",
"| ND_subtract_matrix44 | subtract | math |\n",
"| ND_subtract_color3FA | subtract | math |\n",
"| ND_subtract_color4FA | subtract | math |\n",
"| ND_subtract_vector2FA | subtract | math |\n",
"| ND_subtract_vector3FA | subtract | math |\n",
"| ND_subtract_vector4FA | subtract | math |\n",
"| ND_subtract_matrix33FA | subtract | math |\n",
"| ND_subtract_matrix44FA | subtract | math |\n",
"| ND_surface | surface | pbr |\n",
"| ND_surface_unlit | surface_unlit | shader |\n",
"| ND_surfacematerial | surfacematerial | material |\n",
"| ND_switch_float | switch | conditional |\n",
"| ND_switch_color3 | switch | conditional |\n",
"| ND_switch_color4 | switch | conditional |\n",
"| ND_switch_vector2 | switch | conditional |\n",
"| ND_switch_vector3 | switch | conditional |\n",
"| ND_switch_vector4 | switch | conditional |\n",
"| ND_switch_floatI | switch | conditional |\n",
"| ND_switch_color3I | switch | conditional |\n",
"| ND_switch_color4I | switch | conditional |\n",
"| ND_switch_vector2I | switch | conditional |\n",
"| ND_switch_vector3I | switch | conditional |\n",
"| ND_switch_vector4I | switch | conditional |\n",
"| ND_swizzle_float_color3 | swizzle | channel |\n",
"| ND_swizzle_float_color4 | swizzle | channel |\n",
"| ND_swizzle_float_vector2 | swizzle | channel |\n",
"| ND_swizzle_float_vector3 | swizzle | channel |\n",
"| ND_swizzle_float_vector4 | swizzle | channel |\n",
"| ND_swizzle_color3_float | swizzle | channel |\n",
"| ND_swizzle_color3_color3 | swizzle | channel |\n",
"| ND_swizzle_color3_color4 | swizzle | channel |\n",
"| ND_swizzle_color3_vector2 | swizzle | channel |\n",
"| ND_swizzle_color3_vector3 | swizzle | channel |\n",
"| ND_swizzle_color3_vector4 | swizzle | channel |\n",
"| ND_swizzle_color4_float | swizzle | channel |\n",
"| ND_swizzle_color4_color3 | swizzle | channel |\n",
"| ND_swizzle_color4_color4 | swizzle | channel |\n",
"| ND_swizzle_color4_vector2 | swizzle | channel |\n",
"| ND_swizzle_color4_vector3 | swizzle | channel |\n",
"| ND_swizzle_color4_vector4 | swizzle | channel |\n",
"| ND_swizzle_vector2_float | swizzle | channel |\n",
"| ND_swizzle_vector2_color3 | swizzle | channel |\n",
"| ND_swizzle_vector2_color4 | swizzle | channel |\n",
"| ND_swizzle_vector2_vector2 | swizzle | channel |\n",
"| ND_swizzle_vector2_vector3 | swizzle | channel |\n",
"| ND_swizzle_vector2_vector4 | swizzle | channel |\n",
"| ND_swizzle_vector3_float | swizzle | channel |\n",
"| ND_swizzle_vector3_color3 | swizzle | channel |\n",
"| ND_swizzle_vector3_color4 | swizzle | channel |\n",
"| ND_swizzle_vector3_vector2 | swizzle | channel |\n",
"| ND_swizzle_vector3_vector3 | swizzle | channel |\n",
"| ND_swizzle_vector3_vector4 | swizzle | channel |\n",
"| ND_swizzle_vector4_float | swizzle | channel |\n",
"| ND_swizzle_vector4_color3 | swizzle | channel |\n",
"| ND_swizzle_vector4_color4 | swizzle | channel |\n",
"| ND_swizzle_vector4_vector2 | swizzle | channel |\n",
"| ND_swizzle_vector4_vector3 | swizzle | channel |\n",
"| ND_swizzle_vector4_vector4 | swizzle | channel |\n",
"| ND_tan_float | tan | math |\n",
"| ND_tan_vector2 | tan | math |\n",
"| ND_tan_vector3 | tan | math |\n",
"| ND_tan_vector4 | tan | math |\n",
"| ND_tangent_vector3 | tangent | geometric |\n",
"| ND_texcoord_vector2 | texcoord | geometric |\n",
"| ND_texcoord_vector3 | texcoord | geometric |\n",
"| ND_thin_surface | thin_surface | pbr |\n",
"| ND_tiledcircles_color3 | tiledcircles | procedural2d |\n",
"| ND_tiledcloverleafs_color3 | tiledcloverleafs | procedural2d |\n",
"| ND_tiledhexagons_color3 | tiledhexagons | procedural2d |\n",
"| ND_tiledimage_float | tiledimage | texture2d |\n",
"| ND_tiledimage_color3 | tiledimage | texture2d |\n",
"| ND_tiledimage_color4 | tiledimage | texture2d |\n",
"| ND_tiledimage_vector2 | tiledimage | texture2d |\n",
"| ND_tiledimage_vector3 | tiledimage | texture2d |\n",
"| ND_tiledimage_vector4 | tiledimage | texture2d |\n",
"| ND_time_float | time | application |\n",
"| ND_transformmatrix_vector2M3 | transformmatrix | math |\n",
"| ND_transformmatrix_vector3 | transformmatrix | math |\n",
"| ND_transformmatrix_vector3M4 | transformmatrix | math |\n",
"| ND_transformmatrix_vector4 | transformmatrix | math |\n",
"| ND_transformnormal_vector3 | transformnormal | math |\n",
"| ND_transformpoint_vector3 | transformpoint | math |\n",
"| ND_transformvector_vector3 | transformvector | math |\n",
"| ND_translucent_bsdf | translucent_bsdf | pbr |\n",
"| ND_transpose_matrix33 | transpose | math |\n",
"| ND_transpose_matrix44 | transpose | math |\n",
"| ND_trianglewave_float | trianglewave | math |\n",
"| ND_triplanarprojection_float | triplanarprojection | texture3d |\n",
"| ND_triplanarprojection_color3 | triplanarprojection | texture3d |\n",
"| ND_triplanarprojection_color4 | triplanarprojection | texture3d |\n",
"| ND_triplanarprojection_vector2 | triplanarprojection | texture3d |\n",
"| ND_triplanarprojection_vector3 | triplanarprojection | texture3d |\n",
"| ND_triplanarprojection_vector4 | triplanarprojection | texture3d |\n",
"| ND_unifiednoise2d_float | unifiednoise2d | procedural2d |\n",
"| ND_unifiednoise3d_float | unifiednoise3d | procedural3d |\n",
"| ND_uniform_edf | uniform_edf | pbr |\n",
"| ND_unpremult_color4 | unpremult | compositing |\n",
"| ND_viewdirection_vector3 | viewdirection | npr |\n",
"| ND_volume | volume | pbr |\n",
"| ND_volumematerial | volumematerial | material |\n",
"| ND_worleynoise2d_float | worleynoise2d | procedural2d |\n",
"| ND_worleynoise2d_vector2 | worleynoise2d | procedural2d |\n",
"| ND_worleynoise2d_vector3 | worleynoise2d | procedural2d |\n",
"| ND_worleynoise3d_float | worleynoise3d | procedural3d |\n",
"| ND_worleynoise3d_vector2 | worleynoise3d | procedural3d |\n",
"| ND_worleynoise3d_vector3 | worleynoise3d | procedural3d |\n",
"\n",
" \n"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Find out what new definitions have been added.\n",
"# Cache common definitions in `compareDetails` for further comparison.\n",
"compareDetails = []\n",
"newNodeDefs = []\n",
"for nodeDef in currNodeDefs:\n",
" if nodeDef.getName() not in otherNodeDefSet:\n",
" newNodeDefs.append(nodeDef)\n",
" else:\n",
" # Cache these two for more comparison\n",
" otherNodeDef = otherNodeDefSet[nodeDef.getName()]\n",
" compareDetails.append( [otherNodeDef, nodeDef] )\n",
"\n",
"text = ''\n",
"if newNodeDefs:\n",
" newNodeDefs = sorted(newNodeDefs, key=lambda x: x.getNodeString())\n",
" text = text + '| Name | Category | NodeGroup |\\n'\n",
" text = text + '| :--- | :--- | :---| \\n'\n",
" for nd in newNodeDefs:\n",
" text = text + '| %s | %s | %s |\\n' % (nd.getNodeString(), nd.getName(), nd.getNodeString(), nd.getNodeGroup())\n",
"\n",
" delta = '%d node definitions added. (Sorted by category)' % len(newNodeDefs)\n",
" text = '' + delta + '
\\n\\n' + text + '\\n' + ' \\n' \n",
" display_markdown(text, raw=True)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We print out the category of these new definitions. It is possible that new categories of nodes have been added\n",
"in addition to adding new variants on existing categories.\n",
"\n",
"As there is no formal list of such categories, a check needs to be made by scanning all definitions. "
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"data": {
"text/markdown": [
"200 new node categories found
\n",
"\n",
"| Node category | Node group | Type |\n",
"| --- | --- | --- |\n",
"| [LamaAdd](../documents/definitions/LamaAdd.html) | pbr | EDF |\n",
"| [LamaConductor](../documents/definitions/LamaConductor.html) | pbr | BSDF |\n",
"| [LamaDielectric](../documents/definitions/LamaDielectric.html) | pbr | BSDF |\n",
"| [LamaDiffuse](../documents/definitions/LamaDiffuse.html) | pbr | BSDF |\n",
"| [LamaEmission](../documents/definitions/LamaEmission.html) | pbr | EDF |\n",
"| [LamaLayer](../documents/definitions/LamaLayer.html) | pbr | BSDF |\n",
"| [LamaMix](../documents/definitions/LamaMix.html) | pbr | EDF |\n",
"| [LamaSSS](../documents/definitions/LamaSSS.html) | pbr | BSDF |\n",
"| [LamaSheen](../documents/definitions/LamaSheen.html) | pbr | BSDF |\n",
"| [LamaTranslucent](../documents/definitions/LamaTranslucent.html) | pbr | BSDF |\n",
"| [UsdPreviewSurface](../documents/definitions/UsdPreviewSurface.html) | pbr | surfaceshader |\n",
"| [UsdPrimvarReader](../documents/definitions/UsdPrimvarReader.html) | geometric | vector4 |\n",
"| [UsdTransform2d](../documents/definitions/UsdTransform2d.html) | math | vector2 |\n",
"| [UsdUVTexture](../documents/definitions/UsdUVTexture.html) | texture2d | multioutput |\n",
"| [absorption_vdf](../documents/definitions/absorption_vdf.html) | pbr | VDF |\n",
"| [absval](../documents/definitions/absval.html) | math | vector4 |\n",
"| [acescg_to_lin_rec709](../documents/definitions/acescg_to_lin_rec709.html) | colortransform | color4 |\n",
"| [acos](../documents/definitions/acos.html) | math | vector4 |\n",
"| [add](../documents/definitions/add.html) | math | matrix44 |\n",
"| [adobergb_to_lin_rec709](../documents/definitions/adobergb_to_lin_rec709.html) | colortransform | color4 |\n",
"| [ambientocclusion](../documents/definitions/ambientocclusion.html) | global | float |\n",
"| [anisotropic_vdf](../documents/definitions/anisotropic_vdf.html) | pbr | VDF |\n",
"| [artistic_ior](../documents/definitions/artistic_ior.html) | pbr | multioutput |\n",
"| [asin](../documents/definitions/asin.html) | math | vector4 |\n",
"| [atan2](../documents/definitions/atan2.html) | math | vector4 |\n",
"| [bitangent](../documents/definitions/bitangent.html) | geometric | vector3 |\n",
"| [blackbody](../documents/definitions/blackbody.html) | pbr | color3 |\n",
"| [blur](../documents/definitions/blur.html) | convolution2d | vector4 |\n",
"| [bump](../documents/definitions/bump.html) | geometric | vector3 |\n",
"| [burley_diffuse_bsdf](../documents/definitions/burley_diffuse_bsdf.html) | pbr | BSDF |\n",
"| [burn](../documents/definitions/burn.html) | compositing | color4 |\n",
"| [ceil](../documents/definitions/ceil.html) | math | integer |\n",
"| [cellnoise2d](../documents/definitions/cellnoise2d.html) | procedural2d | float |\n",
"| [cellnoise3d](../documents/definitions/cellnoise3d.html) | procedural3d | float |\n",
"| [checkerboard](../documents/definitions/checkerboard.html) | procedural2d | color3 |\n",
"| [circle](../documents/definitions/circle.html) | procedural2d | float |\n",
"| [clamp](../documents/definitions/clamp.html) | math | vector4 |\n",
"| [cloverleaf](../documents/definitions/cloverleaf.html) | procedural2d | float |\n",
"| [colorcorrect](../documents/definitions/colorcorrect.html) | adjustment | color4 |\n",
"| [combine2](../documents/definitions/combine2.html) | channel | vector4 |\n",
"| [combine3](../documents/definitions/combine3.html) | channel | vector3 |\n",
"| [combine4](../documents/definitions/combine4.html) | channel | vector4 |\n",
"| [conductor_bsdf](../documents/definitions/conductor_bsdf.html) | pbr | BSDF |\n",
"| [conical_edf](../documents/definitions/conical_edf.html) | pbr | EDF |\n",
"| [constant](../documents/definitions/constant.html) | procedural | filename |\n",
"| [contrast](../documents/definitions/contrast.html) | adjustment | vector4 |\n",
"| [convert](../documents/definitions/convert.html) | shader | surfaceshader |\n",
"| [cos](../documents/definitions/cos.html) | math | vector4 |\n",
"| [creatematrix](../documents/definitions/creatematrix.html) | math | matrix44 |\n",
"| [crosshatch](../documents/definitions/crosshatch.html) | procedural2d | color3 |\n",
"| [crossproduct](../documents/definitions/crossproduct.html) | math | vector3 |\n",
"| [curveadjust](../documents/definitions/curveadjust.html) | adjustment | vector4 |\n",
"| [determinant](../documents/definitions/determinant.html) | math | float |\n",
"| [dielectric_bsdf](../documents/definitions/dielectric_bsdf.html) | pbr | BSDF |\n",
"| [difference](../documents/definitions/difference.html) | compositing | color4 |\n",
"| [directional_light](../documents/definitions/directional_light.html) | light | lightshader |\n",
"| [disjointover](../documents/definitions/disjointover.html) | compositing | color4 |\n",
"| [disney_brdf_2012](../documents/definitions/disney_brdf_2012.html) | pbr | surfaceshader |\n",
"| [disney_bsdf_2015](../documents/definitions/disney_bsdf_2015.html) | pbr | surfaceshader |\n",
"| [displacement](../documents/definitions/displacement.html) | pbr | displacementshader |\n",
"| [distance](../documents/definitions/distance.html) | math | float |\n",
"| [divide](../documents/definitions/divide.html) | math | vector4 |\n",
"| [dodge](../documents/definitions/dodge.html) | compositing | color4 |\n",
"| [dot](../documents/definitions/dot.html) | organization | lightshader |\n",
"| [dotproduct](../documents/definitions/dotproduct.html) | math | float |\n",
"| [exp](../documents/definitions/exp.html) | math | vector4 |\n",
"| [extract](../documents/definitions/extract.html) | channel | float |\n",
"| [facingratio](../documents/definitions/facingratio.html) | npr | float |\n",
"| [floor](../documents/definitions/floor.html) | math | integer |\n",
"| [fractal3d](../documents/definitions/fractal3d.html) | procedural3d | vector4 |\n",
"| [frame](../documents/definitions/frame.html) | application | float |\n",
"| [g18_rec709_to_lin_rec709](../documents/definitions/g18_rec709_to_lin_rec709.html) | colortransform | color4 |\n",
"| [g22_ap1_to_lin_rec709](../documents/definitions/g22_ap1_to_lin_rec709.html) | colortransform | color4 |\n",
"| [g22_rec709_to_lin_rec709](../documents/definitions/g22_rec709_to_lin_rec709.html) | colortransform | color4 |\n",
"| [generalized_schlick_bsdf](../documents/definitions/generalized_schlick_bsdf.html) | pbr | BSDF |\n",
"| [generalized_schlick_edf](../documents/definitions/generalized_schlick_edf.html) | pbr | EDF |\n",
"| [geomcolor](../documents/definitions/geomcolor.html) | geometric | color4 |\n",
"| [geompropvalue](../documents/definitions/geompropvalue.html) | geometric | vector4 |\n",
"| [glossiness_anisotropy](../documents/definitions/glossiness_anisotropy.html) | pbr | vector2 |\n",
"| [gltf_colorimage](../documents/definitions/gltf_colorimage.html) | texture2d | multioutput |\n",
"| [gltf_image](../documents/definitions/gltf_image.html) | texture2d | vector3 |\n",
"| [gltf_iridescence_thickness](../documents/definitions/gltf_iridescence_thickness.html) | texture2d | float |\n",
"| [gltf_normalmap](../documents/definitions/gltf_normalmap.html) | texture2d | vector3 |\n",
"| [gltf_pbr](../documents/definitions/gltf_pbr.html) | pbr | surfaceshader |\n",
"| [gooch_shade](../documents/definitions/gooch_shade.html) | npr | color3 |\n",
"| [grid](../documents/definitions/grid.html) | procedural2d | color3 |\n",
"| [heighttonormal](../documents/definitions/heighttonormal.html) | convolution2d | vector3 |\n",
"| [hexagon](../documents/definitions/hexagon.html) | procedural2d | float |\n",
"| [hsvadjust](../documents/definitions/hsvadjust.html) | adjustment | color4 |\n",
"| [hsvtorgb](../documents/definitions/hsvtorgb.html) | adjustment | color4 |\n",
"| [ifequal](../documents/definitions/ifequal.html) | conditional | vector4 |\n",
"| [ifgreater](../documents/definitions/ifgreater.html) | conditional | vector4 |\n",
"| [ifgreatereq](../documents/definitions/ifgreatereq.html) | conditional | vector4 |\n",
"| [image](../documents/definitions/image.html) | texture2d | vector4 |\n",
"| [in](../documents/definitions/in.html) | compositing | color4 |\n",
"| [inside](../documents/definitions/inside.html) | compositing | color4 |\n",
"| [invert](../documents/definitions/invert.html) | math | vector4 |\n",
"| [invertmatrix](../documents/definitions/invertmatrix.html) | math | matrix44 |\n",
"| [layer](../documents/definitions/layer.html) | pbr | BSDF |\n",
"| [light](../documents/definitions/light.html) | pbr | lightshader |\n",
"| [lin_adobergb_to_lin_rec709](../documents/definitions/lin_adobergb_to_lin_rec709.html) | colortransform | color4 |\n",
"| [lin_displayp3_to_lin_rec709](../documents/definitions/lin_displayp3_to_lin_rec709.html) | colortransform | color4 |\n",
"| [line](../documents/definitions/line.html) | procedural2d | float |\n",
"| [ln](../documents/definitions/ln.html) | math | vector4 |\n",
"| [luminance](../documents/definitions/luminance.html) | adjustment | color4 |\n",
"| [magnitude](../documents/definitions/magnitude.html) | math | float |\n",
"| [mask](../documents/definitions/mask.html) | compositing | color4 |\n",
"| [matte](../documents/definitions/matte.html) | compositing | color4 |\n",
"| [max](../documents/definitions/max.html) | math | vector4 |\n",
"| [measured_edf](../documents/definitions/measured_edf.html) | pbr | EDF |\n",
"| [min](../documents/definitions/min.html) | math | vector4 |\n",
"| [minus](../documents/definitions/minus.html) | compositing | color4 |\n",
"| [mix](../documents/definitions/mix.html) | compositing | volumeshader |\n",
"| [modulo](../documents/definitions/modulo.html) | math | vector4 |\n",
"| [multiply](../documents/definitions/multiply.html) | math | vector4 |\n",
"| [noise2d](../documents/definitions/noise2d.html) | procedural2d | vector4 |\n",
"| [noise3d](../documents/definitions/noise3d.html) | procedural3d | vector4 |\n",
"| [normal](../documents/definitions/normal.html) | geometric | vector3 |\n",
"| [normalize](../documents/definitions/normalize.html) | math | vector4 |\n",
"| [normalmap](../documents/definitions/normalmap.html) | math | vector3 |\n",
"| [open_pbr_surface](../documents/definitions/open_pbr_surface.html) | pbr | surfaceshader |\n",
"| [oren_nayar_diffuse_bsdf](../documents/definitions/oren_nayar_diffuse_bsdf.html) | pbr | BSDF |\n",
"| [out](../documents/definitions/out.html) | compositing | color4 |\n",
"| [outside](../documents/definitions/outside.html) | compositing | color4 |\n",
"| [over](../documents/definitions/over.html) | compositing | color4 |\n",
"| [overlay](../documents/definitions/overlay.html) | compositing | color4 |\n",
"| [place2d](../documents/definitions/place2d.html) | math | vector2 |\n",
"| [plus](../documents/definitions/plus.html) | compositing | color4 |\n",
"| [point_light](../documents/definitions/point_light.html) | light | lightshader |\n",
"| [position](../documents/definitions/position.html) | geometric | vector3 |\n",
"| [power](../documents/definitions/power.html) | math | vector4 |\n",
"| [premult](../documents/definitions/premult.html) | compositing | color4 |\n",
"| [ramp4](../documents/definitions/ramp4.html) | procedural2d | vector4 |\n",
"| [ramplr](../documents/definitions/ramplr.html) | procedural2d | vector4 |\n",
"| [ramptb](../documents/definitions/ramptb.html) | procedural2d | vector4 |\n",
"| [randomcolor](../documents/definitions/randomcolor.html) | procedural3d | color3 |\n",
"| [randomfloat](../documents/definitions/randomfloat.html) | procedural | float |\n",
"| [range](../documents/definitions/range.html) | adjustment | vector4 |\n",
"| [rec709_display_to_lin_rec709](../documents/definitions/rec709_display_to_lin_rec709.html) | colortransform | color4 |\n",
"| [reflect](../documents/definitions/reflect.html) | math | vector3 |\n",
"| [refract](../documents/definitions/refract.html) | math | vector3 |\n",
"| [remap](../documents/definitions/remap.html) | adjustment | vector4 |\n",
"| [rgbtohsv](../documents/definitions/rgbtohsv.html) | adjustment | color4 |\n",
"| [rotate2d](../documents/definitions/rotate2d.html) | math | vector2 |\n",
"| [rotate3d](../documents/definitions/rotate3d.html) | math | vector3 |\n",
"| [roughness_anisotropy](../documents/definitions/roughness_anisotropy.html) | pbr | vector2 |\n",
"| [roughness_dual](../documents/definitions/roughness_dual.html) | pbr | vector2 |\n",
"| [round](../documents/definitions/round.html) | math | integer |\n",
"| [safepower](../documents/definitions/safepower.html) | math | vector4 |\n",
"| [saturate](../documents/definitions/saturate.html) | adjustment | color4 |\n",
"| [screen](../documents/definitions/screen.html) | compositing | color4 |\n",
"| [separate2](../documents/definitions/separate2.html) | channel | multioutput |\n",
"| [separate3](../documents/definitions/separate3.html) | channel | multioutput |\n",
"| [separate4](../documents/definitions/separate4.html) | channel | multioutput |\n",
"| [sheen_bsdf](../documents/definitions/sheen_bsdf.html) | pbr | BSDF |\n",
"| [sign](../documents/definitions/sign.html) | math | vector4 |\n",
"| [sin](../documents/definitions/sin.html) | math | vector4 |\n",
"| [smoothstep](../documents/definitions/smoothstep.html) | adjustment | vector4 |\n",
"| [splitlr](../documents/definitions/splitlr.html) | procedural2d | vector4 |\n",
"| [splittb](../documents/definitions/splittb.html) | procedural2d | vector4 |\n",
"| [spot_light](../documents/definitions/spot_light.html) | light | lightshader |\n",
"| [sqrt](../documents/definitions/sqrt.html) | math | vector4 |\n",
"| [srgb_displayp3_to_lin_rec709](../documents/definitions/srgb_displayp3_to_lin_rec709.html) | colortransform | color4 |\n",
"| [srgb_texture_to_lin_rec709](../documents/definitions/srgb_texture_to_lin_rec709.html) | colortransform | color4 |\n",
"| [standard_surface](../documents/definitions/standard_surface.html) | pbr | surfaceshader |\n",
"| [standard_surface_to_UsdPreviewSurface](../documents/definitions/standard_surface_to_UsdPreviewSurface.html) | translation | multioutput |\n",
"| [standard_surface_to_gltf_pbr](../documents/definitions/standard_surface_to_gltf_pbr.html) | translation | multioutput |\n",
"| [subsurface_bsdf](../documents/definitions/subsurface_bsdf.html) | pbr | BSDF |\n",
"| [subtract](../documents/definitions/subtract.html) | math | matrix44 |\n",
"| [surface](../documents/definitions/surface.html) | pbr | surfaceshader |\n",
"| [surface_unlit](../documents/definitions/surface_unlit.html) | shader | surfaceshader |\n",
"| [surfacematerial](../documents/definitions/surfacematerial.html) | material | material |\n",
"| [switch](../documents/definitions/switch.html) | conditional | vector4 |\n",
"| [swizzle](../documents/definitions/swizzle.html) | channel | vector4 |\n",
"| [tan](../documents/definitions/tan.html) | math | vector4 |\n",
"| [tangent](../documents/definitions/tangent.html) | geometric | vector3 |\n",
"| [texcoord](../documents/definitions/texcoord.html) | geometric | vector3 |\n",
"| [thin_surface](../documents/definitions/thin_surface.html) | pbr | surfaceshader |\n",
"| [tiledcircles](../documents/definitions/tiledcircles.html) | procedural2d | color3 |\n",
"| [tiledcloverleafs](../documents/definitions/tiledcloverleafs.html) | procedural2d | color3 |\n",
"| [tiledhexagons](../documents/definitions/tiledhexagons.html) | procedural2d | color3 |\n",
"| [tiledimage](../documents/definitions/tiledimage.html) | texture2d | vector4 |\n",
"| [time](../documents/definitions/time.html) | application | float |\n",
"| [transformmatrix](../documents/definitions/transformmatrix.html) | math | vector4 |\n",
"| [transformnormal](../documents/definitions/transformnormal.html) | math | vector3 |\n",
"| [transformpoint](../documents/definitions/transformpoint.html) | math | vector3 |\n",
"| [transformvector](../documents/definitions/transformvector.html) | math | vector3 |\n",
"| [translucent_bsdf](../documents/definitions/translucent_bsdf.html) | pbr | BSDF |\n",
"| [transpose](../documents/definitions/transpose.html) | math | matrix44 |\n",
"| [trianglewave](../documents/definitions/trianglewave.html) | math | float |\n",
"| [triplanarprojection](../documents/definitions/triplanarprojection.html) | texture3d | vector4 |\n",
"| [unifiednoise2d](../documents/definitions/unifiednoise2d.html) | procedural2d | float |\n",
"| [unifiednoise3d](../documents/definitions/unifiednoise3d.html) | procedural3d | float |\n",
"| [uniform_edf](../documents/definitions/uniform_edf.html) | pbr | EDF |\n",
"| [unpremult](../documents/definitions/unpremult.html) | compositing | color4 |\n",
"| [viewdirection](../documents/definitions/viewdirection.html) | npr | vector3 |\n",
"| [volume](../documents/definitions/volume.html) | pbr | volumeshader |\n",
"| [volumematerial](../documents/definitions/volumematerial.html) | material | material |\n",
"| [worleynoise2d](../documents/definitions/worleynoise2d.html) | procedural2d | vector3 |\n",
"| [worleynoise3d](../documents/definitions/worleynoise3d.html) | procedural3d | vector3 |\n",
"\n",
" \n"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"oldCategories = set()\n",
"for nodeDef in otherNodeDefs:\n",
" oldCategories.add(nodeDef.getNodeString())\n",
"# Sort old categories\n",
"oldCategories = sorted(oldCategories)\n",
"\n",
"newCategories = {}\n",
"for nodeDef in currNodeDefs:\n",
" newCategory = nodeDef.getNodeString()\n",
" if newCategory not in oldCategories:\n",
" newCategories[newCategory] = [ nodeDef.getNodeGroup(), nodeDef.getType() ] \n",
"\n",
"if newCategories:\n",
" text = '| Node category | Node group | Type |\\n'\n",
" text = text + '| --- | --- | --- |\\n' \n",
" sorted_keys = sorted(newCategories.keys())\n",
" sortedNewCategories = {}\n",
" for key in sorted_keys:\n",
" sortedNewCategories[key] = newCategories[key] \n",
" for category in sortedNewCategories:\n",
" text = text + '| [%s](../documents/definitions/%s.html) | %s | %s |\\n' % (category, category, newCategories[category][0], newCategories[category][1])\n",
"\n",
" delta = '%d new node categories found' % len(newCategories)\n",
" text = '' + delta + '
\\n\\n' + text + '\\n' + ' \\n' \n",
" display_markdown(text, raw=True)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Additional checks can be added for non definition elements such as geometry properties, and type definitions.\n",
"For this notebook we will concentrate on definitions only."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Detailed Element Comparison\n",
"\n",
"A comparison between 2 Elements in MaterialX is available the the equivalence operator `==` on an Element.\n",
"Though this will indicate if they differ, it provides no information as to what has differed.\n",
"\n",
"To accomplish this a new utility called `compareElements` has been written. In addition to providing explicit feedback on what has changed it will explicitly recurse to children by calling itself (instead of recursing using the `==` operator)\n",
"\n",
"The basic properities tested are:\n",
"1. Element category\n",
"2. Element attribute names\n",
"3. Elememt attribute values\n",
"4. Child Element count and what children were added or removed.\n",
"5. Recursing on child Elements. This would generally be Inputs and Outputs in the case of defintions.\n",
" If comparing graph elements (GraphElement), children could be child Nodes or graphs (GraphElements). \n",
"\n",
"> Note that this is the exact same logic as the `==` operator at time of writing. It can be extended as needed but the basic logic for checking attrbutes and then recursing on child Elements should remain the same. "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"A few additional utilities are added to support comparison logic:\n",
"\n",
"1. `getActiveChild()` and `getActiveChildren()` is added to support class inheritance. If this is not\n",
"considered then the children compared will only be the ones that are explicitly specified for a given class.\n",
"> Note that this would be a useful API to have and would complement the existing `getActiveInputs()`and `getActiveOutputs()` methods on an InterfaceElement. It is mostly useful for comparison of implementations and definitions where the interface is being\n",
"compared. It is less useful for a node instance since comparison logic is aimed at what is explicitly specified on\n",
"instances.\n",
"\n",
"2. `getActiveAttribute()` and `getActiveAttributes()` is added to support class inheritance when querying for attributes.\n",
"This serves the same purpose as the child methods to ensure inherited attributes are not missed.\n",
"\n",
"3. `diffLists()` is added to find the intersection and difference between two lists.\n",
"\n",
"Inheritance functions used the \n",
"traverseInheritance() API to traverse up the inheritance hierarchy."
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [],
"source": [
"def getActiveChild(element, name):\n",
" '''\n",
" Check if a child with a given name exists in the inheritance hierarchy for a given Element.\n",
" '''\n",
" for elem in element.traverseInheritance():\n",
" child = elem.getChild(name)\n",
" if child:\n",
" return child\n",
" return None\n",
"\n",
"def getActiveChildren(element):\n",
" '''\n",
" Get all children (included inherited ones) for a given Element.\n",
" '''\n",
" children = []\n",
" childset = set()\n",
" for elem in element.traverseInheritance():\n",
" for child in elem.getChildren():\n",
" if child.getName() not in childset:\n",
" children.append(child)\n",
" childset.add(child.getName())\n",
" return children \n",
"\n",
"def getActiveAttribute(element, name):\n",
" ''' \n",
" Check if an attribute with a given name exists in the inheritance hierarchy for a given Element.\n",
" '''\n",
" for elem in element.traverseInheritance():\n",
" child = elem.getAttribute(name)\n",
" if child:\n",
" return child\n",
" return None\n",
"\n",
"def getActiveAttributes(element):\n",
" '''\n",
" Get all attributes (included inherited ones) for a given Element.\n",
" '''\n",
" children = []\n",
" childset = set()\n",
" for elem in element.traverseInheritance():\n",
" for child in elem.getAttributeNames():\n",
" if child not in childset:\n",
" children.append(child)\n",
" childset.add(child)\n",
" return children\n",
"\n",
"def diffLists(list1, list2):\n",
" '''\n",
" Return items in either list1 or list2, and in both.\n",
" '''\n",
" if list1 != list2:\n",
" # Find items in list1 not in list2\n",
" onlyList1 = [item for item in list1 if item not in list2]\n",
" # Find items in list2 not in list1\n",
" onlyList2 = [item for item in list2 if item not in list1]\n",
" # Find items in both lists\n",
" common = [item for item in list1 if item in list2]\n",
" return onlyList1, onlyList2, common\n",
" return [], [], list1 "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Using these utility functions, the logic for `compareElements()` is as follows:\n",
"1. Check category between elements\n",
"2. Compare attributes"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [],
"source": [
"def compareElements(nd1, nd2, indent, log):\n",
" '''\n",
" Compare two elements and print any differences.\n",
"\n",
" Tests performed:\n",
" 1. Element category\n",
" 2. Element attribute names\n",
" 3. Elememt attribute values\n",
" 4. Child Element count and what children are present in one but not the other.\n",
" 5. Recursing on child Elements.\n",
" '''\n",
" if not nd1 or not nd2:\n",
" return True\n",
"\n",
" differs = False\n",
"\n",
" if nd1.getCategory() != nd2.getCategory():\n",
" log.append(indent + '- Category changed on: `%s` from `%s` to `%s`' % (nd1.getName(), nd2.getCategory(), nd1.getCategory()))\n",
" differs = True\n",
"\n",
" # Compare attributes.\n",
" # Note: This does not work properly with inheritance yet.\n",
" onlynd1, onlynd2, common = diffLists(getActiveAttributes(nd1), getActiveAttributes(nd2))\n",
" if len(onlynd1) > 0 or len(onlynd2) > 0:\n",
" for item in onlynd1:\n",
" log.append(indent + '- attribute: `%s`=( `%s` ) removed from: `%s`' % \n",
" ( item, getActiveAttribute(nd1, item), nd1.getName()))\n",
" for item in onlynd2:\n",
" log.append(indent + '- attribute: `%s`=( `%s` ) added to: `%s`' % \n",
" ( item, getActiveAttribute(nd2, item), nd2.getName()))\n",
" differs = True\n",
"\n",
" for attr in common:\n",
" if nd2.getAttribute(attr) != nd1.getAttribute(attr):\n",
" log.append(indent + ' - attribute: `%s` changed on `%s` from `( %s )` to `( %s )`' % \n",
" (attr, nd1.getName(), nd1.getAttribute(attr), nd2.getAttribute(attr)))\n",
" differs = True\n",
"\n",
" # Compare children. This also checks for children that inherited \n",
" c1 = [c.getName() for c in getActiveChildren(nd1)] \n",
" c2 = [c.getName() for c in getActiveChildren(nd2)]\n",
" if len(c1) != len(c2):\n",
" log.append(indent + '- Number of children on: `%s` changed from ( %s ) to ( %s )' % (nd1.getName(), len(c1), len(c2)))\n",
" differs = True\n",
"\n",
" # Get list of added, removed, and common children.\n",
" onlynd1, onlynd2, common = diffLists(c1, c2)\n",
"\n",
" # Log children that are removed. Emit value if is a value element.\n",
" for childName in onlynd1:\n",
" child = nd1.getChild(childName)\n",
" childName = child.getNamePath().removeprefix(child.getParent().getNamePath())\n",
" childType = child.getCategory()\n",
" if child.isA(mx.ValueElement):\n",
" log.append(indent + '- %s `%s` removed from `%s`. Value=( %s )' % (childType, childName, nd1.getNamePath(), child.getValueString()))\n",
" else:\n",
" log.append(indent + '- %s `%s` removed from `%s`' % (childType, childName, nd1.getNamePath()))\n",
" differs = True\n",
"\n",
" # Log child that are added. Emit value if is a value element.\n",
" for childName in onlynd2:\n",
" child = nd2.getChild(childName)\n",
" childName = child.getNamePath().removeprefix(child.getParent().getNamePath())\n",
" childType = child.getCategory()\n",
" if child.isA(mx.ValueElement):\n",
" log.append(indent + '- %s `%s` added to `%s`. Value=( %s )' % (childType, childName, nd2.getNamePath(), child.getValueString()))\n",
" else:\n",
" log.append(indent + '- %s `%s` add to `%s`' % (childType, childName, nd2.getNamePath()))\n",
" differs = True\n",
"\n",
" # Recurse on common children.\n",
" for childName in common:\n",
" c1child = getActiveChild(nd1, childName)\n",
" c2child = getActiveChild(nd2, childName)\n",
" if compareElements(c1child, c2child, indent, log):\n",
" differs = True\n",
"\n",
" return differs"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"> Note that unlike the C++ implementation children are not compared by index as the ordering may have changed between versions, thus resulting in false mismatches appearing. \n",
"\n",
"> **It may be useful to update the C++ implementation to be independent of ordering.**"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Given this utility, we scan through all the definitions which exist in both libraries.\n",
"\n",
"Some items of interest include changes in default value for inputs on some nodes, as well as addition of uniform qualifiers to some nodes."
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"data": {
"text/markdown": [
"0 definitions modified
\n",
"\n",
"| Name | Change |\n",
"| --- | --- |\n",
"\n",
" \n"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"#text = '### Compare old and current definitions in detail\\n'\n",
"text = '| Name | Change |\\n'\n",
"text = text + '| --- | --- |\\n'\n",
"\n",
"changed = 0\n",
"for item in compareDetails:\n",
" nd1 = item[0]\n",
" nd2 = item[1]\n",
" # Use the built in comparitor first\n",
" difference = (nd1 != nd2)\n",
" if difference:\n",
" # Perform details comparison\n",
" text = text + '| %s | ' % (nd1.getNodeString(), nd1.getName())\n",
" log = []\n",
" difference = compareElements(nd1, nd2, '', log) \n",
" if difference:\n",
" for line in log:\n",
" text = text + line + '
'\n",
" text = text + '|\\n'\n",
" changed = changed + 1\n",
"\n",
"delta = '%d definitions modified' % changed\n",
"text = '' + delta + '
\\n\\n' + text + '\\n' + ' \\n' \n",
"display_markdown(text, raw=True)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Target and Implementation Comparison\n",
"\n",
"Next we cover how add logic to see if implementations have been added or removed, or\n",
"if existing implementations have changed. This includes checking in the context of whether new `target`s have\n",
"been added or not."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Target Check\n",
"\n",
"The list of targets can be queried using `getTargetDefs()` on each librari respectively and the\n",
"compared."
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Old targets: []\n",
"Current targets: ['essl', 'genglsl', 'genmdl', 'genmsl', 'genosl']\n",
"New targets: ['genglsl', 'genmdl', 'genmsl', 'genosl', 'essl']\n"
]
}
],
"source": [
"## Get old targets\n",
"oldTargets = []\n",
"for target in otherLibrary.getTargetDefs():\n",
" oldTargets.append(target.getName())\n",
"print('Old targets:', oldTargets)\n",
"\n",
"## Check for new targets\n",
"currTargets = []\n",
"for target in currLibrary.getTargetDefs():\n",
" currTargets.append(target.getName())\n",
"print('Current targets:', currTargets)\n",
"\n",
"newTargets = list(set(currTargets) - set(oldTargets))\n",
"if newTargets:\n",
" print('New targets:', newTargets)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Implementation Check\n",
"\n",
"As with definitions, implementations can be compared, either in the context of their associated definition or independently. As an implementation is generally of no use unless it is used in a definition we will present the comparison logic using the latter context.\n",
"\n",
"#### Listing Implementations\n",
"\n",
"It can be useful to examine the available implementations based on what, if any, code generation `target``\n",
"they are associated with. \n",
"* If a implementation has no target then it is generally a node graph implementation but could also be generated programmatically via a common code generator which has no specific code target. For example the ShaderGenerator class implements non-target specific code generation for certain node types.\n",
"* Different targets may choose to implement logic differently than others. For example one may use a nodegraph, while another may use shader code, or generate the code programmatically.\n",
"* Some targets may not support implementations for certain nodes.\n",
"\n",
"A utility called `get_implementations()` scans for all implementations for a given `target``."
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [],
"source": [
"def get_implementations(nodedefs, target, allimpls):\n",
" '''\n",
" Build a dictionary of nodedefs and their corresponding implementations.\n",
" \n",
" The dictionary is keyed by the nodedef name and the value is a list of the implementation and \n",
" source file name.\n",
" '''\n",
" implementations = {}\n",
" for nodedef in nodedefs:\n",
" impl = nodedef.getImplementation(target)\n",
" # This may be a nodegraph or an implementation\n",
" if impl:\n",
" # Skip if already used\n",
" if impl.getName() in allimpls:\n",
" continue\n",
" # Skip if it's a nodegraph and target is not empty\n",
" if len(target) > 0 and impl.isA(mx.NodeGraph):\n",
" continue\n",
"\n",
" if target != 'essl':\n",
" allimpls.add(impl.getName())\n",
" implementations[nodedef.getName()] = [impl, mx.FilePath(impl.getSourceUri()).getBaseName()]\n",
" return implementations"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"This utility can then be used to scan through all `target`s for each library."
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"data": {
"text/markdown": [
"**Current Library Definitions / Implementations**\n"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/markdown": [
"540 shaders: essl
\n",
"\n",
"| Definition | Implementation | File |\n",
"| --- | --- | --- |\n",
"|ND_point_light|IM_point_light_genglsl|lights_genglsl_impl.mtlx\n",
"|ND_directional_light|IM_directional_light_genglsl|lights_genglsl_impl.mtlx\n",
"|ND_spot_light|IM_spot_light_genglsl|lights_genglsl_impl.mtlx\n",
"|ND_viewdirection_vector3|IM_viewdirection_vector3_genglsl|nprlib_genglsl_impl.mtlx\n",
"|ND_oren_nayar_diffuse_bsdf|IM_oren_nayar_diffuse_bsdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_burley_diffuse_bsdf|IM_burley_diffuse_bsdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_translucent_bsdf|IM_translucent_bsdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_dielectric_bsdf|IM_dielectric_bsdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_conductor_bsdf|IM_conductor_bsdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_generalized_schlick_bsdf|IM_generalized_schlick_bsdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_subsurface_bsdf|IM_subsurface_bsdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_sheen_bsdf|IM_sheen_bsdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_uniform_edf|IM_uniform_edf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_generalized_schlick_edf|IM_generalized_schlick_edf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_anisotropic_vdf|IM_anisotropic_vdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_surface|IM_surface_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_light|IM_light_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_displacement_float|IM_displacement_float_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_displacement_vector3|IM_displacement_vector3_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_layer_bsdf|IM_layer_bsdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_layer_vdf|IM_layer_vdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_mix_bsdf|IM_mix_bsdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_mix_edf|IM_mix_edf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_add_bsdf|IM_add_bsdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_add_edf|IM_add_edf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_multiply_bsdfC|IM_multiply_bsdfC_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_multiply_bsdfF|IM_multiply_bsdfF_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_multiply_edfC|IM_multiply_edfC_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_multiply_edfF|IM_multiply_edfF_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_roughness_anisotropy|IM_roughness_anisotropy_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_roughness_dual|IM_roughness_dual_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_blackbody|IM_blackbody_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_artistic_ior|IM_artistic_ior_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_surfacematerial|IM_surfacematerial_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_surface_unlit|IM_surface_unlit_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_image_float|IM_image_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_image_color3|IM_image_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_image_color4|IM_image_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_image_vector2|IM_image_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_image_vector3|IM_image_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_image_vector4|IM_image_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_constant_float|IM_constant_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_constant_color3|IM_constant_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_constant_color4|IM_constant_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_constant_vector2|IM_constant_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_constant_vector3|IM_constant_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_constant_vector4|IM_constant_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_constant_boolean|IM_constant_boolean_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_constant_integer|IM_constant_integer_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_constant_matrix33|IM_constant_matrix33_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_constant_matrix44|IM_constant_matrix44_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_constant_string|IM_constant_string_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_constant_filename|IM_constant_filename_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ramplr_float|IM_ramplr_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ramplr_color3|IM_ramplr_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ramplr_color4|IM_ramplr_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ramplr_vector2|IM_ramplr_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ramplr_vector3|IM_ramplr_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ramplr_vector4|IM_ramplr_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ramptb_float|IM_ramptb_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ramptb_color3|IM_ramptb_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ramptb_color4|IM_ramptb_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ramptb_vector2|IM_ramptb_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ramptb_vector3|IM_ramptb_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ramptb_vector4|IM_ramptb_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_splitlr_float|IM_splitlr_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_splitlr_color3|IM_splitlr_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_splitlr_color4|IM_splitlr_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_splitlr_vector2|IM_splitlr_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_splitlr_vector3|IM_splitlr_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_splitlr_vector4|IM_splitlr_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_splittb_float|IM_splittb_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_splittb_color3|IM_splittb_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_splittb_color4|IM_splittb_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_splittb_vector2|IM_splittb_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_splittb_vector3|IM_splittb_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_splittb_vector4|IM_splittb_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_noise2d_float|IM_noise2d_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_noise2d_vector2|IM_noise2d_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_noise2d_vector3|IM_noise2d_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_noise2d_vector4|IM_noise2d_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_noise3d_float|IM_noise3d_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_noise3d_vector2|IM_noise3d_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_noise3d_vector3|IM_noise3d_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_noise3d_vector4|IM_noise3d_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_fractal3d_float|IM_fractal3d_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_fractal3d_vector2|IM_fractal3d_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_fractal3d_vector3|IM_fractal3d_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_fractal3d_vector4|IM_fractal3d_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_cellnoise2d_float|IM_cellnoise2d_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_cellnoise3d_float|IM_cellnoise3d_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_worleynoise2d_float|IM_worleynoise2d_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_worleynoise2d_vector2|IM_worleynoise2d_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_worleynoise2d_vector3|IM_worleynoise2d_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_worleynoise3d_float|IM_worleynoise3d_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_worleynoise3d_vector2|IM_worleynoise3d_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_worleynoise3d_vector3|IM_worleynoise3d_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_position_vector3|IM_position_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_normal_vector3|IM_normal_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_tangent_vector3|IM_tangent_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_bitangent_vector3|IM_bitangent_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_texcoord_vector2|IM_texcoord_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_texcoord_vector3|IM_texcoord_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_geomcolor_float|IM_geomcolor_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_geomcolor_color3|IM_geomcolor_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_geomcolor_color4|IM_geomcolor_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_geompropvalue_integer|IM_geompropvalue_integer_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_geompropvalue_boolean|IM_geompropvalue_boolean_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_geompropvalue_string|IM_geompropvalue_string_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_geompropvalue_float|IM_geompropvalue_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_geompropvalue_color3|IM_geompropvalue_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_geompropvalue_color4|IM_geompropvalue_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_geompropvalue_vector2|IM_geompropvalue_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_geompropvalue_vector3|IM_geompropvalue_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_geompropvalue_vector4|IM_geompropvalue_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_frame_float|IM_frame_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_time_float|IM_time_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_float|IM_add_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_color3|IM_add_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_color4|IM_add_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_vector2|IM_add_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_vector3|IM_add_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_vector4|IM_add_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_matrix33|IM_add_matrix33_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_matrix44|IM_add_matrix44_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_color3FA|IM_add_color3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_color4FA|IM_add_color4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_vector2FA|IM_add_vector2FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_vector3FA|IM_add_vector3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_vector4FA|IM_add_vector4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_matrix33FA|IM_add_matrix33FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_matrix44FA|IM_add_matrix44FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_float|IM_subtract_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_color3|IM_subtract_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_color4|IM_subtract_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_vector2|IM_subtract_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_vector3|IM_subtract_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_vector4|IM_subtract_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_matrix33|IM_subtract_matrix33_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_matrix44|IM_subtract_matrix44_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_color3FA|IM_subtract_color3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_color4FA|IM_subtract_color4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_vector2FA|IM_subtract_vector2FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_vector3FA|IM_subtract_vector3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_vector4FA|IM_subtract_vector4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_matrix33FA|IM_subtract_matrix33FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_matrix44FA|IM_subtract_matrix44FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_float|IM_multiply_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_color3|IM_multiply_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_color4|IM_multiply_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_vector2|IM_multiply_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_vector3|IM_multiply_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_vector4|IM_multiply_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_matrix33|IM_multiply_matrix33_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_matrix44|IM_multiply_matrix44_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_color3FA|IM_multiply_color3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_color4FA|IM_multiply_color4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_vector2FA|IM_multiply_vector2FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_vector3FA|IM_multiply_vector3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_vector4FA|IM_multiply_vector4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_float|IM_divide_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_color3|IM_divide_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_color4|IM_divide_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_vector2|IM_divide_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_vector3|IM_divide_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_vector4|IM_divide_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_matrix33|IM_divide_matrix33_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_matrix44|IM_divide_matrix44_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_color3FA|IM_divide_color3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_color4FA|IM_divide_color4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_vector2FA|IM_divide_vector2FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_vector3FA|IM_divide_vector3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_vector4FA|IM_divide_vector4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_modulo_float|IM_modulo_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_modulo_color3|IM_modulo_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_modulo_color4|IM_modulo_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_modulo_vector2|IM_modulo_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_modulo_vector3|IM_modulo_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_modulo_vector4|IM_modulo_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_modulo_color3FA|IM_modulo_color3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_modulo_color4FA|IM_modulo_color4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_modulo_vector2FA|IM_modulo_vector2FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_modulo_vector3FA|IM_modulo_vector3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_modulo_vector4FA|IM_modulo_vector4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invert_float|IM_invert_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invert_color3|IM_invert_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invert_color4|IM_invert_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invert_vector2|IM_invert_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invert_vector3|IM_invert_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invert_vector4|IM_invert_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invert_color3FA|IM_invert_color3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invert_color4FA|IM_invert_color4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invert_vector2FA|IM_invert_vector2FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invert_vector3FA|IM_invert_vector3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invert_vector4FA|IM_invert_vector4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_absval_float|IM_absval_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_absval_color3|IM_absval_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_absval_color4|IM_absval_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_absval_vector2|IM_absval_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_absval_vector3|IM_absval_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_absval_vector4|IM_absval_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_floor_float|IM_floor_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_floor_color3|IM_floor_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_floor_color4|IM_floor_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_floor_vector2|IM_floor_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_floor_vector3|IM_floor_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_floor_vector4|IM_floor_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_floor_integer|IM_floor_integer_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ceil_float|IM_ceil_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ceil_color3|IM_ceil_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ceil_color4|IM_ceil_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ceil_vector2|IM_ceil_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ceil_vector3|IM_ceil_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ceil_vector4|IM_ceil_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ceil_integer|IM_ceil_integer_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_round_float|IM_round_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_round_color3|IM_round_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_round_color4|IM_round_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_round_vector2|IM_round_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_round_vector3|IM_round_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_round_vector4|IM_round_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_round_integer|IM_round_integer_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_power_float|IM_power_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_power_color3|IM_power_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_power_color4|IM_power_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_power_vector2|IM_power_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_power_vector3|IM_power_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_power_vector4|IM_power_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_power_color3FA|IM_power_color3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_power_color4FA|IM_power_color4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_power_vector2FA|IM_power_vector2FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_power_vector3FA|IM_power_vector3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_power_vector4FA|IM_power_vector4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sin_float|IM_sin_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_cos_float|IM_cos_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_tan_float|IM_tan_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_asin_float|IM_asin_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_acos_float|IM_acos_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_atan2_float|IM_atan2_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sin_vector2|IM_sin_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_cos_vector2|IM_cos_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_tan_vector2|IM_tan_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_asin_vector2|IM_asin_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_acos_vector2|IM_acos_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_atan2_vector2|IM_atan2_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sin_vector3|IM_sin_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_cos_vector3|IM_cos_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_tan_vector3|IM_tan_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_asin_vector3|IM_asin_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_acos_vector3|IM_acos_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_atan2_vector3|IM_atan2_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sin_vector4|IM_sin_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_cos_vector4|IM_cos_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_tan_vector4|IM_tan_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_asin_vector4|IM_asin_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_acos_vector4|IM_acos_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_atan2_vector4|IM_atan2_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sqrt_float|IM_sqrt_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ln_float|IM_ln_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_exp_float|IM_exp_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sqrt_vector2|IM_sqrt_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ln_vector2|IM_ln_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_exp_vector2|IM_exp_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sqrt_vector3|IM_sqrt_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ln_vector3|IM_ln_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_exp_vector3|IM_exp_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sqrt_vector4|IM_sqrt_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ln_vector4|IM_ln_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_exp_vector4|IM_exp_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sign_float|IM_sign_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sign_color3|IM_sign_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sign_color4|IM_sign_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sign_vector2|IM_sign_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sign_vector3|IM_sign_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sign_vector4|IM_sign_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_clamp_float|IM_clamp_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_clamp_color3|IM_clamp_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_clamp_color4|IM_clamp_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_clamp_vector2|IM_clamp_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_clamp_vector3|IM_clamp_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_clamp_vector4|IM_clamp_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_clamp_color3FA|IM_clamp_color3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_clamp_color4FA|IM_clamp_color4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_clamp_vector2FA|IM_clamp_vector2FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_clamp_vector3FA|IM_clamp_vector3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_clamp_vector4FA|IM_clamp_vector4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_min_float|IM_min_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_min_color3|IM_min_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_min_color4|IM_min_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_min_vector2|IM_min_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_min_vector3|IM_min_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_min_vector4|IM_min_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_min_color3FA|IM_min_color3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_min_color4FA|IM_min_color4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_min_vector2FA|IM_min_vector2FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_min_vector3FA|IM_min_vector3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_min_vector4FA|IM_min_vector4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_max_float|IM_max_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_max_color3|IM_max_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_max_color4|IM_max_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_max_vector2|IM_max_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_max_vector3|IM_max_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_max_vector4|IM_max_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_max_color3FA|IM_max_color3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_max_color4FA|IM_max_color4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_max_vector2FA|IM_max_vector2FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_max_vector3FA|IM_max_vector3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_max_vector4FA|IM_max_vector4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_normalize_vector2|IM_normalize_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_normalize_vector3|IM_normalize_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_normalize_vector4|IM_normalize_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_magnitude_vector2|IM_magnitude_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_magnitude_vector3|IM_magnitude_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_magnitude_vector4|IM_magnitude_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dotproduct_vector2|IM_dotproduct_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dotproduct_vector3|IM_dotproduct_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dotproduct_vector4|IM_dotproduct_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_crossproduct_vector3|IM_crossproduct_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_transformpoint_vector3|IM_transformpoint_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_transformvector_vector3|IM_transformvector_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_transformnormal_vector3|IM_transformnormal_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_transformmatrix_vector2M3|IM_transformmatrix_vector2M3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_transformmatrix_vector3|IM_transformmatrix_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_transformmatrix_vector3M4|IM_transformmatrix_vector3M4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_transformmatrix_vector4|IM_transformmatrix_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_normalmap_float|IM_normalmap_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_normalmap_vector2|IM_normalmap_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_transpose_matrix33|IM_transpose_matrix33_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_transpose_matrix44|IM_transpose_matrix44_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_determinant_matrix33|IM_determinant_matrix33_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_determinant_matrix44|IM_determinant_matrix44_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invertmatrix_matrix33|IM_invertmatrix_matrix33_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invertmatrix_matrix44|IM_invertmatrix_matrix44_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_rotate2d_vector2|IM_rotate2d_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_rotate3d_vector3|IM_rotate3d_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_remap_float|IM_remap_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_remap_color3|IM_remap_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_remap_color4|IM_remap_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_remap_vector2|IM_remap_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_remap_vector3|IM_remap_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_remap_vector4|IM_remap_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_remap_color3FA|IM_remap_color3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_remap_color4FA|IM_remap_color4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_remap_vector2FA|IM_remap_vector2FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_remap_vector3FA|IM_remap_vector3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_remap_vector4FA|IM_remap_vector4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_smoothstep_float|IM_smoothstep_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_smoothstep_vector2|IM_smoothstep_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_smoothstep_vector3|IM_smoothstep_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_smoothstep_vector4|IM_smoothstep_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_luminance_color3|IM_luminance_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_luminance_color4|IM_luminance_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_rgbtohsv_color3|IM_rgbtohsv_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_rgbtohsv_color4|IM_rgbtohsv_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_hsvtorgb_color3|IM_hsvtorgb_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_hsvtorgb_color4|IM_hsvtorgb_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_premult_color4|IM_premult_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_unpremult_color4|IM_unpremult_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_plus_float|IM_plus_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_plus_color3|IM_plus_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_plus_color4|IM_plus_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_minus_float|IM_minus_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_minus_color3|IM_minus_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_minus_color4|IM_minus_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_difference_float|IM_difference_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_difference_color3|IM_difference_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_difference_color4|IM_difference_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_burn_float|IM_burn_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_burn_color3|IM_burn_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_burn_color4|IM_burn_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dodge_float|IM_dodge_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dodge_color3|IM_dodge_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dodge_color4|IM_dodge_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_screen_float|IM_screen_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_screen_color3|IM_screen_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_screen_color4|IM_screen_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_disjointover_color4|IM_disjointover_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_in_color4|IM_in_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mask_color4|IM_mask_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_matte_color4|IM_matte_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_out_color4|IM_out_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_over_color4|IM_over_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_inside_float|IM_inside_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_inside_color3|IM_inside_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_inside_color4|IM_inside_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_outside_float|IM_outside_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_outside_color3|IM_outside_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_outside_color4|IM_outside_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mix_float|IM_mix_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mix_color3|IM_mix_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mix_color3_color3|IM_mix_color3_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mix_color4|IM_mix_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mix_color4_color4|IM_mix_color4_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mix_vector2|IM_mix_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mix_vector2_vector2|IM_mix_vector2_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mix_vector3|IM_mix_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mix_vector3_vector3|IM_mix_vector3_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mix_vector4|IM_mix_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mix_vector4_vector4|IM_mix_vector4_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mix_surfaceshader|IM_mix_surfaceshader_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreater_float|IM_ifgreater_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreater_color3|IM_ifgreater_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreater_color4|IM_ifgreater_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreater_vector2|IM_ifgreater_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreater_vector3|IM_ifgreater_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreater_vector4|IM_ifgreater_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreater_floatI|IM_ifgreater_floatI_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreater_color3I|IM_ifgreater_color3I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreater_color4I|IM_ifgreater_color4I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreater_vector2I|IM_ifgreater_vector2I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreater_vector3I|IM_ifgreater_vector3I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreater_vector4I|IM_ifgreater_vector4I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreatereq_float|IM_ifgreatereq_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreatereq_color3|IM_ifgreatereq_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreatereq_color4|IM_ifgreatereq_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreatereq_vector2|IM_ifgreatereq_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreatereq_vector3|IM_ifgreatereq_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreatereq_vector4|IM_ifgreatereq_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreatereq_floatI|IM_ifgreatereq_floatI_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreatereq_color3I|IM_ifgreatereq_color3I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreatereq_color4I|IM_ifgreatereq_color4I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreatereq_vector2I|IM_ifgreatereq_vector2I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreatereq_vector3I|IM_ifgreatereq_vector3I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreatereq_vector4I|IM_ifgreatereq_vector4I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_float|IM_ifequal_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_color3|IM_ifequal_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_color4|IM_ifequal_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_vector2|IM_ifequal_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_vector3|IM_ifequal_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_vector4|IM_ifequal_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_floatI|IM_ifequal_floatI_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_color3I|IM_ifequal_color3I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_color4I|IM_ifequal_color4I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_vector2I|IM_ifequal_vector2I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_vector3I|IM_ifequal_vector3I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_vector4I|IM_ifequal_vector4I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_floatB|IM_ifequal_floatB_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_color3B|IM_ifequal_color3B_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_color4B|IM_ifequal_color4B_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_vector2B|IM_ifequal_vector2B_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_vector3B|IM_ifequal_vector3B_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_vector4B|IM_ifequal_vector4B_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_switch_float|IM_switch_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_switch_color3|IM_switch_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_switch_color4|IM_switch_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_switch_vector2|IM_switch_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_switch_vector3|IM_switch_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_switch_vector4|IM_switch_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_switch_floatI|IM_switch_floatI_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_switch_color3I|IM_switch_color3I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_switch_color4I|IM_switch_color4I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_switch_vector2I|IM_switch_vector2I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_switch_vector3I|IM_switch_vector3I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_switch_vector4I|IM_switch_vector4I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_float_color3|IM_convert_float_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_float_color4|IM_convert_float_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_float_vector2|IM_convert_float_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_float_vector3|IM_convert_float_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_float_vector4|IM_convert_float_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_vector2_vector3|IM_convert_vector2_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_vector3_color3|IM_convert_vector3_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_vector3_vector2|IM_convert_vector3_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_vector3_vector4|IM_convert_vector3_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_vector4_color4|IM_convert_vector4_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_vector4_vector3|IM_convert_vector4_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_color3_vector3|IM_convert_color3_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_color4_vector4|IM_convert_color4_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_color3_color4|IM_convert_color3_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_color4_color3|IM_convert_color4_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_boolean_float|IM_convert_boolean_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_integer_float|IM_convert_integer_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_float_color3|IM_swizzle_float_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_float_color4|IM_swizzle_float_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_float_vector2|IM_swizzle_float_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_float_vector3|IM_swizzle_float_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_float_vector4|IM_swizzle_float_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_color3_float|IM_swizzle_color3_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_color3_color3|IM_swizzle_color3_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_color3_color4|IM_swizzle_color3_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_color3_vector2|IM_swizzle_color3_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_color3_vector3|IM_swizzle_color3_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_color3_vector4|IM_swizzle_color3_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_color4_float|IM_swizzle_color4_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_color4_color3|IM_swizzle_color4_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_color4_color4|IM_swizzle_color4_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_color4_vector2|IM_swizzle_color4_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_color4_vector3|IM_swizzle_color4_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_color4_vector4|IM_swizzle_color4_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector2_float|IM_swizzle_vector2_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector2_color3|IM_swizzle_vector2_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector2_color4|IM_swizzle_vector2_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector2_vector2|IM_swizzle_vector2_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector2_vector3|IM_swizzle_vector2_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector2_vector4|IM_swizzle_vector2_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector3_float|IM_swizzle_vector3_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector3_color3|IM_swizzle_vector3_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector3_color4|IM_swizzle_vector3_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector3_vector2|IM_swizzle_vector3_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector3_vector3|IM_swizzle_vector3_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector3_vector4|IM_swizzle_vector3_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector4_float|IM_swizzle_vector4_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector4_color3|IM_swizzle_vector4_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector4_color4|IM_swizzle_vector4_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector4_vector2|IM_swizzle_vector4_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector4_vector3|IM_swizzle_vector4_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector4_vector4|IM_swizzle_vector4_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_combine2_vector2|IM_combine2_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_combine2_color4CF|IM_combine2_color4CF_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_combine2_vector4VF|IM_combine2_vector4VF_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_combine2_vector4VV|IM_combine2_vector4VV_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_combine3_color3|IM_combine3_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_combine3_vector3|IM_combine3_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_combine4_color4|IM_combine4_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_combine4_vector4|IM_combine4_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_creatematrix_vector3_matrix33|IM_creatematrix_vector3_matrix33_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_creatematrix_vector3_matrix44|IM_creatematrix_vector3_matrix44_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_creatematrix_vector4_matrix44|IM_creatematrix_vector4_matrix44_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_blur_float|IM_blur_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_blur_color3|IM_blur_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_blur_color4|IM_blur_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_blur_vector2|IM_blur_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_blur_vector3|IM_blur_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_blur_vector4|IM_blur_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_heighttonormal_vector3|IM_heighttonormal_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_float|IM_dot_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_color3|IM_dot_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_color4|IM_dot_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_vector2|IM_dot_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_vector3|IM_dot_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_vector4|IM_dot_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_boolean|IM_dot_boolean_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_integer|IM_dot_integer_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_matrix33|IM_dot_matrix33_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_matrix44|IM_dot_matrix44_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_string|IM_dot_string_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_filename|IM_dot_filename_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_surfaceshader|IM_dot_surfaceshader_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_displacementshader|IM_dot_displacementshader_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_volumeshader|IM_dot_volumeshader_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_lightshader|IM_dot_lightshader_genglsl|stdlib_genglsl_impl.mtlx\n",
"\n",
" \n"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/markdown": [
"540 shaders: genglsl
\n",
"\n",
"| Definition | Implementation | File |\n",
"| --- | --- | --- |\n",
"|ND_point_light|IM_point_light_genglsl|lights_genglsl_impl.mtlx\n",
"|ND_directional_light|IM_directional_light_genglsl|lights_genglsl_impl.mtlx\n",
"|ND_spot_light|IM_spot_light_genglsl|lights_genglsl_impl.mtlx\n",
"|ND_viewdirection_vector3|IM_viewdirection_vector3_genglsl|nprlib_genglsl_impl.mtlx\n",
"|ND_oren_nayar_diffuse_bsdf|IM_oren_nayar_diffuse_bsdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_burley_diffuse_bsdf|IM_burley_diffuse_bsdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_translucent_bsdf|IM_translucent_bsdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_dielectric_bsdf|IM_dielectric_bsdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_conductor_bsdf|IM_conductor_bsdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_generalized_schlick_bsdf|IM_generalized_schlick_bsdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_subsurface_bsdf|IM_subsurface_bsdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_sheen_bsdf|IM_sheen_bsdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_uniform_edf|IM_uniform_edf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_generalized_schlick_edf|IM_generalized_schlick_edf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_anisotropic_vdf|IM_anisotropic_vdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_surface|IM_surface_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_light|IM_light_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_displacement_float|IM_displacement_float_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_displacement_vector3|IM_displacement_vector3_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_layer_bsdf|IM_layer_bsdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_layer_vdf|IM_layer_vdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_mix_bsdf|IM_mix_bsdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_mix_edf|IM_mix_edf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_add_bsdf|IM_add_bsdf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_add_edf|IM_add_edf_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_multiply_bsdfC|IM_multiply_bsdfC_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_multiply_bsdfF|IM_multiply_bsdfF_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_multiply_edfC|IM_multiply_edfC_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_multiply_edfF|IM_multiply_edfF_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_roughness_anisotropy|IM_roughness_anisotropy_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_roughness_dual|IM_roughness_dual_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_blackbody|IM_blackbody_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_artistic_ior|IM_artistic_ior_genglsl|pbrlib_genglsl_impl.mtlx\n",
"|ND_surfacematerial|IM_surfacematerial_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_surface_unlit|IM_surface_unlit_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_image_float|IM_image_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_image_color3|IM_image_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_image_color4|IM_image_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_image_vector2|IM_image_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_image_vector3|IM_image_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_image_vector4|IM_image_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_constant_float|IM_constant_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_constant_color3|IM_constant_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_constant_color4|IM_constant_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_constant_vector2|IM_constant_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_constant_vector3|IM_constant_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_constant_vector4|IM_constant_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_constant_boolean|IM_constant_boolean_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_constant_integer|IM_constant_integer_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_constant_matrix33|IM_constant_matrix33_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_constant_matrix44|IM_constant_matrix44_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_constant_string|IM_constant_string_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_constant_filename|IM_constant_filename_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ramplr_float|IM_ramplr_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ramplr_color3|IM_ramplr_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ramplr_color4|IM_ramplr_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ramplr_vector2|IM_ramplr_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ramplr_vector3|IM_ramplr_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ramplr_vector4|IM_ramplr_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ramptb_float|IM_ramptb_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ramptb_color3|IM_ramptb_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ramptb_color4|IM_ramptb_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ramptb_vector2|IM_ramptb_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ramptb_vector3|IM_ramptb_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ramptb_vector4|IM_ramptb_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_splitlr_float|IM_splitlr_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_splitlr_color3|IM_splitlr_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_splitlr_color4|IM_splitlr_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_splitlr_vector2|IM_splitlr_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_splitlr_vector3|IM_splitlr_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_splitlr_vector4|IM_splitlr_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_splittb_float|IM_splittb_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_splittb_color3|IM_splittb_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_splittb_color4|IM_splittb_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_splittb_vector2|IM_splittb_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_splittb_vector3|IM_splittb_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_splittb_vector4|IM_splittb_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_noise2d_float|IM_noise2d_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_noise2d_vector2|IM_noise2d_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_noise2d_vector3|IM_noise2d_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_noise2d_vector4|IM_noise2d_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_noise3d_float|IM_noise3d_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_noise3d_vector2|IM_noise3d_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_noise3d_vector3|IM_noise3d_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_noise3d_vector4|IM_noise3d_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_fractal3d_float|IM_fractal3d_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_fractal3d_vector2|IM_fractal3d_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_fractal3d_vector3|IM_fractal3d_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_fractal3d_vector4|IM_fractal3d_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_cellnoise2d_float|IM_cellnoise2d_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_cellnoise3d_float|IM_cellnoise3d_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_worleynoise2d_float|IM_worleynoise2d_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_worleynoise2d_vector2|IM_worleynoise2d_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_worleynoise2d_vector3|IM_worleynoise2d_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_worleynoise3d_float|IM_worleynoise3d_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_worleynoise3d_vector2|IM_worleynoise3d_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_worleynoise3d_vector3|IM_worleynoise3d_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_position_vector3|IM_position_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_normal_vector3|IM_normal_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_tangent_vector3|IM_tangent_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_bitangent_vector3|IM_bitangent_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_texcoord_vector2|IM_texcoord_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_texcoord_vector3|IM_texcoord_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_geomcolor_float|IM_geomcolor_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_geomcolor_color3|IM_geomcolor_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_geomcolor_color4|IM_geomcolor_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_geompropvalue_integer|IM_geompropvalue_integer_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_geompropvalue_boolean|IM_geompropvalue_boolean_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_geompropvalue_string|IM_geompropvalue_string_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_geompropvalue_float|IM_geompropvalue_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_geompropvalue_color3|IM_geompropvalue_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_geompropvalue_color4|IM_geompropvalue_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_geompropvalue_vector2|IM_geompropvalue_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_geompropvalue_vector3|IM_geompropvalue_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_geompropvalue_vector4|IM_geompropvalue_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_frame_float|IM_frame_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_time_float|IM_time_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_float|IM_add_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_color3|IM_add_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_color4|IM_add_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_vector2|IM_add_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_vector3|IM_add_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_vector4|IM_add_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_matrix33|IM_add_matrix33_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_matrix44|IM_add_matrix44_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_color3FA|IM_add_color3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_color4FA|IM_add_color4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_vector2FA|IM_add_vector2FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_vector3FA|IM_add_vector3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_vector4FA|IM_add_vector4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_matrix33FA|IM_add_matrix33FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_add_matrix44FA|IM_add_matrix44FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_float|IM_subtract_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_color3|IM_subtract_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_color4|IM_subtract_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_vector2|IM_subtract_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_vector3|IM_subtract_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_vector4|IM_subtract_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_matrix33|IM_subtract_matrix33_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_matrix44|IM_subtract_matrix44_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_color3FA|IM_subtract_color3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_color4FA|IM_subtract_color4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_vector2FA|IM_subtract_vector2FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_vector3FA|IM_subtract_vector3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_vector4FA|IM_subtract_vector4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_matrix33FA|IM_subtract_matrix33FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_subtract_matrix44FA|IM_subtract_matrix44FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_float|IM_multiply_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_color3|IM_multiply_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_color4|IM_multiply_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_vector2|IM_multiply_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_vector3|IM_multiply_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_vector4|IM_multiply_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_matrix33|IM_multiply_matrix33_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_matrix44|IM_multiply_matrix44_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_color3FA|IM_multiply_color3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_color4FA|IM_multiply_color4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_vector2FA|IM_multiply_vector2FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_vector3FA|IM_multiply_vector3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_multiply_vector4FA|IM_multiply_vector4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_float|IM_divide_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_color3|IM_divide_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_color4|IM_divide_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_vector2|IM_divide_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_vector3|IM_divide_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_vector4|IM_divide_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_matrix33|IM_divide_matrix33_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_matrix44|IM_divide_matrix44_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_color3FA|IM_divide_color3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_color4FA|IM_divide_color4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_vector2FA|IM_divide_vector2FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_vector3FA|IM_divide_vector3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_divide_vector4FA|IM_divide_vector4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_modulo_float|IM_modulo_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_modulo_color3|IM_modulo_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_modulo_color4|IM_modulo_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_modulo_vector2|IM_modulo_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_modulo_vector3|IM_modulo_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_modulo_vector4|IM_modulo_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_modulo_color3FA|IM_modulo_color3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_modulo_color4FA|IM_modulo_color4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_modulo_vector2FA|IM_modulo_vector2FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_modulo_vector3FA|IM_modulo_vector3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_modulo_vector4FA|IM_modulo_vector4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invert_float|IM_invert_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invert_color3|IM_invert_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invert_color4|IM_invert_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invert_vector2|IM_invert_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invert_vector3|IM_invert_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invert_vector4|IM_invert_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invert_color3FA|IM_invert_color3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invert_color4FA|IM_invert_color4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invert_vector2FA|IM_invert_vector2FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invert_vector3FA|IM_invert_vector3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invert_vector4FA|IM_invert_vector4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_absval_float|IM_absval_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_absval_color3|IM_absval_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_absval_color4|IM_absval_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_absval_vector2|IM_absval_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_absval_vector3|IM_absval_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_absval_vector4|IM_absval_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_floor_float|IM_floor_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_floor_color3|IM_floor_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_floor_color4|IM_floor_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_floor_vector2|IM_floor_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_floor_vector3|IM_floor_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_floor_vector4|IM_floor_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_floor_integer|IM_floor_integer_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ceil_float|IM_ceil_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ceil_color3|IM_ceil_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ceil_color4|IM_ceil_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ceil_vector2|IM_ceil_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ceil_vector3|IM_ceil_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ceil_vector4|IM_ceil_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ceil_integer|IM_ceil_integer_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_round_float|IM_round_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_round_color3|IM_round_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_round_color4|IM_round_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_round_vector2|IM_round_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_round_vector3|IM_round_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_round_vector4|IM_round_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_round_integer|IM_round_integer_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_power_float|IM_power_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_power_color3|IM_power_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_power_color4|IM_power_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_power_vector2|IM_power_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_power_vector3|IM_power_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_power_vector4|IM_power_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_power_color3FA|IM_power_color3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_power_color4FA|IM_power_color4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_power_vector2FA|IM_power_vector2FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_power_vector3FA|IM_power_vector3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_power_vector4FA|IM_power_vector4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sin_float|IM_sin_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_cos_float|IM_cos_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_tan_float|IM_tan_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_asin_float|IM_asin_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_acos_float|IM_acos_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_atan2_float|IM_atan2_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sin_vector2|IM_sin_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_cos_vector2|IM_cos_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_tan_vector2|IM_tan_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_asin_vector2|IM_asin_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_acos_vector2|IM_acos_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_atan2_vector2|IM_atan2_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sin_vector3|IM_sin_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_cos_vector3|IM_cos_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_tan_vector3|IM_tan_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_asin_vector3|IM_asin_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_acos_vector3|IM_acos_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_atan2_vector3|IM_atan2_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sin_vector4|IM_sin_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_cos_vector4|IM_cos_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_tan_vector4|IM_tan_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_asin_vector4|IM_asin_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_acos_vector4|IM_acos_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_atan2_vector4|IM_atan2_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sqrt_float|IM_sqrt_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ln_float|IM_ln_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_exp_float|IM_exp_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sqrt_vector2|IM_sqrt_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ln_vector2|IM_ln_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_exp_vector2|IM_exp_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sqrt_vector3|IM_sqrt_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ln_vector3|IM_ln_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_exp_vector3|IM_exp_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sqrt_vector4|IM_sqrt_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ln_vector4|IM_ln_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_exp_vector4|IM_exp_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sign_float|IM_sign_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sign_color3|IM_sign_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sign_color4|IM_sign_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sign_vector2|IM_sign_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sign_vector3|IM_sign_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_sign_vector4|IM_sign_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_clamp_float|IM_clamp_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_clamp_color3|IM_clamp_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_clamp_color4|IM_clamp_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_clamp_vector2|IM_clamp_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_clamp_vector3|IM_clamp_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_clamp_vector4|IM_clamp_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_clamp_color3FA|IM_clamp_color3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_clamp_color4FA|IM_clamp_color4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_clamp_vector2FA|IM_clamp_vector2FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_clamp_vector3FA|IM_clamp_vector3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_clamp_vector4FA|IM_clamp_vector4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_min_float|IM_min_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_min_color3|IM_min_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_min_color4|IM_min_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_min_vector2|IM_min_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_min_vector3|IM_min_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_min_vector4|IM_min_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_min_color3FA|IM_min_color3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_min_color4FA|IM_min_color4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_min_vector2FA|IM_min_vector2FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_min_vector3FA|IM_min_vector3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_min_vector4FA|IM_min_vector4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_max_float|IM_max_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_max_color3|IM_max_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_max_color4|IM_max_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_max_vector2|IM_max_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_max_vector3|IM_max_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_max_vector4|IM_max_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_max_color3FA|IM_max_color3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_max_color4FA|IM_max_color4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_max_vector2FA|IM_max_vector2FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_max_vector3FA|IM_max_vector3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_max_vector4FA|IM_max_vector4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_normalize_vector2|IM_normalize_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_normalize_vector3|IM_normalize_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_normalize_vector4|IM_normalize_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_magnitude_vector2|IM_magnitude_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_magnitude_vector3|IM_magnitude_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_magnitude_vector4|IM_magnitude_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dotproduct_vector2|IM_dotproduct_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dotproduct_vector3|IM_dotproduct_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dotproduct_vector4|IM_dotproduct_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_crossproduct_vector3|IM_crossproduct_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_transformpoint_vector3|IM_transformpoint_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_transformvector_vector3|IM_transformvector_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_transformnormal_vector3|IM_transformnormal_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_transformmatrix_vector2M3|IM_transformmatrix_vector2M3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_transformmatrix_vector3|IM_transformmatrix_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_transformmatrix_vector3M4|IM_transformmatrix_vector3M4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_transformmatrix_vector4|IM_transformmatrix_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_normalmap_float|IM_normalmap_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_normalmap_vector2|IM_normalmap_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_transpose_matrix33|IM_transpose_matrix33_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_transpose_matrix44|IM_transpose_matrix44_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_determinant_matrix33|IM_determinant_matrix33_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_determinant_matrix44|IM_determinant_matrix44_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invertmatrix_matrix33|IM_invertmatrix_matrix33_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_invertmatrix_matrix44|IM_invertmatrix_matrix44_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_rotate2d_vector2|IM_rotate2d_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_rotate3d_vector3|IM_rotate3d_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_remap_float|IM_remap_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_remap_color3|IM_remap_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_remap_color4|IM_remap_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_remap_vector2|IM_remap_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_remap_vector3|IM_remap_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_remap_vector4|IM_remap_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_remap_color3FA|IM_remap_color3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_remap_color4FA|IM_remap_color4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_remap_vector2FA|IM_remap_vector2FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_remap_vector3FA|IM_remap_vector3FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_remap_vector4FA|IM_remap_vector4FA_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_smoothstep_float|IM_smoothstep_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_smoothstep_vector2|IM_smoothstep_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_smoothstep_vector3|IM_smoothstep_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_smoothstep_vector4|IM_smoothstep_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_luminance_color3|IM_luminance_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_luminance_color4|IM_luminance_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_rgbtohsv_color3|IM_rgbtohsv_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_rgbtohsv_color4|IM_rgbtohsv_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_hsvtorgb_color3|IM_hsvtorgb_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_hsvtorgb_color4|IM_hsvtorgb_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_premult_color4|IM_premult_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_unpremult_color4|IM_unpremult_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_plus_float|IM_plus_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_plus_color3|IM_plus_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_plus_color4|IM_plus_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_minus_float|IM_minus_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_minus_color3|IM_minus_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_minus_color4|IM_minus_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_difference_float|IM_difference_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_difference_color3|IM_difference_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_difference_color4|IM_difference_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_burn_float|IM_burn_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_burn_color3|IM_burn_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_burn_color4|IM_burn_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dodge_float|IM_dodge_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dodge_color3|IM_dodge_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dodge_color4|IM_dodge_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_screen_float|IM_screen_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_screen_color3|IM_screen_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_screen_color4|IM_screen_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_disjointover_color4|IM_disjointover_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_in_color4|IM_in_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mask_color4|IM_mask_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_matte_color4|IM_matte_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_out_color4|IM_out_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_over_color4|IM_over_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_inside_float|IM_inside_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_inside_color3|IM_inside_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_inside_color4|IM_inside_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_outside_float|IM_outside_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_outside_color3|IM_outside_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_outside_color4|IM_outside_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mix_float|IM_mix_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mix_color3|IM_mix_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mix_color3_color3|IM_mix_color3_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mix_color4|IM_mix_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mix_color4_color4|IM_mix_color4_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mix_vector2|IM_mix_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mix_vector2_vector2|IM_mix_vector2_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mix_vector3|IM_mix_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mix_vector3_vector3|IM_mix_vector3_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mix_vector4|IM_mix_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mix_vector4_vector4|IM_mix_vector4_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_mix_surfaceshader|IM_mix_surfaceshader_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreater_float|IM_ifgreater_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreater_color3|IM_ifgreater_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreater_color4|IM_ifgreater_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreater_vector2|IM_ifgreater_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreater_vector3|IM_ifgreater_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreater_vector4|IM_ifgreater_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreater_floatI|IM_ifgreater_floatI_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreater_color3I|IM_ifgreater_color3I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreater_color4I|IM_ifgreater_color4I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreater_vector2I|IM_ifgreater_vector2I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreater_vector3I|IM_ifgreater_vector3I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreater_vector4I|IM_ifgreater_vector4I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreatereq_float|IM_ifgreatereq_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreatereq_color3|IM_ifgreatereq_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreatereq_color4|IM_ifgreatereq_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreatereq_vector2|IM_ifgreatereq_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreatereq_vector3|IM_ifgreatereq_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreatereq_vector4|IM_ifgreatereq_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreatereq_floatI|IM_ifgreatereq_floatI_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreatereq_color3I|IM_ifgreatereq_color3I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreatereq_color4I|IM_ifgreatereq_color4I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreatereq_vector2I|IM_ifgreatereq_vector2I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreatereq_vector3I|IM_ifgreatereq_vector3I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifgreatereq_vector4I|IM_ifgreatereq_vector4I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_float|IM_ifequal_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_color3|IM_ifequal_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_color4|IM_ifequal_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_vector2|IM_ifequal_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_vector3|IM_ifequal_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_vector4|IM_ifequal_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_floatI|IM_ifequal_floatI_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_color3I|IM_ifequal_color3I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_color4I|IM_ifequal_color4I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_vector2I|IM_ifequal_vector2I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_vector3I|IM_ifequal_vector3I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_vector4I|IM_ifequal_vector4I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_floatB|IM_ifequal_floatB_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_color3B|IM_ifequal_color3B_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_color4B|IM_ifequal_color4B_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_vector2B|IM_ifequal_vector2B_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_vector3B|IM_ifequal_vector3B_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_ifequal_vector4B|IM_ifequal_vector4B_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_switch_float|IM_switch_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_switch_color3|IM_switch_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_switch_color4|IM_switch_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_switch_vector2|IM_switch_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_switch_vector3|IM_switch_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_switch_vector4|IM_switch_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_switch_floatI|IM_switch_floatI_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_switch_color3I|IM_switch_color3I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_switch_color4I|IM_switch_color4I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_switch_vector2I|IM_switch_vector2I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_switch_vector3I|IM_switch_vector3I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_switch_vector4I|IM_switch_vector4I_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_float_color3|IM_convert_float_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_float_color4|IM_convert_float_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_float_vector2|IM_convert_float_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_float_vector3|IM_convert_float_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_float_vector4|IM_convert_float_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_vector2_vector3|IM_convert_vector2_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_vector3_color3|IM_convert_vector3_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_vector3_vector2|IM_convert_vector3_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_vector3_vector4|IM_convert_vector3_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_vector4_color4|IM_convert_vector4_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_vector4_vector3|IM_convert_vector4_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_color3_vector3|IM_convert_color3_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_color4_vector4|IM_convert_color4_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_color3_color4|IM_convert_color3_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_color4_color3|IM_convert_color4_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_boolean_float|IM_convert_boolean_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_convert_integer_float|IM_convert_integer_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_float_color3|IM_swizzle_float_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_float_color4|IM_swizzle_float_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_float_vector2|IM_swizzle_float_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_float_vector3|IM_swizzle_float_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_float_vector4|IM_swizzle_float_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_color3_float|IM_swizzle_color3_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_color3_color3|IM_swizzle_color3_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_color3_color4|IM_swizzle_color3_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_color3_vector2|IM_swizzle_color3_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_color3_vector3|IM_swizzle_color3_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_color3_vector4|IM_swizzle_color3_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_color4_float|IM_swizzle_color4_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_color4_color3|IM_swizzle_color4_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_color4_color4|IM_swizzle_color4_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_color4_vector2|IM_swizzle_color4_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_color4_vector3|IM_swizzle_color4_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_color4_vector4|IM_swizzle_color4_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector2_float|IM_swizzle_vector2_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector2_color3|IM_swizzle_vector2_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector2_color4|IM_swizzle_vector2_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector2_vector2|IM_swizzle_vector2_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector2_vector3|IM_swizzle_vector2_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector2_vector4|IM_swizzle_vector2_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector3_float|IM_swizzle_vector3_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector3_color3|IM_swizzle_vector3_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector3_color4|IM_swizzle_vector3_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector3_vector2|IM_swizzle_vector3_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector3_vector3|IM_swizzle_vector3_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector3_vector4|IM_swizzle_vector3_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector4_float|IM_swizzle_vector4_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector4_color3|IM_swizzle_vector4_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector4_color4|IM_swizzle_vector4_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector4_vector2|IM_swizzle_vector4_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector4_vector3|IM_swizzle_vector4_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_swizzle_vector4_vector4|IM_swizzle_vector4_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_combine2_vector2|IM_combine2_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_combine2_color4CF|IM_combine2_color4CF_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_combine2_vector4VF|IM_combine2_vector4VF_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_combine2_vector4VV|IM_combine2_vector4VV_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_combine3_color3|IM_combine3_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_combine3_vector3|IM_combine3_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_combine4_color4|IM_combine4_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_combine4_vector4|IM_combine4_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_creatematrix_vector3_matrix33|IM_creatematrix_vector3_matrix33_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_creatematrix_vector3_matrix44|IM_creatematrix_vector3_matrix44_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_creatematrix_vector4_matrix44|IM_creatematrix_vector4_matrix44_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_blur_float|IM_blur_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_blur_color3|IM_blur_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_blur_color4|IM_blur_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_blur_vector2|IM_blur_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_blur_vector3|IM_blur_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_blur_vector4|IM_blur_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_heighttonormal_vector3|IM_heighttonormal_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_float|IM_dot_float_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_color3|IM_dot_color3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_color4|IM_dot_color4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_vector2|IM_dot_vector2_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_vector3|IM_dot_vector3_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_vector4|IM_dot_vector4_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_boolean|IM_dot_boolean_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_integer|IM_dot_integer_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_matrix33|IM_dot_matrix33_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_matrix44|IM_dot_matrix44_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_string|IM_dot_string_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_filename|IM_dot_filename_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_surfaceshader|IM_dot_surfaceshader_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_displacementshader|IM_dot_displacementshader_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_volumeshader|IM_dot_volumeshader_genglsl|stdlib_genglsl_impl.mtlx\n",
"|ND_dot_lightshader|IM_dot_lightshader_genglsl|stdlib_genglsl_impl.mtlx\n",
"\n",
" \n"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/markdown": [
"549 shaders: genmdl
\n",
"\n",
"| Definition | Implementation | File |\n",
"| --- | --- | --- |\n",
"|ND_viewdirection_vector3|IM_viewdirection_vector3_genmdl|nprlib_genmdl_impl.mtlx\n",
"|ND_oren_nayar_diffuse_bsdf|IM_oren_nayar_diffuse_bsdf_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_burley_diffuse_bsdf|IM_burley_diffuse_bsdf_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_translucent_bsdf|IM_translucent_bsdf_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_dielectric_bsdf|IM_dielectric_bsdf_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_conductor_bsdf|IM_conductor_bsdf_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_generalized_schlick_bsdf|IM_generalized_schlick_bsdf_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_subsurface_bsdf|IM_subsurface_bsdf_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_sheen_bsdf|IM_sheen_bsdf_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_uniform_edf|IM_uniform_edf_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_conical_edf|IM_conical_edf_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_measured_edf|IM_measured_edf_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_generalized_schlick_edf|IM_generalized_schlick_edf_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_absorption_vdf|IM_absorption_vdf_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_anisotropic_vdf|IM_anisotropic_vdf_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_surface|IM_surface_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_thin_surface|IM_thin_surface_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_volume|IM_volume_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_light|IM_light_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_displacement_float|IM_displacement_float_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_displacement_vector3|IM_displacement_vector3_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_layer_bsdf|IM_layer_bsdf_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_layer_vdf|IM_layer_vdf_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_mix_bsdf|IM_mix_bsdf_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_mix_edf|IM_mix_edf_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_mix_vdf|IM_mix_vdf_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_add_bsdf|IM_add_bsdf_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_add_edf|IM_add_edf_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_add_vdf|IM_add_vdf_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_multiply_bsdfC|IM_multiply_bsdfC_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_multiply_bsdfF|IM_multiply_bsdfF_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_multiply_edfC|IM_multiply_edfC_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_multiply_edfF|IM_multiply_edfF_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_multiply_vdfC|IM_multiply_vdfC_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_multiply_vdfF|IM_multiply_vdfF_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_roughness_anisotropy|IM_roughness_anisotropy_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_roughness_dual|IM_roughness_dual_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_blackbody|IM_blackbody_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_artistic_ior|IM_artistic_ior_genmdl|pbrlib_genmdl_impl.mtlx\n",
"|ND_surfacematerial|IM_surfacematerial_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_surface_unlit|IM_surface_unlit_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_image_float|IM_image_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_image_color3|IM_image_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_image_color4|IM_image_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_image_vector2|IM_image_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_image_vector3|IM_image_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_image_vector4|IM_image_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_constant_float|IM_constant_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_constant_color3|IM_constant_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_constant_color4|IM_constant_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_constant_vector2|IM_constant_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_constant_vector3|IM_constant_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_constant_vector4|IM_constant_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_constant_boolean|IM_constant_boolean_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_constant_integer|IM_constant_integer_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_constant_matrix33|IM_constant_matrix33_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_constant_matrix44|IM_constant_matrix44_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_constant_string|IM_constant_string_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_constant_filename|IM_constant_filename_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ramplr_float|IM_ramplr_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ramplr_color3|IM_ramplr_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ramplr_color4|IM_ramplr_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ramplr_vector2|IM_ramplr_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ramplr_vector3|IM_ramplr_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ramplr_vector4|IM_ramplr_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ramptb_float|IM_ramptb_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ramptb_color3|IM_ramptb_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ramptb_color4|IM_ramptb_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ramptb_vector2|IM_ramptb_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ramptb_vector3|IM_ramptb_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ramptb_vector4|IM_ramptb_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_splitlr_float|IM_splitlr_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_splitlr_color3|IM_splitlr_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_splitlr_color4|IM_splitlr_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_splitlr_vector2|IM_splitlr_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_splitlr_vector3|IM_splitlr_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_splitlr_vector4|IM_splitlr_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_splittb_float|IM_splittb_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_splittb_color3|IM_splittb_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_splittb_color4|IM_splittb_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_splittb_vector2|IM_splittb_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_splittb_vector3|IM_splittb_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_splittb_vector4|IM_splittb_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_noise2d_float|IM_noise2d_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_noise2d_vector2|IM_noise2d_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_noise2d_vector3|IM_noise2d_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_noise2d_vector4|IM_noise2d_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_noise3d_float|IM_noise3d_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_noise3d_vector2|IM_noise3d_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_noise3d_vector3|IM_noise3d_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_noise3d_vector4|IM_noise3d_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_fractal3d_float|IM_fractal3d_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_fractal3d_vector2|IM_fractal3d_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_fractal3d_vector3|IM_fractal3d_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_fractal3d_vector4|IM_fractal3d_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_cellnoise2d_float|IM_cellnoise2d_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_cellnoise3d_float|IM_cellnoise3d_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_worleynoise2d_float|IM_worleynoise2d_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_worleynoise2d_vector2|IM_worleynoise2d_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_worleynoise2d_vector3|IM_worleynoise2d_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_worleynoise3d_float|IM_worleynoise3d_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_worleynoise3d_vector2|IM_worleynoise3d_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_worleynoise3d_vector3|IM_worleynoise3d_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_position_vector3|IM_position_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_normal_vector3|IM_normal_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_tangent_vector3|IM_tangent_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_bitangent_vector3|IM_bitangent_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_texcoord_vector2|IM_texcoord_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_texcoord_vector3|IM_texcoord_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_geomcolor_float|IM_geomcolor_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_geomcolor_color3|IM_geomcolor_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_geomcolor_color4|IM_geomcolor_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_geompropvalue_integer|IM_geompropvalue_integer_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_geompropvalue_boolean|IM_geompropvalue_boolean_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_geompropvalue_string|IM_geompropvalue_string_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_geompropvalue_float|IM_geompropvalue_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_geompropvalue_color3|IM_geompropvalue_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_geompropvalue_color4|IM_geompropvalue_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_geompropvalue_vector2|IM_geompropvalue_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_geompropvalue_vector3|IM_geompropvalue_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_geompropvalue_vector4|IM_geompropvalue_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ambientocclusion_float|IM_ambientocclusion_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_frame_float|IM_frame_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_time_float|IM_time_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_add_float|IM_add_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_add_color3|IM_add_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_add_color4|IM_add_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_add_vector2|IM_add_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_add_vector3|IM_add_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_add_vector4|IM_add_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_add_matrix33|IM_add_matrix33_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_add_matrix44|IM_add_matrix44_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_add_color3FA|IM_add_color3FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_add_color4FA|IM_add_color4FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_add_vector2FA|IM_add_vector2FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_add_vector3FA|IM_add_vector3FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_add_vector4FA|IM_add_vector4FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_add_matrix33FA|IM_add_matrix33FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_add_matrix44FA|IM_add_matrix44FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_subtract_float|IM_subtract_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_subtract_color3|IM_subtract_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_subtract_color4|IM_subtract_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_subtract_vector2|IM_subtract_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_subtract_vector3|IM_subtract_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_subtract_vector4|IM_subtract_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_subtract_matrix33|IM_subtract_matrix33_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_subtract_matrix44|IM_subtract_matrix44_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_subtract_color3FA|IM_subtract_color3FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_subtract_color4FA|IM_subtract_color4FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_subtract_vector2FA|IM_subtract_vector2FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_subtract_vector3FA|IM_subtract_vector3FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_subtract_vector4FA|IM_subtract_vector4FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_subtract_matrix33FA|IM_subtract_matrix33FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_subtract_matrix44FA|IM_subtract_matrix44FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_multiply_float|IM_multiply_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_multiply_color3|IM_multiply_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_multiply_color4|IM_multiply_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_multiply_vector2|IM_multiply_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_multiply_vector3|IM_multiply_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_multiply_vector4|IM_multiply_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_multiply_matrix33|IM_multiply_matrix33_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_multiply_matrix44|IM_multiply_matrix44_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_multiply_color3FA|IM_multiply_color3FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_multiply_color4FA|IM_multiply_color4FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_multiply_vector2FA|IM_multiply_vector2FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_multiply_vector3FA|IM_multiply_vector3FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_multiply_vector4FA|IM_multiply_vector4FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_divide_float|IM_divide_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_divide_color3|IM_divide_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_divide_color4|IM_divide_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_divide_vector2|IM_divide_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_divide_vector3|IM_divide_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_divide_vector4|IM_divide_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_divide_matrix33|IM_divide_matrix33_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_divide_matrix44|IM_divide_matrix44_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_divide_color3FA|IM_divide_color3FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_divide_color4FA|IM_divide_color4FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_divide_vector2FA|IM_divide_vector2FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_divide_vector3FA|IM_divide_vector3FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_divide_vector4FA|IM_divide_vector4FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_modulo_float|IM_modulo_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_modulo_color3|IM_modulo_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_modulo_color4|IM_modulo_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_modulo_vector2|IM_modulo_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_modulo_vector3|IM_modulo_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_modulo_vector4|IM_modulo_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_modulo_color3FA|IM_modulo_color3FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_modulo_color4FA|IM_modulo_color4FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_modulo_vector2FA|IM_modulo_vector2FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_modulo_vector3FA|IM_modulo_vector3FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_modulo_vector4FA|IM_modulo_vector4FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_invert_float|IM_invert_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_invert_color3|IM_invert_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_invert_color4|IM_invert_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_invert_vector2|IM_invert_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_invert_vector3|IM_invert_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_invert_vector4|IM_invert_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_invert_color3FA|IM_invert_color3FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_invert_color4FA|IM_invert_color4FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_invert_vector2FA|IM_invert_vector2FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_invert_vector3FA|IM_invert_vector3FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_invert_vector4FA|IM_invert_vector4FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_absval_float|IM_absval_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_absval_color3|IM_absval_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_absval_color4|IM_absval_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_absval_vector2|IM_absval_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_absval_vector3|IM_absval_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_absval_vector4|IM_absval_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_floor_float|IM_floor_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_floor_color3|IM_floor_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_floor_color4|IM_floor_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_floor_vector2|IM_floor_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_floor_vector3|IM_floor_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_floor_vector4|IM_floor_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_floor_integer|IM_floor_integer_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ceil_float|IM_ceil_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ceil_color3|IM_ceil_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ceil_color4|IM_ceil_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ceil_vector2|IM_ceil_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ceil_vector3|IM_ceil_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ceil_vector4|IM_ceil_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ceil_integer|IM_ceil_integer_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_round_float|IM_round_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_round_color3|IM_round_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_round_color4|IM_round_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_round_vector2|IM_round_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_round_vector3|IM_round_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_round_vector4|IM_round_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_round_integer|IM_round_integer_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_power_float|IM_power_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_power_color3|IM_power_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_power_color4|IM_power_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_power_vector2|IM_power_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_power_vector3|IM_power_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_power_vector4|IM_power_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_power_color3FA|IM_power_color3FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_power_color4FA|IM_power_color4FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_power_vector2FA|IM_power_vector2FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_power_vector3FA|IM_power_vector3FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_power_vector4FA|IM_power_vector4FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_sin_float|IM_sin_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_cos_float|IM_cos_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_tan_float|IM_tan_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_asin_float|IM_asin_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_acos_float|IM_acos_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_atan2_float|IM_atan2_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_sin_vector2|IM_sin_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_cos_vector2|IM_cos_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_tan_vector2|IM_tan_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_asin_vector2|IM_asin_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_acos_vector2|IM_acos_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_atan2_vector2|IM_atan2_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_sin_vector3|IM_sin_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_cos_vector3|IM_cos_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_tan_vector3|IM_tan_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_asin_vector3|IM_asin_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_acos_vector3|IM_acos_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_atan2_vector3|IM_atan2_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_sin_vector4|IM_sin_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_cos_vector4|IM_cos_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_tan_vector4|IM_tan_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_asin_vector4|IM_asin_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_acos_vector4|IM_acos_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_atan2_vector4|IM_atan2_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_sqrt_float|IM_sqrt_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ln_float|IM_ln_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_exp_float|IM_exp_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_sqrt_vector2|IM_sqrt_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ln_vector2|IM_ln_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_exp_vector2|IM_exp_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_sqrt_vector3|IM_sqrt_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ln_vector3|IM_ln_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_exp_vector3|IM_exp_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_sqrt_vector4|IM_sqrt_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ln_vector4|IM_ln_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_exp_vector4|IM_exp_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_sign_float|IM_sign_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_sign_color3|IM_sign_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_sign_color4|IM_sign_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_sign_vector2|IM_sign_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_sign_vector3|IM_sign_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_sign_vector4|IM_sign_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_clamp_float|IM_clamp_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_clamp_color3|IM_clamp_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_clamp_color4|IM_clamp_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_clamp_vector2|IM_clamp_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_clamp_vector3|IM_clamp_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_clamp_vector4|IM_clamp_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_clamp_color3FA|IM_clamp_color3FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_clamp_color4FA|IM_clamp_color4FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_clamp_vector2FA|IM_clamp_vector2FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_clamp_vector3FA|IM_clamp_vector3FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_clamp_vector4FA|IM_clamp_vector4FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_min_float|IM_min_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_min_color3|IM_min_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_min_color4|IM_min_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_min_vector2|IM_min_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_min_vector3|IM_min_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_min_vector4|IM_min_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_min_color3FA|IM_min_color3FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_min_color4FA|IM_min_color4FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_min_vector2FA|IM_min_vector2FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_min_vector3FA|IM_min_vector3FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_min_vector4FA|IM_min_vector4FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_max_float|IM_max_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_max_color3|IM_max_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_max_color4|IM_max_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_max_vector2|IM_max_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_max_vector3|IM_max_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_max_vector4|IM_max_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_max_color3FA|IM_max_color3FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_max_color4FA|IM_max_color4FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_max_vector2FA|IM_max_vector2FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_max_vector3FA|IM_max_vector3FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_max_vector4FA|IM_max_vector4FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_normalize_vector2|IM_normalize_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_normalize_vector3|IM_normalize_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_normalize_vector4|IM_normalize_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_magnitude_vector2|IM_magnitude_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_magnitude_vector3|IM_magnitude_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_magnitude_vector4|IM_magnitude_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_dotproduct_vector2|IM_dotproduct_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_dotproduct_vector3|IM_dotproduct_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_dotproduct_vector4|IM_dotproduct_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_crossproduct_vector3|IM_crossproduct_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_transformpoint_vector3|IM_transformpoint_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_transformvector_vector3|IM_transformvector_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_transformnormal_vector3|IM_transformnormal_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_transformmatrix_vector2M3|IM_transformmatrix_vector2M3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_transformmatrix_vector3|IM_transformmatrix_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_transformmatrix_vector3M4|IM_transformmatrix_vector3M4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_transformmatrix_vector4|IM_transformmatrix_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_normalmap_float|IM_normalmap_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_normalmap_vector2|IM_normalmap_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_transpose_matrix33|IM_transpose_matrix33_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_transpose_matrix44|IM_transpose_matrix44_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_determinant_matrix33|IM_determinant_matrix33_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_determinant_matrix44|IM_determinant_matrix44_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_invertmatrix_matrix33|IM_invertmatrix_matrix33_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_invertmatrix_matrix44|IM_invertmatrix_matrix44_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_rotate2d_vector2|IM_rotate2d_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_rotate3d_vector3|IM_rotate3d_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_remap_float|IM_remap_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_remap_color3|IM_remap_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_remap_color4|IM_remap_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_remap_vector2|IM_remap_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_remap_vector3|IM_remap_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_remap_vector4|IM_remap_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_remap_color3FA|IM_remap_color3FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_remap_color4FA|IM_remap_color4FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_remap_vector2FA|IM_remap_vector2FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_remap_vector3FA|IM_remap_vector3FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_remap_vector4FA|IM_remap_vector4FA_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_smoothstep_float|IM_smoothstep_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_smoothstep_vector2|IM_smoothstep_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_smoothstep_vector3|IM_smoothstep_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_smoothstep_vector4|IM_smoothstep_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_luminance_color3|IM_luminance_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_luminance_color4|IM_luminance_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_rgbtohsv_color3|IM_rgbtohsv_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_rgbtohsv_color4|IM_rgbtohsv_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_hsvtorgb_color3|IM_hsvtorgb_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_hsvtorgb_color4|IM_hsvtorgb_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_premult_color4|IM_premult_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_unpremult_color4|IM_unpremult_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_plus_float|IM_plus_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_plus_color3|IM_plus_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_plus_color4|IM_plus_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_minus_float|IM_minus_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_minus_color3|IM_minus_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_minus_color4|IM_minus_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_difference_float|IM_difference_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_difference_color3|IM_difference_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_difference_color4|IM_difference_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_burn_float|IM_burn_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_burn_color3|IM_burn_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_burn_color4|IM_burn_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_dodge_float|IM_dodge_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_dodge_color3|IM_dodge_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_dodge_color4|IM_dodge_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_screen_float|IM_screen_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_screen_color3|IM_screen_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_screen_color4|IM_screen_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_disjointover_color4|IM_disjointover_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_in_color4|IM_in_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_mask_color4|IM_mask_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_matte_color4|IM_matte_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_out_color4|IM_out_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_over_color4|IM_over_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_inside_float|IM_inside_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_inside_color3|IM_inside_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_inside_color4|IM_inside_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_outside_float|IM_outside_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_outside_color3|IM_outside_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_outside_color4|IM_outside_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_mix_float|IM_mix_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_mix_color3|IM_mix_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_mix_color3_color3|IM_mix_color3_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_mix_color4|IM_mix_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_mix_color4_color4|IM_mix_color4_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_mix_vector2|IM_mix_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_mix_vector2_vector2|IM_mix_vector2_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_mix_vector3|IM_mix_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_mix_vector3_vector3|IM_mix_vector3_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_mix_vector4|IM_mix_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_mix_vector4_vector4|IM_mix_vector4_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_mix_surfaceshader|IM_mix_surfaceshader_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_mix_displacementshader|IM_mix_displacementshader_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_mix_volumeshader|IM_mix_volumeshader_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifgreater_float|IM_ifgreater_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifgreater_color3|IM_ifgreater_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifgreater_color4|IM_ifgreater_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifgreater_vector2|IM_ifgreater_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifgreater_vector3|IM_ifgreater_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifgreater_vector4|IM_ifgreater_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifgreater_floatI|IM_ifgreater_floatI_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifgreater_color3I|IM_ifgreater_color3I_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifgreater_color4I|IM_ifgreater_color4I_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifgreater_vector2I|IM_ifgreater_vector2I_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifgreater_vector3I|IM_ifgreater_vector3I_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifgreater_vector4I|IM_ifgreater_vector4I_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifgreatereq_float|IM_ifgreatereq_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifgreatereq_color3|IM_ifgreatereq_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifgreatereq_color4|IM_ifgreatereq_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifgreatereq_vector2|IM_ifgreatereq_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifgreatereq_vector3|IM_ifgreatereq_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifgreatereq_vector4|IM_ifgreatereq_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifgreatereq_floatI|IM_ifgreatereq_floatI_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifgreatereq_color3I|IM_ifgreatereq_color3I_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifgreatereq_color4I|IM_ifgreatereq_color4I_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifgreatereq_vector2I|IM_ifgreatereq_vector2I_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifgreatereq_vector3I|IM_ifgreatereq_vector3I_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifgreatereq_vector4I|IM_ifgreatereq_vector4I_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifequal_float|IM_ifequal_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifequal_color3|IM_ifequal_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifequal_color4|IM_ifequal_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifequal_vector2|IM_ifequal_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifequal_vector3|IM_ifequal_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifequal_vector4|IM_ifequal_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifequal_floatI|IM_ifequal_floatI_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifequal_color3I|IM_ifequal_color3I_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifequal_color4I|IM_ifequal_color4I_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifequal_vector2I|IM_ifequal_vector2I_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifequal_vector3I|IM_ifequal_vector3I_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifequal_vector4I|IM_ifequal_vector4I_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifequal_floatB|IM_ifequal_floatB_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifequal_color3B|IM_ifequal_color3B_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifequal_color4B|IM_ifequal_color4B_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifequal_vector2B|IM_ifequal_vector2B_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifequal_vector3B|IM_ifequal_vector3B_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_ifequal_vector4B|IM_ifequal_vector4B_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_switch_float|IM_switch_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_switch_color3|IM_switch_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_switch_color4|IM_switch_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_switch_vector2|IM_switch_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_switch_vector3|IM_switch_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_switch_vector4|IM_switch_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_switch_floatI|IM_switch_floatI_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_switch_color3I|IM_switch_color3I_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_switch_color4I|IM_switch_color4I_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_switch_vector2I|IM_switch_vector2I_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_switch_vector3I|IM_switch_vector3I_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_switch_vector4I|IM_switch_vector4I_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_convert_float_color3|IM_convert_float_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_convert_float_color4|IM_convert_float_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_convert_float_vector2|IM_convert_float_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_convert_float_vector3|IM_convert_float_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_convert_float_vector4|IM_convert_float_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_convert_vector2_vector3|IM_convert_vector2_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_convert_vector3_color3|IM_convert_vector3_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_convert_vector3_vector2|IM_convert_vector3_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_convert_vector3_vector4|IM_convert_vector3_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_convert_vector4_color4|IM_convert_vector4_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_convert_vector4_vector3|IM_convert_vector4_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_convert_color3_vector3|IM_convert_color3_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_convert_color4_vector4|IM_convert_color4_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_convert_color3_color4|IM_convert_color3_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_convert_color4_color3|IM_convert_color4_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_convert_boolean_float|IM_convert_boolean_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_convert_integer_float|IM_convert_integer_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_float_color3|IM_swizzle_float_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_float_color4|IM_swizzle_float_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_float_vector2|IM_swizzle_float_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_float_vector3|IM_swizzle_float_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_float_vector4|IM_swizzle_float_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_color3_float|IM_swizzle_color3_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_color3_color3|IM_swizzle_color3_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_color3_color4|IM_swizzle_color3_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_color3_vector2|IM_swizzle_color3_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_color3_vector3|IM_swizzle_color3_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_color3_vector4|IM_swizzle_color3_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_color4_float|IM_swizzle_color4_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_color4_color3|IM_swizzle_color4_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_color4_color4|IM_swizzle_color4_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_color4_vector2|IM_swizzle_color4_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_color4_vector3|IM_swizzle_color4_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_color4_vector4|IM_swizzle_color4_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_vector2_float|IM_swizzle_vector2_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_vector2_color3|IM_swizzle_vector2_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_vector2_color4|IM_swizzle_vector2_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_vector2_vector2|IM_swizzle_vector2_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_vector2_vector3|IM_swizzle_vector2_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_vector2_vector4|IM_swizzle_vector2_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_vector3_float|IM_swizzle_vector3_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_vector3_color3|IM_swizzle_vector3_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_vector3_color4|IM_swizzle_vector3_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_vector3_vector2|IM_swizzle_vector3_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_vector3_vector3|IM_swizzle_vector3_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_vector3_vector4|IM_swizzle_vector3_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_vector4_float|IM_swizzle_vector4_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_vector4_color3|IM_swizzle_vector4_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_vector4_color4|IM_swizzle_vector4_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_vector4_vector2|IM_swizzle_vector4_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_vector4_vector3|IM_swizzle_vector4_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_swizzle_vector4_vector4|IM_swizzle_vector4_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_combine2_vector2|IM_combine2_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_combine2_color4CF|IM_combine2_color4CF_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_combine2_vector4VF|IM_combine2_vector4VF_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_combine2_vector4VV|IM_combine2_vector4VV_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_combine3_color3|IM_combine3_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_combine3_vector3|IM_combine3_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_combine4_color4|IM_combine4_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_combine4_vector4|IM_combine4_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_creatematrix_vector3_matrix33|IM_creatematrix_vector3_matrix33_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_creatematrix_vector3_matrix44|IM_creatematrix_vector3_matrix44_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_creatematrix_vector4_matrix44|IM_creatematrix_vector4_matrix44_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_blur_float|IM_blur_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_blur_color3|IM_blur_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_blur_color4|IM_blur_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_blur_vector2|IM_blur_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_blur_vector3|IM_blur_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_blur_vector4|IM_blur_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_heighttonormal_vector3|IM_heighttonormal_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_dot_float|IM_dot_float_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_dot_color3|IM_dot_color3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_dot_color4|IM_dot_color4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_dot_vector2|IM_dot_vector2_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_dot_vector3|IM_dot_vector3_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_dot_vector4|IM_dot_vector4_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_dot_boolean|IM_dot_boolean_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_dot_integer|IM_dot_integer_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_dot_matrix33|IM_dot_matrix33_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_dot_matrix44|IM_dot_matrix44_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_dot_string|IM_dot_string_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_dot_filename|IM_dot_filename_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_dot_surfaceshader|IM_dot_surfaceshader_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_dot_displacementshader|IM_dot_displacementshader_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_dot_volumeshader|IM_dot_volumeshader_genmdl|stdlib_genmdl_impl.mtlx\n",
"|ND_dot_lightshader|IM_dot_lightshader_genmdl|stdlib_genmdl_impl.mtlx\n",
"\n",
" \n"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/markdown": [
"539 shaders: genmsl
\n",
"\n",
"| Definition | Implementation | File |\n",
"| --- | --- | --- |\n",
"|ND_point_light|IM_point_light_genmsl|lights_genmsl_impl.mtlx\n",
"|ND_directional_light|IM_directional_light_genmsl|lights_genmsl_impl.mtlx\n",
"|ND_spot_light|IM_spot_light_genmsl|lights_genmsl_impl.mtlx\n",
"|ND_viewdirection_vector3|IM_viewdirection_vector3_genmsl|nprlib_genmsl_impl.mtlx\n",
"|ND_oren_nayar_diffuse_bsdf|IM_oren_nayar_diffuse_bsdf_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_burley_diffuse_bsdf|IM_burley_diffuse_bsdf_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_translucent_bsdf|IM_translucent_bsdf_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_dielectric_bsdf|IM_dielectric_bsdf_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_conductor_bsdf|IM_conductor_bsdf_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_generalized_schlick_bsdf|IM_generalized_schlick_bsdf_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_subsurface_bsdf|IM_subsurface_bsdf_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_sheen_bsdf|IM_sheen_bsdf_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_uniform_edf|IM_uniform_edf_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_anisotropic_vdf|IM_anisotropic_vdf_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_surface|IM_surface_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_light|IM_light_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_displacement_float|IM_displacement_float_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_displacement_vector3|IM_displacement_vector3_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_layer_bsdf|IM_layer_bsdf_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_layer_vdf|IM_layer_vdf_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_mix_bsdf|IM_mix_bsdf_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_mix_edf|IM_mix_edf_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_add_bsdf|IM_add_bsdf_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_add_edf|IM_add_edf_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_multiply_bsdfC|IM_multiply_bsdfC_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_multiply_bsdfF|IM_multiply_bsdfF_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_multiply_edfC|IM_multiply_edfC_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_multiply_edfF|IM_multiply_edfF_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_roughness_anisotropy|IM_roughness_anisotropy_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_roughness_dual|IM_roughness_dual_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_blackbody|IM_blackbody_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_artistic_ior|IM_artistic_ior_genmsl|pbrlib_genmsl_impl.mtlx\n",
"|ND_surfacematerial|IM_surfacematerial_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_surface_unlit|IM_surface_unlit_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_image_float|IM_image_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_image_color3|IM_image_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_image_color4|IM_image_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_image_vector2|IM_image_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_image_vector3|IM_image_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_image_vector4|IM_image_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_constant_float|IM_constant_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_constant_color3|IM_constant_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_constant_color4|IM_constant_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_constant_vector2|IM_constant_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_constant_vector3|IM_constant_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_constant_vector4|IM_constant_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_constant_boolean|IM_constant_boolean_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_constant_integer|IM_constant_integer_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_constant_matrix33|IM_constant_matrix33_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_constant_matrix44|IM_constant_matrix44_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_constant_string|IM_constant_string_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_constant_filename|IM_constant_filename_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ramplr_float|IM_ramplr_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ramplr_color3|IM_ramplr_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ramplr_color4|IM_ramplr_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ramplr_vector2|IM_ramplr_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ramplr_vector3|IM_ramplr_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ramplr_vector4|IM_ramplr_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ramptb_float|IM_ramptb_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ramptb_color3|IM_ramptb_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ramptb_color4|IM_ramptb_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ramptb_vector2|IM_ramptb_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ramptb_vector3|IM_ramptb_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ramptb_vector4|IM_ramptb_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_splitlr_float|IM_splitlr_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_splitlr_color3|IM_splitlr_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_splitlr_color4|IM_splitlr_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_splitlr_vector2|IM_splitlr_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_splitlr_vector3|IM_splitlr_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_splitlr_vector4|IM_splitlr_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_splittb_float|IM_splittb_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_splittb_color3|IM_splittb_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_splittb_color4|IM_splittb_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_splittb_vector2|IM_splittb_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_splittb_vector3|IM_splittb_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_splittb_vector4|IM_splittb_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_noise2d_float|IM_noise2d_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_noise2d_vector2|IM_noise2d_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_noise2d_vector3|IM_noise2d_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_noise2d_vector4|IM_noise2d_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_noise3d_float|IM_noise3d_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_noise3d_vector2|IM_noise3d_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_noise3d_vector3|IM_noise3d_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_noise3d_vector4|IM_noise3d_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_fractal3d_float|IM_fractal3d_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_fractal3d_vector2|IM_fractal3d_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_fractal3d_vector3|IM_fractal3d_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_fractal3d_vector4|IM_fractal3d_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_cellnoise2d_float|IM_cellnoise2d_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_cellnoise3d_float|IM_cellnoise3d_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_worleynoise2d_float|IM_worleynoise2d_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_worleynoise2d_vector2|IM_worleynoise2d_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_worleynoise2d_vector3|IM_worleynoise2d_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_worleynoise3d_float|IM_worleynoise3d_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_worleynoise3d_vector2|IM_worleynoise3d_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_worleynoise3d_vector3|IM_worleynoise3d_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_position_vector3|IM_position_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_normal_vector3|IM_normal_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_tangent_vector3|IM_tangent_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_bitangent_vector3|IM_bitangent_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_texcoord_vector2|IM_texcoord_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_texcoord_vector3|IM_texcoord_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_geomcolor_float|IM_geomcolor_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_geomcolor_color3|IM_geomcolor_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_geomcolor_color4|IM_geomcolor_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_geompropvalue_integer|IM_geompropvalue_integer_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_geompropvalue_boolean|IM_geompropvalue_boolean_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_geompropvalue_string|IM_geompropvalue_string_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_geompropvalue_float|IM_geompropvalue_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_geompropvalue_color3|IM_geompropvalue_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_geompropvalue_color4|IM_geompropvalue_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_geompropvalue_vector2|IM_geompropvalue_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_geompropvalue_vector3|IM_geompropvalue_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_geompropvalue_vector4|IM_geompropvalue_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_frame_float|IM_frame_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_time_float|IM_time_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_add_float|IM_add_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_add_color3|IM_add_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_add_color4|IM_add_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_add_vector2|IM_add_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_add_vector3|IM_add_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_add_vector4|IM_add_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_add_matrix33|IM_add_matrix33_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_add_matrix44|IM_add_matrix44_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_add_color3FA|IM_add_color3FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_add_color4FA|IM_add_color4FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_add_vector2FA|IM_add_vector2FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_add_vector3FA|IM_add_vector3FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_add_vector4FA|IM_add_vector4FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_add_matrix33FA|IM_add_matrix33FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_add_matrix44FA|IM_add_matrix44FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_subtract_float|IM_subtract_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_subtract_color3|IM_subtract_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_subtract_color4|IM_subtract_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_subtract_vector2|IM_subtract_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_subtract_vector3|IM_subtract_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_subtract_vector4|IM_subtract_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_subtract_matrix33|IM_subtract_matrix33_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_subtract_matrix44|IM_subtract_matrix44_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_subtract_color3FA|IM_subtract_color3FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_subtract_color4FA|IM_subtract_color4FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_subtract_vector2FA|IM_subtract_vector2FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_subtract_vector3FA|IM_subtract_vector3FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_subtract_vector4FA|IM_subtract_vector4FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_subtract_matrix33FA|IM_subtract_matrix33FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_subtract_matrix44FA|IM_subtract_matrix44FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_multiply_float|IM_multiply_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_multiply_color3|IM_multiply_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_multiply_color4|IM_multiply_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_multiply_vector2|IM_multiply_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_multiply_vector3|IM_multiply_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_multiply_vector4|IM_multiply_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_multiply_matrix33|IM_multiply_matrix33_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_multiply_matrix44|IM_multiply_matrix44_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_multiply_color3FA|IM_multiply_color3FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_multiply_color4FA|IM_multiply_color4FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_multiply_vector2FA|IM_multiply_vector2FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_multiply_vector3FA|IM_multiply_vector3FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_multiply_vector4FA|IM_multiply_vector4FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_divide_float|IM_divide_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_divide_color3|IM_divide_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_divide_color4|IM_divide_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_divide_vector2|IM_divide_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_divide_vector3|IM_divide_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_divide_vector4|IM_divide_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_divide_matrix33|IM_divide_matrix33_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_divide_matrix44|IM_divide_matrix44_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_divide_color3FA|IM_divide_color3FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_divide_color4FA|IM_divide_color4FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_divide_vector2FA|IM_divide_vector2FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_divide_vector3FA|IM_divide_vector3FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_divide_vector4FA|IM_divide_vector4FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_modulo_float|IM_modulo_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_modulo_color3|IM_modulo_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_modulo_color4|IM_modulo_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_modulo_vector2|IM_modulo_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_modulo_vector3|IM_modulo_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_modulo_vector4|IM_modulo_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_modulo_color3FA|IM_modulo_color3FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_modulo_color4FA|IM_modulo_color4FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_modulo_vector2FA|IM_modulo_vector2FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_modulo_vector3FA|IM_modulo_vector3FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_modulo_vector4FA|IM_modulo_vector4FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_invert_float|IM_invert_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_invert_color3|IM_invert_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_invert_color4|IM_invert_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_invert_vector2|IM_invert_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_invert_vector3|IM_invert_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_invert_vector4|IM_invert_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_invert_color3FA|IM_invert_color3FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_invert_color4FA|IM_invert_color4FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_invert_vector2FA|IM_invert_vector2FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_invert_vector3FA|IM_invert_vector3FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_invert_vector4FA|IM_invert_vector4FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_absval_float|IM_absval_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_absval_color3|IM_absval_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_absval_color4|IM_absval_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_absval_vector2|IM_absval_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_absval_vector3|IM_absval_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_absval_vector4|IM_absval_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_floor_float|IM_floor_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_floor_color3|IM_floor_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_floor_color4|IM_floor_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_floor_vector2|IM_floor_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_floor_vector3|IM_floor_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_floor_vector4|IM_floor_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_floor_integer|IM_floor_integer_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ceil_float|IM_ceil_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ceil_color3|IM_ceil_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ceil_color4|IM_ceil_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ceil_vector2|IM_ceil_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ceil_vector3|IM_ceil_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ceil_vector4|IM_ceil_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ceil_integer|IM_ceil_integer_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_round_float|IM_round_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_round_color3|IM_round_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_round_color4|IM_round_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_round_vector2|IM_round_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_round_vector3|IM_round_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_round_vector4|IM_round_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_round_integer|IM_round_integer_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_power_float|IM_power_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_power_color3|IM_power_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_power_color4|IM_power_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_power_vector2|IM_power_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_power_vector3|IM_power_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_power_vector4|IM_power_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_power_color3FA|IM_power_color3FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_power_color4FA|IM_power_color4FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_power_vector2FA|IM_power_vector2FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_power_vector3FA|IM_power_vector3FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_power_vector4FA|IM_power_vector4FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_sin_float|IM_sin_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_cos_float|IM_cos_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_tan_float|IM_tan_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_asin_float|IM_asin_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_acos_float|IM_acos_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_atan2_float|IM_atan2_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_sin_vector2|IM_sin_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_cos_vector2|IM_cos_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_tan_vector2|IM_tan_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_asin_vector2|IM_asin_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_acos_vector2|IM_acos_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_atan2_vector2|IM_atan2_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_sin_vector3|IM_sin_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_cos_vector3|IM_cos_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_tan_vector3|IM_tan_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_asin_vector3|IM_asin_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_acos_vector3|IM_acos_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_atan2_vector3|IM_atan2_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_sin_vector4|IM_sin_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_cos_vector4|IM_cos_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_tan_vector4|IM_tan_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_asin_vector4|IM_asin_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_acos_vector4|IM_acos_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_atan2_vector4|IM_atan2_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_sqrt_float|IM_sqrt_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ln_float|IM_ln_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_exp_float|IM_exp_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_sqrt_vector2|IM_sqrt_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ln_vector2|IM_ln_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_exp_vector2|IM_exp_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_sqrt_vector3|IM_sqrt_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ln_vector3|IM_ln_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_exp_vector3|IM_exp_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_sqrt_vector4|IM_sqrt_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ln_vector4|IM_ln_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_exp_vector4|IM_exp_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_sign_float|IM_sign_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_sign_color3|IM_sign_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_sign_color4|IM_sign_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_sign_vector2|IM_sign_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_sign_vector3|IM_sign_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_sign_vector4|IM_sign_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_clamp_float|IM_clamp_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_clamp_color3|IM_clamp_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_clamp_color4|IM_clamp_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_clamp_vector2|IM_clamp_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_clamp_vector3|IM_clamp_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_clamp_vector4|IM_clamp_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_clamp_color3FA|IM_clamp_color3FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_clamp_color4FA|IM_clamp_color4FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_clamp_vector2FA|IM_clamp_vector2FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_clamp_vector3FA|IM_clamp_vector3FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_clamp_vector4FA|IM_clamp_vector4FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_min_float|IM_min_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_min_color3|IM_min_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_min_color4|IM_min_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_min_vector2|IM_min_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_min_vector3|IM_min_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_min_vector4|IM_min_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_min_color3FA|IM_min_color3FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_min_color4FA|IM_min_color4FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_min_vector2FA|IM_min_vector2FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_min_vector3FA|IM_min_vector3FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_min_vector4FA|IM_min_vector4FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_max_float|IM_max_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_max_color3|IM_max_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_max_color4|IM_max_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_max_vector2|IM_max_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_max_vector3|IM_max_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_max_vector4|IM_max_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_max_color3FA|IM_max_color3FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_max_color4FA|IM_max_color4FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_max_vector2FA|IM_max_vector2FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_max_vector3FA|IM_max_vector3FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_max_vector4FA|IM_max_vector4FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_normalize_vector2|IM_normalize_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_normalize_vector3|IM_normalize_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_normalize_vector4|IM_normalize_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_magnitude_vector2|IM_magnitude_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_magnitude_vector3|IM_magnitude_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_magnitude_vector4|IM_magnitude_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_dotproduct_vector2|IM_dotproduct_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_dotproduct_vector3|IM_dotproduct_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_dotproduct_vector4|IM_dotproduct_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_crossproduct_vector3|IM_crossproduct_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_transformpoint_vector3|IM_transformpoint_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_transformvector_vector3|IM_transformvector_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_transformnormal_vector3|IM_transformnormal_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_transformmatrix_vector2M3|IM_transformmatrix_vector2M3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_transformmatrix_vector3|IM_transformmatrix_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_transformmatrix_vector3M4|IM_transformmatrix_vector3M4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_transformmatrix_vector4|IM_transformmatrix_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_normalmap_float|IM_normalmap_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_normalmap_vector2|IM_normalmap_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_transpose_matrix33|IM_transpose_matrix33_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_transpose_matrix44|IM_transpose_matrix44_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_determinant_matrix33|IM_determinant_matrix33_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_determinant_matrix44|IM_determinant_matrix44_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_invertmatrix_matrix33|IM_invertmatrix_matrix33_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_invertmatrix_matrix44|IM_invertmatrix_matrix44_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_rotate2d_vector2|IM_rotate2d_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_rotate3d_vector3|IM_rotate3d_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_remap_float|IM_remap_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_remap_color3|IM_remap_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_remap_color4|IM_remap_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_remap_vector2|IM_remap_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_remap_vector3|IM_remap_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_remap_vector4|IM_remap_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_remap_color3FA|IM_remap_color3FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_remap_color4FA|IM_remap_color4FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_remap_vector2FA|IM_remap_vector2FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_remap_vector3FA|IM_remap_vector3FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_remap_vector4FA|IM_remap_vector4FA_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_smoothstep_float|IM_smoothstep_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_smoothstep_vector2|IM_smoothstep_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_smoothstep_vector3|IM_smoothstep_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_smoothstep_vector4|IM_smoothstep_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_luminance_color3|IM_luminance_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_luminance_color4|IM_luminance_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_rgbtohsv_color3|IM_rgbtohsv_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_rgbtohsv_color4|IM_rgbtohsv_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_hsvtorgb_color3|IM_hsvtorgb_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_hsvtorgb_color4|IM_hsvtorgb_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_premult_color4|IM_premult_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_unpremult_color4|IM_unpremult_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_plus_float|IM_plus_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_plus_color3|IM_plus_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_plus_color4|IM_plus_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_minus_float|IM_minus_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_minus_color3|IM_minus_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_minus_color4|IM_minus_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_difference_float|IM_difference_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_difference_color3|IM_difference_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_difference_color4|IM_difference_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_burn_float|IM_burn_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_burn_color3|IM_burn_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_burn_color4|IM_burn_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_dodge_float|IM_dodge_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_dodge_color3|IM_dodge_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_dodge_color4|IM_dodge_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_screen_float|IM_screen_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_screen_color3|IM_screen_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_screen_color4|IM_screen_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_disjointover_color4|IM_disjointover_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_in_color4|IM_in_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_mask_color4|IM_mask_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_matte_color4|IM_matte_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_out_color4|IM_out_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_over_color4|IM_over_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_inside_float|IM_inside_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_inside_color3|IM_inside_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_inside_color4|IM_inside_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_outside_float|IM_outside_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_outside_color3|IM_outside_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_outside_color4|IM_outside_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_mix_float|IM_mix_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_mix_color3|IM_mix_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_mix_color3_color3|IM_mix_color3_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_mix_color4|IM_mix_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_mix_color4_color4|IM_mix_color4_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_mix_vector2|IM_mix_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_mix_vector2_vector2|IM_mix_vector2_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_mix_vector3|IM_mix_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_mix_vector3_vector3|IM_mix_vector3_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_mix_vector4|IM_mix_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_mix_vector4_vector4|IM_mix_vector4_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_mix_surfaceshader|IM_mix_surfaceshader_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifgreater_float|IM_ifgreater_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifgreater_color3|IM_ifgreater_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifgreater_color4|IM_ifgreater_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifgreater_vector2|IM_ifgreater_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifgreater_vector3|IM_ifgreater_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifgreater_vector4|IM_ifgreater_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifgreater_floatI|IM_ifgreater_floatI_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifgreater_color3I|IM_ifgreater_color3I_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifgreater_color4I|IM_ifgreater_color4I_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifgreater_vector2I|IM_ifgreater_vector2I_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifgreater_vector3I|IM_ifgreater_vector3I_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifgreater_vector4I|IM_ifgreater_vector4I_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifgreatereq_float|IM_ifgreatereq_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifgreatereq_color3|IM_ifgreatereq_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifgreatereq_color4|IM_ifgreatereq_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifgreatereq_vector2|IM_ifgreatereq_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifgreatereq_vector3|IM_ifgreatereq_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifgreatereq_vector4|IM_ifgreatereq_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifgreatereq_floatI|IM_ifgreatereq_floatI_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifgreatereq_color3I|IM_ifgreatereq_color3I_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifgreatereq_color4I|IM_ifgreatereq_color4I_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifgreatereq_vector2I|IM_ifgreatereq_vector2I_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifgreatereq_vector3I|IM_ifgreatereq_vector3I_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifgreatereq_vector4I|IM_ifgreatereq_vector4I_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifequal_float|IM_ifequal_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifequal_color3|IM_ifequal_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifequal_color4|IM_ifequal_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifequal_vector2|IM_ifequal_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifequal_vector3|IM_ifequal_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifequal_vector4|IM_ifequal_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifequal_floatI|IM_ifequal_floatI_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifequal_color3I|IM_ifequal_color3I_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifequal_color4I|IM_ifequal_color4I_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifequal_vector2I|IM_ifequal_vector2I_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifequal_vector3I|IM_ifequal_vector3I_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifequal_vector4I|IM_ifequal_vector4I_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifequal_floatB|IM_ifequal_floatB_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifequal_color3B|IM_ifequal_color3B_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifequal_color4B|IM_ifequal_color4B_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifequal_vector2B|IM_ifequal_vector2B_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifequal_vector3B|IM_ifequal_vector3B_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_ifequal_vector4B|IM_ifequal_vector4B_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_switch_float|IM_switch_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_switch_color3|IM_switch_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_switch_color4|IM_switch_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_switch_vector2|IM_switch_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_switch_vector3|IM_switch_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_switch_vector4|IM_switch_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_switch_floatI|IM_switch_floatI_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_switch_color3I|IM_switch_color3I_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_switch_color4I|IM_switch_color4I_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_switch_vector2I|IM_switch_vector2I_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_switch_vector3I|IM_switch_vector3I_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_switch_vector4I|IM_switch_vector4I_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_convert_float_color3|IM_convert_float_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_convert_float_color4|IM_convert_float_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_convert_float_vector2|IM_convert_float_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_convert_float_vector3|IM_convert_float_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_convert_float_vector4|IM_convert_float_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_convert_vector2_vector3|IM_convert_vector2_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_convert_vector3_color3|IM_convert_vector3_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_convert_vector3_vector2|IM_convert_vector3_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_convert_vector3_vector4|IM_convert_vector3_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_convert_vector4_color4|IM_convert_vector4_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_convert_vector4_vector3|IM_convert_vector4_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_convert_color3_vector3|IM_convert_color3_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_convert_color4_vector4|IM_convert_color4_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_convert_color3_color4|IM_convert_color3_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_convert_color4_color3|IM_convert_color4_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_convert_boolean_float|IM_convert_boolean_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_convert_integer_float|IM_convert_integer_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_float_color3|IM_swizzle_float_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_float_color4|IM_swizzle_float_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_float_vector2|IM_swizzle_float_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_float_vector3|IM_swizzle_float_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_float_vector4|IM_swizzle_float_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_color3_float|IM_swizzle_color3_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_color3_color3|IM_swizzle_color3_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_color3_color4|IM_swizzle_color3_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_color3_vector2|IM_swizzle_color3_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_color3_vector3|IM_swizzle_color3_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_color3_vector4|IM_swizzle_color3_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_color4_float|IM_swizzle_color4_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_color4_color3|IM_swizzle_color4_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_color4_color4|IM_swizzle_color4_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_color4_vector2|IM_swizzle_color4_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_color4_vector3|IM_swizzle_color4_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_color4_vector4|IM_swizzle_color4_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_vector2_float|IM_swizzle_vector2_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_vector2_color3|IM_swizzle_vector2_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_vector2_color4|IM_swizzle_vector2_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_vector2_vector2|IM_swizzle_vector2_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_vector2_vector3|IM_swizzle_vector2_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_vector2_vector4|IM_swizzle_vector2_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_vector3_float|IM_swizzle_vector3_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_vector3_color3|IM_swizzle_vector3_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_vector3_color4|IM_swizzle_vector3_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_vector3_vector2|IM_swizzle_vector3_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_vector3_vector3|IM_swizzle_vector3_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_vector3_vector4|IM_swizzle_vector3_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_vector4_float|IM_swizzle_vector4_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_vector4_color3|IM_swizzle_vector4_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_vector4_color4|IM_swizzle_vector4_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_vector4_vector2|IM_swizzle_vector4_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_vector4_vector3|IM_swizzle_vector4_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_swizzle_vector4_vector4|IM_swizzle_vector4_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_combine2_vector2|IM_combine2_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_combine2_color4CF|IM_combine2_color4CF_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_combine2_vector4VF|IM_combine2_vector4VF_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_combine2_vector4VV|IM_combine2_vector4VV_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_combine3_color3|IM_combine3_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_combine3_vector3|IM_combine3_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_combine4_color4|IM_combine4_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_combine4_vector4|IM_combine4_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_creatematrix_vector3_matrix33|IM_creatematrix_vector3_matrix33_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_creatematrix_vector3_matrix44|IM_creatematrix_vector3_matrix44_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_creatematrix_vector4_matrix44|IM_creatematrix_vector4_matrix44_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_blur_float|IM_blur_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_blur_color3|IM_blur_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_blur_color4|IM_blur_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_blur_vector2|IM_blur_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_blur_vector3|IM_blur_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_blur_vector4|IM_blur_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_heighttonormal_vector3|IM_heighttonormal_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_dot_float|IM_dot_float_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_dot_color3|IM_dot_color3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_dot_color4|IM_dot_color4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_dot_vector2|IM_dot_vector2_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_dot_vector3|IM_dot_vector3_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_dot_vector4|IM_dot_vector4_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_dot_boolean|IM_dot_boolean_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_dot_integer|IM_dot_integer_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_dot_matrix33|IM_dot_matrix33_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_dot_matrix44|IM_dot_matrix44_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_dot_string|IM_dot_string_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_dot_filename|IM_dot_filename_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_dot_surfaceshader|IM_dot_surfaceshader_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_dot_displacementshader|IM_dot_displacementshader_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_dot_volumeshader|IM_dot_volumeshader_genmsl|stdlib_genmsl_impl.mtlx\n",
"|ND_dot_lightshader|IM_dot_lightshader_genmsl|stdlib_genmsl_impl.mtlx\n",
"\n",
" \n"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/markdown": [
"537 shaders: genosl
\n",
"\n",
"| Definition | Implementation | File |\n",
"| --- | --- | --- |\n",
"|ND_viewdirection_vector3|IM_viewdirection_vector3_genosl|nprlib_genosl_impl.mtlx\n",
"|ND_oren_nayar_diffuse_bsdf|IM_oren_nayar_diffuse_bsdf_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_burley_diffuse_bsdf|IM_burley_diffuse_bsdf_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_translucent_bsdf|IM_translucent_bsdf_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_dielectric_bsdf|IM_dielectric_bsdf_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_conductor_bsdf|IM_conductor_bsdf_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_generalized_schlick_bsdf|IM_generalized_schlick_bsdf_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_subsurface_bsdf|IM_subsurface_bsdf_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_sheen_bsdf|IM_sheen_bsdf_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_uniform_edf|IM_uniform_edf_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_generalized_schlick_edf|IM_generalized_schlick_edf_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_anisotropic_vdf|IM_anisotropic_vdf_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_surface|IM_surface_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_displacement_float|IM_displacement_float_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_displacement_vector3|IM_displacement_vector3_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_layer_bsdf|IM_layer_bsdf_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_layer_vdf|IM_layer_vdf_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_mix_bsdf|IM_mix_bsdf_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_mix_edf|IM_mix_edf_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_add_bsdf|IM_add_bsdf_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_add_edf|IM_add_edf_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_multiply_bsdfC|IM_multiply_bsdfC_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_multiply_bsdfF|IM_multiply_bsdfF_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_multiply_edfC|IM_multiply_edfC_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_multiply_edfF|IM_multiply_edfF_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_roughness_anisotropy|IM_roughness_anisotropy_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_roughness_dual|IM_roughness_dual_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_blackbody|IM_blackbody_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_artistic_ior|IM_artistic_ior_genosl|pbrlib_genosl_impl.mtlx\n",
"|ND_surfacematerial|IM_surfacematerial_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_surface_unlit|IM_surface_unlit_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_image_float|IM_image_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_image_color3|IM_image_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_image_color4|IM_image_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_image_vector2|IM_image_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_image_vector3|IM_image_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_image_vector4|IM_image_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_constant_float|IM_constant_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_constant_color3|IM_constant_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_constant_color4|IM_constant_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_constant_vector2|IM_constant_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_constant_vector3|IM_constant_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_constant_vector4|IM_constant_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_constant_boolean|IM_constant_boolean_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_constant_integer|IM_constant_integer_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_constant_matrix33|IM_constant_matrix33_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_constant_matrix44|IM_constant_matrix44_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_constant_string|IM_constant_string_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_constant_filename|IM_constant_filename_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ramplr_float|IM_ramplr_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ramplr_color3|IM_ramplr_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ramplr_color4|IM_ramplr_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ramplr_vector2|IM_ramplr_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ramplr_vector3|IM_ramplr_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ramplr_vector4|IM_ramplr_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ramptb_float|IM_ramptb_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ramptb_color3|IM_ramptb_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ramptb_color4|IM_ramptb_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ramptb_vector2|IM_ramptb_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ramptb_vector3|IM_ramptb_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ramptb_vector4|IM_ramptb_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_splitlr_float|IM_splitlr_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_splitlr_color3|IM_splitlr_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_splitlr_color4|IM_splitlr_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_splitlr_vector2|IM_splitlr_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_splitlr_vector3|IM_splitlr_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_splitlr_vector4|IM_splitlr_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_splittb_float|IM_splittb_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_splittb_color3|IM_splittb_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_splittb_color4|IM_splittb_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_splittb_vector2|IM_splittb_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_splittb_vector3|IM_splittb_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_splittb_vector4|IM_splittb_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_noise2d_float|IM_noise2d_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_noise2d_vector2|IM_noise2d_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_noise2d_vector3|IM_noise2d_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_noise2d_vector4|IM_noise2d_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_noise3d_float|IM_noise3d_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_noise3d_vector2|IM_noise3d_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_noise3d_vector3|IM_noise3d_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_noise3d_vector4|IM_noise3d_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_fractal3d_float|IM_fractal3d_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_fractal3d_vector2|IM_fractal3d_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_fractal3d_vector3|IM_fractal3d_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_fractal3d_vector4|IM_fractal3d_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_cellnoise2d_float|IM_cellnoise2d_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_cellnoise3d_float|IM_cellnoise3d_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_worleynoise2d_float|IM_worleynoise2d_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_worleynoise2d_vector2|IM_worleynoise2d_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_worleynoise2d_vector3|IM_worleynoise2d_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_worleynoise3d_float|IM_worleynoise3d_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_worleynoise3d_vector2|IM_worleynoise3d_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_worleynoise3d_vector3|IM_worleynoise3d_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_position_vector3|IM_position_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_normal_vector3|IM_normal_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_tangent_vector3|IM_tangent_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_bitangent_vector3|IM_bitangent_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_texcoord_vector2|IM_texcoord_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_texcoord_vector3|IM_texcoord_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_geomcolor_float|IM_geomcolor_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_geomcolor_color3|IM_geomcolor_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_geomcolor_color4|IM_geomcolor_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_geompropvalue_integer|IM_geompropvalue_integer_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_geompropvalue_boolean|IM_geompropvalue_boolean_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_geompropvalue_string|IM_geompropvalue_string_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_geompropvalue_float|IM_geompropvalue_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_geompropvalue_color3|IM_geompropvalue_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_geompropvalue_color4|IM_geompropvalue_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_geompropvalue_vector2|IM_geompropvalue_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_geompropvalue_vector3|IM_geompropvalue_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_geompropvalue_vector4|IM_geompropvalue_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ambientocclusion_float|IM_ambientocclusion_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_frame_float|IM_frame_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_time_float|IM_time_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_add_float|IM_add_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_add_color3|IM_add_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_add_color4|IM_add_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_add_vector2|IM_add_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_add_vector3|IM_add_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_add_vector4|IM_add_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_add_matrix33|IM_add_matrix33_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_add_matrix44|IM_add_matrix44_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_add_color3FA|IM_add_color3FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_add_color4FA|IM_add_color4FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_add_vector2FA|IM_add_vector2FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_add_vector3FA|IM_add_vector3FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_add_vector4FA|IM_add_vector4FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_add_matrix33FA|IM_add_matrix33FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_add_matrix44FA|IM_add_matrix44FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_subtract_float|IM_subtract_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_subtract_color3|IM_subtract_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_subtract_color4|IM_subtract_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_subtract_vector2|IM_subtract_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_subtract_vector3|IM_subtract_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_subtract_vector4|IM_subtract_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_subtract_matrix33|IM_subtract_matrix33_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_subtract_matrix44|IM_subtract_matrix44_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_subtract_color3FA|IM_subtract_color3FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_subtract_color4FA|IM_subtract_color4FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_subtract_vector2FA|IM_subtract_vector2FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_subtract_vector3FA|IM_subtract_vector3FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_subtract_vector4FA|IM_subtract_vector4FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_subtract_matrix33FA|IM_subtract_matrix33FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_subtract_matrix44FA|IM_subtract_matrix44FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_multiply_float|IM_multiply_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_multiply_color3|IM_multiply_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_multiply_color4|IM_multiply_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_multiply_vector2|IM_multiply_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_multiply_vector3|IM_multiply_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_multiply_vector4|IM_multiply_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_multiply_matrix33|IM_multiply_matrix33_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_multiply_matrix44|IM_multiply_matrix44_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_multiply_color3FA|IM_multiply_color3FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_multiply_color4FA|IM_multiply_color4FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_multiply_vector2FA|IM_multiply_vector2FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_multiply_vector3FA|IM_multiply_vector3FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_multiply_vector4FA|IM_multiply_vector4FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_divide_float|IM_divide_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_divide_color3|IM_divide_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_divide_color4|IM_divide_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_divide_vector2|IM_divide_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_divide_vector3|IM_divide_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_divide_vector4|IM_divide_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_divide_matrix33|IM_divide_matrix33_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_divide_matrix44|IM_divide_matrix44_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_divide_color3FA|IM_divide_color3FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_divide_color4FA|IM_divide_color4FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_divide_vector2FA|IM_divide_vector2FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_divide_vector3FA|IM_divide_vector3FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_divide_vector4FA|IM_divide_vector4FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_modulo_float|IM_modulo_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_modulo_color3|IM_modulo_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_modulo_color4|IM_modulo_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_modulo_vector2|IM_modulo_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_modulo_vector3|IM_modulo_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_modulo_vector4|IM_modulo_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_modulo_color3FA|IM_modulo_color3FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_modulo_color4FA|IM_modulo_color4FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_modulo_vector2FA|IM_modulo_vector2FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_modulo_vector3FA|IM_modulo_vector3FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_modulo_vector4FA|IM_modulo_vector4FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_invert_float|IM_invert_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_invert_color3|IM_invert_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_invert_color4|IM_invert_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_invert_vector2|IM_invert_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_invert_vector3|IM_invert_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_invert_vector4|IM_invert_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_invert_color3FA|IM_invert_color3FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_invert_color4FA|IM_invert_color4FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_invert_vector2FA|IM_invert_vector2FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_invert_vector3FA|IM_invert_vector3FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_invert_vector4FA|IM_invert_vector4FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_absval_float|IM_absval_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_absval_color3|IM_absval_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_absval_color4|IM_absval_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_absval_vector2|IM_absval_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_absval_vector3|IM_absval_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_absval_vector4|IM_absval_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_floor_float|IM_floor_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_floor_color3|IM_floor_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_floor_color4|IM_floor_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_floor_vector2|IM_floor_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_floor_vector3|IM_floor_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_floor_vector4|IM_floor_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_floor_integer|IM_floor_integer_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ceil_float|IM_ceil_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ceil_color3|IM_ceil_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ceil_color4|IM_ceil_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ceil_vector2|IM_ceil_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ceil_vector3|IM_ceil_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ceil_vector4|IM_ceil_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ceil_integer|IM_ceil_integer_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_round_float|IM_round_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_round_color3|IM_round_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_round_color4|IM_round_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_round_vector2|IM_round_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_round_vector3|IM_round_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_round_vector4|IM_round_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_round_integer|IM_round_integer_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_power_float|IM_power_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_power_color3|IM_power_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_power_color4|IM_power_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_power_vector2|IM_power_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_power_vector3|IM_power_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_power_vector4|IM_power_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_power_color3FA|IM_power_color3FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_power_color4FA|IM_power_color4FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_power_vector2FA|IM_power_vector2FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_power_vector3FA|IM_power_vector3FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_power_vector4FA|IM_power_vector4FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_sin_float|IM_sin_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_cos_float|IM_cos_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_tan_float|IM_tan_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_asin_float|IM_asin_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_acos_float|IM_acos_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_atan2_float|IM_atan2_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_sin_vector2|IM_sin_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_cos_vector2|IM_cos_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_tan_vector2|IM_tan_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_asin_vector2|IM_asin_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_acos_vector2|IM_acos_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_atan2_vector2|IM_atan2_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_sin_vector3|IM_sin_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_cos_vector3|IM_cos_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_tan_vector3|IM_tan_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_asin_vector3|IM_asin_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_acos_vector3|IM_acos_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_atan2_vector3|IM_atan2_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_sin_vector4|IM_sin_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_cos_vector4|IM_cos_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_tan_vector4|IM_tan_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_asin_vector4|IM_asin_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_acos_vector4|IM_acos_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_atan2_vector4|IM_atan2_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_sqrt_float|IM_sqrt_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ln_float|IM_ln_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_exp_float|IM_exp_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_sqrt_vector2|IM_sqrt_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ln_vector2|IM_ln_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_exp_vector2|IM_exp_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_sqrt_vector3|IM_sqrt_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ln_vector3|IM_ln_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_exp_vector3|IM_exp_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_sqrt_vector4|IM_sqrt_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ln_vector4|IM_ln_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_exp_vector4|IM_exp_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_sign_float|IM_sign_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_sign_color3|IM_sign_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_sign_color4|IM_sign_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_sign_vector2|IM_sign_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_sign_vector3|IM_sign_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_sign_vector4|IM_sign_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_clamp_float|IM_clamp_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_clamp_color3|IM_clamp_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_clamp_color4|IM_clamp_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_clamp_vector2|IM_clamp_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_clamp_vector3|IM_clamp_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_clamp_vector4|IM_clamp_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_clamp_color3FA|IM_clamp_color3FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_clamp_color4FA|IM_clamp_color4FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_clamp_vector2FA|IM_clamp_vector2FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_clamp_vector3FA|IM_clamp_vector3FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_clamp_vector4FA|IM_clamp_vector4FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_min_float|IM_min_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_min_color3|IM_min_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_min_color4|IM_min_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_min_vector2|IM_min_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_min_vector3|IM_min_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_min_vector4|IM_min_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_min_color3FA|IM_min_color3FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_min_color4FA|IM_min_color4FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_min_vector2FA|IM_min_vector2FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_min_vector3FA|IM_min_vector3FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_min_vector4FA|IM_min_vector4FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_max_float|IM_max_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_max_color3|IM_max_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_max_color4|IM_max_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_max_vector2|IM_max_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_max_vector3|IM_max_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_max_vector4|IM_max_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_max_color3FA|IM_max_color3FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_max_color4FA|IM_max_color4FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_max_vector2FA|IM_max_vector2FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_max_vector3FA|IM_max_vector3FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_max_vector4FA|IM_max_vector4FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_normalize_vector2|IM_normalize_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_normalize_vector3|IM_normalize_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_normalize_vector4|IM_normalize_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_magnitude_vector2|IM_magnitude_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_magnitude_vector3|IM_magnitude_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_magnitude_vector4|IM_magnitude_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_dotproduct_vector2|IM_dotproduct_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_dotproduct_vector3|IM_dotproduct_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_dotproduct_vector4|IM_dotproduct_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_crossproduct_vector3|IM_crossproduct_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_transformpoint_vector3|IM_transformpoint_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_transformvector_vector3|IM_transformvector_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_transformnormal_vector3|IM_transformnormal_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_transformmatrix_vector2M3|IM_transformmatrix_vector2M3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_transformmatrix_vector3|IM_transformmatrix_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_transformmatrix_vector3M4|IM_transformmatrix_vector3M4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_transformmatrix_vector4|IM_transformmatrix_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_normalmap_float|IM_normalmap_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_normalmap_vector2|IM_normalmap_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_transpose_matrix33|IM_transpose_matrix33_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_transpose_matrix44|IM_transpose_matrix44_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_determinant_matrix33|IM_determinant_matrix33_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_determinant_matrix44|IM_determinant_matrix44_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_invertmatrix_matrix33|IM_invertmatrix_matrix33_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_invertmatrix_matrix44|IM_invertmatrix_matrix44_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_rotate2d_vector2|IM_rotate2d_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_rotate3d_vector3|IM_rotate3d_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_remap_float|IM_remap_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_remap_color3|IM_remap_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_remap_color4|IM_remap_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_remap_vector2|IM_remap_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_remap_vector3|IM_remap_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_remap_vector4|IM_remap_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_remap_color3FA|IM_remap_color3FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_remap_color4FA|IM_remap_color4FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_remap_vector2FA|IM_remap_vector2FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_remap_vector3FA|IM_remap_vector3FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_remap_vector4FA|IM_remap_vector4FA_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_smoothstep_float|IM_smoothstep_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_smoothstep_vector2|IM_smoothstep_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_smoothstep_vector3|IM_smoothstep_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_smoothstep_vector4|IM_smoothstep_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_luminance_color3|IM_luminance_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_luminance_color4|IM_luminance_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_rgbtohsv_color3|IM_rgbtohsv_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_rgbtohsv_color4|IM_rgbtohsv_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_hsvtorgb_color3|IM_hsvtorgb_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_hsvtorgb_color4|IM_hsvtorgb_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_premult_color4|IM_premult_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_unpremult_color4|IM_unpremult_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_plus_float|IM_plus_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_plus_color3|IM_plus_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_plus_color4|IM_plus_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_minus_float|IM_minus_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_minus_color3|IM_minus_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_minus_color4|IM_minus_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_difference_float|IM_difference_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_difference_color3|IM_difference_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_difference_color4|IM_difference_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_burn_float|IM_burn_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_burn_color3|IM_burn_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_burn_color4|IM_burn_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_dodge_float|IM_dodge_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_dodge_color3|IM_dodge_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_dodge_color4|IM_dodge_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_screen_float|IM_screen_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_screen_color3|IM_screen_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_screen_color4|IM_screen_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_disjointover_color4|IM_disjointover_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_in_color4|IM_in_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_mask_color4|IM_mask_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_matte_color4|IM_matte_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_out_color4|IM_out_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_over_color4|IM_over_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_inside_float|IM_inside_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_inside_color3|IM_inside_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_inside_color4|IM_inside_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_outside_float|IM_outside_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_outside_color3|IM_outside_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_outside_color4|IM_outside_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_mix_float|IM_mix_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_mix_color3|IM_mix_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_mix_color3_color3|IM_mix_color3_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_mix_color4|IM_mix_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_mix_color4_color4|IM_mix_color4_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_mix_vector2|IM_mix_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_mix_vector2_vector2|IM_mix_vector2_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_mix_vector3|IM_mix_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_mix_vector3_vector3|IM_mix_vector3_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_mix_vector4|IM_mix_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_mix_vector4_vector4|IM_mix_vector4_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_mix_surfaceshader|IM_mix_surfaceshader_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifgreater_float|IM_ifgreater_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifgreater_color3|IM_ifgreater_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifgreater_color4|IM_ifgreater_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifgreater_vector2|IM_ifgreater_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifgreater_vector3|IM_ifgreater_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifgreater_vector4|IM_ifgreater_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifgreater_floatI|IM_ifgreater_floatI_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifgreater_color3I|IM_ifgreater_color3I_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifgreater_color4I|IM_ifgreater_color4I_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifgreater_vector2I|IM_ifgreater_vector2I_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifgreater_vector3I|IM_ifgreater_vector3I_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifgreater_vector4I|IM_ifgreater_vector4I_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifgreatereq_float|IM_ifgreatereq_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifgreatereq_color3|IM_ifgreatereq_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifgreatereq_color4|IM_ifgreatereq_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifgreatereq_vector2|IM_ifgreatereq_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifgreatereq_vector3|IM_ifgreatereq_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifgreatereq_vector4|IM_ifgreatereq_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifgreatereq_floatI|IM_ifgreatereq_floatI_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifgreatereq_color3I|IM_ifgreatereq_color3I_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifgreatereq_color4I|IM_ifgreatereq_color4I_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifgreatereq_vector2I|IM_ifgreatereq_vector2I_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifgreatereq_vector3I|IM_ifgreatereq_vector3I_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifgreatereq_vector4I|IM_ifgreatereq_vector4I_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifequal_float|IM_ifequal_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifequal_color3|IM_ifequal_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifequal_color4|IM_ifequal_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifequal_vector2|IM_ifequal_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifequal_vector3|IM_ifequal_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifequal_vector4|IM_ifequal_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifequal_floatI|IM_ifequal_floatI_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifequal_color3I|IM_ifequal_color3I_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifequal_color4I|IM_ifequal_color4I_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifequal_vector2I|IM_ifequal_vector2I_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifequal_vector3I|IM_ifequal_vector3I_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifequal_vector4I|IM_ifequal_vector4I_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifequal_floatB|IM_ifequal_floatB_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifequal_color3B|IM_ifequal_color3B_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifequal_color4B|IM_ifequal_color4B_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifequal_vector2B|IM_ifequal_vector2B_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifequal_vector3B|IM_ifequal_vector3B_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_ifequal_vector4B|IM_ifequal_vector4B_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_switch_float|IM_switch_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_switch_color3|IM_switch_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_switch_color4|IM_switch_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_switch_vector2|IM_switch_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_switch_vector3|IM_switch_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_switch_vector4|IM_switch_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_switch_floatI|IM_switch_floatI_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_switch_color3I|IM_switch_color3I_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_switch_color4I|IM_switch_color4I_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_switch_vector2I|IM_switch_vector2I_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_switch_vector3I|IM_switch_vector3I_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_switch_vector4I|IM_switch_vector4I_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_convert_float_color3|IM_convert_float_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_convert_float_color4|IM_convert_float_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_convert_float_vector2|IM_convert_float_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_convert_float_vector3|IM_convert_float_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_convert_float_vector4|IM_convert_float_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_convert_vector2_vector3|IM_convert_vector2_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_convert_vector3_color3|IM_convert_vector3_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_convert_vector3_vector2|IM_convert_vector3_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_convert_vector3_vector4|IM_convert_vector3_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_convert_vector4_color4|IM_convert_vector4_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_convert_vector4_vector3|IM_convert_vector4_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_convert_color3_vector3|IM_convert_color3_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_convert_color4_vector4|IM_convert_color4_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_convert_color3_color4|IM_convert_color3_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_convert_color4_color3|IM_convert_color4_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_convert_boolean_float|IM_convert_boolean_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_convert_integer_float|IM_convert_integer_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_float_color3|IM_swizzle_float_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_float_color4|IM_swizzle_float_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_float_vector2|IM_swizzle_float_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_float_vector3|IM_swizzle_float_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_float_vector4|IM_swizzle_float_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_color3_float|IM_swizzle_color3_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_color3_color3|IM_swizzle_color3_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_color3_color4|IM_swizzle_color3_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_color3_vector2|IM_swizzle_color3_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_color3_vector3|IM_swizzle_color3_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_color3_vector4|IM_swizzle_color3_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_color4_float|IM_swizzle_color4_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_color4_color3|IM_swizzle_color4_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_color4_color4|IM_swizzle_color4_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_color4_vector2|IM_swizzle_color4_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_color4_vector3|IM_swizzle_color4_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_color4_vector4|IM_swizzle_color4_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_vector2_float|IM_swizzle_vector2_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_vector2_color3|IM_swizzle_vector2_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_vector2_color4|IM_swizzle_vector2_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_vector2_vector2|IM_swizzle_vector2_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_vector2_vector3|IM_swizzle_vector2_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_vector2_vector4|IM_swizzle_vector2_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_vector3_float|IM_swizzle_vector3_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_vector3_color3|IM_swizzle_vector3_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_vector3_color4|IM_swizzle_vector3_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_vector3_vector2|IM_swizzle_vector3_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_vector3_vector3|IM_swizzle_vector3_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_vector3_vector4|IM_swizzle_vector3_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_vector4_float|IM_swizzle_vector4_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_vector4_color3|IM_swizzle_vector4_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_vector4_color4|IM_swizzle_vector4_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_vector4_vector2|IM_swizzle_vector4_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_vector4_vector3|IM_swizzle_vector4_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_swizzle_vector4_vector4|IM_swizzle_vector4_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_combine2_vector2|IM_combine2_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_combine2_color4CF|IM_combine2_color4CF_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_combine2_vector4VF|IM_combine2_vector4VF_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_combine2_vector4VV|IM_combine2_vector4VV_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_combine3_color3|IM_combine3_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_combine3_vector3|IM_combine3_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_combine4_color4|IM_combine4_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_combine4_vector4|IM_combine4_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_creatematrix_vector3_matrix33|IM_creatematrix_vector3_matrix33_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_creatematrix_vector3_matrix44|IM_creatematrix_vector3_matrix44_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_creatematrix_vector4_matrix44|IM_creatematrix_vector4_matrix44_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_blur_float|IM_blur_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_blur_color3|IM_blur_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_blur_color4|IM_blur_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_blur_vector2|IM_blur_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_blur_vector3|IM_blur_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_blur_vector4|IM_blur_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_heighttonormal_vector3|IM_heighttonormal_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_dot_float|IM_dot_float_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_dot_color3|IM_dot_color3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_dot_color4|IM_dot_color4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_dot_vector2|IM_dot_vector2_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_dot_vector3|IM_dot_vector3_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_dot_vector4|IM_dot_vector4_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_dot_boolean|IM_dot_boolean_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_dot_integer|IM_dot_integer_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_dot_matrix33|IM_dot_matrix33_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_dot_matrix44|IM_dot_matrix44_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_dot_string|IM_dot_string_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_dot_filename|IM_dot_filename_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_dot_surfaceshader|IM_dot_surfaceshader_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_dot_displacementshader|IM_dot_displacementshader_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_dot_volumeshader|IM_dot_volumeshader_genosl|stdlib_genosl_impl.mtlx\n",
"|ND_dot_lightshader|IM_dot_lightshader_genosl|stdlib_genosl_impl.mtlx\n",
"\n",
" \n"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/markdown": [
"190 node graphs
\n",
"\n",
"| Definition | NodeGraph | File |\n",
"| --- | --- | --- |\n",
"|ND_disney_brdf_2012_surface|IM_disney_brdf_2012_surface_brdf_explorer|disney_brdf_2012.mtlx\n",
"|ND_disney_bsdf_2015_surface|IM_disney_bsdf_2015_surface_pbrt|disney_brdf_2015.mtlx\n",
"|ND_gltf_pbr_surfaceshader|IMPL_gltf_pbr_surfaceshader|gltf_pbr.mtlx\n",
"|ND_gltf_colorimage|NG_gltf_colorimage|gltf_pbr.mtlx\n",
"|ND_gltf_image_color3_color3_1_0|NG_NG_gltf_image_color3_color3_1_0|gltf_pbr.mtlx\n",
"|ND_gltf_image_color4_color4_1_0|NG_gltf_image_color4_color4_1_0|gltf_pbr.mtlx\n",
"|ND_gltf_image_float_float_1_0|NG_gltf_image_float_float_1_0|gltf_pbr.mtlx\n",
"|ND_gltf_image_vector3_vector3_1_0|NG_gltf_image_vector3_vector3_1_0|gltf_pbr.mtlx\n",
"|ND_gltf_normalmap_vector3_1_0|NG_gltf_normalmap_vector3_1_0|gltf_pbr.mtlx\n",
"|ND_gltf_iridescence_thickness_float_1_0|NG_gltf_iridescence_thickness_float_1_0|gltf_pbr.mtlx\n",
"|ND_open_pbr_surface_surfaceshader|NG_open_pbr_surface_surfaceshader|open_pbr_surface.mtlx\n",
"|ND_standard_surface_surfaceshader|NG_standard_surface_surfaceshader_100|standard_surface.mtlx\n",
"|ND_UsdPreviewSurface_surfaceshader|IMP_UsdPreviewSurface_surfaceshader|usd_preview_surface.mtlx\n",
"|ND_UsdUVTexture|IMP_UsdUVTexture_22|usd_preview_surface.mtlx\n",
"|ND_UsdUVTexture_23|IMP_UsdUVTexture_23|usd_preview_surface.mtlx\n",
"|ND_UsdPrimvarReader_integer|IMP_UsdPrimvarReader_integer|usd_preview_surface.mtlx\n",
"|ND_UsdPrimvarReader_boolean|IMP_UsdPrimvarReader_boolean|usd_preview_surface.mtlx\n",
"|ND_UsdPrimvarReader_string|IMP_UsdPrimvarReader_string|usd_preview_surface.mtlx\n",
"|ND_UsdPrimvarReader_float|IMP_UsdPrimvarReader_float|usd_preview_surface.mtlx\n",
"|ND_UsdPrimvarReader_vector2|IMP_UsdPrimvarReader_vector2|usd_preview_surface.mtlx\n",
"|ND_UsdPrimvarReader_vector3|IMP_UsdPrimvarReader_vector3|usd_preview_surface.mtlx\n",
"|ND_UsdPrimvarReader_vector4|IMP_UsdPrimvarReader_vector4|usd_preview_surface.mtlx\n",
"|ND_UsdTransform2d|IMP_UsdTransform2d|usd_preview_surface.mtlx\n",
"|ND_lama_add_bsdf|NG_lama_add_bsdf|lama_add.mtlx\n",
"|ND_lama_add_edf|NG_lama_add_edf|lama_add.mtlx\n",
"|ND_lama_conductor|IMPL_lama_conductor|lama_conductor.mtlx\n",
"|ND_lama_dielectric|IMPL_lama_dielectric|lama_dielectric.mtlx\n",
"|ND_lama_diffuse|NG_lama_diffuse|lama_diffuse.mtlx\n",
"|ND_lama_emission|IMPL_lama_emission|lama_emission.mtlx\n",
"|ND_lama_layer_bsdf|NG_lama_layer_bsdf|lama_layer.mtlx\n",
"|ND_lama_mix_bsdf|NG_lama_mix_bsdf|lama_mix.mtlx\n",
"|ND_lama_mix_edf|NG_lama_mix_edf|lama_mix.mtlx\n",
"|ND_lama_sheen|IMPL_lama_sheen|lama_sheen.mtlx\n",
"|ND_lama_sss|IMPL_lama_sss|lama_sss.mtlx\n",
"|ND_lama_translucent|NG_lama_translucent|lama_translucent.mtlx\n",
"|ND_standard_surface_to_gltf_pbr|NG_standard_surface_to_gltf_pbr|standard_surface_to_gltf_pbr.mtlx\n",
"|ND_standard_surface_to_UsdPreviewSurface|NG_standard_surface_to_UsdPreviewSurface|standard_surface_to_usd.mtlx\n",
"|ND_g18_rec709_to_lin_rec709_color3|NG_g18_rec709_to_lin_rec709_color3|cmlib_ng.mtlx\n",
"|ND_g18_rec709_to_lin_rec709_color4|NG_g18_rec709_to_lin_rec709_color4|cmlib_ng.mtlx\n",
"|ND_g22_rec709_to_lin_rec709_color3|NG_g22_rec709_to_lin_rec709_color3|cmlib_ng.mtlx\n",
"|ND_g22_rec709_to_lin_rec709_color4|NG_g22_rec709_to_lin_rec709_color4|cmlib_ng.mtlx\n",
"|ND_rec709_display_to_lin_rec709_color3|NG_rec709_display_to_lin_rec709_color3|cmlib_ng.mtlx\n",
"|ND_rec709_display_to_lin_rec709_color4|NG_rec709_display_to_lin_rec709_color4|cmlib_ng.mtlx\n",
"|ND_acescg_to_lin_rec709_color3|NG_acescg_to_lin_rec709_color3|cmlib_ng.mtlx\n",
"|ND_acescg_to_lin_rec709_color4|NG_acescg_to_lin_rec709_color4|cmlib_ng.mtlx\n",
"|ND_g22_ap1_to_lin_rec709_color3|NG_g22_ap1_to_lin_rec709_color3|cmlib_ng.mtlx\n",
"|ND_g22_ap1_to_lin_rec709_color4|NG_g22_ap1_to_lin_rec709_color4|cmlib_ng.mtlx\n",
"|ND_srgb_texture_to_lin_rec709_color3|NG_srgb_texture_to_lin_rec709_color3|cmlib_ng.mtlx\n",
"|ND_srgb_texture_to_lin_rec709_color4|NG_srgb_texture_to_lin_rec709_color4|cmlib_ng.mtlx\n",
"|ND_lin_adobergb_to_lin_rec709_color3|NG_lin_adobergb_to_lin_rec709_color3|cmlib_ng.mtlx\n",
"|ND_lin_adobergb_to_lin_rec709_color4|NG_lin_adobergb_to_lin_rec709_color4|cmlib_ng.mtlx\n",
"|ND_adobergb_to_lin_rec709_color3|NG_adobergb_to_lin_rec709_color3|cmlib_ng.mtlx\n",
"|ND_adobergb_to_lin_rec709_color4|NG_adobergb_to_lin_rec709_color4|cmlib_ng.mtlx\n",
"|ND_srgb_displayp3_to_lin_rec709_color3|NG_srgb_displayp3_to_lin_rec709_color3|cmlib_ng.mtlx\n",
"|ND_srgb_displayp3_to_lin_rec709_color4|NG_srgb_displayp3_to_lin_rec709_color4|cmlib_ng.mtlx\n",
"|ND_lin_displayp3_to_lin_rec709_color3|NG_lin_displayp3_to_lin_rec709_color3|cmlib_ng.mtlx\n",
"|ND_lin_displayp3_to_lin_rec709_color4|NG_lin_displayp3_to_lin_rec709_color4|cmlib_ng.mtlx\n",
"|ND_facingratio_float|NG_facingratio_float|nprlib_ng.mtlx\n",
"|ND_gooch_shade|NG_gooch_shade|nprlib_ng.mtlx\n",
"|ND_glossiness_anisotropy|IMP_glossiness_anisotropy|pbrlib_ng.mtlx\n",
"|ND_tiledimage_float|NG_tiledimage_float|stdlib_ng.mtlx\n",
"|ND_tiledimage_color3|NG_tiledimage_color3|stdlib_ng.mtlx\n",
"|ND_tiledimage_color4|NG_tiledimage_color4|stdlib_ng.mtlx\n",
"|ND_tiledimage_vector2|NG_tiledimage_vector2|stdlib_ng.mtlx\n",
"|ND_tiledimage_vector3|NG_tiledimage_vector3|stdlib_ng.mtlx\n",
"|ND_tiledimage_vector4|NG_tiledimage_vector4|stdlib_ng.mtlx\n",
"|ND_triplanarprojection_float|NG_triplanarprojection_float|stdlib_ng.mtlx\n",
"|ND_triplanarprojection_color3|NG_triplanarprojection_color3|stdlib_ng.mtlx\n",
"|ND_triplanarprojection_color4|NG_triplanarprojection_color4|stdlib_ng.mtlx\n",
"|ND_triplanarprojection_vector2|NG_triplanarprojection_vector2|stdlib_ng.mtlx\n",
"|ND_triplanarprojection_vector3|NG_triplanarprojection_vector3|stdlib_ng.mtlx\n",
"|ND_triplanarprojection_vector4|NG_triplanarprojection_vector4|stdlib_ng.mtlx\n",
"|ND_ramp4_float|NG_ramp4_float|stdlib_ng.mtlx\n",
"|ND_ramp4_color3|NG_ramp4_color3|stdlib_ng.mtlx\n",
"|ND_ramp4_color4|NG_ramp4_color4|stdlib_ng.mtlx\n",
"|ND_ramp4_vector2|NG_ramp4_vector2|stdlib_ng.mtlx\n",
"|ND_ramp4_vector3|NG_ramp4_vector3|stdlib_ng.mtlx\n",
"|ND_ramp4_vector4|NG_ramp4_vector4|stdlib_ng.mtlx\n",
"|ND_noise2d_color3|NG_noise2d_color3|stdlib_ng.mtlx\n",
"|ND_noise2d_color4|NG_noise2d_color4|stdlib_ng.mtlx\n",
"|ND_noise2d_color3FA|NG_noise2d_color3FA|stdlib_ng.mtlx\n",
"|ND_noise2d_color4FA|NG_noise2d_color4FA|stdlib_ng.mtlx\n",
"|ND_noise2d_vector2FA|NG_noise2d_vector2FA|stdlib_ng.mtlx\n",
"|ND_noise2d_vector3FA|NG_noise2d_vector3FA|stdlib_ng.mtlx\n",
"|ND_noise2d_vector4FA|NG_noise2d_vector4FA|stdlib_ng.mtlx\n",
"|ND_noise3d_color3|NG_noise3d_color3|stdlib_ng.mtlx\n",
"|ND_noise3d_color4|NG_noise3d_color4|stdlib_ng.mtlx\n",
"|ND_noise3d_color3FA|NG_noise3d_color3FA|stdlib_ng.mtlx\n",
"|ND_noise3d_color4FA|NG_noise3d_color4FA|stdlib_ng.mtlx\n",
"|ND_noise3d_vector2FA|NG_noise3d_vector2FA|stdlib_ng.mtlx\n",
"|ND_noise3d_vector3FA|NG_noise3d_vector3FA|stdlib_ng.mtlx\n",
"|ND_noise3d_vector4FA|NG_noise3d_vector4FA|stdlib_ng.mtlx\n",
"|ND_fractal3d_color3|NG_fractal3d_color3|stdlib_ng.mtlx\n",
"|ND_fractal3d_color4|NG_fractal3d_color4|stdlib_ng.mtlx\n",
"|ND_fractal3d_color3FA|NG_fractal3d_color3FA|stdlib_ng.mtlx\n",
"|ND_fractal3d_color4FA|NG_fractal3d_color4FA|stdlib_ng.mtlx\n",
"|ND_fractal3d_vector2FA|NG_fractal3d_vector2FA|stdlib_ng.mtlx\n",
"|ND_fractal3d_vector3FA|NG_fractal3d_vector3FA|stdlib_ng.mtlx\n",
"|ND_fractal3d_vector4FA|NG_fractal3d_vector4FA|stdlib_ng.mtlx\n",
"|ND_unifiednoise2d_float|NG_unifiednoise2d_float|stdlib_ng.mtlx\n",
"|ND_unifiednoise3d_float|NG_unifiednoise3d_float|stdlib_ng.mtlx\n",
"|ND_randomfloat_float|NG_randomfloat_float|stdlib_ng.mtlx\n",
"|ND_randomfloat_integer|NG_randomfloat_integer|stdlib_ng.mtlx\n",
"|ND_randomcolor_float|NG_randomcolor_float|stdlib_ng.mtlx\n",
"|ND_randomcolor_integer|NG_randomcolor_integer|stdlib_ng.mtlx\n",
"|ND_checkerboard_color3|NG_checkerboard_color3|stdlib_ng.mtlx\n",
"|ND_line_float|NG_line_float|stdlib_ng.mtlx\n",
"|ND_circle_float|NG_circle_float|stdlib_ng.mtlx\n",
"|ND_cloverleaf_float|NG_cloverleaf_float|stdlib_ng.mtlx\n",
"|ND_hexagon_float|NG_hexagon_float|stdlib_ng.mtlx\n",
"|ND_grid_color3|NG_grid_color3|stdlib_ng.mtlx\n",
"|ND_crosshatch_color3|NG_crosshatch_color3|stdlib_ng.mtlx\n",
"|ND_tiledcircles_color3|NG_tiledcircles_color3|stdlib_ng.mtlx\n",
"|ND_tiledcloverleafs_color3|NG_tiledcloverleafs_color3|stdlib_ng.mtlx\n",
"|ND_tiledhexagons_color3|NG_tiledhexagons_color3|stdlib_ng.mtlx\n",
"|ND_bump_vector3|NG_bump_vector3|stdlib_ng.mtlx\n",
"|ND_safepower_float|NG_safepower_float|stdlib_ng.mtlx\n",
"|ND_safepower_color3|NG_safepower_color3|stdlib_ng.mtlx\n",
"|ND_safepower_color4|NG_safepower_color4|stdlib_ng.mtlx\n",
"|ND_safepower_vector2|NG_safepower_vector2|stdlib_ng.mtlx\n",
"|ND_safepower_vector3|NG_safepower_vector3|stdlib_ng.mtlx\n",
"|ND_safepower_vector4|NG_safepower_vector4|stdlib_ng.mtlx\n",
"|ND_safepower_color3FA|NG_safepower_color3FA|stdlib_ng.mtlx\n",
"|ND_safepower_color4FA|NG_safepower_color4FA|stdlib_ng.mtlx\n",
"|ND_safepower_vector2FA|NG_safepower_vector2FA|stdlib_ng.mtlx\n",
"|ND_safepower_vector3FA|NG_safepower_vector3FA|stdlib_ng.mtlx\n",
"|ND_safepower_vector4FA|NG_safepower_vector4FA|stdlib_ng.mtlx\n",
"|ND_distance_vector2|NG_distance_vector2|stdlib_ng.mtlx\n",
"|ND_distance_vector3|NG_distance_vector3|stdlib_ng.mtlx\n",
"|ND_distance_vector4|NG_distance_vector4|stdlib_ng.mtlx\n",
"|ND_place2d_vector2|NG_place2d_vector2|stdlib_ng.mtlx\n",
"|ND_trianglewave_float|NG_trianglewave_float|stdlib_ng.mtlx\n",
"|ND_reflect_vector3|NG_reflect_vector3|stdlib_ng.mtlx\n",
"|ND_refract_vector3|NG_refract_vector3|stdlib_ng.mtlx\n",
"|ND_smoothstep_color3|NG_smoothstep_color3|stdlib_ng.mtlx\n",
"|ND_smoothstep_color4|NG_smoothstep_color4|stdlib_ng.mtlx\n",
"|ND_smoothstep_color3FA|NG_smoothstep_color3FA|stdlib_ng.mtlx\n",
"|ND_smoothstep_color4FA|NG_smoothstep_color4FA|stdlib_ng.mtlx\n",
"|ND_smoothstep_vector2FA|NG_smoothstep_vector2FA|stdlib_ng.mtlx\n",
"|ND_smoothstep_vector3FA|NG_smoothstep_vector3FA|stdlib_ng.mtlx\n",
"|ND_smoothstep_vector4FA|NG_smoothstep_vector4FA|stdlib_ng.mtlx\n",
"|ND_contrast_float|NG_contrast_float|stdlib_ng.mtlx\n",
"|ND_contrast_color3|NG_contrast_color3|stdlib_ng.mtlx\n",
"|ND_contrast_color4|NG_contrast_color4|stdlib_ng.mtlx\n",
"|ND_contrast_vector2|NG_contrast_vector2|stdlib_ng.mtlx\n",
"|ND_contrast_vector3|NG_contrast_vector3|stdlib_ng.mtlx\n",
"|ND_contrast_vector4|NG_contrast_vector4|stdlib_ng.mtlx\n",
"|ND_contrast_color3FA|NG_contrast_color3FA|stdlib_ng.mtlx\n",
"|ND_contrast_color4FA|NG_contrast_color4FA|stdlib_ng.mtlx\n",
"|ND_contrast_vector2FA|NG_contrast_vector2FA|stdlib_ng.mtlx\n",
"|ND_contrast_vector3FA|NG_contrast_vector3FA|stdlib_ng.mtlx\n",
"|ND_contrast_vector4FA|NG_contrast_vector4FA|stdlib_ng.mtlx\n",
"|ND_range_float|NG_range_float|stdlib_ng.mtlx\n",
"|ND_range_color3|NG_range_color3|stdlib_ng.mtlx\n",
"|ND_range_color4|NG_range_color4|stdlib_ng.mtlx\n",
"|ND_range_vector2|NG_range_vector2|stdlib_ng.mtlx\n",
"|ND_range_vector3|NG_range_vector3|stdlib_ng.mtlx\n",
"|ND_range_vector4|NG_range_vector4|stdlib_ng.mtlx\n",
"|ND_range_color3FA|NG_range_color3FA|stdlib_ng.mtlx\n",
"|ND_range_color4FA|NG_range_color4FA|stdlib_ng.mtlx\n",
"|ND_range_vector2FA|NG_range_vector2FA|stdlib_ng.mtlx\n",
"|ND_range_vector3FA|NG_range_vector3FA|stdlib_ng.mtlx\n",
"|ND_range_vector4FA|NG_range_vector4FA|stdlib_ng.mtlx\n",
"|ND_hsvadjust_color3|NG_hsvadjust_color3|stdlib_ng.mtlx\n",
"|ND_hsvadjust_color4|NG_hsvadjust_color4|stdlib_ng.mtlx\n",
"|ND_saturate_color3|NG_saturate_color3|stdlib_ng.mtlx\n",
"|ND_saturate_color4|NG_saturate_color4|stdlib_ng.mtlx\n",
"|ND_colorcorrect_color3|NG_colorcorrect_color3|stdlib_ng.mtlx\n",
"|ND_colorcorrect_color4|NG_colorcorrect_color4|stdlib_ng.mtlx\n",
"|ND_overlay_float|NG_overlay_float|stdlib_ng.mtlx\n",
"|ND_overlay_color3|NG_overlay_color3|stdlib_ng.mtlx\n",
"|ND_overlay_color4|NG_overlay_color4|stdlib_ng.mtlx\n",
"|ND_convert_color3_surfaceshader|NG_convert_color3_surfaceshader|stdlib_ng.mtlx\n",
"|ND_convert_color4_surfaceshader|NG_convert_color4_surfaceshader|stdlib_ng.mtlx\n",
"|ND_convert_float_surfaceshader|NG_convert_float_surfaceshader|stdlib_ng.mtlx\n",
"|ND_convert_vector2_surfaceshader|NG_convert_vector2_surfaceshader|stdlib_ng.mtlx\n",
"|ND_convert_vector3_surfaceshader|NG_convert_vector3_surfaceshader|stdlib_ng.mtlx\n",
"|ND_convert_vector4_surfaceshader|NG_convert_vector4_surfaceshader|stdlib_ng.mtlx\n",
"|ND_convert_integer_surfaceshader|NG_convert_integer_surfaceshader|stdlib_ng.mtlx\n",
"|ND_convert_boolean_surfaceshader|NG_convert_boolean_surfaceshader|stdlib_ng.mtlx\n",
"|ND_extract_color3|NG_extract_color3|stdlib_ng.mtlx\n",
"|ND_extract_color4|NG_extract_color4|stdlib_ng.mtlx\n",
"|ND_extract_vector2|NG_extract_vector2|stdlib_ng.mtlx\n",
"|ND_extract_vector3|NG_extract_vector3|stdlib_ng.mtlx\n",
"|ND_extract_vector4|NG_extract_vector4|stdlib_ng.mtlx\n",
"|ND_separate2_vector2|NG_separate2_vector2|stdlib_ng.mtlx\n",
"|ND_separate3_color3|NG_separate3_color3|stdlib_ng.mtlx\n",
"|ND_separate3_vector3|NG_separate3_vector3|stdlib_ng.mtlx\n",
"|ND_separate4_color4|NG_separate4_color4|stdlib_ng.mtlx\n",
"|ND_separate4_vector4|NG_separate4_vector4|stdlib_ng.mtlx\n",
"\n",
" \n"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/markdown": [
"**Previous Library Definitions / Implementations**\n"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/markdown": [
"0 node graphs
\n",
"\n",
"| Definition | NodeGraph | File |\n",
"| --- | --- | --- |\n",
"\n",
" \n"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"def print_implementations(nodedefs, targets, allimpls, title):\n",
" '''\n",
" Display all the implementations for the given nodedefs and targets.\n",
" '''\n",
" display_markdown(title, raw=True)\n",
" for target in targets:\n",
" impls = get_implementations(nodedefs, target, allimpls)\n",
"\n",
" if len(target) == 0:\n",
" result = '| Definition | NodeGraph | File |\\n'\n",
" else:\n",
" result = '| Definition | Implementation | File |\\n'\n",
" result = result + '| --- | --- | --- |\\n'\n",
" for impl in impls:\n",
" result = result + '|' + impl + '|' + impls[impl][0].getName() + '|' + impls[impl][1] + '\\n'\n",
" text = '' + str(len(impls)) + (' shaders: ' + target if target else ' node graphs') + '
\\n\\n' + result+ '\\n \\n' \n",
" display_markdown(text, raw=True)\n",
"\n",
"# Scan for all the current targets\n",
"title = '**Current Library Definitions / Implementations**\\n'\n",
"alltargets = currTargets\n",
"alltargets.append('')\n",
"allimpls = set()\n",
"print_implementations(currNodeDefs, alltargets, allimpls, title)\n",
"\n",
"# Scan for all the previous targets\n",
"title = '**Previous Library Definitions / Implementations**\\n'\n",
"alltargets = oldTargets\n",
"alltargets.append('')\n",
"allimpls = set()\n",
"print_implementations(otherNodeDefs, alltargets, allimpls, title)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can see from the results, that 2 new targets were introduced as well as a number of new implementations written as source code and node graphs. The discrepancy, in the source code counts gives a hint as to the extent support for certain node definitions. That is, implementations for a given target may not be available for certain nodes. An example is `ambientocclusion` which is not supported by hardware shader targets at time of\n",
"writing."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Comparing Implementations\n",
"\n",
"We will first check the number of implementations which are associated with a definition in each library.\n",
"We use the `getNodeDef()` to skip any unassociated implementations.\n",
" \n",
"We must check for implementations which are either:\n",
"1. Source implementations using \n",
"getImplementations() but also check explicity for:\n",
"2. Node graphs using \n",
"getNodeGraphs()\n",
"\n",
"This differs from when getting an implementation from a node definition which will return either a source\n",
"implementation or a node graph implementation when using `getImplementation()`.`"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Current implementation count: 2357\n",
"Previous implementation count: 0\n"
]
}
],
"source": [
"# Collect all Implementation and NodeGraph elements from two libraries\n",
"allImpls = set()\n",
"implsNoDef = set()\n",
"for i in currLibrary.getImplementations():\n",
" if i.getNodeDef():\n",
" allImpls.add(i.getName())\n",
" else:\n",
" implsNoDef.add(i.getName())\n",
"for i in currLibrary.getNodeGraphs():\n",
" if i.getNodeDef():\n",
" allImpls.add(i.getName())\n",
" else:\n",
" implsNoDef.add(i.getName())\n",
"print('Current implementation count:', len(allImpls))\n",
"\n",
"allImpls2 = set()\n",
"for i in otherLibrary.getImplementations():\n",
" if i.getNodeDef():\n",
" allImpls2.add(i.getName())\n",
" allImpls.add(i.getName())\n",
" else:\n",
" implsNoDef.add(i.getName())\n",
"for i in otherLibrary.getNodeGraphs():\n",
" if i.getNodeDef():\n",
" allImpls2.add(i.getName())\n",
" allImpls.add(i.getName())\n",
"print('Previous implementation count:', len(allImpls2))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"As with definitions we can compare the implementations which are in both libraries in detail."
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"data": {
"text/markdown": [
"2357 implementations added
\n",
"\n",
"| Name | Node Category | Node Type |\n",
"| --- | --- | --- |\n",
"| IMPL_gltf_pbr_surfaceshader | gltf_pbr | surfaceshader | \n",
"| IMPL_lama_conductor | LamaConductor | BSDF | \n",
"| IMPL_lama_dielectric | LamaDielectric | BSDF | \n",
"| IMPL_lama_emission | LamaEmission | EDF | \n",
"| IMPL_lama_sheen | LamaSheen | BSDF | \n",
"| IMPL_lama_sss | LamaSSS | BSDF | \n",
"| IMPL_standard_surface_surfaceshader_100 | standard_surface | surfaceshader | \n",
"| IMPL_standard_surface_surfaceshader_101 | standard_surface | surfaceshader | \n",
"| IMP_UsdPreviewSurface_surfaceshader | UsdPreviewSurface | surfaceshader | \n",
"| IMP_UsdPrimvarReader_boolean | UsdPrimvarReader | boolean | \n",
"| IMP_UsdPrimvarReader_float | UsdPrimvarReader | float | \n",
"| IMP_UsdPrimvarReader_integer | UsdPrimvarReader | integer | \n",
"| IMP_UsdPrimvarReader_string | UsdPrimvarReader | string | \n",
"| IMP_UsdPrimvarReader_vector2 | UsdPrimvarReader | vector2 | \n",
"| IMP_UsdPrimvarReader_vector3 | UsdPrimvarReader | vector3 | \n",
"| IMP_UsdPrimvarReader_vector4 | UsdPrimvarReader | vector4 | \n",
"| IMP_UsdTransform2d | UsdTransform2d | vector2 | \n",
"| IMP_UsdUVTexture_22 | UsdUVTexture | multioutput | \n",
"| IMP_UsdUVTexture_23 | UsdUVTexture | multioutput | \n",
"| IMP_glossiness_anisotropy | glossiness_anisotropy | vector2 | \n",
"| IM_absorption_vdf_genmdl | absorption_vdf | VDF | \n",
"| IM_absval_color3_genglsl | absval | color3 | \n",
"| IM_absval_color3_genmdl | absval | color3 | \n",
"| IM_absval_color3_genmsl | absval | color3 | \n",
"| IM_absval_color3_genosl | absval | color3 | \n",
"| IM_absval_color4_genglsl | absval | color4 | \n",
"| IM_absval_color4_genmdl | absval | color4 | \n",
"| IM_absval_color4_genmsl | absval | color4 | \n",
"| IM_absval_color4_genosl | absval | color4 | \n",
"| IM_absval_float_genglsl | absval | float | \n",
"| IM_absval_float_genmdl | absval | float | \n",
"| IM_absval_float_genmsl | absval | float | \n",
"| IM_absval_float_genosl | absval | float | \n",
"| IM_absval_vector2_genglsl | absval | vector2 | \n",
"| IM_absval_vector2_genmdl | absval | vector2 | \n",
"| IM_absval_vector2_genmsl | absval | vector2 | \n",
"| IM_absval_vector2_genosl | absval | vector2 | \n",
"| IM_absval_vector3_genglsl | absval | vector3 | \n",
"| IM_absval_vector3_genmdl | absval | vector3 | \n",
"| IM_absval_vector3_genmsl | absval | vector3 | \n",
"| IM_absval_vector3_genosl | absval | vector3 | \n",
"| IM_absval_vector4_genglsl | absval | vector4 | \n",
"| IM_absval_vector4_genmdl | absval | vector4 | \n",
"| IM_absval_vector4_genmsl | absval | vector4 | \n",
"| IM_absval_vector4_genosl | absval | vector4 | \n",
"| IM_acos_float_genglsl | acos | float | \n",
"| IM_acos_float_genmdl | acos | float | \n",
"| IM_acos_float_genmsl | acos | float | \n",
"| IM_acos_float_genosl | acos | float | \n",
"| IM_acos_vector2_genglsl | acos | vector2 | \n",
"| IM_acos_vector2_genmdl | acos | vector2 | \n",
"| IM_acos_vector2_genmsl | acos | vector2 | \n",
"| IM_acos_vector2_genosl | acos | vector2 | \n",
"| IM_acos_vector3_genglsl | acos | vector3 | \n",
"| IM_acos_vector3_genmdl | acos | vector3 | \n",
"| IM_acos_vector3_genmsl | acos | vector3 | \n",
"| IM_acos_vector3_genosl | acos | vector3 | \n",
"| IM_acos_vector4_genglsl | acos | vector4 | \n",
"| IM_acos_vector4_genmdl | acos | vector4 | \n",
"| IM_acos_vector4_genmsl | acos | vector4 | \n",
"| IM_acos_vector4_genosl | acos | vector4 | \n",
"| IM_add_bsdf_genglsl | add | BSDF | \n",
"| IM_add_bsdf_genmdl | add | BSDF | \n",
"| IM_add_bsdf_genmsl | add | BSDF | \n",
"| IM_add_bsdf_genosl | add | BSDF | \n",
"| IM_add_color3FA_genglsl | add | color3 | \n",
"| IM_add_color3FA_genmdl | add | color3 | \n",
"| IM_add_color3FA_genmsl | add | color3 | \n",
"| IM_add_color3FA_genosl | add | color3 | \n",
"| IM_add_color3_genglsl | add | color3 | \n",
"| IM_add_color3_genmdl | add | color3 | \n",
"| IM_add_color3_genmsl | add | color3 | \n",
"| IM_add_color3_genosl | add | color3 | \n",
"| IM_add_color4FA_genglsl | add | color4 | \n",
"| IM_add_color4FA_genmdl | add | color4 | \n",
"| IM_add_color4FA_genmsl | add | color4 | \n",
"| IM_add_color4FA_genosl | add | color4 | \n",
"| IM_add_color4_genglsl | add | color4 | \n",
"| IM_add_color4_genmdl | add | color4 | \n",
"| IM_add_color4_genmsl | add | color4 | \n",
"| IM_add_color4_genosl | add | color4 | \n",
"| IM_add_edf_genglsl | add | EDF | \n",
"| IM_add_edf_genmdl | add | EDF | \n",
"| IM_add_edf_genmsl | add | EDF | \n",
"| IM_add_edf_genosl | add | EDF | \n",
"| IM_add_float_genglsl | add | float | \n",
"| IM_add_float_genmdl | add | float | \n",
"| IM_add_float_genmsl | add | float | \n",
"| IM_add_float_genosl | add | float | \n",
"| IM_add_matrix33FA_genglsl | add | matrix33 | \n",
"| IM_add_matrix33FA_genmdl | add | matrix33 | \n",
"| IM_add_matrix33FA_genmsl | add | matrix33 | \n",
"| IM_add_matrix33FA_genosl | add | matrix33 | \n",
"| IM_add_matrix33_genglsl | add | matrix33 | \n",
"| IM_add_matrix33_genmdl | add | matrix33 | \n",
"| IM_add_matrix33_genmsl | add | matrix33 | \n",
"| IM_add_matrix33_genosl | add | matrix33 | \n",
"| IM_add_matrix44FA_genglsl | add | matrix44 | \n",
"| IM_add_matrix44FA_genmdl | add | matrix44 | \n",
"| IM_add_matrix44FA_genmsl | add | matrix44 | \n",
"| IM_add_matrix44FA_genosl | add | matrix44 | \n",
"| IM_add_matrix44_genglsl | add | matrix44 | \n",
"| IM_add_matrix44_genmdl | add | matrix44 | \n",
"| IM_add_matrix44_genmsl | add | matrix44 | \n",
"| IM_add_matrix44_genosl | add | matrix44 | \n",
"| IM_add_vdf_genmdl | add | VDF | \n",
"| IM_add_vector2FA_genglsl | add | vector2 | \n",
"| IM_add_vector2FA_genmdl | add | vector2 | \n",
"| IM_add_vector2FA_genmsl | add | vector2 | \n",
"| IM_add_vector2FA_genosl | add | vector2 | \n",
"| IM_add_vector2_genglsl | add | vector2 | \n",
"| IM_add_vector2_genmdl | add | vector2 | \n",
"| IM_add_vector2_genmsl | add | vector2 | \n",
"| IM_add_vector2_genosl | add | vector2 | \n",
"| IM_add_vector3FA_genglsl | add | vector3 | \n",
"| IM_add_vector3FA_genmdl | add | vector3 | \n",
"| IM_add_vector3FA_genmsl | add | vector3 | \n",
"| IM_add_vector3FA_genosl | add | vector3 | \n",
"| IM_add_vector3_genglsl | add | vector3 | \n",
"| IM_add_vector3_genmdl | add | vector3 | \n",
"| IM_add_vector3_genmsl | add | vector3 | \n",
"| IM_add_vector3_genosl | add | vector3 | \n",
"| IM_add_vector4FA_genglsl | add | vector4 | \n",
"| IM_add_vector4FA_genmdl | add | vector4 | \n",
"| IM_add_vector4FA_genmsl | add | vector4 | \n",
"| IM_add_vector4FA_genosl | add | vector4 | \n",
"| IM_add_vector4_genglsl | add | vector4 | \n",
"| IM_add_vector4_genmdl | add | vector4 | \n",
"| IM_add_vector4_genmsl | add | vector4 | \n",
"| IM_add_vector4_genosl | add | vector4 | \n",
"| IM_ambientocclusion_float_genmdl | ambientocclusion | float | \n",
"| IM_ambientocclusion_float_genosl | ambientocclusion | float | \n",
"| IM_anisotropic_vdf_genglsl | anisotropic_vdf | VDF | \n",
"| IM_anisotropic_vdf_genmdl | anisotropic_vdf | VDF | \n",
"| IM_anisotropic_vdf_genmsl | anisotropic_vdf | VDF | \n",
"| IM_anisotropic_vdf_genosl | anisotropic_vdf | VDF | \n",
"| IM_artistic_ior_genglsl | artistic_ior | multioutput | \n",
"| IM_artistic_ior_genmdl | artistic_ior | multioutput | \n",
"| IM_artistic_ior_genmsl | artistic_ior | multioutput | \n",
"| IM_artistic_ior_genosl | artistic_ior | multioutput | \n",
"| IM_asin_float_genglsl | asin | float | \n",
"| IM_asin_float_genmdl | asin | float | \n",
"| IM_asin_float_genmsl | asin | float | \n",
"| IM_asin_float_genosl | asin | float | \n",
"| IM_asin_vector2_genglsl | asin | vector2 | \n",
"| IM_asin_vector2_genmdl | asin | vector2 | \n",
"| IM_asin_vector2_genmsl | asin | vector2 | \n",
"| IM_asin_vector2_genosl | asin | vector2 | \n",
"| IM_asin_vector3_genglsl | asin | vector3 | \n",
"| IM_asin_vector3_genmdl | asin | vector3 | \n",
"| IM_asin_vector3_genmsl | asin | vector3 | \n",
"| IM_asin_vector3_genosl | asin | vector3 | \n",
"| IM_asin_vector4_genglsl | asin | vector4 | \n",
"| IM_asin_vector4_genmdl | asin | vector4 | \n",
"| IM_asin_vector4_genmsl | asin | vector4 | \n",
"| IM_asin_vector4_genosl | asin | vector4 | \n",
"| IM_atan2_float_genglsl | atan2 | float | \n",
"| IM_atan2_float_genmdl | atan2 | float | \n",
"| IM_atan2_float_genmsl | atan2 | float | \n",
"| IM_atan2_float_genosl | atan2 | float | \n",
"| IM_atan2_vector2_genglsl | atan2 | vector2 | \n",
"| IM_atan2_vector2_genmdl | atan2 | vector2 | \n",
"| IM_atan2_vector2_genmsl | atan2 | vector2 | \n",
"| IM_atan2_vector2_genosl | atan2 | vector2 | \n",
"| IM_atan2_vector3_genglsl | atan2 | vector3 | \n",
"| IM_atan2_vector3_genmdl | atan2 | vector3 | \n",
"| IM_atan2_vector3_genmsl | atan2 | vector3 | \n",
"| IM_atan2_vector3_genosl | atan2 | vector3 | \n",
"| IM_atan2_vector4_genglsl | atan2 | vector4 | \n",
"| IM_atan2_vector4_genmdl | atan2 | vector4 | \n",
"| IM_atan2_vector4_genmsl | atan2 | vector4 | \n",
"| IM_atan2_vector4_genosl | atan2 | vector4 | \n",
"| IM_bitangent_vector3_genglsl | bitangent | vector3 | \n",
"| IM_bitangent_vector3_genmdl | bitangent | vector3 | \n",
"| IM_bitangent_vector3_genmsl | bitangent | vector3 | \n",
"| IM_bitangent_vector3_genosl | bitangent | vector3 | \n",
"| IM_blackbody_genglsl | blackbody | color3 | \n",
"| IM_blackbody_genmdl | blackbody | color3 | \n",
"| IM_blackbody_genmsl | blackbody | color3 | \n",
"| IM_blackbody_genosl | blackbody | color3 | \n",
"| IM_blur_color3_genglsl | blur | color3 | \n",
"| IM_blur_color3_genmdl | blur | color3 | \n",
"| IM_blur_color3_genmsl | blur | color3 | \n",
"| IM_blur_color3_genosl | blur | color3 | \n",
"| IM_blur_color4_genglsl | blur | color4 | \n",
"| IM_blur_color4_genmdl | blur | color4 | \n",
"| IM_blur_color4_genmsl | blur | color4 | \n",
"| IM_blur_color4_genosl | blur | color4 | \n",
"| IM_blur_float_genglsl | blur | float | \n",
"| IM_blur_float_genmdl | blur | float | \n",
"| IM_blur_float_genmsl | blur | float | \n",
"| IM_blur_float_genosl | blur | float | \n",
"| IM_blur_vector2_genglsl | blur | vector2 | \n",
"| IM_blur_vector2_genmdl | blur | vector2 | \n",
"| IM_blur_vector2_genmsl | blur | vector2 | \n",
"| IM_blur_vector2_genosl | blur | vector2 | \n",
"| IM_blur_vector3_genglsl | blur | vector3 | \n",
"| IM_blur_vector3_genmdl | blur | vector3 | \n",
"| IM_blur_vector3_genmsl | blur | vector3 | \n",
"| IM_blur_vector3_genosl | blur | vector3 | \n",
"| IM_blur_vector4_genglsl | blur | vector4 | \n",
"| IM_blur_vector4_genmdl | blur | vector4 | \n",
"| IM_blur_vector4_genmsl | blur | vector4 | \n",
"| IM_blur_vector4_genosl | blur | vector4 | \n",
"| IM_burley_diffuse_bsdf_genglsl | burley_diffuse_bsdf | BSDF | \n",
"| IM_burley_diffuse_bsdf_genmdl | burley_diffuse_bsdf | BSDF | \n",
"| IM_burley_diffuse_bsdf_genmsl | burley_diffuse_bsdf | BSDF | \n",
"| IM_burley_diffuse_bsdf_genosl | burley_diffuse_bsdf | BSDF | \n",
"| IM_burn_color3_genglsl | burn | color3 | \n",
"| IM_burn_color3_genmdl | burn | color3 | \n",
"| IM_burn_color3_genmsl | burn | color3 | \n",
"| IM_burn_color3_genosl | burn | color3 | \n",
"| IM_burn_color4_genglsl | burn | color4 | \n",
"| IM_burn_color4_genmdl | burn | color4 | \n",
"| IM_burn_color4_genmsl | burn | color4 | \n",
"| IM_burn_color4_genosl | burn | color4 | \n",
"| IM_burn_float_genglsl | burn | float | \n",
"| IM_burn_float_genmdl | burn | float | \n",
"| IM_burn_float_genmsl | burn | float | \n",
"| IM_burn_float_genosl | burn | float | \n",
"| IM_ceil_color3_genglsl | ceil | color3 | \n",
"| IM_ceil_color3_genmdl | ceil | color3 | \n",
"| IM_ceil_color3_genmsl | ceil | color3 | \n",
"| IM_ceil_color3_genosl | ceil | color3 | \n",
"| IM_ceil_color4_genglsl | ceil | color4 | \n",
"| IM_ceil_color4_genmdl | ceil | color4 | \n",
"| IM_ceil_color4_genmsl | ceil | color4 | \n",
"| IM_ceil_color4_genosl | ceil | color4 | \n",
"| IM_ceil_float_genglsl | ceil | float | \n",
"| IM_ceil_float_genmdl | ceil | float | \n",
"| IM_ceil_float_genmsl | ceil | float | \n",
"| IM_ceil_float_genosl | ceil | float | \n",
"| IM_ceil_integer_genglsl | ceil | integer | \n",
"| IM_ceil_integer_genmdl | ceil | integer | \n",
"| IM_ceil_integer_genmsl | ceil | integer | \n",
"| IM_ceil_integer_genosl | ceil | integer | \n",
"| IM_ceil_vector2_genglsl | ceil | vector2 | \n",
"| IM_ceil_vector2_genmdl | ceil | vector2 | \n",
"| IM_ceil_vector2_genmsl | ceil | vector2 | \n",
"| IM_ceil_vector2_genosl | ceil | vector2 | \n",
"| IM_ceil_vector3_genglsl | ceil | vector3 | \n",
"| IM_ceil_vector3_genmdl | ceil | vector3 | \n",
"| IM_ceil_vector3_genmsl | ceil | vector3 | \n",
"| IM_ceil_vector3_genosl | ceil | vector3 | \n",
"| IM_ceil_vector4_genglsl | ceil | vector4 | \n",
"| IM_ceil_vector4_genmdl | ceil | vector4 | \n",
"| IM_ceil_vector4_genmsl | ceil | vector4 | \n",
"| IM_ceil_vector4_genosl | ceil | vector4 | \n",
"| IM_cellnoise2d_float_genglsl | cellnoise2d | float | \n",
"| IM_cellnoise2d_float_genmdl | cellnoise2d | float | \n",
"| IM_cellnoise2d_float_genmsl | cellnoise2d | float | \n",
"| IM_cellnoise2d_float_genosl | cellnoise2d | float | \n",
"| IM_cellnoise3d_float_genglsl | cellnoise3d | float | \n",
"| IM_cellnoise3d_float_genmdl | cellnoise3d | float | \n",
"| IM_cellnoise3d_float_genmsl | cellnoise3d | float | \n",
"| IM_cellnoise3d_float_genosl | cellnoise3d | float | \n",
"| IM_clamp_color3FA_genglsl | clamp | color3 | \n",
"| IM_clamp_color3FA_genmdl | clamp | color3 | \n",
"| IM_clamp_color3FA_genmsl | clamp | color3 | \n",
"| IM_clamp_color3FA_genosl | clamp | color3 | \n",
"| IM_clamp_color3_genglsl | clamp | color3 | \n",
"| IM_clamp_color3_genmdl | clamp | color3 | \n",
"| IM_clamp_color3_genmsl | clamp | color3 | \n",
"| IM_clamp_color3_genosl | clamp | color3 | \n",
"| IM_clamp_color4FA_genglsl | clamp | color4 | \n",
"| IM_clamp_color4FA_genmdl | clamp | color4 | \n",
"| IM_clamp_color4FA_genmsl | clamp | color4 | \n",
"| IM_clamp_color4FA_genosl | clamp | color4 | \n",
"| IM_clamp_color4_genglsl | clamp | color4 | \n",
"| IM_clamp_color4_genmdl | clamp | color4 | \n",
"| IM_clamp_color4_genmsl | clamp | color4 | \n",
"| IM_clamp_color4_genosl | clamp | color4 | \n",
"| IM_clamp_float_genglsl | clamp | float | \n",
"| IM_clamp_float_genmdl | clamp | float | \n",
"| IM_clamp_float_genmsl | clamp | float | \n",
"| IM_clamp_float_genosl | clamp | float | \n",
"| IM_clamp_vector2FA_genglsl | clamp | vector2 | \n",
"| IM_clamp_vector2FA_genmdl | clamp | vector2 | \n",
"| IM_clamp_vector2FA_genmsl | clamp | vector2 | \n",
"| IM_clamp_vector2FA_genosl | clamp | vector2 | \n",
"| IM_clamp_vector2_genglsl | clamp | vector2 | \n",
"| IM_clamp_vector2_genmdl | clamp | vector2 | \n",
"| IM_clamp_vector2_genmsl | clamp | vector2 | \n",
"| IM_clamp_vector2_genosl | clamp | vector2 | \n",
"| IM_clamp_vector3FA_genglsl | clamp | vector3 | \n",
"| IM_clamp_vector3FA_genmdl | clamp | vector3 | \n",
"| IM_clamp_vector3FA_genmsl | clamp | vector3 | \n",
"| IM_clamp_vector3FA_genosl | clamp | vector3 | \n",
"| IM_clamp_vector3_genglsl | clamp | vector3 | \n",
"| IM_clamp_vector3_genmdl | clamp | vector3 | \n",
"| IM_clamp_vector3_genmsl | clamp | vector3 | \n",
"| IM_clamp_vector3_genosl | clamp | vector3 | \n",
"| IM_clamp_vector4FA_genglsl | clamp | vector4 | \n",
"| IM_clamp_vector4FA_genmdl | clamp | vector4 | \n",
"| IM_clamp_vector4FA_genmsl | clamp | vector4 | \n",
"| IM_clamp_vector4FA_genosl | clamp | vector4 | \n",
"| IM_clamp_vector4_genglsl | clamp | vector4 | \n",
"| IM_clamp_vector4_genmdl | clamp | vector4 | \n",
"| IM_clamp_vector4_genmsl | clamp | vector4 | \n",
"| IM_clamp_vector4_genosl | clamp | vector4 | \n",
"| IM_combine2_color4CF_genglsl | combine2 | color4 | \n",
"| IM_combine2_color4CF_genmdl | combine2 | color4 | \n",
"| IM_combine2_color4CF_genmsl | combine2 | color4 | \n",
"| IM_combine2_color4CF_genosl | combine2 | color4 | \n",
"| IM_combine2_vector2_genglsl | combine2 | vector2 | \n",
"| IM_combine2_vector2_genmdl | combine2 | vector2 | \n",
"| IM_combine2_vector2_genmsl | combine2 | vector2 | \n",
"| IM_combine2_vector2_genosl | combine2 | vector2 | \n",
"| IM_combine2_vector4VF_genglsl | combine2 | vector4 | \n",
"| IM_combine2_vector4VF_genmdl | combine2 | vector4 | \n",
"| IM_combine2_vector4VF_genmsl | combine2 | vector4 | \n",
"| IM_combine2_vector4VF_genosl | combine2 | vector4 | \n",
"| IM_combine2_vector4VV_genglsl | combine2 | vector4 | \n",
"| IM_combine2_vector4VV_genmdl | combine2 | vector4 | \n",
"| IM_combine2_vector4VV_genmsl | combine2 | vector4 | \n",
"| IM_combine2_vector4VV_genosl | combine2 | vector4 | \n",
"| IM_combine3_color3_genglsl | combine3 | color3 | \n",
"| IM_combine3_color3_genmdl | combine3 | color3 | \n",
"| IM_combine3_color3_genmsl | combine3 | color3 | \n",
"| IM_combine3_color3_genosl | combine3 | color3 | \n",
"| IM_combine3_vector3_genglsl | combine3 | vector3 | \n",
"| IM_combine3_vector3_genmdl | combine3 | vector3 | \n",
"| IM_combine3_vector3_genmsl | combine3 | vector3 | \n",
"| IM_combine3_vector3_genosl | combine3 | vector3 | \n",
"| IM_combine4_color4_genglsl | combine4 | color4 | \n",
"| IM_combine4_color4_genmdl | combine4 | color4 | \n",
"| IM_combine4_color4_genmsl | combine4 | color4 | \n",
"| IM_combine4_color4_genosl | combine4 | color4 | \n",
"| IM_combine4_vector4_genglsl | combine4 | vector4 | \n",
"| IM_combine4_vector4_genmdl | combine4 | vector4 | \n",
"| IM_combine4_vector4_genmsl | combine4 | vector4 | \n",
"| IM_combine4_vector4_genosl | combine4 | vector4 | \n",
"| IM_conductor_bsdf_genglsl | conductor_bsdf | BSDF | \n",
"| IM_conductor_bsdf_genmdl | conductor_bsdf | BSDF | \n",
"| IM_conductor_bsdf_genmsl | conductor_bsdf | BSDF | \n",
"| IM_conductor_bsdf_genosl | conductor_bsdf | BSDF | \n",
"| IM_conical_edf_genmdl | conical_edf | EDF | \n",
"| IM_constant_boolean_genglsl | constant | boolean | \n",
"| IM_constant_boolean_genmdl | constant | boolean | \n",
"| IM_constant_boolean_genmsl | constant | boolean | \n",
"| IM_constant_boolean_genosl | constant | boolean | \n",
"| IM_constant_color3_genglsl | constant | color3 | \n",
"| IM_constant_color3_genmdl | constant | color3 | \n",
"| IM_constant_color3_genmsl | constant | color3 | \n",
"| IM_constant_color3_genosl | constant | color3 | \n",
"| IM_constant_color4_genglsl | constant | color4 | \n",
"| IM_constant_color4_genmdl | constant | color4 | \n",
"| IM_constant_color4_genmsl | constant | color4 | \n",
"| IM_constant_color4_genosl | constant | color4 | \n",
"| IM_constant_filename_genglsl | constant | filename | \n",
"| IM_constant_filename_genmdl | constant | filename | \n",
"| IM_constant_filename_genmsl | constant | filename | \n",
"| IM_constant_filename_genosl | constant | filename | \n",
"| IM_constant_float_genglsl | constant | float | \n",
"| IM_constant_float_genmdl | constant | float | \n",
"| IM_constant_float_genmsl | constant | float | \n",
"| IM_constant_float_genosl | constant | float | \n",
"| IM_constant_integer_genglsl | constant | integer | \n",
"| IM_constant_integer_genmdl | constant | integer | \n",
"| IM_constant_integer_genmsl | constant | integer | \n",
"| IM_constant_integer_genosl | constant | integer | \n",
"| IM_constant_matrix33_genglsl | constant | matrix33 | \n",
"| IM_constant_matrix33_genmdl | constant | matrix33 | \n",
"| IM_constant_matrix33_genmsl | constant | matrix33 | \n",
"| IM_constant_matrix33_genosl | constant | matrix33 | \n",
"| IM_constant_matrix44_genglsl | constant | matrix44 | \n",
"| IM_constant_matrix44_genmdl | constant | matrix44 | \n",
"| IM_constant_matrix44_genmsl | constant | matrix44 | \n",
"| IM_constant_matrix44_genosl | constant | matrix44 | \n",
"| IM_constant_string_genglsl | constant | string | \n",
"| IM_constant_string_genmdl | constant | string | \n",
"| IM_constant_string_genmsl | constant | string | \n",
"| IM_constant_string_genosl | constant | string | \n",
"| IM_constant_vector2_genglsl | constant | vector2 | \n",
"| IM_constant_vector2_genmdl | constant | vector2 | \n",
"| IM_constant_vector2_genmsl | constant | vector2 | \n",
"| IM_constant_vector2_genosl | constant | vector2 | \n",
"| IM_constant_vector3_genglsl | constant | vector3 | \n",
"| IM_constant_vector3_genmdl | constant | vector3 | \n",
"| IM_constant_vector3_genmsl | constant | vector3 | \n",
"| IM_constant_vector3_genosl | constant | vector3 | \n",
"| IM_constant_vector4_genglsl | constant | vector4 | \n",
"| IM_constant_vector4_genmdl | constant | vector4 | \n",
"| IM_constant_vector4_genmsl | constant | vector4 | \n",
"| IM_constant_vector4_genosl | constant | vector4 | \n",
"| IM_convert_boolean_float_genglsl | convert | float | \n",
"| IM_convert_boolean_float_genmdl | convert | float | \n",
"| IM_convert_boolean_float_genmsl | convert | float | \n",
"| IM_convert_boolean_float_genosl | convert | float | \n",
"| IM_convert_color3_color4_genglsl | convert | color4 | \n",
"| IM_convert_color3_color4_genmdl | convert | color4 | \n",
"| IM_convert_color3_color4_genmsl | convert | color4 | \n",
"| IM_convert_color3_color4_genosl | convert | color4 | \n",
"| IM_convert_color3_vector3_genglsl | convert | vector3 | \n",
"| IM_convert_color3_vector3_genmdl | convert | vector3 | \n",
"| IM_convert_color3_vector3_genmsl | convert | vector3 | \n",
"| IM_convert_color3_vector3_genosl | convert | vector3 | \n",
"| IM_convert_color4_color3_genglsl | convert | color3 | \n",
"| IM_convert_color4_color3_genmdl | convert | color3 | \n",
"| IM_convert_color4_color3_genmsl | convert | color3 | \n",
"| IM_convert_color4_color3_genosl | convert | color3 | \n",
"| IM_convert_color4_vector4_genglsl | convert | vector4 | \n",
"| IM_convert_color4_vector4_genmdl | convert | vector4 | \n",
"| IM_convert_color4_vector4_genmsl | convert | vector4 | \n",
"| IM_convert_color4_vector4_genosl | convert | vector4 | \n",
"| IM_convert_float_color3_genglsl | convert | color3 | \n",
"| IM_convert_float_color3_genmdl | convert | color3 | \n",
"| IM_convert_float_color3_genmsl | convert | color3 | \n",
"| IM_convert_float_color3_genosl | convert | color3 | \n",
"| IM_convert_float_color4_genglsl | convert | color4 | \n",
"| IM_convert_float_color4_genmdl | convert | color4 | \n",
"| IM_convert_float_color4_genmsl | convert | color4 | \n",
"| IM_convert_float_color4_genosl | convert | color4 | \n",
"| IM_convert_float_vector2_genglsl | convert | vector2 | \n",
"| IM_convert_float_vector2_genmdl | convert | vector2 | \n",
"| IM_convert_float_vector2_genmsl | convert | vector2 | \n",
"| IM_convert_float_vector2_genosl | convert | vector2 | \n",
"| IM_convert_float_vector3_genglsl | convert | vector3 | \n",
"| IM_convert_float_vector3_genmdl | convert | vector3 | \n",
"| IM_convert_float_vector3_genmsl | convert | vector3 | \n",
"| IM_convert_float_vector3_genosl | convert | vector3 | \n",
"| IM_convert_float_vector4_genglsl | convert | vector4 | \n",
"| IM_convert_float_vector4_genmdl | convert | vector4 | \n",
"| IM_convert_float_vector4_genmsl | convert | vector4 | \n",
"| IM_convert_float_vector4_genosl | convert | vector4 | \n",
"| IM_convert_integer_float_genglsl | convert | float | \n",
"| IM_convert_integer_float_genmdl | convert | float | \n",
"| IM_convert_integer_float_genmsl | convert | float | \n",
"| IM_convert_integer_float_genosl | convert | float | \n",
"| IM_convert_vector2_vector3_genglsl | convert | vector3 | \n",
"| IM_convert_vector2_vector3_genmdl | convert | vector3 | \n",
"| IM_convert_vector2_vector3_genmsl | convert | vector3 | \n",
"| IM_convert_vector2_vector3_genosl | convert | vector3 | \n",
"| IM_convert_vector3_color3_genglsl | convert | color3 | \n",
"| IM_convert_vector3_color3_genmdl | convert | color3 | \n",
"| IM_convert_vector3_color3_genmsl | convert | color3 | \n",
"| IM_convert_vector3_color3_genosl | convert | color3 | \n",
"| IM_convert_vector3_vector2_genglsl | convert | vector2 | \n",
"| IM_convert_vector3_vector2_genmdl | convert | vector2 | \n",
"| IM_convert_vector3_vector2_genmsl | convert | vector2 | \n",
"| IM_convert_vector3_vector2_genosl | convert | vector2 | \n",
"| IM_convert_vector3_vector4_genglsl | convert | vector4 | \n",
"| IM_convert_vector3_vector4_genmdl | convert | vector4 | \n",
"| IM_convert_vector3_vector4_genmsl | convert | vector4 | \n",
"| IM_convert_vector3_vector4_genosl | convert | vector4 | \n",
"| IM_convert_vector4_color4_genglsl | convert | color4 | \n",
"| IM_convert_vector4_color4_genmdl | convert | color4 | \n",
"| IM_convert_vector4_color4_genmsl | convert | color4 | \n",
"| IM_convert_vector4_color4_genosl | convert | color4 | \n",
"| IM_convert_vector4_vector3_genglsl | convert | vector3 | \n",
"| IM_convert_vector4_vector3_genmdl | convert | vector3 | \n",
"| IM_convert_vector4_vector3_genmsl | convert | vector3 | \n",
"| IM_convert_vector4_vector3_genosl | convert | vector3 | \n",
"| IM_cos_float_genglsl | cos | float | \n",
"| IM_cos_float_genmdl | cos | float | \n",
"| IM_cos_float_genmsl | cos | float | \n",
"| IM_cos_float_genosl | cos | float | \n",
"| IM_cos_vector2_genglsl | cos | vector2 | \n",
"| IM_cos_vector2_genmdl | cos | vector2 | \n",
"| IM_cos_vector2_genmsl | cos | vector2 | \n",
"| IM_cos_vector2_genosl | cos | vector2 | \n",
"| IM_cos_vector3_genglsl | cos | vector3 | \n",
"| IM_cos_vector3_genmdl | cos | vector3 | \n",
"| IM_cos_vector3_genmsl | cos | vector3 | \n",
"| IM_cos_vector3_genosl | cos | vector3 | \n",
"| IM_cos_vector4_genglsl | cos | vector4 | \n",
"| IM_cos_vector4_genmdl | cos | vector4 | \n",
"| IM_cos_vector4_genmsl | cos | vector4 | \n",
"| IM_cos_vector4_genosl | cos | vector4 | \n",
"| IM_creatematrix_vector3_matrix33_genglsl | creatematrix | matrix33 | \n",
"| IM_creatematrix_vector3_matrix33_genmdl | creatematrix | matrix33 | \n",
"| IM_creatematrix_vector3_matrix33_genmsl | creatematrix | matrix33 | \n",
"| IM_creatematrix_vector3_matrix33_genosl | creatematrix | matrix33 | \n",
"| IM_creatematrix_vector3_matrix44_genglsl | creatematrix | matrix44 | \n",
"| IM_creatematrix_vector3_matrix44_genmdl | creatematrix | matrix44 | \n",
"| IM_creatematrix_vector3_matrix44_genmsl | creatematrix | matrix44 | \n",
"| IM_creatematrix_vector3_matrix44_genosl | creatematrix | matrix44 | \n",
"| IM_creatematrix_vector4_matrix44_genglsl | creatematrix | matrix44 | \n",
"| IM_creatematrix_vector4_matrix44_genmdl | creatematrix | matrix44 | \n",
"| IM_creatematrix_vector4_matrix44_genmsl | creatematrix | matrix44 | \n",
"| IM_creatematrix_vector4_matrix44_genosl | creatematrix | matrix44 | \n",
"| IM_crossproduct_vector3_genglsl | crossproduct | vector3 | \n",
"| IM_crossproduct_vector3_genmdl | crossproduct | vector3 | \n",
"| IM_crossproduct_vector3_genmsl | crossproduct | vector3 | \n",
"| IM_crossproduct_vector3_genosl | crossproduct | vector3 | \n",
"| IM_determinant_matrix33_genglsl | determinant | float | \n",
"| IM_determinant_matrix33_genmdl | determinant | float | \n",
"| IM_determinant_matrix33_genmsl | determinant | float | \n",
"| IM_determinant_matrix33_genosl | determinant | float | \n",
"| IM_determinant_matrix44_genglsl | determinant | float | \n",
"| IM_determinant_matrix44_genmdl | determinant | float | \n",
"| IM_determinant_matrix44_genmsl | determinant | float | \n",
"| IM_determinant_matrix44_genosl | determinant | float | \n",
"| IM_dielectric_bsdf_genglsl | dielectric_bsdf | BSDF | \n",
"| IM_dielectric_bsdf_genmdl | dielectric_bsdf | BSDF | \n",
"| IM_dielectric_bsdf_genmsl | dielectric_bsdf | BSDF | \n",
"| IM_dielectric_bsdf_genosl | dielectric_bsdf | BSDF | \n",
"| IM_difference_color3_genglsl | difference | color3 | \n",
"| IM_difference_color3_genmdl | difference | color3 | \n",
"| IM_difference_color3_genmsl | difference | color3 | \n",
"| IM_difference_color3_genosl | difference | color3 | \n",
"| IM_difference_color4_genglsl | difference | color4 | \n",
"| IM_difference_color4_genmdl | difference | color4 | \n",
"| IM_difference_color4_genmsl | difference | color4 | \n",
"| IM_difference_color4_genosl | difference | color4 | \n",
"| IM_difference_float_genglsl | difference | float | \n",
"| IM_difference_float_genmdl | difference | float | \n",
"| IM_difference_float_genmsl | difference | float | \n",
"| IM_difference_float_genosl | difference | float | \n",
"| IM_directional_light_genglsl | directional_light | lightshader | \n",
"| IM_directional_light_genmsl | directional_light | lightshader | \n",
"| IM_disjointover_color4_genglsl | disjointover | color4 | \n",
"| IM_disjointover_color4_genmdl | disjointover | color4 | \n",
"| IM_disjointover_color4_genmsl | disjointover | color4 | \n",
"| IM_disjointover_color4_genosl | disjointover | color4 | \n",
"| IM_disney_brdf_2012_surface_brdf_explorer | disney_brdf_2012 | surfaceshader | \n",
"| IM_disney_bsdf_2015_surface_pbrt | disney_bsdf_2015 | surfaceshader | \n",
"| IM_displacement_float_genglsl | displacement | displacementshader | \n",
"| IM_displacement_float_genmdl | displacement | displacementshader | \n",
"| IM_displacement_float_genmsl | displacement | displacementshader | \n",
"| IM_displacement_float_genosl | displacement | displacementshader | \n",
"| IM_displacement_vector3_genglsl | displacement | displacementshader | \n",
"| IM_displacement_vector3_genmdl | displacement | displacementshader | \n",
"| IM_displacement_vector3_genmsl | displacement | displacementshader | \n",
"| IM_displacement_vector3_genosl | displacement | displacementshader | \n",
"| IM_divide_color3FA_genglsl | divide | color3 | \n",
"| IM_divide_color3FA_genmdl | divide | color3 | \n",
"| IM_divide_color3FA_genmsl | divide | color3 | \n",
"| IM_divide_color3FA_genosl | divide | color3 | \n",
"| IM_divide_color3_genglsl | divide | color3 | \n",
"| IM_divide_color3_genmdl | divide | color3 | \n",
"| IM_divide_color3_genmsl | divide | color3 | \n",
"| IM_divide_color3_genosl | divide | color3 | \n",
"| IM_divide_color4FA_genglsl | divide | color4 | \n",
"| IM_divide_color4FA_genmdl | divide | color4 | \n",
"| IM_divide_color4FA_genmsl | divide | color4 | \n",
"| IM_divide_color4FA_genosl | divide | color4 | \n",
"| IM_divide_color4_genglsl | divide | color4 | \n",
"| IM_divide_color4_genmdl | divide | color4 | \n",
"| IM_divide_color4_genmsl | divide | color4 | \n",
"| IM_divide_color4_genosl | divide | color4 | \n",
"| IM_divide_float_genglsl | divide | float | \n",
"| IM_divide_float_genmdl | divide | float | \n",
"| IM_divide_float_genmsl | divide | float | \n",
"| IM_divide_float_genosl | divide | float | \n",
"| IM_divide_matrix33_genglsl | divide | matrix33 | \n",
"| IM_divide_matrix33_genmdl | divide | matrix33 | \n",
"| IM_divide_matrix33_genmsl | divide | matrix33 | \n",
"| IM_divide_matrix33_genosl | divide | matrix33 | \n",
"| IM_divide_matrix44_genglsl | divide | matrix44 | \n",
"| IM_divide_matrix44_genmdl | divide | matrix44 | \n",
"| IM_divide_matrix44_genmsl | divide | matrix44 | \n",
"| IM_divide_matrix44_genosl | divide | matrix44 | \n",
"| IM_divide_vector2FA_genglsl | divide | vector2 | \n",
"| IM_divide_vector2FA_genmdl | divide | vector2 | \n",
"| IM_divide_vector2FA_genmsl | divide | vector2 | \n",
"| IM_divide_vector2FA_genosl | divide | vector2 | \n",
"| IM_divide_vector2_genglsl | divide | vector2 | \n",
"| IM_divide_vector2_genmdl | divide | vector2 | \n",
"| IM_divide_vector2_genmsl | divide | vector2 | \n",
"| IM_divide_vector2_genosl | divide | vector2 | \n",
"| IM_divide_vector3FA_genglsl | divide | vector3 | \n",
"| IM_divide_vector3FA_genmdl | divide | vector3 | \n",
"| IM_divide_vector3FA_genmsl | divide | vector3 | \n",
"| IM_divide_vector3FA_genosl | divide | vector3 | \n",
"| IM_divide_vector3_genglsl | divide | vector3 | \n",
"| IM_divide_vector3_genmdl | divide | vector3 | \n",
"| IM_divide_vector3_genmsl | divide | vector3 | \n",
"| IM_divide_vector3_genosl | divide | vector3 | \n",
"| IM_divide_vector4FA_genglsl | divide | vector4 | \n",
"| IM_divide_vector4FA_genmdl | divide | vector4 | \n",
"| IM_divide_vector4FA_genmsl | divide | vector4 | \n",
"| IM_divide_vector4FA_genosl | divide | vector4 | \n",
"| IM_divide_vector4_genglsl | divide | vector4 | \n",
"| IM_divide_vector4_genmdl | divide | vector4 | \n",
"| IM_divide_vector4_genmsl | divide | vector4 | \n",
"| IM_divide_vector4_genosl | divide | vector4 | \n",
"| IM_dodge_color3_genglsl | dodge | color3 | \n",
"| IM_dodge_color3_genmdl | dodge | color3 | \n",
"| IM_dodge_color3_genmsl | dodge | color3 | \n",
"| IM_dodge_color3_genosl | dodge | color3 | \n",
"| IM_dodge_color4_genglsl | dodge | color4 | \n",
"| IM_dodge_color4_genmdl | dodge | color4 | \n",
"| IM_dodge_color4_genmsl | dodge | color4 | \n",
"| IM_dodge_color4_genosl | dodge | color4 | \n",
"| IM_dodge_float_genglsl | dodge | float | \n",
"| IM_dodge_float_genmdl | dodge | float | \n",
"| IM_dodge_float_genmsl | dodge | float | \n",
"| IM_dodge_float_genosl | dodge | float | \n",
"| IM_dot_boolean_genglsl | dot | boolean | \n",
"| IM_dot_boolean_genmdl | dot | boolean | \n",
"| IM_dot_boolean_genmsl | dot | boolean | \n",
"| IM_dot_boolean_genosl | dot | boolean | \n",
"| IM_dot_color3_genglsl | dot | color3 | \n",
"| IM_dot_color3_genmdl | dot | color3 | \n",
"| IM_dot_color3_genmsl | dot | color3 | \n",
"| IM_dot_color3_genosl | dot | color3 | \n",
"| IM_dot_color4_genglsl | dot | color4 | \n",
"| IM_dot_color4_genmdl | dot | color4 | \n",
"| IM_dot_color4_genmsl | dot | color4 | \n",
"| IM_dot_color4_genosl | dot | color4 | \n",
"| IM_dot_displacementshader_genglsl | dot | displacementshader | \n",
"| IM_dot_displacementshader_genmdl | dot | displacementshader | \n",
"| IM_dot_displacementshader_genmsl | dot | displacementshader | \n",
"| IM_dot_displacementshader_genosl | dot | displacementshader | \n",
"| IM_dot_filename_genglsl | dot | filename | \n",
"| IM_dot_filename_genmdl | dot | filename | \n",
"| IM_dot_filename_genmsl | dot | filename | \n",
"| IM_dot_filename_genosl | dot | filename | \n",
"| IM_dot_float_genglsl | dot | float | \n",
"| IM_dot_float_genmdl | dot | float | \n",
"| IM_dot_float_genmsl | dot | float | \n",
"| IM_dot_float_genosl | dot | float | \n",
"| IM_dot_integer_genglsl | dot | integer | \n",
"| IM_dot_integer_genmdl | dot | integer | \n",
"| IM_dot_integer_genmsl | dot | integer | \n",
"| IM_dot_integer_genosl | dot | integer | \n",
"| IM_dot_lightshader_genglsl | dot | lightshader | \n",
"| IM_dot_lightshader_genmdl | dot | lightshader | \n",
"| IM_dot_lightshader_genmsl | dot | lightshader | \n",
"| IM_dot_lightshader_genosl | dot | lightshader | \n",
"| IM_dot_matrix33_genglsl | dot | matrix33 | \n",
"| IM_dot_matrix33_genmdl | dot | matrix33 | \n",
"| IM_dot_matrix33_genmsl | dot | matrix33 | \n",
"| IM_dot_matrix33_genosl | dot | matrix33 | \n",
"| IM_dot_matrix44_genglsl | dot | matrix44 | \n",
"| IM_dot_matrix44_genmdl | dot | matrix44 | \n",
"| IM_dot_matrix44_genmsl | dot | matrix44 | \n",
"| IM_dot_matrix44_genosl | dot | matrix44 | \n",
"| IM_dot_string_genglsl | dot | string | \n",
"| IM_dot_string_genmdl | dot | string | \n",
"| IM_dot_string_genmsl | dot | string | \n",
"| IM_dot_string_genosl | dot | string | \n",
"| IM_dot_surfaceshader_genglsl | dot | surfaceshader | \n",
"| IM_dot_surfaceshader_genmdl | dot | surfaceshader | \n",
"| IM_dot_surfaceshader_genmsl | dot | surfaceshader | \n",
"| IM_dot_surfaceshader_genosl | dot | surfaceshader | \n",
"| IM_dot_vector2_genglsl | dot | vector2 | \n",
"| IM_dot_vector2_genmdl | dot | vector2 | \n",
"| IM_dot_vector2_genmsl | dot | vector2 | \n",
"| IM_dot_vector2_genosl | dot | vector2 | \n",
"| IM_dot_vector3_genglsl | dot | vector3 | \n",
"| IM_dot_vector3_genmdl | dot | vector3 | \n",
"| IM_dot_vector3_genmsl | dot | vector3 | \n",
"| IM_dot_vector3_genosl | dot | vector3 | \n",
"| IM_dot_vector4_genglsl | dot | vector4 | \n",
"| IM_dot_vector4_genmdl | dot | vector4 | \n",
"| IM_dot_vector4_genmsl | dot | vector4 | \n",
"| IM_dot_vector4_genosl | dot | vector4 | \n",
"| IM_dot_volumeshader_genglsl | dot | volumeshader | \n",
"| IM_dot_volumeshader_genmdl | dot | volumeshader | \n",
"| IM_dot_volumeshader_genmsl | dot | volumeshader | \n",
"| IM_dot_volumeshader_genosl | dot | volumeshader | \n",
"| IM_dotproduct_vector2_genglsl | dotproduct | float | \n",
"| IM_dotproduct_vector2_genmdl | dotproduct | float | \n",
"| IM_dotproduct_vector2_genmsl | dotproduct | float | \n",
"| IM_dotproduct_vector2_genosl | dotproduct | float | \n",
"| IM_dotproduct_vector3_genglsl | dotproduct | float | \n",
"| IM_dotproduct_vector3_genmdl | dotproduct | float | \n",
"| IM_dotproduct_vector3_genmsl | dotproduct | float | \n",
"| IM_dotproduct_vector3_genosl | dotproduct | float | \n",
"| IM_dotproduct_vector4_genglsl | dotproduct | float | \n",
"| IM_dotproduct_vector4_genmdl | dotproduct | float | \n",
"| IM_dotproduct_vector4_genmsl | dotproduct | float | \n",
"| IM_dotproduct_vector4_genosl | dotproduct | float | \n",
"| IM_exp_float_genglsl | exp | float | \n",
"| IM_exp_float_genmdl | exp | float | \n",
"| IM_exp_float_genmsl | exp | float | \n",
"| IM_exp_float_genosl | exp | float | \n",
"| IM_exp_vector2_genglsl | exp | vector2 | \n",
"| IM_exp_vector2_genmdl | exp | vector2 | \n",
"| IM_exp_vector2_genmsl | exp | vector2 | \n",
"| IM_exp_vector2_genosl | exp | vector2 | \n",
"| IM_exp_vector3_genglsl | exp | vector3 | \n",
"| IM_exp_vector3_genmdl | exp | vector3 | \n",
"| IM_exp_vector3_genmsl | exp | vector3 | \n",
"| IM_exp_vector3_genosl | exp | vector3 | \n",
"| IM_exp_vector4_genglsl | exp | vector4 | \n",
"| IM_exp_vector4_genmdl | exp | vector4 | \n",
"| IM_exp_vector4_genmsl | exp | vector4 | \n",
"| IM_exp_vector4_genosl | exp | vector4 | \n",
"| IM_floor_color3_genglsl | floor | color3 | \n",
"| IM_floor_color3_genmdl | floor | color3 | \n",
"| IM_floor_color3_genmsl | floor | color3 | \n",
"| IM_floor_color3_genosl | floor | color3 | \n",
"| IM_floor_color4_genglsl | floor | color4 | \n",
"| IM_floor_color4_genmdl | floor | color4 | \n",
"| IM_floor_color4_genmsl | floor | color4 | \n",
"| IM_floor_color4_genosl | floor | color4 | \n",
"| IM_floor_float_genglsl | floor | float | \n",
"| IM_floor_float_genmdl | floor | float | \n",
"| IM_floor_float_genmsl | floor | float | \n",
"| IM_floor_float_genosl | floor | float | \n",
"| IM_floor_integer_genglsl | floor | integer | \n",
"| IM_floor_integer_genmdl | floor | integer | \n",
"| IM_floor_integer_genmsl | floor | integer | \n",
"| IM_floor_integer_genosl | floor | integer | \n",
"| IM_floor_vector2_genglsl | floor | vector2 | \n",
"| IM_floor_vector2_genmdl | floor | vector2 | \n",
"| IM_floor_vector2_genmsl | floor | vector2 | \n",
"| IM_floor_vector2_genosl | floor | vector2 | \n",
"| IM_floor_vector3_genglsl | floor | vector3 | \n",
"| IM_floor_vector3_genmdl | floor | vector3 | \n",
"| IM_floor_vector3_genmsl | floor | vector3 | \n",
"| IM_floor_vector3_genosl | floor | vector3 | \n",
"| IM_floor_vector4_genglsl | floor | vector4 | \n",
"| IM_floor_vector4_genmdl | floor | vector4 | \n",
"| IM_floor_vector4_genmsl | floor | vector4 | \n",
"| IM_floor_vector4_genosl | floor | vector4 | \n",
"| IM_fractal3d_float_genglsl | fractal3d | float | \n",
"| IM_fractal3d_float_genmdl | fractal3d | float | \n",
"| IM_fractal3d_float_genmsl | fractal3d | float | \n",
"| IM_fractal3d_float_genosl | fractal3d | float | \n",
"| IM_fractal3d_vector2_genglsl | fractal3d | vector2 | \n",
"| IM_fractal3d_vector2_genmdl | fractal3d | vector2 | \n",
"| IM_fractal3d_vector2_genmsl | fractal3d | vector2 | \n",
"| IM_fractal3d_vector2_genosl | fractal3d | vector2 | \n",
"| IM_fractal3d_vector3_genglsl | fractal3d | vector3 | \n",
"| IM_fractal3d_vector3_genmdl | fractal3d | vector3 | \n",
"| IM_fractal3d_vector3_genmsl | fractal3d | vector3 | \n",
"| IM_fractal3d_vector3_genosl | fractal3d | vector3 | \n",
"| IM_fractal3d_vector4_genglsl | fractal3d | vector4 | \n",
"| IM_fractal3d_vector4_genmdl | fractal3d | vector4 | \n",
"| IM_fractal3d_vector4_genmsl | fractal3d | vector4 | \n",
"| IM_fractal3d_vector4_genosl | fractal3d | vector4 | \n",
"| IM_frame_float_genglsl | frame | float | \n",
"| IM_frame_float_genmdl | frame | float | \n",
"| IM_frame_float_genmsl | frame | float | \n",
"| IM_frame_float_genosl | frame | float | \n",
"| IM_generalized_schlick_bsdf_genglsl | generalized_schlick_bsdf | BSDF | \n",
"| IM_generalized_schlick_bsdf_genmdl | generalized_schlick_bsdf | BSDF | \n",
"| IM_generalized_schlick_bsdf_genmsl | generalized_schlick_bsdf | BSDF | \n",
"| IM_generalized_schlick_bsdf_genosl | generalized_schlick_bsdf | BSDF | \n",
"| IM_generalized_schlick_edf_genglsl | generalized_schlick_edf | EDF | \n",
"| IM_generalized_schlick_edf_genmdl | generalized_schlick_edf | EDF | \n",
"| IM_generalized_schlick_edf_genosl | generalized_schlick_edf | EDF | \n",
"| IM_geomcolor_color3_genglsl | geomcolor | color3 | \n",
"| IM_geomcolor_color3_genmdl | geomcolor | color3 | \n",
"| IM_geomcolor_color3_genmsl | geomcolor | color3 | \n",
"| IM_geomcolor_color3_genosl | geomcolor | color3 | \n",
"| IM_geomcolor_color4_genglsl | geomcolor | color4 | \n",
"| IM_geomcolor_color4_genmdl | geomcolor | color4 | \n",
"| IM_geomcolor_color4_genmsl | geomcolor | color4 | \n",
"| IM_geomcolor_color4_genosl | geomcolor | color4 | \n",
"| IM_geomcolor_float_genglsl | geomcolor | float | \n",
"| IM_geomcolor_float_genmdl | geomcolor | float | \n",
"| IM_geomcolor_float_genmsl | geomcolor | float | \n",
"| IM_geomcolor_float_genosl | geomcolor | float | \n",
"| IM_geompropvalue_boolean_genglsl | geompropvalue | boolean | \n",
"| IM_geompropvalue_boolean_genmdl | geompropvalue | boolean | \n",
"| IM_geompropvalue_boolean_genmsl | geompropvalue | boolean | \n",
"| IM_geompropvalue_boolean_genosl | geompropvalue | boolean | \n",
"| IM_geompropvalue_color3_genglsl | geompropvalue | color3 | \n",
"| IM_geompropvalue_color3_genmdl | geompropvalue | color3 | \n",
"| IM_geompropvalue_color3_genmsl | geompropvalue | color3 | \n",
"| IM_geompropvalue_color3_genosl | geompropvalue | color3 | \n",
"| IM_geompropvalue_color4_genglsl | geompropvalue | color4 | \n",
"| IM_geompropvalue_color4_genmdl | geompropvalue | color4 | \n",
"| IM_geompropvalue_color4_genmsl | geompropvalue | color4 | \n",
"| IM_geompropvalue_color4_genosl | geompropvalue | color4 | \n",
"| IM_geompropvalue_float_genglsl | geompropvalue | float | \n",
"| IM_geompropvalue_float_genmdl | geompropvalue | float | \n",
"| IM_geompropvalue_float_genmsl | geompropvalue | float | \n",
"| IM_geompropvalue_float_genosl | geompropvalue | float | \n",
"| IM_geompropvalue_integer_genglsl | geompropvalue | integer | \n",
"| IM_geompropvalue_integer_genmdl | geompropvalue | integer | \n",
"| IM_geompropvalue_integer_genmsl | geompropvalue | integer | \n",
"| IM_geompropvalue_integer_genosl | geompropvalue | integer | \n",
"| IM_geompropvalue_string_genglsl | geompropvalue | string | \n",
"| IM_geompropvalue_string_genmdl | geompropvalue | string | \n",
"| IM_geompropvalue_string_genmsl | geompropvalue | string | \n",
"| IM_geompropvalue_string_genosl | geompropvalue | string | \n",
"| IM_geompropvalue_vector2_genglsl | geompropvalue | vector2 | \n",
"| IM_geompropvalue_vector2_genmdl | geompropvalue | vector2 | \n",
"| IM_geompropvalue_vector2_genmsl | geompropvalue | vector2 | \n",
"| IM_geompropvalue_vector2_genosl | geompropvalue | vector2 | \n",
"| IM_geompropvalue_vector3_genglsl | geompropvalue | vector3 | \n",
"| IM_geompropvalue_vector3_genmdl | geompropvalue | vector3 | \n",
"| IM_geompropvalue_vector3_genmsl | geompropvalue | vector3 | \n",
"| IM_geompropvalue_vector3_genosl | geompropvalue | vector3 | \n",
"| IM_geompropvalue_vector4_genglsl | geompropvalue | vector4 | \n",
"| IM_geompropvalue_vector4_genmdl | geompropvalue | vector4 | \n",
"| IM_geompropvalue_vector4_genmsl | geompropvalue | vector4 | \n",
"| IM_geompropvalue_vector4_genosl | geompropvalue | vector4 | \n",
"| IM_heighttonormal_vector3_genglsl | heighttonormal | vector3 | \n",
"| IM_heighttonormal_vector3_genmdl | heighttonormal | vector3 | \n",
"| IM_heighttonormal_vector3_genmsl | heighttonormal | vector3 | \n",
"| IM_heighttonormal_vector3_genosl | heighttonormal | vector3 | \n",
"| IM_hsvtorgb_color3_genglsl | hsvtorgb | color3 | \n",
"| IM_hsvtorgb_color3_genmdl | hsvtorgb | color3 | \n",
"| IM_hsvtorgb_color3_genmsl | hsvtorgb | color3 | \n",
"| IM_hsvtorgb_color3_genosl | hsvtorgb | color3 | \n",
"| IM_hsvtorgb_color4_genglsl | hsvtorgb | color4 | \n",
"| IM_hsvtorgb_color4_genmdl | hsvtorgb | color4 | \n",
"| IM_hsvtorgb_color4_genmsl | hsvtorgb | color4 | \n",
"| IM_hsvtorgb_color4_genosl | hsvtorgb | color4 | \n",
"| IM_ifequal_color3B_genglsl | ifequal | color3 | \n",
"| IM_ifequal_color3B_genmdl | ifequal | color3 | \n",
"| IM_ifequal_color3B_genmsl | ifequal | color3 | \n",
"| IM_ifequal_color3B_genosl | ifequal | color3 | \n",
"| IM_ifequal_color3I_genglsl | ifequal | color3 | \n",
"| IM_ifequal_color3I_genmdl | ifequal | color3 | \n",
"| IM_ifequal_color3I_genmsl | ifequal | color3 | \n",
"| IM_ifequal_color3I_genosl | ifequal | color3 | \n",
"| IM_ifequal_color3_genglsl | ifequal | color3 | \n",
"| IM_ifequal_color3_genmdl | ifequal | color3 | \n",
"| IM_ifequal_color3_genmsl | ifequal | color3 | \n",
"| IM_ifequal_color3_genosl | ifequal | color3 | \n",
"| IM_ifequal_color4B_genglsl | ifequal | color4 | \n",
"| IM_ifequal_color4B_genmdl | ifequal | color4 | \n",
"| IM_ifequal_color4B_genmsl | ifequal | color4 | \n",
"| IM_ifequal_color4B_genosl | ifequal | color4 | \n",
"| IM_ifequal_color4I_genglsl | ifequal | color4 | \n",
"| IM_ifequal_color4I_genmdl | ifequal | color4 | \n",
"| IM_ifequal_color4I_genmsl | ifequal | color4 | \n",
"| IM_ifequal_color4I_genosl | ifequal | color4 | \n",
"| IM_ifequal_color4_genglsl | ifequal | color4 | \n",
"| IM_ifequal_color4_genmdl | ifequal | color4 | \n",
"| IM_ifequal_color4_genmsl | ifequal | color4 | \n",
"| IM_ifequal_color4_genosl | ifequal | color4 | \n",
"| IM_ifequal_floatB_genglsl | ifequal | float | \n",
"| IM_ifequal_floatB_genmdl | ifequal | float | \n",
"| IM_ifequal_floatB_genmsl | ifequal | float | \n",
"| IM_ifequal_floatB_genosl | ifequal | float | \n",
"| IM_ifequal_floatI_genglsl | ifequal | float | \n",
"| IM_ifequal_floatI_genmdl | ifequal | float | \n",
"| IM_ifequal_floatI_genmsl | ifequal | float | \n",
"| IM_ifequal_floatI_genosl | ifequal | float | \n",
"| IM_ifequal_float_genglsl | ifequal | float | \n",
"| IM_ifequal_float_genmdl | ifequal | float | \n",
"| IM_ifequal_float_genmsl | ifequal | float | \n",
"| IM_ifequal_float_genosl | ifequal | float | \n",
"| IM_ifequal_vector2B_genglsl | ifequal | vector2 | \n",
"| IM_ifequal_vector2B_genmdl | ifequal | vector2 | \n",
"| IM_ifequal_vector2B_genmsl | ifequal | vector2 | \n",
"| IM_ifequal_vector2B_genosl | ifequal | vector2 | \n",
"| IM_ifequal_vector2I_genglsl | ifequal | vector2 | \n",
"| IM_ifequal_vector2I_genmdl | ifequal | vector2 | \n",
"| IM_ifequal_vector2I_genmsl | ifequal | vector2 | \n",
"| IM_ifequal_vector2I_genosl | ifequal | vector2 | \n",
"| IM_ifequal_vector2_genglsl | ifequal | vector2 | \n",
"| IM_ifequal_vector2_genmdl | ifequal | vector2 | \n",
"| IM_ifequal_vector2_genmsl | ifequal | vector2 | \n",
"| IM_ifequal_vector2_genosl | ifequal | vector2 | \n",
"| IM_ifequal_vector3B_genglsl | ifequal | vector3 | \n",
"| IM_ifequal_vector3B_genmdl | ifequal | vector3 | \n",
"| IM_ifequal_vector3B_genmsl | ifequal | vector3 | \n",
"| IM_ifequal_vector3B_genosl | ifequal | vector3 | \n",
"| IM_ifequal_vector3I_genglsl | ifequal | vector3 | \n",
"| IM_ifequal_vector3I_genmdl | ifequal | vector3 | \n",
"| IM_ifequal_vector3I_genmsl | ifequal | vector3 | \n",
"| IM_ifequal_vector3I_genosl | ifequal | vector3 | \n",
"| IM_ifequal_vector3_genglsl | ifequal | vector3 | \n",
"| IM_ifequal_vector3_genmdl | ifequal | vector3 | \n",
"| IM_ifequal_vector3_genmsl | ifequal | vector3 | \n",
"| IM_ifequal_vector3_genosl | ifequal | vector3 | \n",
"| IM_ifequal_vector4B_genglsl | ifequal | vector4 | \n",
"| IM_ifequal_vector4B_genmdl | ifequal | vector4 | \n",
"| IM_ifequal_vector4B_genmsl | ifequal | vector4 | \n",
"| IM_ifequal_vector4B_genosl | ifequal | vector4 | \n",
"| IM_ifequal_vector4I_genglsl | ifequal | vector4 | \n",
"| IM_ifequal_vector4I_genmdl | ifequal | vector4 | \n",
"| IM_ifequal_vector4I_genmsl | ifequal | vector4 | \n",
"| IM_ifequal_vector4I_genosl | ifequal | vector4 | \n",
"| IM_ifequal_vector4_genglsl | ifequal | vector4 | \n",
"| IM_ifequal_vector4_genmdl | ifequal | vector4 | \n",
"| IM_ifequal_vector4_genmsl | ifequal | vector4 | \n",
"| IM_ifequal_vector4_genosl | ifequal | vector4 | \n",
"| IM_ifgreater_color3I_genglsl | ifgreater | color3 | \n",
"| IM_ifgreater_color3I_genmdl | ifgreater | color3 | \n",
"| IM_ifgreater_color3I_genmsl | ifgreater | color3 | \n",
"| IM_ifgreater_color3I_genosl | ifgreater | color3 | \n",
"| IM_ifgreater_color3_genglsl | ifgreater | color3 | \n",
"| IM_ifgreater_color3_genmdl | ifgreater | color3 | \n",
"| IM_ifgreater_color3_genmsl | ifgreater | color3 | \n",
"| IM_ifgreater_color3_genosl | ifgreater | color3 | \n",
"| IM_ifgreater_color4I_genglsl | ifgreater | color4 | \n",
"| IM_ifgreater_color4I_genmdl | ifgreater | color4 | \n",
"| IM_ifgreater_color4I_genmsl | ifgreater | color4 | \n",
"| IM_ifgreater_color4I_genosl | ifgreater | color4 | \n",
"| IM_ifgreater_color4_genglsl | ifgreater | color4 | \n",
"| IM_ifgreater_color4_genmdl | ifgreater | color4 | \n",
"| IM_ifgreater_color4_genmsl | ifgreater | color4 | \n",
"| IM_ifgreater_color4_genosl | ifgreater | color4 | \n",
"| IM_ifgreater_floatI_genglsl | ifgreater | float | \n",
"| IM_ifgreater_floatI_genmdl | ifgreater | float | \n",
"| IM_ifgreater_floatI_genmsl | ifgreater | float | \n",
"| IM_ifgreater_floatI_genosl | ifgreater | float | \n",
"| IM_ifgreater_float_genglsl | ifgreater | float | \n",
"| IM_ifgreater_float_genmdl | ifgreater | float | \n",
"| IM_ifgreater_float_genmsl | ifgreater | float | \n",
"| IM_ifgreater_float_genosl | ifgreater | float | \n",
"| IM_ifgreater_vector2I_genglsl | ifgreater | vector2 | \n",
"| IM_ifgreater_vector2I_genmdl | ifgreater | vector2 | \n",
"| IM_ifgreater_vector2I_genmsl | ifgreater | vector2 | \n",
"| IM_ifgreater_vector2I_genosl | ifgreater | vector2 | \n",
"| IM_ifgreater_vector2_genglsl | ifgreater | vector2 | \n",
"| IM_ifgreater_vector2_genmdl | ifgreater | vector2 | \n",
"| IM_ifgreater_vector2_genmsl | ifgreater | vector2 | \n",
"| IM_ifgreater_vector2_genosl | ifgreater | vector2 | \n",
"| IM_ifgreater_vector3I_genglsl | ifgreater | vector3 | \n",
"| IM_ifgreater_vector3I_genmdl | ifgreater | vector3 | \n",
"| IM_ifgreater_vector3I_genmsl | ifgreater | vector3 | \n",
"| IM_ifgreater_vector3I_genosl | ifgreater | vector3 | \n",
"| IM_ifgreater_vector3_genglsl | ifgreater | vector3 | \n",
"| IM_ifgreater_vector3_genmdl | ifgreater | vector3 | \n",
"| IM_ifgreater_vector3_genmsl | ifgreater | vector3 | \n",
"| IM_ifgreater_vector3_genosl | ifgreater | vector3 | \n",
"| IM_ifgreater_vector4I_genglsl | ifgreater | vector4 | \n",
"| IM_ifgreater_vector4I_genmdl | ifgreater | vector4 | \n",
"| IM_ifgreater_vector4I_genmsl | ifgreater | vector4 | \n",
"| IM_ifgreater_vector4I_genosl | ifgreater | vector4 | \n",
"| IM_ifgreater_vector4_genglsl | ifgreater | vector4 | \n",
"| IM_ifgreater_vector4_genmdl | ifgreater | vector4 | \n",
"| IM_ifgreater_vector4_genmsl | ifgreater | vector4 | \n",
"| IM_ifgreater_vector4_genosl | ifgreater | vector4 | \n",
"| IM_ifgreatereq_color3I_genglsl | ifgreatereq | color3 | \n",
"| IM_ifgreatereq_color3I_genmdl | ifgreatereq | color3 | \n",
"| IM_ifgreatereq_color3I_genmsl | ifgreatereq | color3 | \n",
"| IM_ifgreatereq_color3I_genosl | ifgreatereq | color3 | \n",
"| IM_ifgreatereq_color3_genglsl | ifgreatereq | color3 | \n",
"| IM_ifgreatereq_color3_genmdl | ifgreatereq | color3 | \n",
"| IM_ifgreatereq_color3_genmsl | ifgreatereq | color3 | \n",
"| IM_ifgreatereq_color3_genosl | ifgreatereq | color3 | \n",
"| IM_ifgreatereq_color4I_genglsl | ifgreatereq | color4 | \n",
"| IM_ifgreatereq_color4I_genmdl | ifgreatereq | color4 | \n",
"| IM_ifgreatereq_color4I_genmsl | ifgreatereq | color4 | \n",
"| IM_ifgreatereq_color4I_genosl | ifgreatereq | color4 | \n",
"| IM_ifgreatereq_color4_genglsl | ifgreatereq | color4 | \n",
"| IM_ifgreatereq_color4_genmdl | ifgreatereq | color4 | \n",
"| IM_ifgreatereq_color4_genmsl | ifgreatereq | color4 | \n",
"| IM_ifgreatereq_color4_genosl | ifgreatereq | color4 | \n",
"| IM_ifgreatereq_floatI_genglsl | ifgreatereq | float | \n",
"| IM_ifgreatereq_floatI_genmdl | ifgreatereq | float | \n",
"| IM_ifgreatereq_floatI_genmsl | ifgreatereq | float | \n",
"| IM_ifgreatereq_floatI_genosl | ifgreatereq | float | \n",
"| IM_ifgreatereq_float_genglsl | ifgreatereq | float | \n",
"| IM_ifgreatereq_float_genmdl | ifgreatereq | float | \n",
"| IM_ifgreatereq_float_genmsl | ifgreatereq | float | \n",
"| IM_ifgreatereq_float_genosl | ifgreatereq | float | \n",
"| IM_ifgreatereq_vector2I_genglsl | ifgreatereq | vector2 | \n",
"| IM_ifgreatereq_vector2I_genmdl | ifgreatereq | vector2 | \n",
"| IM_ifgreatereq_vector2I_genmsl | ifgreatereq | vector2 | \n",
"| IM_ifgreatereq_vector2I_genosl | ifgreatereq | vector2 | \n",
"| IM_ifgreatereq_vector2_genglsl | ifgreatereq | vector2 | \n",
"| IM_ifgreatereq_vector2_genmdl | ifgreatereq | vector2 | \n",
"| IM_ifgreatereq_vector2_genmsl | ifgreatereq | vector2 | \n",
"| IM_ifgreatereq_vector2_genosl | ifgreatereq | vector2 | \n",
"| IM_ifgreatereq_vector3I_genglsl | ifgreatereq | vector3 | \n",
"| IM_ifgreatereq_vector3I_genmdl | ifgreatereq | vector3 | \n",
"| IM_ifgreatereq_vector3I_genmsl | ifgreatereq | vector3 | \n",
"| IM_ifgreatereq_vector3I_genosl | ifgreatereq | vector3 | \n",
"| IM_ifgreatereq_vector3_genglsl | ifgreatereq | vector3 | \n",
"| IM_ifgreatereq_vector3_genmdl | ifgreatereq | vector3 | \n",
"| IM_ifgreatereq_vector3_genmsl | ifgreatereq | vector3 | \n",
"| IM_ifgreatereq_vector3_genosl | ifgreatereq | vector3 | \n",
"| IM_ifgreatereq_vector4I_genglsl | ifgreatereq | vector4 | \n",
"| IM_ifgreatereq_vector4I_genmdl | ifgreatereq | vector4 | \n",
"| IM_ifgreatereq_vector4I_genmsl | ifgreatereq | vector4 | \n",
"| IM_ifgreatereq_vector4I_genosl | ifgreatereq | vector4 | \n",
"| IM_ifgreatereq_vector4_genglsl | ifgreatereq | vector4 | \n",
"| IM_ifgreatereq_vector4_genmdl | ifgreatereq | vector4 | \n",
"| IM_ifgreatereq_vector4_genmsl | ifgreatereq | vector4 | \n",
"| IM_ifgreatereq_vector4_genosl | ifgreatereq | vector4 | \n",
"| IM_image_color3_genglsl | image | color3 | \n",
"| IM_image_color3_genmdl | image | color3 | \n",
"| IM_image_color3_genmsl | image | color3 | \n",
"| IM_image_color3_genosl | image | color3 | \n",
"| IM_image_color4_genglsl | image | color4 | \n",
"| IM_image_color4_genmdl | image | color4 | \n",
"| IM_image_color4_genmsl | image | color4 | \n",
"| IM_image_color4_genosl | image | color4 | \n",
"| IM_image_float_genglsl | image | float | \n",
"| IM_image_float_genmdl | image | float | \n",
"| IM_image_float_genmsl | image | float | \n",
"| IM_image_float_genosl | image | float | \n",
"| IM_image_vector2_genglsl | image | vector2 | \n",
"| IM_image_vector2_genmdl | image | vector2 | \n",
"| IM_image_vector2_genmsl | image | vector2 | \n",
"| IM_image_vector2_genosl | image | vector2 | \n",
"| IM_image_vector3_genglsl | image | vector3 | \n",
"| IM_image_vector3_genmdl | image | vector3 | \n",
"| IM_image_vector3_genmsl | image | vector3 | \n",
"| IM_image_vector3_genosl | image | vector3 | \n",
"| IM_image_vector4_genglsl | image | vector4 | \n",
"| IM_image_vector4_genmdl | image | vector4 | \n",
"| IM_image_vector4_genmsl | image | vector4 | \n",
"| IM_image_vector4_genosl | image | vector4 | \n",
"| IM_in_color4_genglsl | in | color4 | \n",
"| IM_in_color4_genmdl | in | color4 | \n",
"| IM_in_color4_genmsl | in | color4 | \n",
"| IM_in_color4_genosl | in | color4 | \n",
"| IM_inside_color3_genglsl | inside | color3 | \n",
"| IM_inside_color3_genmdl | inside | color3 | \n",
"| IM_inside_color3_genmsl | inside | color3 | \n",
"| IM_inside_color3_genosl | inside | color3 | \n",
"| IM_inside_color4_genglsl | inside | color4 | \n",
"| IM_inside_color4_genmdl | inside | color4 | \n",
"| IM_inside_color4_genmsl | inside | color4 | \n",
"| IM_inside_color4_genosl | inside | color4 | \n",
"| IM_inside_float_genglsl | inside | float | \n",
"| IM_inside_float_genmdl | inside | float | \n",
"| IM_inside_float_genmsl | inside | float | \n",
"| IM_inside_float_genosl | inside | float | \n",
"| IM_invert_color3FA_genglsl | invert | color3 | \n",
"| IM_invert_color3FA_genmdl | invert | color3 | \n",
"| IM_invert_color3FA_genmsl | invert | color3 | \n",
"| IM_invert_color3FA_genosl | invert | color3 | \n",
"| IM_invert_color3_genglsl | invert | color3 | \n",
"| IM_invert_color3_genmdl | invert | color3 | \n",
"| IM_invert_color3_genmsl | invert | color3 | \n",
"| IM_invert_color3_genosl | invert | color3 | \n",
"| IM_invert_color4FA_genglsl | invert | color4 | \n",
"| IM_invert_color4FA_genmdl | invert | color4 | \n",
"| IM_invert_color4FA_genmsl | invert | color4 | \n",
"| IM_invert_color4FA_genosl | invert | color4 | \n",
"| IM_invert_color4_genglsl | invert | color4 | \n",
"| IM_invert_color4_genmdl | invert | color4 | \n",
"| IM_invert_color4_genmsl | invert | color4 | \n",
"| IM_invert_color4_genosl | invert | color4 | \n",
"| IM_invert_float_genglsl | invert | float | \n",
"| IM_invert_float_genmdl | invert | float | \n",
"| IM_invert_float_genmsl | invert | float | \n",
"| IM_invert_float_genosl | invert | float | \n",
"| IM_invert_vector2FA_genglsl | invert | vector2 | \n",
"| IM_invert_vector2FA_genmdl | invert | vector2 | \n",
"| IM_invert_vector2FA_genmsl | invert | vector2 | \n",
"| IM_invert_vector2FA_genosl | invert | vector2 | \n",
"| IM_invert_vector2_genglsl | invert | vector2 | \n",
"| IM_invert_vector2_genmdl | invert | vector2 | \n",
"| IM_invert_vector2_genmsl | invert | vector2 | \n",
"| IM_invert_vector2_genosl | invert | vector2 | \n",
"| IM_invert_vector3FA_genglsl | invert | vector3 | \n",
"| IM_invert_vector3FA_genmdl | invert | vector3 | \n",
"| IM_invert_vector3FA_genmsl | invert | vector3 | \n",
"| IM_invert_vector3FA_genosl | invert | vector3 | \n",
"| IM_invert_vector3_genglsl | invert | vector3 | \n",
"| IM_invert_vector3_genmdl | invert | vector3 | \n",
"| IM_invert_vector3_genmsl | invert | vector3 | \n",
"| IM_invert_vector3_genosl | invert | vector3 | \n",
"| IM_invert_vector4FA_genglsl | invert | vector4 | \n",
"| IM_invert_vector4FA_genmdl | invert | vector4 | \n",
"| IM_invert_vector4FA_genmsl | invert | vector4 | \n",
"| IM_invert_vector4FA_genosl | invert | vector4 | \n",
"| IM_invert_vector4_genglsl | invert | vector4 | \n",
"| IM_invert_vector4_genmdl | invert | vector4 | \n",
"| IM_invert_vector4_genmsl | invert | vector4 | \n",
"| IM_invert_vector4_genosl | invert | vector4 | \n",
"| IM_invertmatrix_matrix33_genglsl | invertmatrix | matrix33 | \n",
"| IM_invertmatrix_matrix33_genmdl | invertmatrix | matrix33 | \n",
"| IM_invertmatrix_matrix33_genmsl | invertmatrix | matrix33 | \n",
"| IM_invertmatrix_matrix33_genosl | invertmatrix | matrix33 | \n",
"| IM_invertmatrix_matrix44_genglsl | invertmatrix | matrix44 | \n",
"| IM_invertmatrix_matrix44_genmdl | invertmatrix | matrix44 | \n",
"| IM_invertmatrix_matrix44_genmsl | invertmatrix | matrix44 | \n",
"| IM_invertmatrix_matrix44_genosl | invertmatrix | matrix44 | \n",
"| IM_layer_bsdf_genglsl | layer | BSDF | \n",
"| IM_layer_bsdf_genmdl | layer | BSDF | \n",
"| IM_layer_bsdf_genmsl | layer | BSDF | \n",
"| IM_layer_bsdf_genosl | layer | BSDF | \n",
"| IM_layer_vdf_genglsl | layer | BSDF | \n",
"| IM_layer_vdf_genmdl | layer | BSDF | \n",
"| IM_layer_vdf_genmsl | layer | BSDF | \n",
"| IM_layer_vdf_genosl | layer | BSDF | \n",
"| IM_light_genglsl | light | lightshader | \n",
"| IM_light_genmdl | light | lightshader | \n",
"| IM_light_genmsl | light | lightshader | \n",
"| IM_ln_float_genglsl | ln | float | \n",
"| IM_ln_float_genmdl | ln | float | \n",
"| IM_ln_float_genmsl | ln | float | \n",
"| IM_ln_float_genosl | ln | float | \n",
"| IM_ln_vector2_genglsl | ln | vector2 | \n",
"| IM_ln_vector2_genmdl | ln | vector2 | \n",
"| IM_ln_vector2_genmsl | ln | vector2 | \n",
"| IM_ln_vector2_genosl | ln | vector2 | \n",
"| IM_ln_vector3_genglsl | ln | vector3 | \n",
"| IM_ln_vector3_genmdl | ln | vector3 | \n",
"| IM_ln_vector3_genmsl | ln | vector3 | \n",
"| IM_ln_vector3_genosl | ln | vector3 | \n",
"| IM_ln_vector4_genglsl | ln | vector4 | \n",
"| IM_ln_vector4_genmdl | ln | vector4 | \n",
"| IM_ln_vector4_genmsl | ln | vector4 | \n",
"| IM_ln_vector4_genosl | ln | vector4 | \n",
"| IM_luminance_color3_genglsl | luminance | color3 | \n",
"| IM_luminance_color3_genmdl | luminance | color3 | \n",
"| IM_luminance_color3_genmsl | luminance | color3 | \n",
"| IM_luminance_color3_genosl | luminance | color3 | \n",
"| IM_luminance_color4_genglsl | luminance | color4 | \n",
"| IM_luminance_color4_genmdl | luminance | color4 | \n",
"| IM_luminance_color4_genmsl | luminance | color4 | \n",
"| IM_luminance_color4_genosl | luminance | color4 | \n",
"| IM_magnitude_vector2_genglsl | magnitude | float | \n",
"| IM_magnitude_vector2_genmdl | magnitude | float | \n",
"| IM_magnitude_vector2_genmsl | magnitude | float | \n",
"| IM_magnitude_vector2_genosl | magnitude | float | \n",
"| IM_magnitude_vector3_genglsl | magnitude | float | \n",
"| IM_magnitude_vector3_genmdl | magnitude | float | \n",
"| IM_magnitude_vector3_genmsl | magnitude | float | \n",
"| IM_magnitude_vector3_genosl | magnitude | float | \n",
"| IM_magnitude_vector4_genglsl | magnitude | float | \n",
"| IM_magnitude_vector4_genmdl | magnitude | float | \n",
"| IM_magnitude_vector4_genmsl | magnitude | float | \n",
"| IM_magnitude_vector4_genosl | magnitude | float | \n",
"| IM_mask_color4_genglsl | mask | color4 | \n",
"| IM_mask_color4_genmdl | mask | color4 | \n",
"| IM_mask_color4_genmsl | mask | color4 | \n",
"| IM_mask_color4_genosl | mask | color4 | \n",
"| IM_matte_color4_genglsl | matte | color4 | \n",
"| IM_matte_color4_genmdl | matte | color4 | \n",
"| IM_matte_color4_genmsl | matte | color4 | \n",
"| IM_matte_color4_genosl | matte | color4 | \n",
"| IM_max_color3FA_genglsl | max | color3 | \n",
"| IM_max_color3FA_genmdl | max | color3 | \n",
"| IM_max_color3FA_genmsl | max | color3 | \n",
"| IM_max_color3FA_genosl | max | color3 | \n",
"| IM_max_color3_genglsl | max | color3 | \n",
"| IM_max_color3_genmdl | max | color3 | \n",
"| IM_max_color3_genmsl | max | color3 | \n",
"| IM_max_color3_genosl | max | color3 | \n",
"| IM_max_color4FA_genglsl | max | color4 | \n",
"| IM_max_color4FA_genmdl | max | color4 | \n",
"| IM_max_color4FA_genmsl | max | color4 | \n",
"| IM_max_color4FA_genosl | max | color4 | \n",
"| IM_max_color4_genglsl | max | color4 | \n",
"| IM_max_color4_genmdl | max | color4 | \n",
"| IM_max_color4_genmsl | max | color4 | \n",
"| IM_max_color4_genosl | max | color4 | \n",
"| IM_max_float_genglsl | max | float | \n",
"| IM_max_float_genmdl | max | float | \n",
"| IM_max_float_genmsl | max | float | \n",
"| IM_max_float_genosl | max | float | \n",
"| IM_max_vector2FA_genglsl | max | vector2 | \n",
"| IM_max_vector2FA_genmdl | max | vector2 | \n",
"| IM_max_vector2FA_genmsl | max | vector2 | \n",
"| IM_max_vector2FA_genosl | max | vector2 | \n",
"| IM_max_vector2_genglsl | max | vector2 | \n",
"| IM_max_vector2_genmdl | max | vector2 | \n",
"| IM_max_vector2_genmsl | max | vector2 | \n",
"| IM_max_vector2_genosl | max | vector2 | \n",
"| IM_max_vector3FA_genglsl | max | vector3 | \n",
"| IM_max_vector3FA_genmdl | max | vector3 | \n",
"| IM_max_vector3FA_genmsl | max | vector3 | \n",
"| IM_max_vector3FA_genosl | max | vector3 | \n",
"| IM_max_vector3_genglsl | max | vector3 | \n",
"| IM_max_vector3_genmdl | max | vector3 | \n",
"| IM_max_vector3_genmsl | max | vector3 | \n",
"| IM_max_vector3_genosl | max | vector3 | \n",
"| IM_max_vector4FA_genglsl | max | vector4 | \n",
"| IM_max_vector4FA_genmdl | max | vector4 | \n",
"| IM_max_vector4FA_genmsl | max | vector4 | \n",
"| IM_max_vector4FA_genosl | max | vector4 | \n",
"| IM_max_vector4_genglsl | max | vector4 | \n",
"| IM_max_vector4_genmdl | max | vector4 | \n",
"| IM_max_vector4_genmsl | max | vector4 | \n",
"| IM_max_vector4_genosl | max | vector4 | \n",
"| IM_measured_edf_genmdl | measured_edf | EDF | \n",
"| IM_min_color3FA_genglsl | min | color3 | \n",
"| IM_min_color3FA_genmdl | min | color3 | \n",
"| IM_min_color3FA_genmsl | min | color3 | \n",
"| IM_min_color3FA_genosl | min | color3 | \n",
"| IM_min_color3_genglsl | min | color3 | \n",
"| IM_min_color3_genmdl | min | color3 | \n",
"| IM_min_color3_genmsl | min | color3 | \n",
"| IM_min_color3_genosl | min | color3 | \n",
"| IM_min_color4FA_genglsl | min | color4 | \n",
"| IM_min_color4FA_genmdl | min | color4 | \n",
"| IM_min_color4FA_genmsl | min | color4 | \n",
"| IM_min_color4FA_genosl | min | color4 | \n",
"| IM_min_color4_genglsl | min | color4 | \n",
"| IM_min_color4_genmdl | min | color4 | \n",
"| IM_min_color4_genmsl | min | color4 | \n",
"| IM_min_color4_genosl | min | color4 | \n",
"| IM_min_float_genglsl | min | float | \n",
"| IM_min_float_genmdl | min | float | \n",
"| IM_min_float_genmsl | min | float | \n",
"| IM_min_float_genosl | min | float | \n",
"| IM_min_vector2FA_genglsl | min | vector2 | \n",
"| IM_min_vector2FA_genmdl | min | vector2 | \n",
"| IM_min_vector2FA_genmsl | min | vector2 | \n",
"| IM_min_vector2FA_genosl | min | vector2 | \n",
"| IM_min_vector2_genglsl | min | vector2 | \n",
"| IM_min_vector2_genmdl | min | vector2 | \n",
"| IM_min_vector2_genmsl | min | vector2 | \n",
"| IM_min_vector2_genosl | min | vector2 | \n",
"| IM_min_vector3FA_genglsl | min | vector3 | \n",
"| IM_min_vector3FA_genmdl | min | vector3 | \n",
"| IM_min_vector3FA_genmsl | min | vector3 | \n",
"| IM_min_vector3FA_genosl | min | vector3 | \n",
"| IM_min_vector3_genglsl | min | vector3 | \n",
"| IM_min_vector3_genmdl | min | vector3 | \n",
"| IM_min_vector3_genmsl | min | vector3 | \n",
"| IM_min_vector3_genosl | min | vector3 | \n",
"| IM_min_vector4FA_genglsl | min | vector4 | \n",
"| IM_min_vector4FA_genmdl | min | vector4 | \n",
"| IM_min_vector4FA_genmsl | min | vector4 | \n",
"| IM_min_vector4FA_genosl | min | vector4 | \n",
"| IM_min_vector4_genglsl | min | vector4 | \n",
"| IM_min_vector4_genmdl | min | vector4 | \n",
"| IM_min_vector4_genmsl | min | vector4 | \n",
"| IM_min_vector4_genosl | min | vector4 | \n",
"| IM_minus_color3_genglsl | minus | color3 | \n",
"| IM_minus_color3_genmdl | minus | color3 | \n",
"| IM_minus_color3_genmsl | minus | color3 | \n",
"| IM_minus_color3_genosl | minus | color3 | \n",
"| IM_minus_color4_genglsl | minus | color4 | \n",
"| IM_minus_color4_genmdl | minus | color4 | \n",
"| IM_minus_color4_genmsl | minus | color4 | \n",
"| IM_minus_color4_genosl | minus | color4 | \n",
"| IM_minus_float_genglsl | minus | float | \n",
"| IM_minus_float_genmdl | minus | float | \n",
"| IM_minus_float_genmsl | minus | float | \n",
"| IM_minus_float_genosl | minus | float | \n",
"| IM_mix_bsdf_genglsl | mix | BSDF | \n",
"| IM_mix_bsdf_genmdl | mix | BSDF | \n",
"| IM_mix_bsdf_genmsl | mix | BSDF | \n",
"| IM_mix_bsdf_genosl | mix | BSDF | \n",
"| IM_mix_color3_color3_genglsl | mix | color3 | \n",
"| IM_mix_color3_color3_genmdl | mix | color3 | \n",
"| IM_mix_color3_color3_genmsl | mix | color3 | \n",
"| IM_mix_color3_color3_genosl | mix | color3 | \n",
"| IM_mix_color3_genglsl | mix | color3 | \n",
"| IM_mix_color3_genmdl | mix | color3 | \n",
"| IM_mix_color3_genmsl | mix | color3 | \n",
"| IM_mix_color3_genosl | mix | color3 | \n",
"| IM_mix_color4_color4_genglsl | mix | color4 | \n",
"| IM_mix_color4_color4_genmdl | mix | color4 | \n",
"| IM_mix_color4_color4_genmsl | mix | color4 | \n",
"| IM_mix_color4_color4_genosl | mix | color4 | \n",
"| IM_mix_color4_genglsl | mix | color4 | \n",
"| IM_mix_color4_genmdl | mix | color4 | \n",
"| IM_mix_color4_genmsl | mix | color4 | \n",
"| IM_mix_color4_genosl | mix | color4 | \n",
"| IM_mix_displacementshader_genmdl | mix | displacementshader | \n",
"| IM_mix_edf_genglsl | mix | EDF | \n",
"| IM_mix_edf_genmdl | mix | EDF | \n",
"| IM_mix_edf_genmsl | mix | EDF | \n",
"| IM_mix_edf_genosl | mix | EDF | \n",
"| IM_mix_float_genglsl | mix | float | \n",
"| IM_mix_float_genmdl | mix | float | \n",
"| IM_mix_float_genmsl | mix | float | \n",
"| IM_mix_float_genosl | mix | float | \n",
"| IM_mix_surfaceshader_genglsl | mix | surfaceshader | \n",
"| IM_mix_surfaceshader_genmdl | mix | surfaceshader | \n",
"| IM_mix_surfaceshader_genmsl | mix | surfaceshader | \n",
"| IM_mix_surfaceshader_genosl | mix | surfaceshader | \n",
"| IM_mix_vdf_genmdl | mix | VDF | \n",
"| IM_mix_vector2_genglsl | mix | vector2 | \n",
"| IM_mix_vector2_genmdl | mix | vector2 | \n",
"| IM_mix_vector2_genmsl | mix | vector2 | \n",
"| IM_mix_vector2_genosl | mix | vector2 | \n",
"| IM_mix_vector2_vector2_genglsl | mix | vector2 | \n",
"| IM_mix_vector2_vector2_genmdl | mix | vector2 | \n",
"| IM_mix_vector2_vector2_genmsl | mix | vector2 | \n",
"| IM_mix_vector2_vector2_genosl | mix | vector2 | \n",
"| IM_mix_vector3_genglsl | mix | vector3 | \n",
"| IM_mix_vector3_genmdl | mix | vector3 | \n",
"| IM_mix_vector3_genmsl | mix | vector3 | \n",
"| IM_mix_vector3_genosl | mix | vector3 | \n",
"| IM_mix_vector3_vector3_genglsl | mix | vector3 | \n",
"| IM_mix_vector3_vector3_genmdl | mix | vector3 | \n",
"| IM_mix_vector3_vector3_genmsl | mix | vector3 | \n",
"| IM_mix_vector3_vector3_genosl | mix | vector3 | \n",
"| IM_mix_vector4_genglsl | mix | vector4 | \n",
"| IM_mix_vector4_genmdl | mix | vector4 | \n",
"| IM_mix_vector4_genmsl | mix | vector4 | \n",
"| IM_mix_vector4_genosl | mix | vector4 | \n",
"| IM_mix_vector4_vector4_genglsl | mix | vector4 | \n",
"| IM_mix_vector4_vector4_genmdl | mix | vector4 | \n",
"| IM_mix_vector4_vector4_genmsl | mix | vector4 | \n",
"| IM_mix_vector4_vector4_genosl | mix | vector4 | \n",
"| IM_mix_volumeshader_genmdl | mix | volumeshader | \n",
"| IM_modulo_color3FA_genglsl | modulo | color3 | \n",
"| IM_modulo_color3FA_genmdl | modulo | color3 | \n",
"| IM_modulo_color3FA_genmsl | modulo | color3 | \n",
"| IM_modulo_color3FA_genosl | modulo | color3 | \n",
"| IM_modulo_color3_genglsl | modulo | color3 | \n",
"| IM_modulo_color3_genmdl | modulo | color3 | \n",
"| IM_modulo_color3_genmsl | modulo | color3 | \n",
"| IM_modulo_color3_genosl | modulo | color3 | \n",
"| IM_modulo_color4FA_genglsl | modulo | color4 | \n",
"| IM_modulo_color4FA_genmdl | modulo | color4 | \n",
"| IM_modulo_color4FA_genmsl | modulo | color4 | \n",
"| IM_modulo_color4FA_genosl | modulo | color4 | \n",
"| IM_modulo_color4_genglsl | modulo | color4 | \n",
"| IM_modulo_color4_genmdl | modulo | color4 | \n",
"| IM_modulo_color4_genmsl | modulo | color4 | \n",
"| IM_modulo_color4_genosl | modulo | color4 | \n",
"| IM_modulo_float_genglsl | modulo | float | \n",
"| IM_modulo_float_genmdl | modulo | float | \n",
"| IM_modulo_float_genmsl | modulo | float | \n",
"| IM_modulo_float_genosl | modulo | float | \n",
"| IM_modulo_vector2FA_genglsl | modulo | vector2 | \n",
"| IM_modulo_vector2FA_genmdl | modulo | vector2 | \n",
"| IM_modulo_vector2FA_genmsl | modulo | vector2 | \n",
"| IM_modulo_vector2FA_genosl | modulo | vector2 | \n",
"| IM_modulo_vector2_genglsl | modulo | vector2 | \n",
"| IM_modulo_vector2_genmdl | modulo | vector2 | \n",
"| IM_modulo_vector2_genmsl | modulo | vector2 | \n",
"| IM_modulo_vector2_genosl | modulo | vector2 | \n",
"| IM_modulo_vector3FA_genglsl | modulo | vector3 | \n",
"| IM_modulo_vector3FA_genmdl | modulo | vector3 | \n",
"| IM_modulo_vector3FA_genmsl | modulo | vector3 | \n",
"| IM_modulo_vector3FA_genosl | modulo | vector3 | \n",
"| IM_modulo_vector3_genglsl | modulo | vector3 | \n",
"| IM_modulo_vector3_genmdl | modulo | vector3 | \n",
"| IM_modulo_vector3_genmsl | modulo | vector3 | \n",
"| IM_modulo_vector3_genosl | modulo | vector3 | \n",
"| IM_modulo_vector4FA_genglsl | modulo | vector4 | \n",
"| IM_modulo_vector4FA_genmdl | modulo | vector4 | \n",
"| IM_modulo_vector4FA_genmsl | modulo | vector4 | \n",
"| IM_modulo_vector4FA_genosl | modulo | vector4 | \n",
"| IM_modulo_vector4_genglsl | modulo | vector4 | \n",
"| IM_modulo_vector4_genmdl | modulo | vector4 | \n",
"| IM_modulo_vector4_genmsl | modulo | vector4 | \n",
"| IM_modulo_vector4_genosl | modulo | vector4 | \n",
"| IM_multiply_bsdfC_genglsl | multiply | BSDF | \n",
"| IM_multiply_bsdfC_genmdl | multiply | BSDF | \n",
"| IM_multiply_bsdfC_genmsl | multiply | BSDF | \n",
"| IM_multiply_bsdfC_genosl | multiply | BSDF | \n",
"| IM_multiply_bsdfF_genglsl | multiply | BSDF | \n",
"| IM_multiply_bsdfF_genmdl | multiply | BSDF | \n",
"| IM_multiply_bsdfF_genmsl | multiply | BSDF | \n",
"| IM_multiply_bsdfF_genosl | multiply | BSDF | \n",
"| IM_multiply_color3FA_genglsl | multiply | color3 | \n",
"| IM_multiply_color3FA_genmdl | multiply | color3 | \n",
"| IM_multiply_color3FA_genmsl | multiply | color3 | \n",
"| IM_multiply_color3FA_genosl | multiply | color3 | \n",
"| IM_multiply_color3_genglsl | multiply | color3 | \n",
"| IM_multiply_color3_genmdl | multiply | color3 | \n",
"| IM_multiply_color3_genmsl | multiply | color3 | \n",
"| IM_multiply_color3_genosl | multiply | color3 | \n",
"| IM_multiply_color4FA_genglsl | multiply | color4 | \n",
"| IM_multiply_color4FA_genmdl | multiply | color4 | \n",
"| IM_multiply_color4FA_genmsl | multiply | color4 | \n",
"| IM_multiply_color4FA_genosl | multiply | color4 | \n",
"| IM_multiply_color4_genglsl | multiply | color4 | \n",
"| IM_multiply_color4_genmdl | multiply | color4 | \n",
"| IM_multiply_color4_genmsl | multiply | color4 | \n",
"| IM_multiply_color4_genosl | multiply | color4 | \n",
"| IM_multiply_edfC_genglsl | multiply | EDF | \n",
"| IM_multiply_edfC_genmdl | multiply | EDF | \n",
"| IM_multiply_edfC_genmsl | multiply | EDF | \n",
"| IM_multiply_edfC_genosl | multiply | EDF | \n",
"| IM_multiply_edfF_genglsl | multiply | EDF | \n",
"| IM_multiply_edfF_genmdl | multiply | EDF | \n",
"| IM_multiply_edfF_genmsl | multiply | EDF | \n",
"| IM_multiply_edfF_genosl | multiply | EDF | \n",
"| IM_multiply_float_genglsl | multiply | float | \n",
"| IM_multiply_float_genmdl | multiply | float | \n",
"| IM_multiply_float_genmsl | multiply | float | \n",
"| IM_multiply_float_genosl | multiply | float | \n",
"| IM_multiply_matrix33_genglsl | multiply | matrix33 | \n",
"| IM_multiply_matrix33_genmdl | multiply | matrix33 | \n",
"| IM_multiply_matrix33_genmsl | multiply | matrix33 | \n",
"| IM_multiply_matrix33_genosl | multiply | matrix33 | \n",
"| IM_multiply_matrix44_genglsl | multiply | matrix44 | \n",
"| IM_multiply_matrix44_genmdl | multiply | matrix44 | \n",
"| IM_multiply_matrix44_genmsl | multiply | matrix44 | \n",
"| IM_multiply_matrix44_genosl | multiply | matrix44 | \n",
"| IM_multiply_vdfC_genmdl | multiply | VDF | \n",
"| IM_multiply_vdfF_genmdl | multiply | VDF | \n",
"| IM_multiply_vector2FA_genglsl | multiply | vector2 | \n",
"| IM_multiply_vector2FA_genmdl | multiply | vector2 | \n",
"| IM_multiply_vector2FA_genmsl | multiply | vector2 | \n",
"| IM_multiply_vector2FA_genosl | multiply | vector2 | \n",
"| IM_multiply_vector2_genglsl | multiply | vector2 | \n",
"| IM_multiply_vector2_genmdl | multiply | vector2 | \n",
"| IM_multiply_vector2_genmsl | multiply | vector2 | \n",
"| IM_multiply_vector2_genosl | multiply | vector2 | \n",
"| IM_multiply_vector3FA_genglsl | multiply | vector3 | \n",
"| IM_multiply_vector3FA_genmdl | multiply | vector3 | \n",
"| IM_multiply_vector3FA_genmsl | multiply | vector3 | \n",
"| IM_multiply_vector3FA_genosl | multiply | vector3 | \n",
"| IM_multiply_vector3_genglsl | multiply | vector3 | \n",
"| IM_multiply_vector3_genmdl | multiply | vector3 | \n",
"| IM_multiply_vector3_genmsl | multiply | vector3 | \n",
"| IM_multiply_vector3_genosl | multiply | vector3 | \n",
"| IM_multiply_vector4FA_genglsl | multiply | vector4 | \n",
"| IM_multiply_vector4FA_genmdl | multiply | vector4 | \n",
"| IM_multiply_vector4FA_genmsl | multiply | vector4 | \n",
"| IM_multiply_vector4FA_genosl | multiply | vector4 | \n",
"| IM_multiply_vector4_genglsl | multiply | vector4 | \n",
"| IM_multiply_vector4_genmdl | multiply | vector4 | \n",
"| IM_multiply_vector4_genmsl | multiply | vector4 | \n",
"| IM_multiply_vector4_genosl | multiply | vector4 | \n",
"| IM_noise2d_float_genglsl | noise2d | float | \n",
"| IM_noise2d_float_genmdl | noise2d | float | \n",
"| IM_noise2d_float_genmsl | noise2d | float | \n",
"| IM_noise2d_float_genosl | noise2d | float | \n",
"| IM_noise2d_vector2_genglsl | noise2d | vector2 | \n",
"| IM_noise2d_vector2_genmdl | noise2d | vector2 | \n",
"| IM_noise2d_vector2_genmsl | noise2d | vector2 | \n",
"| IM_noise2d_vector2_genosl | noise2d | vector2 | \n",
"| IM_noise2d_vector3_genglsl | noise2d | vector3 | \n",
"| IM_noise2d_vector3_genmdl | noise2d | vector3 | \n",
"| IM_noise2d_vector3_genmsl | noise2d | vector3 | \n",
"| IM_noise2d_vector3_genosl | noise2d | vector3 | \n",
"| IM_noise2d_vector4_genglsl | noise2d | vector4 | \n",
"| IM_noise2d_vector4_genmdl | noise2d | vector4 | \n",
"| IM_noise2d_vector4_genmsl | noise2d | vector4 | \n",
"| IM_noise2d_vector4_genosl | noise2d | vector4 | \n",
"| IM_noise3d_float_genglsl | noise3d | float | \n",
"| IM_noise3d_float_genmdl | noise3d | float | \n",
"| IM_noise3d_float_genmsl | noise3d | float | \n",
"| IM_noise3d_float_genosl | noise3d | float | \n",
"| IM_noise3d_vector2_genglsl | noise3d | vector2 | \n",
"| IM_noise3d_vector2_genmdl | noise3d | vector2 | \n",
"| IM_noise3d_vector2_genmsl | noise3d | vector2 | \n",
"| IM_noise3d_vector2_genosl | noise3d | vector2 | \n",
"| IM_noise3d_vector3_genglsl | noise3d | vector3 | \n",
"| IM_noise3d_vector3_genmdl | noise3d | vector3 | \n",
"| IM_noise3d_vector3_genmsl | noise3d | vector3 | \n",
"| IM_noise3d_vector3_genosl | noise3d | vector3 | \n",
"| IM_noise3d_vector4_genglsl | noise3d | vector4 | \n",
"| IM_noise3d_vector4_genmdl | noise3d | vector4 | \n",
"| IM_noise3d_vector4_genmsl | noise3d | vector4 | \n",
"| IM_noise3d_vector4_genosl | noise3d | vector4 | \n",
"| IM_normal_vector3_genglsl | normal | vector3 | \n",
"| IM_normal_vector3_genmdl | normal | vector3 | \n",
"| IM_normal_vector3_genmsl | normal | vector3 | \n",
"| IM_normal_vector3_genosl | normal | vector3 | \n",
"| IM_normalize_vector2_genglsl | normalize | vector2 | \n",
"| IM_normalize_vector2_genmdl | normalize | vector2 | \n",
"| IM_normalize_vector2_genmsl | normalize | vector2 | \n",
"| IM_normalize_vector2_genosl | normalize | vector2 | \n",
"| IM_normalize_vector3_genglsl | normalize | vector3 | \n",
"| IM_normalize_vector3_genmdl | normalize | vector3 | \n",
"| IM_normalize_vector3_genmsl | normalize | vector3 | \n",
"| IM_normalize_vector3_genosl | normalize | vector3 | \n",
"| IM_normalize_vector4_genglsl | normalize | vector4 | \n",
"| IM_normalize_vector4_genmdl | normalize | vector4 | \n",
"| IM_normalize_vector4_genmsl | normalize | vector4 | \n",
"| IM_normalize_vector4_genosl | normalize | vector4 | \n",
"| IM_normalmap_float_genglsl | normalmap | vector3 | \n",
"| IM_normalmap_float_genmdl | normalmap | vector3 | \n",
"| IM_normalmap_float_genmsl | normalmap | vector3 | \n",
"| IM_normalmap_float_genosl | normalmap | vector3 | \n",
"| IM_normalmap_vector2_genglsl | normalmap | vector3 | \n",
"| IM_normalmap_vector2_genmdl | normalmap | vector3 | \n",
"| IM_normalmap_vector2_genmsl | normalmap | vector3 | \n",
"| IM_normalmap_vector2_genosl | normalmap | vector3 | \n",
"| IM_oren_nayar_diffuse_bsdf_genglsl | oren_nayar_diffuse_bsdf | BSDF | \n",
"| IM_oren_nayar_diffuse_bsdf_genmdl | oren_nayar_diffuse_bsdf | BSDF | \n",
"| IM_oren_nayar_diffuse_bsdf_genmsl | oren_nayar_diffuse_bsdf | BSDF | \n",
"| IM_oren_nayar_diffuse_bsdf_genosl | oren_nayar_diffuse_bsdf | BSDF | \n",
"| IM_out_color4_genglsl | out | color4 | \n",
"| IM_out_color4_genmdl | out | color4 | \n",
"| IM_out_color4_genmsl | out | color4 | \n",
"| IM_out_color4_genosl | out | color4 | \n",
"| IM_outside_color3_genglsl | outside | color3 | \n",
"| IM_outside_color3_genmdl | outside | color3 | \n",
"| IM_outside_color3_genmsl | outside | color3 | \n",
"| IM_outside_color3_genosl | outside | color3 | \n",
"| IM_outside_color4_genglsl | outside | color4 | \n",
"| IM_outside_color4_genmdl | outside | color4 | \n",
"| IM_outside_color4_genmsl | outside | color4 | \n",
"| IM_outside_color4_genosl | outside | color4 | \n",
"| IM_outside_float_genglsl | outside | float | \n",
"| IM_outside_float_genmdl | outside | float | \n",
"| IM_outside_float_genmsl | outside | float | \n",
"| IM_outside_float_genosl | outside | float | \n",
"| IM_over_color4_genglsl | over | color4 | \n",
"| IM_over_color4_genmdl | over | color4 | \n",
"| IM_over_color4_genmsl | over | color4 | \n",
"| IM_over_color4_genosl | over | color4 | \n",
"| IM_plus_color3_genglsl | plus | color3 | \n",
"| IM_plus_color3_genmdl | plus | color3 | \n",
"| IM_plus_color3_genmsl | plus | color3 | \n",
"| IM_plus_color3_genosl | plus | color3 | \n",
"| IM_plus_color4_genglsl | plus | color4 | \n",
"| IM_plus_color4_genmdl | plus | color4 | \n",
"| IM_plus_color4_genmsl | plus | color4 | \n",
"| IM_plus_color4_genosl | plus | color4 | \n",
"| IM_plus_float_genglsl | plus | float | \n",
"| IM_plus_float_genmdl | plus | float | \n",
"| IM_plus_float_genmsl | plus | float | \n",
"| IM_plus_float_genosl | plus | float | \n",
"| IM_point_light_genglsl | point_light | lightshader | \n",
"| IM_point_light_genmsl | point_light | lightshader | \n",
"| IM_position_vector3_genglsl | position | vector3 | \n",
"| IM_position_vector3_genmdl | position | vector3 | \n",
"| IM_position_vector3_genmsl | position | vector3 | \n",
"| IM_position_vector3_genosl | position | vector3 | \n",
"| IM_power_color3FA_genglsl | power | color3 | \n",
"| IM_power_color3FA_genmdl | power | color3 | \n",
"| IM_power_color3FA_genmsl | power | color3 | \n",
"| IM_power_color3FA_genosl | power | color3 | \n",
"| IM_power_color3_genglsl | power | color3 | \n",
"| IM_power_color3_genmdl | power | color3 | \n",
"| IM_power_color3_genmsl | power | color3 | \n",
"| IM_power_color3_genosl | power | color3 | \n",
"| IM_power_color4FA_genglsl | power | color4 | \n",
"| IM_power_color4FA_genmdl | power | color4 | \n",
"| IM_power_color4FA_genmsl | power | color4 | \n",
"| IM_power_color4FA_genosl | power | color4 | \n",
"| IM_power_color4_genglsl | power | color4 | \n",
"| IM_power_color4_genmdl | power | color4 | \n",
"| IM_power_color4_genmsl | power | color4 | \n",
"| IM_power_color4_genosl | power | color4 | \n",
"| IM_power_float_genglsl | power | float | \n",
"| IM_power_float_genmdl | power | float | \n",
"| IM_power_float_genmsl | power | float | \n",
"| IM_power_float_genosl | power | float | \n",
"| IM_power_vector2FA_genglsl | power | vector2 | \n",
"| IM_power_vector2FA_genmdl | power | vector2 | \n",
"| IM_power_vector2FA_genmsl | power | vector2 | \n",
"| IM_power_vector2FA_genosl | power | vector2 | \n",
"| IM_power_vector2_genglsl | power | vector2 | \n",
"| IM_power_vector2_genmdl | power | vector2 | \n",
"| IM_power_vector2_genmsl | power | vector2 | \n",
"| IM_power_vector2_genosl | power | vector2 | \n",
"| IM_power_vector3FA_genglsl | power | vector3 | \n",
"| IM_power_vector3FA_genmdl | power | vector3 | \n",
"| IM_power_vector3FA_genmsl | power | vector3 | \n",
"| IM_power_vector3FA_genosl | power | vector3 | \n",
"| IM_power_vector3_genglsl | power | vector3 | \n",
"| IM_power_vector3_genmdl | power | vector3 | \n",
"| IM_power_vector3_genmsl | power | vector3 | \n",
"| IM_power_vector3_genosl | power | vector3 | \n",
"| IM_power_vector4FA_genglsl | power | vector4 | \n",
"| IM_power_vector4FA_genmdl | power | vector4 | \n",
"| IM_power_vector4FA_genmsl | power | vector4 | \n",
"| IM_power_vector4FA_genosl | power | vector4 | \n",
"| IM_power_vector4_genglsl | power | vector4 | \n",
"| IM_power_vector4_genmdl | power | vector4 | \n",
"| IM_power_vector4_genmsl | power | vector4 | \n",
"| IM_power_vector4_genosl | power | vector4 | \n",
"| IM_premult_color4_genglsl | premult | color4 | \n",
"| IM_premult_color4_genmdl | premult | color4 | \n",
"| IM_premult_color4_genmsl | premult | color4 | \n",
"| IM_premult_color4_genosl | premult | color4 | \n",
"| IM_ramplr_color3_genglsl | ramplr | color3 | \n",
"| IM_ramplr_color3_genmdl | ramplr | color3 | \n",
"| IM_ramplr_color3_genmsl | ramplr | color3 | \n",
"| IM_ramplr_color3_genosl | ramplr | color3 | \n",
"| IM_ramplr_color4_genglsl | ramplr | color4 | \n",
"| IM_ramplr_color4_genmdl | ramplr | color4 | \n",
"| IM_ramplr_color4_genmsl | ramplr | color4 | \n",
"| IM_ramplr_color4_genosl | ramplr | color4 | \n",
"| IM_ramplr_float_genglsl | ramplr | float | \n",
"| IM_ramplr_float_genmdl | ramplr | float | \n",
"| IM_ramplr_float_genmsl | ramplr | float | \n",
"| IM_ramplr_float_genosl | ramplr | float | \n",
"| IM_ramplr_vector2_genglsl | ramplr | vector2 | \n",
"| IM_ramplr_vector2_genmdl | ramplr | vector2 | \n",
"| IM_ramplr_vector2_genmsl | ramplr | vector2 | \n",
"| IM_ramplr_vector2_genosl | ramplr | vector2 | \n",
"| IM_ramplr_vector3_genglsl | ramplr | vector3 | \n",
"| IM_ramplr_vector3_genmdl | ramplr | vector3 | \n",
"| IM_ramplr_vector3_genmsl | ramplr | vector3 | \n",
"| IM_ramplr_vector3_genosl | ramplr | vector3 | \n",
"| IM_ramplr_vector4_genglsl | ramplr | vector4 | \n",
"| IM_ramplr_vector4_genmdl | ramplr | vector4 | \n",
"| IM_ramplr_vector4_genmsl | ramplr | vector4 | \n",
"| IM_ramplr_vector4_genosl | ramplr | vector4 | \n",
"| IM_ramptb_color3_genglsl | ramptb | color3 | \n",
"| IM_ramptb_color3_genmdl | ramptb | color3 | \n",
"| IM_ramptb_color3_genmsl | ramptb | color3 | \n",
"| IM_ramptb_color3_genosl | ramptb | color3 | \n",
"| IM_ramptb_color4_genglsl | ramptb | color4 | \n",
"| IM_ramptb_color4_genmdl | ramptb | color4 | \n",
"| IM_ramptb_color4_genmsl | ramptb | color4 | \n",
"| IM_ramptb_color4_genosl | ramptb | color4 | \n",
"| IM_ramptb_float_genglsl | ramptb | float | \n",
"| IM_ramptb_float_genmdl | ramptb | float | \n",
"| IM_ramptb_float_genmsl | ramptb | float | \n",
"| IM_ramptb_float_genosl | ramptb | float | \n",
"| IM_ramptb_vector2_genglsl | ramptb | vector2 | \n",
"| IM_ramptb_vector2_genmdl | ramptb | vector2 | \n",
"| IM_ramptb_vector2_genmsl | ramptb | vector2 | \n",
"| IM_ramptb_vector2_genosl | ramptb | vector2 | \n",
"| IM_ramptb_vector3_genglsl | ramptb | vector3 | \n",
"| IM_ramptb_vector3_genmdl | ramptb | vector3 | \n",
"| IM_ramptb_vector3_genmsl | ramptb | vector3 | \n",
"| IM_ramptb_vector3_genosl | ramptb | vector3 | \n",
"| IM_ramptb_vector4_genglsl | ramptb | vector4 | \n",
"| IM_ramptb_vector4_genmdl | ramptb | vector4 | \n",
"| IM_ramptb_vector4_genmsl | ramptb | vector4 | \n",
"| IM_ramptb_vector4_genosl | ramptb | vector4 | \n",
"| IM_remap_color3FA_genglsl | remap | color3 | \n",
"| IM_remap_color3FA_genmdl | remap | color3 | \n",
"| IM_remap_color3FA_genmsl | remap | color3 | \n",
"| IM_remap_color3FA_genosl | remap | color3 | \n",
"| IM_remap_color3_genglsl | remap | color3 | \n",
"| IM_remap_color3_genmdl | remap | color3 | \n",
"| IM_remap_color3_genmsl | remap | color3 | \n",
"| IM_remap_color3_genosl | remap | color3 | \n",
"| IM_remap_color4FA_genglsl | remap | color4 | \n",
"| IM_remap_color4FA_genmdl | remap | color4 | \n",
"| IM_remap_color4FA_genmsl | remap | color4 | \n",
"| IM_remap_color4FA_genosl | remap | color4 | \n",
"| IM_remap_color4_genglsl | remap | color4 | \n",
"| IM_remap_color4_genmdl | remap | color4 | \n",
"| IM_remap_color4_genmsl | remap | color4 | \n",
"| IM_remap_color4_genosl | remap | color4 | \n",
"| IM_remap_float_genglsl | remap | float | \n",
"| IM_remap_float_genmdl | remap | float | \n",
"| IM_remap_float_genmsl | remap | float | \n",
"| IM_remap_float_genosl | remap | float | \n",
"| IM_remap_vector2FA_genglsl | remap | vector2 | \n",
"| IM_remap_vector2FA_genmdl | remap | vector2 | \n",
"| IM_remap_vector2FA_genmsl | remap | vector2 | \n",
"| IM_remap_vector2FA_genosl | remap | vector2 | \n",
"| IM_remap_vector2_genglsl | remap | vector2 | \n",
"| IM_remap_vector2_genmdl | remap | vector2 | \n",
"| IM_remap_vector2_genmsl | remap | vector2 | \n",
"| IM_remap_vector2_genosl | remap | vector2 | \n",
"| IM_remap_vector3FA_genglsl | remap | vector3 | \n",
"| IM_remap_vector3FA_genmdl | remap | vector3 | \n",
"| IM_remap_vector3FA_genmsl | remap | vector3 | \n",
"| IM_remap_vector3FA_genosl | remap | vector3 | \n",
"| IM_remap_vector3_genglsl | remap | vector3 | \n",
"| IM_remap_vector3_genmdl | remap | vector3 | \n",
"| IM_remap_vector3_genmsl | remap | vector3 | \n",
"| IM_remap_vector3_genosl | remap | vector3 | \n",
"| IM_remap_vector4FA_genglsl | remap | vector4 | \n",
"| IM_remap_vector4FA_genmdl | remap | vector4 | \n",
"| IM_remap_vector4FA_genmsl | remap | vector4 | \n",
"| IM_remap_vector4FA_genosl | remap | vector4 | \n",
"| IM_remap_vector4_genglsl | remap | vector4 | \n",
"| IM_remap_vector4_genmdl | remap | vector4 | \n",
"| IM_remap_vector4_genmsl | remap | vector4 | \n",
"| IM_remap_vector4_genosl | remap | vector4 | \n",
"| IM_rgbtohsv_color3_genglsl | rgbtohsv | color3 | \n",
"| IM_rgbtohsv_color3_genmdl | rgbtohsv | color3 | \n",
"| IM_rgbtohsv_color3_genmsl | rgbtohsv | color3 | \n",
"| IM_rgbtohsv_color3_genosl | rgbtohsv | color3 | \n",
"| IM_rgbtohsv_color4_genglsl | rgbtohsv | color4 | \n",
"| IM_rgbtohsv_color4_genmdl | rgbtohsv | color4 | \n",
"| IM_rgbtohsv_color4_genmsl | rgbtohsv | color4 | \n",
"| IM_rgbtohsv_color4_genosl | rgbtohsv | color4 | \n",
"| IM_rotate2d_vector2_genglsl | rotate2d | vector2 | \n",
"| IM_rotate2d_vector2_genmdl | rotate2d | vector2 | \n",
"| IM_rotate2d_vector2_genmsl | rotate2d | vector2 | \n",
"| IM_rotate2d_vector2_genosl | rotate2d | vector2 | \n",
"| IM_rotate3d_vector3_genglsl | rotate3d | vector3 | \n",
"| IM_rotate3d_vector3_genmdl | rotate3d | vector3 | \n",
"| IM_rotate3d_vector3_genmsl | rotate3d | vector3 | \n",
"| IM_rotate3d_vector3_genosl | rotate3d | vector3 | \n",
"| IM_roughness_anisotropy_genglsl | roughness_anisotropy | vector2 | \n",
"| IM_roughness_anisotropy_genmdl | roughness_anisotropy | vector2 | \n",
"| IM_roughness_anisotropy_genmsl | roughness_anisotropy | vector2 | \n",
"| IM_roughness_anisotropy_genosl | roughness_anisotropy | vector2 | \n",
"| IM_roughness_dual_genglsl | roughness_dual | vector2 | \n",
"| IM_roughness_dual_genmdl | roughness_dual | vector2 | \n",
"| IM_roughness_dual_genmsl | roughness_dual | vector2 | \n",
"| IM_roughness_dual_genosl | roughness_dual | vector2 | \n",
"| IM_round_color3_genglsl | round | color3 | \n",
"| IM_round_color3_genmdl | round | color3 | \n",
"| IM_round_color3_genmsl | round | color3 | \n",
"| IM_round_color3_genosl | round | color3 | \n",
"| IM_round_color4_genglsl | round | color4 | \n",
"| IM_round_color4_genmdl | round | color4 | \n",
"| IM_round_color4_genmsl | round | color4 | \n",
"| IM_round_color4_genosl | round | color4 | \n",
"| IM_round_float_genglsl | round | float | \n",
"| IM_round_float_genmdl | round | float | \n",
"| IM_round_float_genmsl | round | float | \n",
"| IM_round_float_genosl | round | float | \n",
"| IM_round_integer_genglsl | round | integer | \n",
"| IM_round_integer_genmdl | round | integer | \n",
"| IM_round_integer_genmsl | round | integer | \n",
"| IM_round_integer_genosl | round | integer | \n",
"| IM_round_vector2_genglsl | round | vector2 | \n",
"| IM_round_vector2_genmdl | round | vector2 | \n",
"| IM_round_vector2_genmsl | round | vector2 | \n",
"| IM_round_vector2_genosl | round | vector2 | \n",
"| IM_round_vector3_genglsl | round | vector3 | \n",
"| IM_round_vector3_genmdl | round | vector3 | \n",
"| IM_round_vector3_genmsl | round | vector3 | \n",
"| IM_round_vector3_genosl | round | vector3 | \n",
"| IM_round_vector4_genglsl | round | vector4 | \n",
"| IM_round_vector4_genmdl | round | vector4 | \n",
"| IM_round_vector4_genmsl | round | vector4 | \n",
"| IM_round_vector4_genosl | round | vector4 | \n",
"| IM_screen_color3_genglsl | screen | color3 | \n",
"| IM_screen_color3_genmdl | screen | color3 | \n",
"| IM_screen_color3_genmsl | screen | color3 | \n",
"| IM_screen_color3_genosl | screen | color3 | \n",
"| IM_screen_color4_genglsl | screen | color4 | \n",
"| IM_screen_color4_genmdl | screen | color4 | \n",
"| IM_screen_color4_genmsl | screen | color4 | \n",
"| IM_screen_color4_genosl | screen | color4 | \n",
"| IM_screen_float_genglsl | screen | float | \n",
"| IM_screen_float_genmdl | screen | float | \n",
"| IM_screen_float_genmsl | screen | float | \n",
"| IM_screen_float_genosl | screen | float | \n",
"| IM_sheen_bsdf_genglsl | sheen_bsdf | BSDF | \n",
"| IM_sheen_bsdf_genmdl | sheen_bsdf | BSDF | \n",
"| IM_sheen_bsdf_genmsl | sheen_bsdf | BSDF | \n",
"| IM_sheen_bsdf_genosl | sheen_bsdf | BSDF | \n",
"| IM_sign_color3_genglsl | sign | color3 | \n",
"| IM_sign_color3_genmdl | sign | color3 | \n",
"| IM_sign_color3_genmsl | sign | color3 | \n",
"| IM_sign_color3_genosl | sign | color3 | \n",
"| IM_sign_color4_genglsl | sign | color4 | \n",
"| IM_sign_color4_genmdl | sign | color4 | \n",
"| IM_sign_color4_genmsl | sign | color4 | \n",
"| IM_sign_color4_genosl | sign | color4 | \n",
"| IM_sign_float_genglsl | sign | float | \n",
"| IM_sign_float_genmdl | sign | float | \n",
"| IM_sign_float_genmsl | sign | float | \n",
"| IM_sign_float_genosl | sign | float | \n",
"| IM_sign_vector2_genglsl | sign | vector2 | \n",
"| IM_sign_vector2_genmdl | sign | vector2 | \n",
"| IM_sign_vector2_genmsl | sign | vector2 | \n",
"| IM_sign_vector2_genosl | sign | vector2 | \n",
"| IM_sign_vector3_genglsl | sign | vector3 | \n",
"| IM_sign_vector3_genmdl | sign | vector3 | \n",
"| IM_sign_vector3_genmsl | sign | vector3 | \n",
"| IM_sign_vector3_genosl | sign | vector3 | \n",
"| IM_sign_vector4_genglsl | sign | vector4 | \n",
"| IM_sign_vector4_genmdl | sign | vector4 | \n",
"| IM_sign_vector4_genmsl | sign | vector4 | \n",
"| IM_sign_vector4_genosl | sign | vector4 | \n",
"| IM_sin_float_genglsl | sin | float | \n",
"| IM_sin_float_genmdl | sin | float | \n",
"| IM_sin_float_genmsl | sin | float | \n",
"| IM_sin_float_genosl | sin | float | \n",
"| IM_sin_vector2_genglsl | sin | vector2 | \n",
"| IM_sin_vector2_genmdl | sin | vector2 | \n",
"| IM_sin_vector2_genmsl | sin | vector2 | \n",
"| IM_sin_vector2_genosl | sin | vector2 | \n",
"| IM_sin_vector3_genglsl | sin | vector3 | \n",
"| IM_sin_vector3_genmdl | sin | vector3 | \n",
"| IM_sin_vector3_genmsl | sin | vector3 | \n",
"| IM_sin_vector3_genosl | sin | vector3 | \n",
"| IM_sin_vector4_genglsl | sin | vector4 | \n",
"| IM_sin_vector4_genmdl | sin | vector4 | \n",
"| IM_sin_vector4_genmsl | sin | vector4 | \n",
"| IM_sin_vector4_genosl | sin | vector4 | \n",
"| IM_smoothstep_float_genglsl | smoothstep | float | \n",
"| IM_smoothstep_float_genmdl | smoothstep | float | \n",
"| IM_smoothstep_float_genmsl | smoothstep | float | \n",
"| IM_smoothstep_float_genosl | smoothstep | float | \n",
"| IM_smoothstep_vector2_genglsl | smoothstep | vector2 | \n",
"| IM_smoothstep_vector2_genmdl | smoothstep | vector2 | \n",
"| IM_smoothstep_vector2_genmsl | smoothstep | vector2 | \n",
"| IM_smoothstep_vector2_genosl | smoothstep | vector2 | \n",
"| IM_smoothstep_vector3_genglsl | smoothstep | vector3 | \n",
"| IM_smoothstep_vector3_genmdl | smoothstep | vector3 | \n",
"| IM_smoothstep_vector3_genmsl | smoothstep | vector3 | \n",
"| IM_smoothstep_vector3_genosl | smoothstep | vector3 | \n",
"| IM_smoothstep_vector4_genglsl | smoothstep | vector4 | \n",
"| IM_smoothstep_vector4_genmdl | smoothstep | vector4 | \n",
"| IM_smoothstep_vector4_genmsl | smoothstep | vector4 | \n",
"| IM_smoothstep_vector4_genosl | smoothstep | vector4 | \n",
"| IM_splitlr_color3_genglsl | splitlr | color3 | \n",
"| IM_splitlr_color3_genmdl | splitlr | color3 | \n",
"| IM_splitlr_color3_genmsl | splitlr | color3 | \n",
"| IM_splitlr_color3_genosl | splitlr | color3 | \n",
"| IM_splitlr_color4_genglsl | splitlr | color4 | \n",
"| IM_splitlr_color4_genmdl | splitlr | color4 | \n",
"| IM_splitlr_color4_genmsl | splitlr | color4 | \n",
"| IM_splitlr_color4_genosl | splitlr | color4 | \n",
"| IM_splitlr_float_genglsl | splitlr | float | \n",
"| IM_splitlr_float_genmdl | splitlr | float | \n",
"| IM_splitlr_float_genmsl | splitlr | float | \n",
"| IM_splitlr_float_genosl | splitlr | float | \n",
"| IM_splitlr_vector2_genglsl | splitlr | vector2 | \n",
"| IM_splitlr_vector2_genmdl | splitlr | vector2 | \n",
"| IM_splitlr_vector2_genmsl | splitlr | vector2 | \n",
"| IM_splitlr_vector2_genosl | splitlr | vector2 | \n",
"| IM_splitlr_vector3_genglsl | splitlr | vector3 | \n",
"| IM_splitlr_vector3_genmdl | splitlr | vector3 | \n",
"| IM_splitlr_vector3_genmsl | splitlr | vector3 | \n",
"| IM_splitlr_vector3_genosl | splitlr | vector3 | \n",
"| IM_splitlr_vector4_genglsl | splitlr | vector4 | \n",
"| IM_splitlr_vector4_genmdl | splitlr | vector4 | \n",
"| IM_splitlr_vector4_genmsl | splitlr | vector4 | \n",
"| IM_splitlr_vector4_genosl | splitlr | vector4 | \n",
"| IM_splittb_color3_genglsl | splittb | color3 | \n",
"| IM_splittb_color3_genmdl | splittb | color3 | \n",
"| IM_splittb_color3_genmsl | splittb | color3 | \n",
"| IM_splittb_color3_genosl | splittb | color3 | \n",
"| IM_splittb_color4_genglsl | splittb | color4 | \n",
"| IM_splittb_color4_genmdl | splittb | color4 | \n",
"| IM_splittb_color4_genmsl | splittb | color4 | \n",
"| IM_splittb_color4_genosl | splittb | color4 | \n",
"| IM_splittb_float_genglsl | splittb | float | \n",
"| IM_splittb_float_genmdl | splittb | float | \n",
"| IM_splittb_float_genmsl | splittb | float | \n",
"| IM_splittb_float_genosl | splittb | float | \n",
"| IM_splittb_vector2_genglsl | splittb | vector2 | \n",
"| IM_splittb_vector2_genmdl | splittb | vector2 | \n",
"| IM_splittb_vector2_genmsl | splittb | vector2 | \n",
"| IM_splittb_vector2_genosl | splittb | vector2 | \n",
"| IM_splittb_vector3_genglsl | splittb | vector3 | \n",
"| IM_splittb_vector3_genmdl | splittb | vector3 | \n",
"| IM_splittb_vector3_genmsl | splittb | vector3 | \n",
"| IM_splittb_vector3_genosl | splittb | vector3 | \n",
"| IM_splittb_vector4_genglsl | splittb | vector4 | \n",
"| IM_splittb_vector4_genmdl | splittb | vector4 | \n",
"| IM_splittb_vector4_genmsl | splittb | vector4 | \n",
"| IM_splittb_vector4_genosl | splittb | vector4 | \n",
"| IM_spot_light_genglsl | spot_light | lightshader | \n",
"| IM_spot_light_genmsl | spot_light | lightshader | \n",
"| IM_sqrt_float_genglsl | sqrt | float | \n",
"| IM_sqrt_float_genmdl | sqrt | float | \n",
"| IM_sqrt_float_genmsl | sqrt | float | \n",
"| IM_sqrt_float_genosl | sqrt | float | \n",
"| IM_sqrt_vector2_genglsl | sqrt | vector2 | \n",
"| IM_sqrt_vector2_genmdl | sqrt | vector2 | \n",
"| IM_sqrt_vector2_genmsl | sqrt | vector2 | \n",
"| IM_sqrt_vector2_genosl | sqrt | vector2 | \n",
"| IM_sqrt_vector3_genglsl | sqrt | vector3 | \n",
"| IM_sqrt_vector3_genmdl | sqrt | vector3 | \n",
"| IM_sqrt_vector3_genmsl | sqrt | vector3 | \n",
"| IM_sqrt_vector3_genosl | sqrt | vector3 | \n",
"| IM_sqrt_vector4_genglsl | sqrt | vector4 | \n",
"| IM_sqrt_vector4_genmdl | sqrt | vector4 | \n",
"| IM_sqrt_vector4_genmsl | sqrt | vector4 | \n",
"| IM_sqrt_vector4_genosl | sqrt | vector4 | \n",
"| IM_subsurface_bsdf_genglsl | subsurface_bsdf | BSDF | \n",
"| IM_subsurface_bsdf_genmdl | subsurface_bsdf | BSDF | \n",
"| IM_subsurface_bsdf_genmsl | subsurface_bsdf | BSDF | \n",
"| IM_subsurface_bsdf_genosl | subsurface_bsdf | BSDF | \n",
"| IM_subtract_color3FA_genglsl | subtract | color3 | \n",
"| IM_subtract_color3FA_genmdl | subtract | color3 | \n",
"| IM_subtract_color3FA_genmsl | subtract | color3 | \n",
"| IM_subtract_color3FA_genosl | subtract | color3 | \n",
"| IM_subtract_color3_genglsl | subtract | color3 | \n",
"| IM_subtract_color3_genmdl | subtract | color3 | \n",
"| IM_subtract_color3_genmsl | subtract | color3 | \n",
"| IM_subtract_color3_genosl | subtract | color3 | \n",
"| IM_subtract_color4FA_genglsl | subtract | color4 | \n",
"| IM_subtract_color4FA_genmdl | subtract | color4 | \n",
"| IM_subtract_color4FA_genmsl | subtract | color4 | \n",
"| IM_subtract_color4FA_genosl | subtract | color4 | \n",
"| IM_subtract_color4_genglsl | subtract | color4 | \n",
"| IM_subtract_color4_genmdl | subtract | color4 | \n",
"| IM_subtract_color4_genmsl | subtract | color4 | \n",
"| IM_subtract_color4_genosl | subtract | color4 | \n",
"| IM_subtract_float_genglsl | subtract | float | \n",
"| IM_subtract_float_genmdl | subtract | float | \n",
"| IM_subtract_float_genmsl | subtract | float | \n",
"| IM_subtract_float_genosl | subtract | float | \n",
"| IM_subtract_matrix33FA_genglsl | subtract | matrix33 | \n",
"| IM_subtract_matrix33FA_genmdl | subtract | matrix33 | \n",
"| IM_subtract_matrix33FA_genmsl | subtract | matrix33 | \n",
"| IM_subtract_matrix33FA_genosl | subtract | matrix33 | \n",
"| IM_subtract_matrix33_genglsl | subtract | matrix33 | \n",
"| IM_subtract_matrix33_genmdl | subtract | matrix33 | \n",
"| IM_subtract_matrix33_genmsl | subtract | matrix33 | \n",
"| IM_subtract_matrix33_genosl | subtract | matrix33 | \n",
"| IM_subtract_matrix44FA_genglsl | subtract | matrix44 | \n",
"| IM_subtract_matrix44FA_genmdl | subtract | matrix44 | \n",
"| IM_subtract_matrix44FA_genmsl | subtract | matrix44 | \n",
"| IM_subtract_matrix44FA_genosl | subtract | matrix44 | \n",
"| IM_subtract_matrix44_genglsl | subtract | matrix44 | \n",
"| IM_subtract_matrix44_genmdl | subtract | matrix44 | \n",
"| IM_subtract_matrix44_genmsl | subtract | matrix44 | \n",
"| IM_subtract_matrix44_genosl | subtract | matrix44 | \n",
"| IM_subtract_vector2FA_genglsl | subtract | vector2 | \n",
"| IM_subtract_vector2FA_genmdl | subtract | vector2 | \n",
"| IM_subtract_vector2FA_genmsl | subtract | vector2 | \n",
"| IM_subtract_vector2FA_genosl | subtract | vector2 | \n",
"| IM_subtract_vector2_genglsl | subtract | vector2 | \n",
"| IM_subtract_vector2_genmdl | subtract | vector2 | \n",
"| IM_subtract_vector2_genmsl | subtract | vector2 | \n",
"| IM_subtract_vector2_genosl | subtract | vector2 | \n",
"| IM_subtract_vector3FA_genglsl | subtract | vector3 | \n",
"| IM_subtract_vector3FA_genmdl | subtract | vector3 | \n",
"| IM_subtract_vector3FA_genmsl | subtract | vector3 | \n",
"| IM_subtract_vector3FA_genosl | subtract | vector3 | \n",
"| IM_subtract_vector3_genglsl | subtract | vector3 | \n",
"| IM_subtract_vector3_genmdl | subtract | vector3 | \n",
"| IM_subtract_vector3_genmsl | subtract | vector3 | \n",
"| IM_subtract_vector3_genosl | subtract | vector3 | \n",
"| IM_subtract_vector4FA_genglsl | subtract | vector4 | \n",
"| IM_subtract_vector4FA_genmdl | subtract | vector4 | \n",
"| IM_subtract_vector4FA_genmsl | subtract | vector4 | \n",
"| IM_subtract_vector4FA_genosl | subtract | vector4 | \n",
"| IM_subtract_vector4_genglsl | subtract | vector4 | \n",
"| IM_subtract_vector4_genmdl | subtract | vector4 | \n",
"| IM_subtract_vector4_genmsl | subtract | vector4 | \n",
"| IM_subtract_vector4_genosl | subtract | vector4 | \n",
"| IM_surface_genglsl | surface | surfaceshader | \n",
"| IM_surface_genmdl | surface | surfaceshader | \n",
"| IM_surface_genmsl | surface | surfaceshader | \n",
"| IM_surface_genosl | surface | surfaceshader | \n",
"| IM_surface_unlit_genglsl | surface_unlit | surfaceshader | \n",
"| IM_surface_unlit_genmdl | surface_unlit | surfaceshader | \n",
"| IM_surface_unlit_genmsl | surface_unlit | surfaceshader | \n",
"| IM_surface_unlit_genosl | surface_unlit | surfaceshader | \n",
"| IM_surfacematerial_genglsl | surfacematerial | material | \n",
"| IM_surfacematerial_genmdl | surfacematerial | material | \n",
"| IM_surfacematerial_genmsl | surfacematerial | material | \n",
"| IM_surfacematerial_genosl | surfacematerial | material | \n",
"| IM_switch_color3I_genglsl | switch | color3 | \n",
"| IM_switch_color3I_genmdl | switch | color3 | \n",
"| IM_switch_color3I_genmsl | switch | color3 | \n",
"| IM_switch_color3I_genosl | switch | color3 | \n",
"| IM_switch_color3_genglsl | switch | color3 | \n",
"| IM_switch_color3_genmdl | switch | color3 | \n",
"| IM_switch_color3_genmsl | switch | color3 | \n",
"| IM_switch_color3_genosl | switch | color3 | \n",
"| IM_switch_color4I_genglsl | switch | color4 | \n",
"| IM_switch_color4I_genmdl | switch | color4 | \n",
"| IM_switch_color4I_genmsl | switch | color4 | \n",
"| IM_switch_color4I_genosl | switch | color4 | \n",
"| IM_switch_color4_genglsl | switch | color4 | \n",
"| IM_switch_color4_genmdl | switch | color4 | \n",
"| IM_switch_color4_genmsl | switch | color4 | \n",
"| IM_switch_color4_genosl | switch | color4 | \n",
"| IM_switch_floatI_genglsl | switch | float | \n",
"| IM_switch_floatI_genmdl | switch | float | \n",
"| IM_switch_floatI_genmsl | switch | float | \n",
"| IM_switch_floatI_genosl | switch | float | \n",
"| IM_switch_float_genglsl | switch | float | \n",
"| IM_switch_float_genmdl | switch | float | \n",
"| IM_switch_float_genmsl | switch | float | \n",
"| IM_switch_float_genosl | switch | float | \n",
"| IM_switch_vector2I_genglsl | switch | vector2 | \n",
"| IM_switch_vector2I_genmdl | switch | vector2 | \n",
"| IM_switch_vector2I_genmsl | switch | vector2 | \n",
"| IM_switch_vector2I_genosl | switch | vector2 | \n",
"| IM_switch_vector2_genglsl | switch | vector2 | \n",
"| IM_switch_vector2_genmdl | switch | vector2 | \n",
"| IM_switch_vector2_genmsl | switch | vector2 | \n",
"| IM_switch_vector2_genosl | switch | vector2 | \n",
"| IM_switch_vector3I_genglsl | switch | vector3 | \n",
"| IM_switch_vector3I_genmdl | switch | vector3 | \n",
"| IM_switch_vector3I_genmsl | switch | vector3 | \n",
"| IM_switch_vector3I_genosl | switch | vector3 | \n",
"| IM_switch_vector3_genglsl | switch | vector3 | \n",
"| IM_switch_vector3_genmdl | switch | vector3 | \n",
"| IM_switch_vector3_genmsl | switch | vector3 | \n",
"| IM_switch_vector3_genosl | switch | vector3 | \n",
"| IM_switch_vector4I_genglsl | switch | vector4 | \n",
"| IM_switch_vector4I_genmdl | switch | vector4 | \n",
"| IM_switch_vector4I_genmsl | switch | vector4 | \n",
"| IM_switch_vector4I_genosl | switch | vector4 | \n",
"| IM_switch_vector4_genglsl | switch | vector4 | \n",
"| IM_switch_vector4_genmdl | switch | vector4 | \n",
"| IM_switch_vector4_genmsl | switch | vector4 | \n",
"| IM_switch_vector4_genosl | switch | vector4 | \n",
"| IM_swizzle_color3_color3_genglsl | swizzle | color3 | \n",
"| IM_swizzle_color3_color3_genmdl | swizzle | color3 | \n",
"| IM_swizzle_color3_color3_genmsl | swizzle | color3 | \n",
"| IM_swizzle_color3_color3_genosl | swizzle | color3 | \n",
"| IM_swizzle_color3_color4_genglsl | swizzle | color4 | \n",
"| IM_swizzle_color3_color4_genmdl | swizzle | color4 | \n",
"| IM_swizzle_color3_color4_genmsl | swizzle | color4 | \n",
"| IM_swizzle_color3_color4_genosl | swizzle | color4 | \n",
"| IM_swizzle_color3_float_genglsl | swizzle | float | \n",
"| IM_swizzle_color3_float_genmdl | swizzle | float | \n",
"| IM_swizzle_color3_float_genmsl | swizzle | float | \n",
"| IM_swizzle_color3_float_genosl | swizzle | float | \n",
"| IM_swizzle_color3_vector2_genglsl | swizzle | vector2 | \n",
"| IM_swizzle_color3_vector2_genmdl | swizzle | vector2 | \n",
"| IM_swizzle_color3_vector2_genmsl | swizzle | vector2 | \n",
"| IM_swizzle_color3_vector2_genosl | swizzle | vector2 | \n",
"| IM_swizzle_color3_vector3_genglsl | swizzle | vector3 | \n",
"| IM_swizzle_color3_vector3_genmdl | swizzle | vector3 | \n",
"| IM_swizzle_color3_vector3_genmsl | swizzle | vector3 | \n",
"| IM_swizzle_color3_vector3_genosl | swizzle | vector3 | \n",
"| IM_swizzle_color3_vector4_genglsl | swizzle | vector4 | \n",
"| IM_swizzle_color3_vector4_genmdl | swizzle | vector4 | \n",
"| IM_swizzle_color3_vector4_genmsl | swizzle | vector4 | \n",
"| IM_swizzle_color3_vector4_genosl | swizzle | vector4 | \n",
"| IM_swizzle_color4_color3_genglsl | swizzle | color3 | \n",
"| IM_swizzle_color4_color3_genmdl | swizzle | color3 | \n",
"| IM_swizzle_color4_color3_genmsl | swizzle | color3 | \n",
"| IM_swizzle_color4_color3_genosl | swizzle | color3 | \n",
"| IM_swizzle_color4_color4_genglsl | swizzle | color4 | \n",
"| IM_swizzle_color4_color4_genmdl | swizzle | color4 | \n",
"| IM_swizzle_color4_color4_genmsl | swizzle | color4 | \n",
"| IM_swizzle_color4_color4_genosl | swizzle | color4 | \n",
"| IM_swizzle_color4_float_genglsl | swizzle | float | \n",
"| IM_swizzle_color4_float_genmdl | swizzle | float | \n",
"| IM_swizzle_color4_float_genmsl | swizzle | float | \n",
"| IM_swizzle_color4_float_genosl | swizzle | float | \n",
"| IM_swizzle_color4_vector2_genglsl | swizzle | vector2 | \n",
"| IM_swizzle_color4_vector2_genmdl | swizzle | vector2 | \n",
"| IM_swizzle_color4_vector2_genmsl | swizzle | vector2 | \n",
"| IM_swizzle_color4_vector2_genosl | swizzle | vector2 | \n",
"| IM_swizzle_color4_vector3_genglsl | swizzle | vector3 | \n",
"| IM_swizzle_color4_vector3_genmdl | swizzle | vector3 | \n",
"| IM_swizzle_color4_vector3_genmsl | swizzle | vector3 | \n",
"| IM_swizzle_color4_vector3_genosl | swizzle | vector3 | \n",
"| IM_swizzle_color4_vector4_genglsl | swizzle | vector4 | \n",
"| IM_swizzle_color4_vector4_genmdl | swizzle | vector4 | \n",
"| IM_swizzle_color4_vector4_genmsl | swizzle | vector4 | \n",
"| IM_swizzle_color4_vector4_genosl | swizzle | vector4 | \n",
"| IM_swizzle_float_color3_genglsl | swizzle | color3 | \n",
"| IM_swizzle_float_color3_genmdl | swizzle | color3 | \n",
"| IM_swizzle_float_color3_genmsl | swizzle | color3 | \n",
"| IM_swizzle_float_color3_genosl | swizzle | color3 | \n",
"| IM_swizzle_float_color4_genglsl | swizzle | color4 | \n",
"| IM_swizzle_float_color4_genmdl | swizzle | color4 | \n",
"| IM_swizzle_float_color4_genmsl | swizzle | color4 | \n",
"| IM_swizzle_float_color4_genosl | swizzle | color4 | \n",
"| IM_swizzle_float_vector2_genglsl | swizzle | vector2 | \n",
"| IM_swizzle_float_vector2_genmdl | swizzle | vector2 | \n",
"| IM_swizzle_float_vector2_genmsl | swizzle | vector2 | \n",
"| IM_swizzle_float_vector2_genosl | swizzle | vector2 | \n",
"| IM_swizzle_float_vector3_genglsl | swizzle | vector3 | \n",
"| IM_swizzle_float_vector3_genmdl | swizzle | vector3 | \n",
"| IM_swizzle_float_vector3_genmsl | swizzle | vector3 | \n",
"| IM_swizzle_float_vector3_genosl | swizzle | vector3 | \n",
"| IM_swizzle_float_vector4_genglsl | swizzle | vector4 | \n",
"| IM_swizzle_float_vector4_genmdl | swizzle | vector4 | \n",
"| IM_swizzle_float_vector4_genmsl | swizzle | vector4 | \n",
"| IM_swizzle_float_vector4_genosl | swizzle | vector4 | \n",
"| IM_swizzle_vector2_color3_genglsl | swizzle | color3 | \n",
"| IM_swizzle_vector2_color3_genmdl | swizzle | color3 | \n",
"| IM_swizzle_vector2_color3_genmsl | swizzle | color3 | \n",
"| IM_swizzle_vector2_color3_genosl | swizzle | color3 | \n",
"| IM_swizzle_vector2_color4_genglsl | swizzle | color4 | \n",
"| IM_swizzle_vector2_color4_genmdl | swizzle | color4 | \n",
"| IM_swizzle_vector2_color4_genmsl | swizzle | color4 | \n",
"| IM_swizzle_vector2_color4_genosl | swizzle | color4 | \n",
"| IM_swizzle_vector2_float_genglsl | swizzle | float | \n",
"| IM_swizzle_vector2_float_genmdl | swizzle | float | \n",
"| IM_swizzle_vector2_float_genmsl | swizzle | float | \n",
"| IM_swizzle_vector2_float_genosl | swizzle | float | \n",
"| IM_swizzle_vector2_vector2_genglsl | swizzle | vector2 | \n",
"| IM_swizzle_vector2_vector2_genmdl | swizzle | vector2 | \n",
"| IM_swizzle_vector2_vector2_genmsl | swizzle | vector2 | \n",
"| IM_swizzle_vector2_vector2_genosl | swizzle | vector2 | \n",
"| IM_swizzle_vector2_vector3_genglsl | swizzle | vector3 | \n",
"| IM_swizzle_vector2_vector3_genmdl | swizzle | vector3 | \n",
"| IM_swizzle_vector2_vector3_genmsl | swizzle | vector3 | \n",
"| IM_swizzle_vector2_vector3_genosl | swizzle | vector3 | \n",
"| IM_swizzle_vector2_vector4_genglsl | swizzle | vector4 | \n",
"| IM_swizzle_vector2_vector4_genmdl | swizzle | vector4 | \n",
"| IM_swizzle_vector2_vector4_genmsl | swizzle | vector4 | \n",
"| IM_swizzle_vector2_vector4_genosl | swizzle | vector4 | \n",
"| IM_swizzle_vector3_color3_genglsl | swizzle | color3 | \n",
"| IM_swizzle_vector3_color3_genmdl | swizzle | color3 | \n",
"| IM_swizzle_vector3_color3_genmsl | swizzle | color3 | \n",
"| IM_swizzle_vector3_color3_genosl | swizzle | color3 | \n",
"| IM_swizzle_vector3_color4_genglsl | swizzle | color4 | \n",
"| IM_swizzle_vector3_color4_genmdl | swizzle | color4 | \n",
"| IM_swizzle_vector3_color4_genmsl | swizzle | color4 | \n",
"| IM_swizzle_vector3_color4_genosl | swizzle | color4 | \n",
"| IM_swizzle_vector3_float_genglsl | swizzle | float | \n",
"| IM_swizzle_vector3_float_genmdl | swizzle | float | \n",
"| IM_swizzle_vector3_float_genmsl | swizzle | float | \n",
"| IM_swizzle_vector3_float_genosl | swizzle | float | \n",
"| IM_swizzle_vector3_vector2_genglsl | swizzle | vector2 | \n",
"| IM_swizzle_vector3_vector2_genmdl | swizzle | vector2 | \n",
"| IM_swizzle_vector3_vector2_genmsl | swizzle | vector2 | \n",
"| IM_swizzle_vector3_vector2_genosl | swizzle | vector2 | \n",
"| IM_swizzle_vector3_vector3_genglsl | swizzle | vector3 | \n",
"| IM_swizzle_vector3_vector3_genmdl | swizzle | vector3 | \n",
"| IM_swizzle_vector3_vector3_genmsl | swizzle | vector3 | \n",
"| IM_swizzle_vector3_vector3_genosl | swizzle | vector3 | \n",
"| IM_swizzle_vector3_vector4_genglsl | swizzle | vector4 | \n",
"| IM_swizzle_vector3_vector4_genmdl | swizzle | vector4 | \n",
"| IM_swizzle_vector3_vector4_genmsl | swizzle | vector4 | \n",
"| IM_swizzle_vector3_vector4_genosl | swizzle | vector4 | \n",
"| IM_swizzle_vector4_color3_genglsl | swizzle | color3 | \n",
"| IM_swizzle_vector4_color3_genmdl | swizzle | color3 | \n",
"| IM_swizzle_vector4_color3_genmsl | swizzle | color3 | \n",
"| IM_swizzle_vector4_color3_genosl | swizzle | color3 | \n",
"| IM_swizzle_vector4_color4_genglsl | swizzle | color4 | \n",
"| IM_swizzle_vector4_color4_genmdl | swizzle | color4 | \n",
"| IM_swizzle_vector4_color4_genmsl | swizzle | color4 | \n",
"| IM_swizzle_vector4_color4_genosl | swizzle | color4 | \n",
"| IM_swizzle_vector4_float_genglsl | swizzle | float | \n",
"| IM_swizzle_vector4_float_genmdl | swizzle | float | \n",
"| IM_swizzle_vector4_float_genmsl | swizzle | float | \n",
"| IM_swizzle_vector4_float_genosl | swizzle | float | \n",
"| IM_swizzle_vector4_vector2_genglsl | swizzle | vector2 | \n",
"| IM_swizzle_vector4_vector2_genmdl | swizzle | vector2 | \n",
"| IM_swizzle_vector4_vector2_genmsl | swizzle | vector2 | \n",
"| IM_swizzle_vector4_vector2_genosl | swizzle | vector2 | \n",
"| IM_swizzle_vector4_vector3_genglsl | swizzle | vector3 | \n",
"| IM_swizzle_vector4_vector3_genmdl | swizzle | vector3 | \n",
"| IM_swizzle_vector4_vector3_genmsl | swizzle | vector3 | \n",
"| IM_swizzle_vector4_vector3_genosl | swizzle | vector3 | \n",
"| IM_swizzle_vector4_vector4_genglsl | swizzle | vector4 | \n",
"| IM_swizzle_vector4_vector4_genmdl | swizzle | vector4 | \n",
"| IM_swizzle_vector4_vector4_genmsl | swizzle | vector4 | \n",
"| IM_swizzle_vector4_vector4_genosl | swizzle | vector4 | \n",
"| IM_tan_float_genglsl | tan | float | \n",
"| IM_tan_float_genmdl | tan | float | \n",
"| IM_tan_float_genmsl | tan | float | \n",
"| IM_tan_float_genosl | tan | float | \n",
"| IM_tan_vector2_genglsl | tan | vector2 | \n",
"| IM_tan_vector2_genmdl | tan | vector2 | \n",
"| IM_tan_vector2_genmsl | tan | vector2 | \n",
"| IM_tan_vector2_genosl | tan | vector2 | \n",
"| IM_tan_vector3_genglsl | tan | vector3 | \n",
"| IM_tan_vector3_genmdl | tan | vector3 | \n",
"| IM_tan_vector3_genmsl | tan | vector3 | \n",
"| IM_tan_vector3_genosl | tan | vector3 | \n",
"| IM_tan_vector4_genglsl | tan | vector4 | \n",
"| IM_tan_vector4_genmdl | tan | vector4 | \n",
"| IM_tan_vector4_genmsl | tan | vector4 | \n",
"| IM_tan_vector4_genosl | tan | vector4 | \n",
"| IM_tangent_vector3_genglsl | tangent | vector3 | \n",
"| IM_tangent_vector3_genmdl | tangent | vector3 | \n",
"| IM_tangent_vector3_genmsl | tangent | vector3 | \n",
"| IM_tangent_vector3_genosl | tangent | vector3 | \n",
"| IM_texcoord_vector2_genglsl | texcoord | vector2 | \n",
"| IM_texcoord_vector2_genmdl | texcoord | vector2 | \n",
"| IM_texcoord_vector2_genmsl | texcoord | vector2 | \n",
"| IM_texcoord_vector2_genosl | texcoord | vector2 | \n",
"| IM_texcoord_vector3_genglsl | texcoord | vector3 | \n",
"| IM_texcoord_vector3_genmdl | texcoord | vector3 | \n",
"| IM_texcoord_vector3_genmsl | texcoord | vector3 | \n",
"| IM_texcoord_vector3_genosl | texcoord | vector3 | \n",
"| IM_thin_surface_genmdl | thin_surface | surfaceshader | \n",
"| IM_time_float_genglsl | time | float | \n",
"| IM_time_float_genmdl | time | float | \n",
"| IM_time_float_genmsl | time | float | \n",
"| IM_time_float_genosl | time | float | \n",
"| IM_transformmatrix_vector2M3_genglsl | transformmatrix | vector2 | \n",
"| IM_transformmatrix_vector2M3_genmdl | transformmatrix | vector2 | \n",
"| IM_transformmatrix_vector2M3_genmsl | transformmatrix | vector2 | \n",
"| IM_transformmatrix_vector2M3_genosl | transformmatrix | vector2 | \n",
"| IM_transformmatrix_vector3M4_genglsl | transformmatrix | vector3 | \n",
"| IM_transformmatrix_vector3M4_genmdl | transformmatrix | vector3 | \n",
"| IM_transformmatrix_vector3M4_genmsl | transformmatrix | vector3 | \n",
"| IM_transformmatrix_vector3M4_genosl | transformmatrix | vector3 | \n",
"| IM_transformmatrix_vector3_genglsl | transformmatrix | vector3 | \n",
"| IM_transformmatrix_vector3_genmdl | transformmatrix | vector3 | \n",
"| IM_transformmatrix_vector3_genmsl | transformmatrix | vector3 | \n",
"| IM_transformmatrix_vector3_genosl | transformmatrix | vector3 | \n",
"| IM_transformmatrix_vector4_genglsl | transformmatrix | vector4 | \n",
"| IM_transformmatrix_vector4_genmdl | transformmatrix | vector4 | \n",
"| IM_transformmatrix_vector4_genmsl | transformmatrix | vector4 | \n",
"| IM_transformmatrix_vector4_genosl | transformmatrix | vector4 | \n",
"| IM_transformnormal_vector3_genglsl | transformnormal | vector3 | \n",
"| IM_transformnormal_vector3_genmdl | transformnormal | vector3 | \n",
"| IM_transformnormal_vector3_genmsl | transformnormal | vector3 | \n",
"| IM_transformnormal_vector3_genosl | transformnormal | vector3 | \n",
"| IM_transformpoint_vector3_genglsl | transformpoint | vector3 | \n",
"| IM_transformpoint_vector3_genmdl | transformpoint | vector3 | \n",
"| IM_transformpoint_vector3_genmsl | transformpoint | vector3 | \n",
"| IM_transformpoint_vector3_genosl | transformpoint | vector3 | \n",
"| IM_transformvector_vector3_genglsl | transformvector | vector3 | \n",
"| IM_transformvector_vector3_genmdl | transformvector | vector3 | \n",
"| IM_transformvector_vector3_genmsl | transformvector | vector3 | \n",
"| IM_transformvector_vector3_genosl | transformvector | vector3 | \n",
"| IM_translucent_bsdf_genglsl | translucent_bsdf | BSDF | \n",
"| IM_translucent_bsdf_genmdl | translucent_bsdf | BSDF | \n",
"| IM_translucent_bsdf_genmsl | translucent_bsdf | BSDF | \n",
"| IM_translucent_bsdf_genosl | translucent_bsdf | BSDF | \n",
"| IM_transpose_matrix33_genglsl | transpose | matrix33 | \n",
"| IM_transpose_matrix33_genmdl | transpose | matrix33 | \n",
"| IM_transpose_matrix33_genmsl | transpose | matrix33 | \n",
"| IM_transpose_matrix33_genosl | transpose | matrix33 | \n",
"| IM_transpose_matrix44_genglsl | transpose | matrix44 | \n",
"| IM_transpose_matrix44_genmdl | transpose | matrix44 | \n",
"| IM_transpose_matrix44_genmsl | transpose | matrix44 | \n",
"| IM_transpose_matrix44_genosl | transpose | matrix44 | \n",
"| IM_uniform_edf_genglsl | uniform_edf | EDF | \n",
"| IM_uniform_edf_genmdl | uniform_edf | EDF | \n",
"| IM_uniform_edf_genmsl | uniform_edf | EDF | \n",
"| IM_uniform_edf_genosl | uniform_edf | EDF | \n",
"| IM_unpremult_color4_genglsl | unpremult | color4 | \n",
"| IM_unpremult_color4_genmdl | unpremult | color4 | \n",
"| IM_unpremult_color4_genmsl | unpremult | color4 | \n",
"| IM_unpremult_color4_genosl | unpremult | color4 | \n",
"| IM_viewdirection_vector3_genglsl | viewdirection | vector3 | \n",
"| IM_viewdirection_vector3_genmdl | viewdirection | vector3 | \n",
"| IM_viewdirection_vector3_genmsl | viewdirection | vector3 | \n",
"| IM_viewdirection_vector3_genosl | viewdirection | vector3 | \n",
"| IM_volume_genmdl | volume | volumeshader | \n",
"| IM_worleynoise2d_float_genglsl | worleynoise2d | float | \n",
"| IM_worleynoise2d_float_genmdl | worleynoise2d | float | \n",
"| IM_worleynoise2d_float_genmsl | worleynoise2d | float | \n",
"| IM_worleynoise2d_float_genosl | worleynoise2d | float | \n",
"| IM_worleynoise2d_vector2_genglsl | worleynoise2d | vector2 | \n",
"| IM_worleynoise2d_vector2_genmdl | worleynoise2d | vector2 | \n",
"| IM_worleynoise2d_vector2_genmsl | worleynoise2d | vector2 | \n",
"| IM_worleynoise2d_vector2_genosl | worleynoise2d | vector2 | \n",
"| IM_worleynoise2d_vector3_genglsl | worleynoise2d | vector3 | \n",
"| IM_worleynoise2d_vector3_genmdl | worleynoise2d | vector3 | \n",
"| IM_worleynoise2d_vector3_genmsl | worleynoise2d | vector3 | \n",
"| IM_worleynoise2d_vector3_genosl | worleynoise2d | vector3 | \n",
"| IM_worleynoise3d_float_genglsl | worleynoise3d | float | \n",
"| IM_worleynoise3d_float_genmdl | worleynoise3d | float | \n",
"| IM_worleynoise3d_float_genmsl | worleynoise3d | float | \n",
"| IM_worleynoise3d_float_genosl | worleynoise3d | float | \n",
"| IM_worleynoise3d_vector2_genglsl | worleynoise3d | vector2 | \n",
"| IM_worleynoise3d_vector2_genmdl | worleynoise3d | vector2 | \n",
"| IM_worleynoise3d_vector2_genmsl | worleynoise3d | vector2 | \n",
"| IM_worleynoise3d_vector2_genosl | worleynoise3d | vector2 | \n",
"| IM_worleynoise3d_vector3_genglsl | worleynoise3d | vector3 | \n",
"| IM_worleynoise3d_vector3_genmdl | worleynoise3d | vector3 | \n",
"| IM_worleynoise3d_vector3_genmsl | worleynoise3d | vector3 | \n",
"| IM_worleynoise3d_vector3_genosl | worleynoise3d | vector3 | \n",
"| NG_NG_gltf_image_color3_color3_1_0 | gltf_image | color3 | \n",
"| NG_acescg_to_lin_rec709_color3 | acescg_to_lin_rec709 | color3 | \n",
"| NG_acescg_to_lin_rec709_color4 | acescg_to_lin_rec709 | color4 | \n",
"| NG_adobergb_to_lin_rec709_color3 | adobergb_to_lin_rec709 | color3 | \n",
"| NG_adobergb_to_lin_rec709_color4 | adobergb_to_lin_rec709 | color4 | \n",
"| NG_bump_vector3 | bump | vector3 | \n",
"| NG_checkerboard_color3 | checkerboard | color3 | \n",
"| NG_circle_float | circle | float | \n",
"| NG_cloverleaf_float | cloverleaf | float | \n",
"| NG_colorcorrect_color3 | colorcorrect | color3 | \n",
"| NG_colorcorrect_color4 | colorcorrect | color4 | \n",
"| NG_contrast_color3 | contrast | color3 | \n",
"| NG_contrast_color3FA | contrast | color3 | \n",
"| NG_contrast_color4 | contrast | color4 | \n",
"| NG_contrast_color4FA | contrast | color4 | \n",
"| NG_contrast_float | contrast | float | \n",
"| NG_contrast_vector2 | contrast | vector2 | \n",
"| NG_contrast_vector2FA | contrast | vector2 | \n",
"| NG_contrast_vector3 | contrast | vector3 | \n",
"| NG_contrast_vector3FA | contrast | vector3 | \n",
"| NG_contrast_vector4 | contrast | vector4 | \n",
"| NG_contrast_vector4FA | contrast | vector4 | \n",
"| NG_convert_boolean_surfaceshader | convert | surfaceshader | \n",
"| NG_convert_color3_surfaceshader | convert | surfaceshader | \n",
"| NG_convert_color4_surfaceshader | convert | surfaceshader | \n",
"| NG_convert_float_surfaceshader | convert | surfaceshader | \n",
"| NG_convert_integer_surfaceshader | convert | surfaceshader | \n",
"| NG_convert_vector2_surfaceshader | convert | surfaceshader | \n",
"| NG_convert_vector3_surfaceshader | convert | surfaceshader | \n",
"| NG_convert_vector4_surfaceshader | convert | surfaceshader | \n",
"| NG_crosshatch_color3 | crosshatch | color3 | \n",
"| NG_distance_vector2 | distance | float | \n",
"| NG_distance_vector3 | distance | float | \n",
"| NG_distance_vector4 | distance | float | \n",
"| NG_extract_color3 | extract | float | \n",
"| NG_extract_color4 | extract | float | \n",
"| NG_extract_vector2 | extract | float | \n",
"| NG_extract_vector3 | extract | float | \n",
"| NG_extract_vector4 | extract | float | \n",
"| NG_facingratio_float | facingratio | float | \n",
"| NG_fractal3d_color3 | fractal3d | color3 | \n",
"| NG_fractal3d_color3FA | fractal3d | color3 | \n",
"| NG_fractal3d_color4 | fractal3d | color4 | \n",
"| NG_fractal3d_color4FA | fractal3d | color4 | \n",
"| NG_fractal3d_vector2FA | fractal3d | vector2 | \n",
"| NG_fractal3d_vector3FA | fractal3d | vector3 | \n",
"| NG_fractal3d_vector4FA | fractal3d | vector4 | \n",
"| NG_g18_rec709_to_lin_rec709_color3 | g18_rec709_to_lin_rec709 | color3 | \n",
"| NG_g18_rec709_to_lin_rec709_color4 | g18_rec709_to_lin_rec709 | color4 | \n",
"| NG_g22_ap1_to_lin_rec709_color3 | g22_ap1_to_lin_rec709 | color3 | \n",
"| NG_g22_ap1_to_lin_rec709_color4 | g22_ap1_to_lin_rec709 | color4 | \n",
"| NG_g22_rec709_to_lin_rec709_color3 | g22_rec709_to_lin_rec709 | color3 | \n",
"| NG_g22_rec709_to_lin_rec709_color4 | g22_rec709_to_lin_rec709 | color4 | \n",
"| NG_gltf_colorimage | gltf_colorimage | multioutput | \n",
"| NG_gltf_image_color4_color4_1_0 | gltf_image | color4 | \n",
"| NG_gltf_image_float_float_1_0 | gltf_image | float | \n",
"| NG_gltf_image_vector3_vector3_1_0 | gltf_image | vector3 | \n",
"| NG_gltf_iridescence_thickness_float_1_0 | gltf_iridescence_thickness | float | \n",
"| NG_gltf_normalmap_vector3_1_0 | gltf_normalmap | vector3 | \n",
"| NG_gooch_shade | gooch_shade | color3 | \n",
"| NG_grid_color3 | grid | color3 | \n",
"| NG_hexagon_float | hexagon | float | \n",
"| NG_hsvadjust_color3 | hsvadjust | color3 | \n",
"| NG_hsvadjust_color4 | hsvadjust | color4 | \n",
"| NG_lama_add_bsdf | LamaAdd | BSDF | \n",
"| NG_lama_add_edf | LamaAdd | EDF | \n",
"| NG_lama_diffuse | LamaDiffuse | BSDF | \n",
"| NG_lama_layer_bsdf | LamaLayer | BSDF | \n",
"| NG_lama_mix_bsdf | LamaMix | BSDF | \n",
"| NG_lama_mix_edf | LamaMix | EDF | \n",
"| NG_lama_translucent | LamaTranslucent | BSDF | \n",
"| NG_lin_adobergb_to_lin_rec709_color3 | lin_adobergb_to_lin_rec709 | color3 | \n",
"| NG_lin_adobergb_to_lin_rec709_color4 | lin_adobergb_to_lin_rec709 | color4 | \n",
"| NG_lin_displayp3_to_lin_rec709_color3 | lin_displayp3_to_lin_rec709 | color3 | \n",
"| NG_lin_displayp3_to_lin_rec709_color4 | lin_displayp3_to_lin_rec709 | color4 | \n",
"| NG_line_float | line | float | \n",
"| NG_noise2d_color3 | noise2d | color3 | \n",
"| NG_noise2d_color3FA | noise2d | color3 | \n",
"| NG_noise2d_color4 | noise2d | color4 | \n",
"| NG_noise2d_color4FA | noise2d | color4 | \n",
"| NG_noise2d_vector2FA | noise2d | vector2 | \n",
"| NG_noise2d_vector3FA | noise2d | vector3 | \n",
"| NG_noise2d_vector4FA | noise2d | vector4 | \n",
"| NG_noise3d_color3 | noise3d | color3 | \n",
"| NG_noise3d_color3FA | noise3d | color3 | \n",
"| NG_noise3d_color4 | noise3d | color4 | \n",
"| NG_noise3d_color4FA | noise3d | color4 | \n",
"| NG_noise3d_vector2FA | noise3d | vector2 | \n",
"| NG_noise3d_vector3FA | noise3d | vector3 | \n",
"| NG_noise3d_vector4FA | noise3d | vector4 | \n",
"| NG_open_pbr_surface_surfaceshader | open_pbr_surface | surfaceshader | \n",
"| NG_overlay_color3 | overlay | color3 | \n",
"| NG_overlay_color4 | overlay | color4 | \n",
"| NG_overlay_float | overlay | float | \n",
"| NG_place2d_vector2 | place2d | vector2 | \n",
"| NG_ramp4_color3 | ramp4 | color3 | \n",
"| NG_ramp4_color4 | ramp4 | color4 | \n",
"| NG_ramp4_float | ramp4 | float | \n",
"| NG_ramp4_vector2 | ramp4 | vector2 | \n",
"| NG_ramp4_vector3 | ramp4 | vector3 | \n",
"| NG_ramp4_vector4 | ramp4 | vector4 | \n",
"| NG_randomcolor_float | randomcolor | color3 | \n",
"| NG_randomcolor_integer | randomcolor | color3 | \n",
"| NG_randomfloat_float | randomfloat | float | \n",
"| NG_randomfloat_integer | randomfloat | float | \n",
"| NG_range_color3 | range | color3 | \n",
"| NG_range_color3FA | range | color3 | \n",
"| NG_range_color4 | range | color4 | \n",
"| NG_range_color4FA | range | color4 | \n",
"| NG_range_float | range | float | \n",
"| NG_range_vector2 | range | vector2 | \n",
"| NG_range_vector2FA | range | vector2 | \n",
"| NG_range_vector3 | range | vector3 | \n",
"| NG_range_vector3FA | range | vector3 | \n",
"| NG_range_vector4 | range | vector4 | \n",
"| NG_range_vector4FA | range | vector4 | \n",
"| NG_rec709_display_to_lin_rec709_color3 | rec709_display_to_lin_rec709 | color3 | \n",
"| NG_rec709_display_to_lin_rec709_color4 | rec709_display_to_lin_rec709 | color4 | \n",
"| NG_reflect_vector3 | reflect | vector3 | \n",
"| NG_refract_vector3 | refract | vector3 | \n",
"| NG_safepower_color3 | safepower | color3 | \n",
"| NG_safepower_color3FA | safepower | color3 | \n",
"| NG_safepower_color4 | safepower | color4 | \n",
"| NG_safepower_color4FA | safepower | color4 | \n",
"| NG_safepower_float | safepower | float | \n",
"| NG_safepower_vector2 | safepower | vector2 | \n",
"| NG_safepower_vector2FA | safepower | vector2 | \n",
"| NG_safepower_vector3 | safepower | vector3 | \n",
"| NG_safepower_vector3FA | safepower | vector3 | \n",
"| NG_safepower_vector4 | safepower | vector4 | \n",
"| NG_safepower_vector4FA | safepower | vector4 | \n",
"| NG_saturate_color3 | saturate | color3 | \n",
"| NG_saturate_color4 | saturate | color4 | \n",
"| NG_separate2_vector2 | separate2 | multioutput | \n",
"| NG_separate3_color3 | separate3 | multioutput | \n",
"| NG_separate3_vector3 | separate3 | multioutput | \n",
"| NG_separate4_color4 | separate4 | multioutput | \n",
"| NG_separate4_vector4 | separate4 | multioutput | \n",
"| NG_smoothstep_color3 | smoothstep | color3 | \n",
"| NG_smoothstep_color3FA | smoothstep | color3 | \n",
"| NG_smoothstep_color4 | smoothstep | color4 | \n",
"| NG_smoothstep_color4FA | smoothstep | color4 | \n",
"| NG_smoothstep_vector2FA | smoothstep | vector2 | \n",
"| NG_smoothstep_vector3FA | smoothstep | vector3 | \n",
"| NG_smoothstep_vector4FA | smoothstep | vector4 | \n",
"| NG_srgb_displayp3_to_lin_rec709_color3 | srgb_displayp3_to_lin_rec709 | color3 | \n",
"| NG_srgb_displayp3_to_lin_rec709_color4 | srgb_displayp3_to_lin_rec709 | color4 | \n",
"| NG_srgb_texture_to_lin_rec709_color3 | srgb_texture_to_lin_rec709 | color3 | \n",
"| NG_srgb_texture_to_lin_rec709_color4 | srgb_texture_to_lin_rec709 | color4 | \n",
"| NG_standard_surface_surfaceshader_100 | standard_surface | surfaceshader | \n",
"| NG_standard_surface_to_UsdPreviewSurface | standard_surface_to_UsdPreviewSurface | multioutput | \n",
"| NG_standard_surface_to_gltf_pbr | standard_surface_to_gltf_pbr | multioutput | \n",
"| NG_tiledcircles_color3 | tiledcircles | color3 | \n",
"| NG_tiledcloverleafs_color3 | tiledcloverleafs | color3 | \n",
"| NG_tiledhexagons_color3 | tiledhexagons | color3 | \n",
"| NG_tiledimage_color3 | tiledimage | color3 | \n",
"| NG_tiledimage_color4 | tiledimage | color4 | \n",
"| NG_tiledimage_float | tiledimage | float | \n",
"| NG_tiledimage_vector2 | tiledimage | vector2 | \n",
"| NG_tiledimage_vector3 | tiledimage | vector3 | \n",
"| NG_tiledimage_vector4 | tiledimage | vector4 | \n",
"| NG_trianglewave_float | trianglewave | float | \n",
"| NG_triplanarprojection_color3 | triplanarprojection | color3 | \n",
"| NG_triplanarprojection_color4 | triplanarprojection | color4 | \n",
"| NG_triplanarprojection_float | triplanarprojection | float | \n",
"| NG_triplanarprojection_vector2 | triplanarprojection | vector2 | \n",
"| NG_triplanarprojection_vector3 | triplanarprojection | vector3 | \n",
"| NG_triplanarprojection_vector4 | triplanarprojection | vector4 | \n",
"| NG_unifiednoise2d_float | unifiednoise2d | float | \n",
"| NG_unifiednoise3d_float | unifiednoise3d | float | \n",
"\n",
" \n"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/markdown": [
"0 implementations removed
\n",
"\n",
"| Name | Node Category | Node Type |\n",
"| --- | --- | --- |\n",
"\n",
" \n"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/markdown": [
"0 implementations modified
\n",
"\n",
"| Name | Change |\n",
"| --- | --- |\n",
"\n",
" \n"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"title = '| Name | Node Category | Node Type |\\n'\n",
"title = title + '| --- | --- | --- |\\n'\n",
"\n",
"allImpls = sorted(allImpls)\n",
"added = 0\n",
"addedText = title\n",
"removed = 0\n",
"removedText = title\n",
"\n",
"title = '| Name | Change |\\n| --- | --- |\\n'\n",
"changed = 0\n",
"changedText = title\n",
"\n",
"for item in allImpls:\n",
" \n",
" # Check for new implementations. Note that we check for source implementations\n",
" # as well as node graph implementations.\n",
" impl = otherLibrary.getImplementation(item)\n",
" if not impl:\n",
" impl = otherLibrary.getNodeGraph(item)\n",
" if not impl:\n",
" ns = 'None'\n",
" nt = 'None'\n",
" curimpl = currLibrary.getChild(item)\n",
" if curimpl:\n",
" nd = curimpl.getNodeDef()\n",
" if nd:\n",
" ns = nd.getNodeString()\n",
" nt = nd.getType()\n",
" addedText = addedText + '| %s | %s | %s | \\n' % (item, ns, ns, nt) \n",
" added = added + 1\n",
" continue\n",
" \n",
" # Check for implementations which have been removed. Note that we check for source implementations\n",
" # as well as node graph implementations.\n",
" impl2 = currLibrary.getImplementation(item)\n",
" if not impl2:\n",
" impl2 = currLibrary.getNodeGraph(item)\n",
" if not impl2:\n",
" oldimpl = currLibrary.getChild(item)\n",
" if oldimpl:\n",
" nd = oldimpl.getNodeDef()\n",
" if nd:\n",
" ns = nd.getNodeString()\n",
" nt = nd.getType() \n",
" removedText = removedText + '| %s | %s | %s | \\n' % (item, ns, nt)\n",
" removed = removed + 1\n",
" continue\n",
" \n",
" # Check for implementations which have been modified.\n",
" # Use the built in comparitor first before performing a detailed comparison.\n",
" difference = (impl != impl2)\n",
" if difference:\n",
" ns = 'None'\n",
" nt = 'None'\n",
" if impl2:\n",
" nd = impl2.getNodeDef()\n",
" if nd:\n",
" ns = nd.getNodeString() \n",
" changedText = changedText + '| %s | ' % (ns, item)\n",
" # Perform detailed comparison\n",
" log = []\n",
" difference = compareElements(impl, impl2, '', log) \n",
" if difference:\n",
" for line in log:\n",
" changedText = changedText + line + '
'\n",
" changedText = changedText + '|\\n'\n",
" changed = changed + 1\n",
"\n",
"\n",
"delta = '%d implementations added' % added\n",
"text = '' + delta + '
\\n\\n' + addedText + '\\n' + ' \\n' \n",
"display_markdown(text, raw=True)\n",
"\n",
"delta = '%d implementations removed' % removed\n",
"text = '' + delta + '
\\n\\n' + removedText + '\\n' + ' \\n' \n",
"display_markdown(text, raw=True)\n",
"\n",
"delta = '%d implementations modified' % changed\n",
"text = '' + delta + '
\\n\\n' + changedText + '\\n' + ' \\n' \n",
"display_markdown(text, raw=True)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Higher Level Comparisons\n",
"\n",
"As can be seen, the comparisons only provide low level details of count and value changes but not any higher level\n",
"semantic meaning. Some examples include:\n",
"\n",
"- The change to inline source code was done for consistency and performance reasons but shows up as a a few hundred attribute changes. Some additional logic could be added to detect a `file` attribute to `sourcecode` attribute but\n",
"this could be \"brittle\" long-term if these attribute names ever changed. Additional information such as how to\n",
"perform this update would be useful. For example the script used to perform this can be found in \n",
"inlineImplementationFiles.py file included here.\n",
"\n",
"- Changes for node graph implementations are very hard to understand as only textual comparison is performed\n",
"with possible new values and connections reflected when comparing the definitions.\n",
"\n",
"It would probably be more useful to traverse the graphs via it's connections to give a better sense of whether there have been any topological changes (added / removed nodes, changes in connections). Better visual feedback could be given by drawing out the graphs as diagrams. This is beyond the scope of this notebook.\n",
"\n",
"- Changes due to inheritance, whether added, removed or changed, are very hard determine though the change in the `inherit`\n",
"attribute or a version change is a first indicator. The utility inheritance functions added here would be useful if added to the core distribution.\n",
"\n",
"- There is a very large number of changes between the previous and current patch release tested (at time of writing).\n",
"The same comparison could be performed between patches to see incremental changes.\n"
]
}
],
"metadata": {
"kernelspec": {
"display_name": ".venv",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.10.10"
},
"orig_nbformat": 4
},
"nbformat": 4,
"nbformat_minor": 2
}