@bottobot/td-mcp
Version:
TouchDesigner Documentation MCP Server v2.3 - Pure MCP server for VS Code/Codium with comprehensive operator documentation for 629 operators + 7 tutorials across all categories (TOP, CHOP, SOP, DAT, MAT, COMP, POP). Features experimental POP operators wit
1,134 lines • 50.5 kB
JSON
{
"id": "attribute_sop",
"name": "Attribute SOP",
"displayName": "Attribute SOP",
"category": "SOP",
"subcategory": "Generators",
"version": "",
"lastUpdated": "2025-08-07T07:49:56.713Z",
"sourceFile": "C:\\Program Files\\Derivative\\TouchDesigner\\Samples\\Learn\\OfflineHelp\\https.docs.derivative.ca\\Attribute_SOP.htm",
"url": "",
"description": "The Attribute SOP allows you to manually rename and delete point, vertex, and primitive attributes.",
"summary": "The Attribute SOP allows you to manually rename and delete point, vertex, and primitive attributes.",
"details": "",
"usage": "",
"tips": [],
"warnings": [],
"parameters": [
{
"id": null,
"name": "Delete Attributes",
"label": "Delete Attributes",
"group": "General",
"page": "",
"type": "float",
"dataType": "number",
"style": "",
"defaultValue": null,
"minValue": null,
"maxValue": null,
"step": null,
"menuItems": [],
"menuLabels": [],
"allowCustom": false,
"maxLength": null,
"pattern": null,
"isArray": false,
"arraySize": 1,
"dimensions": 1,
"description": "From Derivative\n\t\t\n\t\t\n\t\t\n\t\t\n\t\tJump to navigation\n\t\tJump to search\n\t\t\nThe Attribute allows you to manually rename and delete point, vertex, and primitive attributes.\nThe top portion of each parameter page deals with the deleting of a specifc type of attributes. \nFor example: Cd Alpha\t\t\nPattern Matching - Deletion accepts general pattern matching when determining which attributes to delete. For example:\t\n\n\t\t\n* = Delete all attributesCd = Delete the Cd attributeCd Alpha = Delete Cd & Alpha attributesa* = Delete all attributes beginning with a* ^Cd = Delete all attributes except Cd\t\t\n\n\t\t\nNote: You should never delete just one of the following attributes, but always keep/delete them together. This is because TouchDesigner's capture/deform system expects these three attributes to occur together. Deleting a subset of the three will cause errors as they are interdependent: \t\t\npCapt (point attribute), pCaptPath, pCaptData (detail attribute)\nSee also: Attribute Create SOP.\nThe next section of each page deals with renaming attributes. Specify the name of the original incoming attribute in the 'From Attribute' parameter, and the new name you want it renamed to in the 'To Attribute' parameter.\nattributeSOP_Class\n\nContents\n \n \n \n \n \n \n \n \n \n\n\n\n\n\n ptdel - - Use the field to specify the point attributes to delete. Simply enter a list of the attributes (separated by spaces) to delete, for example entering:Cd Alpha. You can also use the dropdown menu on the right to select them.\n\n * -\n\n pt - Sequence of point renames\n\n\n\n pt0from - Specify the attribute you wish to rename, or select it from the dropdown menu on the right.\n\n\n\n pt0to - Enter the new name for the attribute here.\n\n\n\n\n\n\nThese tabbed pages are identical to the page except that they deal with vertex and primitive attributes of the input geometry.\n\n vertdel - - Use the field to specify the vertex attributes to delete. Simply enter a list of the attributes (separated by spaces) to delete, for example entering:uv N. You can also use the dropdown menu on the right to select them.\n\n * -\n\n vert - Sequence of vertex renames\n\n\n\n vert0from - Specify the attribute you wish to rename, or select it from the dropdown menu on the right.\n\n\n\n vert0to - Enter the new name for the attribute here.\n\n\n\n\n\n\nAccepts geometry of all types.\n\n primdel - - Use the field to specify the primitive attributes to delete. Simply enter a list of the attributes (separated by spaces) to delete, for example entering:Cd creaseweight. You can also use the dropdown menu on the right to select them.\n\n * -\n\n prim - Sequence of primitive renames\n\n\n\n prim0from - Specify the attribute you wish to rename, or select it from the dropdown menu on the right.\n\n\n\n prim0to - Enter the new name for the attribute here.\n\n\n\n\n\n\n attrdel - - Use the field to specify the detail attributes to delete. Simply enter a list of the attributes (separated by spaces) to delete. You can also use the dropdown menu on the right to select them.\n\n * -\n\n attr - Sequence of detail renames\n\n\n\n attr0from - Specify the attribute you wish to rename, or select it from the dropdown menu on the right.\n\n\n\n attr0to - Enter the new name for the attribute here.\n\n\n\n\n\n\n -\n\nExtra Information for the Attribute can be accessed via an Info CHOP.\n\n\n\n - Number of points in this . - Number of primitives in this . - Number of particles in this . - Time spent in another thread updating geometry data on the from the 's CPU data. As it is part of another thread, this time is not part of the usual frame time. - Time spent in another thread updating meta surface geometry data (such as metaballs or nurbs) on the from the 's CPU data. As it is part of another thread, this time is not part of the usual frame time.\n - Number of times the operator has cooked since the process started. - Duration of the last cook in milliseconds. - Frame number when this operator was last cooked relative to the component timeline. - Frame number when this operator was last cooked relative to the absolute time. - Time in milliseconds at which the operator started cooking in the frame it was cooked. - Time in milliseconds at which the operator finished cooking in the frame it was cooked. - 1 if operator was cooked this frame. - Number of warnings in this operator if any. - Number of errors in this operator if any.\nTouchDesigner Build: Latest\\nwikieditorwikieditorwikieditorwikieditor2022.241402021.100002020.200002018.28070before 2018.28070\nSOPs\n• • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • \n\nA Operator Family that reads, creates and modifies 3D points, polygons, lines, particles, surfaces, spheres and meatballs. Particles and point clouds are now done primarily on the GPU using TOPs.\n\n\n\nEach SOP has a list of Points. Each point has an XYZ 3D position value plus other optional attributes. Each polygon Primitive is defined by a vertex list, which is list of point numbers.\n\n\n\nInformation associated with SOP geometry. Points and primitives (polygons, NURBS, etc.) can have any number of attributes - position (P) is standard, and built-in optional attributes are normals (N), texture coordinates (uv), color (Cd), etc.\n\n\n\nA sequence of vertices form a Polygon in a SOP. Each vertex is an integer index into the Point List, and each Point holds an XYZ position and attributes like Normals and Texture Coordinates.\n\n\n\nA surface type in SOPs that includes polygon, curve (NURBS and Bezier), patch (NURBS and Bezier) and other basic shapes like sphere, tube and metaball. Points and Primitives are part of the Geometry Detail, which is a part of a SOP.\n\n\n\nAn Operator Family which operate on Channels (a sequence of numbers (Samples)) which are used for animation, audio, mathematics, simulation, logic, UI construction, and data streamed from/to devices and protocols.\n\n\n\nThe Graphics Processing Unit. This is the high-speed, many-core processor of the graphics card/chip that takes geometry, images and data from the CPU and creates images and processed data.\n\n\n\n\n\n\n\n\nRetrieved from \"https://docs.derivative.ca/index.php?title=Attribute_SOP&oldid=32280\"\n\t\tCategory: SOPs",
"tooltip": "",
"help": "",
"units": "",
"examples": [],
"isReadOnly": false,
"isAdvanced": false,
"isHidden": false,
"isAnimatable": true,
"isExpression": false,
"isPython": false,
"dependsOn": [],
"affects": [],
"linkedTo": [],
"expressionLanguage": "",
"defaultExpression": "",
"commonExpressions": [],
"order": 0,
"isVisible": true,
"conditionalDisplay": null,
"isValid": true,
"validationErrors": [],
"lastUpdated": "2025-08-07T07:49:56.707Z",
"rawData": {},
"sourceElement": null
},
{
"id": null,
"name": "Delete Attributes",
"label": "Delete Attributes",
"group": "General",
"page": "",
"type": "float",
"dataType": "number",
"style": "",
"defaultValue": null,
"minValue": null,
"maxValue": null,
"step": null,
"menuItems": [],
"menuLabels": [],
"allowCustom": false,
"maxLength": null,
"pattern": null,
"isArray": false,
"arraySize": 1,
"dimensions": 1,
"description": "From Derivative\n\t\t\n\t\t\n\t\t\n\t\t\n\t\tJump to navigation\n\t\tJump to search\n\t\t\nThe Attribute allows you to manually rename and delete point, vertex, and primitive attributes.\nThe top portion of each parameter page deals with the deleting of a specifc type of attributes. \nFor example: Cd Alpha\t\t\nPattern Matching - Deletion accepts general pattern matching when determining which attributes to delete. For example:\t\n\n\t\t\n* = Delete all attributesCd = Delete the Cd attributeCd Alpha = Delete Cd & Alpha attributesa* = Delete all attributes beginning with a* ^Cd = Delete all attributes except Cd\t\t\n\n\t\t\nNote: You should never delete just one of the following attributes, but always keep/delete them together. This is because TouchDesigner's capture/deform system expects these three attributes to occur together. Deleting a subset of the three will cause errors as they are interdependent: \t\t\npCapt (point attribute), pCaptPath, pCaptData (detail attribute)\nSee also: Attribute Create SOP.\nThe next section of each page deals with renaming attributes. Specify the name of the original incoming attribute in the 'From Attribute' parameter, and the new name you want it renamed to in the 'To Attribute' parameter.\nattributeSOP_Class\n\nContents\n \n \n \n \n \n \n \n \n \n\n\n\n\n\n ptdel - - Use the field to specify the point attributes to delete. Simply enter a list of the attributes (separated by spaces) to delete, for example entering:Cd Alpha. You can also use the dropdown menu on the right to select them.\n\n * -\n\n pt - Sequence of point renames\n\n\n\n pt0from - Specify the attribute you wish to rename, or select it from the dropdown menu on the right.\n\n\n\n pt0to - Enter the new name for the attribute here.\n\n\n\n\n\n\nThese tabbed pages are identical to the page except that they deal with vertex and primitive attributes of the input geometry.\n\n vertdel - - Use the field to specify the vertex attributes to delete. Simply enter a list of the attributes (separated by spaces) to delete, for example entering:uv N. You can also use the dropdown menu on the right to select them.\n\n * -\n\n vert - Sequence of vertex renames\n\n\n\n vert0from - Specify the attribute you wish to rename, or select it from the dropdown menu on the right.\n\n\n\n vert0to - Enter the new name for the attribute here.\n\n\n\n\n\n\nAccepts geometry of all types.\n\n primdel - - Use the field to specify the primitive attributes to delete. Simply enter a list of the attributes (separated by spaces) to delete, for example entering:Cd creaseweight. You can also use the dropdown menu on the right to select them.\n\n * -\n\n prim - Sequence of primitive renames\n\n\n\n prim0from - Specify the attribute you wish to rename, or select it from the dropdown menu on the right.\n\n\n\n prim0to - Enter the new name for the attribute here.\n\n\n\n\n\n\n attrdel - - Use the field to specify the detail attributes to delete. Simply enter a list of the attributes (separated by spaces) to delete. You can also use the dropdown menu on the right to select them.\n\n * -\n\n attr - Sequence of detail renames\n\n\n\n attr0from - Specify the attribute you wish to rename, or select it from the dropdown menu on the right.\n\n\n\n attr0to - Enter the new name for the attribute here.\n\n\n\n\n\n\n -\n\nExtra Information for the Attribute can be accessed via an Info CHOP.\n\n\n\n - Number of points in this . - Number of primitives in this . - Number of particles in this . - Time spent in another thread updating geometry data on the from the 's CPU data. As it is part of another thread, this time is not part of the usual frame time. - Time spent in another thread updating meta surface geometry data (such as metaballs or nurbs) on the from the 's CPU data. As it is part of another thread, this time is not part of the usual frame time.\n - Number of times the operator has cooked since the process started. - Duration of the last cook in milliseconds. - Frame number when this operator was last cooked relative to the component timeline. - Frame number when this operator was last cooked relative to the absolute time. - Time in milliseconds at which the operator started cooking in the frame it was cooked. - Time in milliseconds at which the operator finished cooking in the frame it was cooked. - 1 if operator was cooked this frame. - Number of warnings in this operator if any. - Number of errors in this operator if any.\nTouchDesigner Build: Latest\\nwikieditorwikieditorwikieditorwikieditor2022.241402021.100002020.200002018.28070before 2018.28070\nSOPs\n• • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • \n\nA Operator Family that reads, creates and modifies 3D points, polygons, lines, particles, surfaces, spheres and meatballs. Particles and point clouds are now done primarily on the GPU using TOPs.\n\n\n\nEach SOP has a list of Points. Each point has an XYZ 3D position value plus other optional attributes. Each polygon Primitive is defined by a vertex list, which is list of point numbers.\n\n\n\nInformation associated with SOP geometry. Points and primitives (polygons, NURBS, etc.) can have any number of attributes - position (P) is standard, and built-in optional attributes are normals (N), texture coordinates (uv), color (Cd), etc.\n\n\n\nA sequence of vertices form a Polygon in a SOP. Each vertex is an integer index into the Point List, and each Point holds an XYZ position and attributes like Normals and Texture Coordinates.\n\n\n\nA surface type in SOPs that includes polygon, curve (NURBS and Bezier), patch (NURBS and Bezier) and other basic shapes like sphere, tube and metaball. Points and Primitives are part of the Geometry Detail, which is a part of a SOP.\n\n\n\nAn Operator Family which operate on Channels (a sequence of numbers (Samples)) which are used for animation, audio, mathematics, simulation, logic, UI construction, and data streamed from/to devices and protocols.\n\n\n\nThe Graphics Processing Unit. This is the high-speed, many-core processor of the graphics card/chip that takes geometry, images and data from the CPU and creates images and processed data.\n\n\n\n\n\n\n\n\nRetrieved from \"https://docs.derivative.ca/index.php?title=Attribute_SOP&oldid=32280\"\n\t\tCategory: SOPs",
"tooltip": "",
"help": "",
"units": "",
"examples": [],
"isReadOnly": false,
"isAdvanced": false,
"isHidden": false,
"isAnimatable": true,
"isExpression": false,
"isPython": false,
"dependsOn": [],
"affects": [],
"linkedTo": [],
"expressionLanguage": "",
"defaultExpression": "",
"commonExpressions": [],
"order": 0,
"isVisible": true,
"conditionalDisplay": null,
"isValid": true,
"validationErrors": [],
"lastUpdated": "2025-08-07T07:49:56.708Z",
"rawData": {},
"sourceElement": null
},
{
"id": null,
"name": "Delete Attributes",
"label": "Delete Attributes",
"group": "General",
"page": "",
"type": "float",
"dataType": "number",
"style": "",
"defaultValue": null,
"minValue": null,
"maxValue": null,
"step": null,
"menuItems": [],
"menuLabels": [],
"allowCustom": false,
"maxLength": null,
"pattern": null,
"isArray": false,
"arraySize": 1,
"dimensions": 1,
"description": "The Attribute allows you to manually rename and delete point, vertex, and primitive attributes.\nThe top portion of each parameter page deals with the deleting of a specifc type of attributes. \nFor example: Cd Alpha\t\t\nPattern Matching - Deletion accepts general pattern matching when determining which attributes to delete. For example:\t\n\n\t\t\n* = Delete all attributesCd = Delete the Cd attributeCd Alpha = Delete Cd & Alpha attributesa* = Delete all attributes beginning with a* ^Cd = Delete all attributes except Cd\t\t\n\n\t\t\nNote: You should never delete just one of the following attributes, but always keep/delete them together. This is because TouchDesigner's capture/deform system expects these three attributes to occur together. Deleting a subset of the three will cause errors as they are interdependent: \t\t\npCapt (point attribute), pCaptPath, pCaptData (detail attribute)\nSee also: Attribute Create SOP.\nThe next section of each page deals with renaming attributes. Specify the name of the original incoming attribute in the 'From Attribute' parameter, and the new name you want it renamed to in the 'To Attribute' parameter.\nattributeSOP_Class\n\nContents\n \n \n \n \n \n \n \n \n \n\n\n\n\n\n ptdel - - Use the field to specify the point attributes to delete. Simply enter a list of the attributes (separated by spaces) to delete, for example entering:Cd Alpha. You can also use the dropdown menu on the right to select them.\n\n * -\n\n pt - Sequence of point renames\n\n\n\n pt0from - Specify the attribute you wish to rename, or select it from the dropdown menu on the right.\n\n\n\n pt0to - Enter the new name for the attribute here.\n\n\n\n\n\n\nThese tabbed pages are identical to the page except that they deal with vertex and primitive attributes of the input geometry.\n\n vertdel - - Use the field to specify the vertex attributes to delete. Simply enter a list of the attributes (separated by spaces) to delete, for example entering:uv N. You can also use the dropdown menu on the right to select them.\n\n * -\n\n vert - Sequence of vertex renames\n\n\n\n vert0from - Specify the attribute you wish to rename, or select it from the dropdown menu on the right.\n\n\n\n vert0to - Enter the new name for the attribute here.\n\n\n\n\n\n\nAccepts geometry of all types.\n\n primdel - - Use the field to specify the primitive attributes to delete. Simply enter a list of the attributes (separated by spaces) to delete, for example entering:Cd creaseweight. You can also use the dropdown menu on the right to select them.\n\n * -\n\n prim - Sequence of primitive renames\n\n\n\n prim0from - Specify the attribute you wish to rename, or select it from the dropdown menu on the right.\n\n\n\n prim0to - Enter the new name for the attribute here.\n\n\n\n\n\n\n attrdel - - Use the field to specify the detail attributes to delete. Simply enter a list of the attributes (separated by spaces) to delete. You can also use the dropdown menu on the right to select them.\n\n * -\n\n attr - Sequence of detail renames\n\n\n\n attr0from - Specify the attribute you wish to rename, or select it from the dropdown menu on the right.\n\n\n\n attr0to - Enter the new name for the attribute here.\n\n\n\n\n\n\n -\n\nExtra Information for the Attribute can be accessed via an Info CHOP.\n\n\n\n - Number of points in this . - Number of primitives in this . - Number of particles in this . - Time spent in another thread updating geometry data on the from the 's CPU data. As it is part of another thread, this time is not part of the usual frame time. - Time spent in another thread updating meta surface geometry data (such as metaballs or nurbs) on the from the 's CPU data. As it is part of another thread, this time is not part of the usual frame time.\n - Number of times the operator has cooked since the process started. - Duration of the last cook in milliseconds. - Frame number when this operator was last cooked relative to the component timeline. - Frame number when this operator was last cooked relative to the absolute time. - Time in milliseconds at which the operator started cooking in the frame it was cooked. - Time in milliseconds at which the operator finished cooking in the frame it was cooked. - 1 if operator was cooked this frame. - Number of warnings in this operator if any. - Number of errors in this operator if any.\nTouchDesigner Build: Latest\\nwikieditorwikieditorwikieditorwikieditor2022.241402021.100002020.200002018.28070before 2018.28070\nSOPs\n• • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • \n\nA Operator Family that reads, creates and modifies 3D points, polygons, lines, particles, surfaces, spheres and meatballs. Particles and point clouds are now done primarily on the GPU using TOPs.\n\n\n\nEach SOP has a list of Points. Each point has an XYZ 3D position value plus other optional attributes. Each polygon Primitive is defined by a vertex list, which is list of point numbers.\n\n\n\nInformation associated with SOP geometry. Points and primitives (polygons, NURBS, etc.) can have any number of attributes - position (P) is standard, and built-in optional attributes are normals (N), texture coordinates (uv), color (Cd), etc.\n\n\n\nA sequence of vertices form a Polygon in a SOP. Each vertex is an integer index into the Point List, and each Point holds an XYZ position and attributes like Normals and Texture Coordinates.\n\n\n\nA surface type in SOPs that includes polygon, curve (NURBS and Bezier), patch (NURBS and Bezier) and other basic shapes like sphere, tube and metaball. Points and Primitives are part of the Geometry Detail, which is a part of a SOP.\n\n\n\nAn Operator Family which operate on Channels (a sequence of numbers (Samples)) which are used for animation, audio, mathematics, simulation, logic, UI construction, and data streamed from/to devices and protocols.\n\n\n\nThe Graphics Processing Unit. This is the high-speed, many-core processor of the graphics card/chip that takes geometry, images and data from the CPU and creates images and processed data.\n\n\n\n\n\n\n\n\nRetrieved from \"https://docs.derivative.ca/index.php?title=Attribute_SOP&oldid=32280\"",
"tooltip": "",
"help": "",
"units": "",
"examples": [],
"isReadOnly": false,
"isAdvanced": false,
"isHidden": false,
"isAnimatable": true,
"isExpression": false,
"isPython": false,
"dependsOn": [],
"affects": [],
"linkedTo": [],
"expressionLanguage": "",
"defaultExpression": "",
"commonExpressions": [],
"order": 0,
"isVisible": true,
"conditionalDisplay": null,
"isValid": true,
"validationErrors": [],
"lastUpdated": "2025-08-07T07:49:56.710Z",
"rawData": {},
"sourceElement": null
},
{
"id": null,
"name": "Delete Attributes",
"label": "Delete Attributes",
"group": "General",
"page": "",
"type": "float",
"dataType": "number",
"style": "",
"defaultValue": null,
"minValue": null,
"maxValue": null,
"step": null,
"menuItems": [],
"menuLabels": [],
"allowCustom": false,
"maxLength": null,
"pattern": null,
"isArray": false,
"arraySize": 1,
"dimensions": 1,
"description": "ptdel - - Use the field to specify the point attributes to delete. Simply enter a list of the attributes (separated by spaces) to delete, for example entering:Cd Alpha. You can also use the dropdown menu on the right to select them.\n\n * -",
"tooltip": "",
"help": "",
"units": "",
"examples": [],
"isReadOnly": false,
"isAdvanced": false,
"isHidden": false,
"isAnimatable": true,
"isExpression": false,
"isPython": false,
"dependsOn": [],
"affects": [],
"linkedTo": [],
"expressionLanguage": "",
"defaultExpression": "",
"commonExpressions": [],
"order": 0,
"isVisible": true,
"conditionalDisplay": null,
"isValid": true,
"validationErrors": [],
"lastUpdated": "2025-08-07T07:49:56.710Z",
"rawData": {},
"sourceElement": null
},
{
"id": null,
"name": "*",
"label": "*",
"group": "General",
"page": "",
"type": "float",
"dataType": "number",
"style": "",
"defaultValue": null,
"minValue": null,
"maxValue": null,
"step": null,
"menuItems": [],
"menuLabels": [],
"allowCustom": false,
"maxLength": null,
"pattern": null,
"isArray": false,
"arraySize": 1,
"dimensions": 1,
"description": "* -",
"tooltip": "",
"help": "",
"units": "",
"examples": [],
"isReadOnly": false,
"isAdvanced": false,
"isHidden": false,
"isAnimatable": true,
"isExpression": false,
"isPython": false,
"dependsOn": [],
"affects": [],
"linkedTo": [],
"expressionLanguage": "",
"defaultExpression": "",
"commonExpressions": [],
"order": 0,
"isVisible": true,
"conditionalDisplay": null,
"isValid": true,
"validationErrors": [],
"lastUpdated": "2025-08-07T07:49:56.711Z",
"rawData": {},
"sourceElement": null
},
{
"id": null,
"name": "Point Rename",
"label": "Point Rename",
"group": "General",
"page": "",
"type": "float",
"dataType": "number",
"style": "",
"defaultValue": null,
"minValue": null,
"maxValue": null,
"step": null,
"menuItems": [],
"menuLabels": [],
"allowCustom": false,
"maxLength": null,
"pattern": null,
"isArray": false,
"arraySize": 1,
"dimensions": 1,
"description": "pt - Sequence of point renames\n\n\n\n pt0from - Specify the attribute you wish to rename, or select it from the dropdown menu on the right.\n\n\n\n pt0to - Enter the new name for the attribute here.",
"tooltip": "",
"help": "",
"units": "",
"examples": [],
"isReadOnly": false,
"isAdvanced": false,
"isHidden": false,
"isAnimatable": true,
"isExpression": false,
"isPython": false,
"dependsOn": [],
"affects": [],
"linkedTo": [],
"expressionLanguage": "",
"defaultExpression": "",
"commonExpressions": [],
"order": 0,
"isVisible": true,
"conditionalDisplay": null,
"isValid": true,
"validationErrors": [],
"lastUpdated": "2025-08-07T07:49:56.711Z",
"rawData": {},
"sourceElement": null
},
{
"id": null,
"name": "From Attribute",
"label": "From Attribute",
"group": "General",
"page": "",
"type": "float",
"dataType": "number",
"style": "",
"defaultValue": null,
"minValue": null,
"maxValue": null,
"step": null,
"menuItems": [],
"menuLabels": [],
"allowCustom": false,
"maxLength": null,
"pattern": null,
"isArray": false,
"arraySize": 1,
"dimensions": 1,
"description": "pt0from - Specify the attribute you wish to rename, or select it from the dropdown menu on the right.",
"tooltip": "",
"help": "",
"units": "",
"examples": [],
"isReadOnly": false,
"isAdvanced": false,
"isHidden": false,
"isAnimatable": true,
"isExpression": false,
"isPython": false,
"dependsOn": [],
"affects": [],
"linkedTo": [],
"expressionLanguage": "",
"defaultExpression": "",
"commonExpressions": [],
"order": 0,
"isVisible": true,
"conditionalDisplay": null,
"isValid": true,
"validationErrors": [],
"lastUpdated": "2025-08-07T07:49:56.711Z",
"rawData": {},
"sourceElement": null
},
{
"id": null,
"name": "To Attribute",
"label": "To Attribute",
"group": "General",
"page": "",
"type": "float",
"dataType": "number",
"style": "",
"defaultValue": null,
"minValue": null,
"maxValue": null,
"step": null,
"menuItems": [],
"menuLabels": [],
"allowCustom": false,
"maxLength": null,
"pattern": null,
"isArray": false,
"arraySize": 1,
"dimensions": 1,
"description": "pt0to - Enter the new name for the attribute here.",
"tooltip": "",
"help": "",
"units": "",
"examples": [],
"isReadOnly": false,
"isAdvanced": false,
"isHidden": false,
"isAnimatable": true,
"isExpression": false,
"isPython": false,
"dependsOn": [],
"affects": [],
"linkedTo": [],
"expressionLanguage": "",
"defaultExpression": "",
"commonExpressions": [],
"order": 0,
"isVisible": true,
"conditionalDisplay": null,
"isValid": true,
"validationErrors": [],
"lastUpdated": "2025-08-07T07:49:56.711Z",
"rawData": {},
"sourceElement": null
},
{
"id": null,
"name": "Delete Attributes",
"label": "Delete Attributes",
"group": "General",
"page": "",
"type": "float",
"dataType": "number",
"style": "",
"defaultValue": null,
"minValue": null,
"maxValue": null,
"step": null,
"menuItems": [],
"menuLabels": [],
"allowCustom": false,
"maxLength": null,
"pattern": null,
"isArray": false,
"arraySize": 1,
"dimensions": 1,
"description": "vertdel - - Use the field to specify the vertex attributes to delete. Simply enter a list of the attributes (separated by spaces) to delete, for example entering:uv N. You can also use the dropdown menu on the right to select them.\n\n * -",
"tooltip": "",
"help": "",
"units": "",
"examples": [],
"isReadOnly": false,
"isAdvanced": false,
"isHidden": false,
"isAnimatable": true,
"isExpression": false,
"isPython": false,
"dependsOn": [],
"affects": [],
"linkedTo": [],
"expressionLanguage": "",
"defaultExpression": "",
"commonExpressions": [],
"order": 0,
"isVisible": true,
"conditionalDisplay": null,
"isValid": true,
"validationErrors": [],
"lastUpdated": "2025-08-07T07:49:56.711Z",
"rawData": {},
"sourceElement": null
},
{
"id": null,
"name": "*",
"label": "*",
"group": "General",
"page": "",
"type": "float",
"dataType": "number",
"style": "",
"defaultValue": null,
"minValue": null,
"maxValue": null,
"step": null,
"menuItems": [],
"menuLabels": [],
"allowCustom": false,
"maxLength": null,
"pattern": null,
"isArray": false,
"arraySize": 1,
"dimensions": 1,
"description": "* -",
"tooltip": "",
"help": "",
"units": "",
"examples": [],
"isReadOnly": false,
"isAdvanced": false,
"isHidden": false,
"isAnimatable": true,
"isExpression": false,
"isPython": false,
"dependsOn": [],
"affects": [],
"linkedTo": [],
"expressionLanguage": "",
"defaultExpression": "",
"commonExpressions": [],
"order": 0,
"isVisible": true,
"conditionalDisplay": null,
"isValid": true,
"validationErrors": [],
"lastUpdated": "2025-08-07T07:49:56.711Z",
"rawData": {},
"sourceElement": null
},
{
"id": null,
"name": "Vertex Rename",
"label": "Vertex Rename",
"group": "General",
"page": "",
"type": "float",
"dataType": "number",
"style": "",
"defaultValue": null,
"minValue": null,
"maxValue": null,
"step": null,
"menuItems": [],
"menuLabels": [],
"allowCustom": false,
"maxLength": null,
"pattern": null,
"isArray": false,
"arraySize": 1,
"dimensions": 1,
"description": "vert - Sequence of vertex renames\n\n\n\n vert0from - Specify the attribute you wish to rename, or select it from the dropdown menu on the right.\n\n\n\n vert0to - Enter the new name for the attribute here.",
"tooltip": "",
"help": "",
"units": "",
"examples": [],
"isReadOnly": false,
"isAdvanced": false,
"isHidden": false,
"isAnimatable": true,
"isExpression": false,
"isPython": false,
"dependsOn": [],
"affects": [],
"linkedTo": [],
"expressionLanguage": "",
"defaultExpression": "",
"commonExpressions": [],
"order": 0,
"isVisible": true,
"conditionalDisplay": null,
"isValid": true,
"validationErrors": [],
"lastUpdated": "2025-08-07T07:49:56.711Z",
"rawData": {},
"sourceElement": null
},
{
"id": null,
"name": "From Attribute",
"label": "From Attribute",
"group": "General",
"page": "",
"type": "float",
"dataType": "number",
"style": "",
"defaultValue": null,
"minValue": null,
"maxValue": null,
"step": null,
"menuItems": [],
"menuLabels": [],
"allowCustom": false,
"maxLength": null,
"pattern": null,
"isArray": false,
"arraySize": 1,
"dimensions": 1,
"description": "vert0from - Specify the attribute you wish to rename, or select it from the dropdown menu on the right.",
"tooltip": "",
"help": "",
"units": "",
"examples": [],
"isReadOnly": false,
"isAdvanced": false,
"isHidden": false,
"isAnimatable": true,
"isExpression": false,
"isPython": false,
"dependsOn": [],
"affects": [],
"linkedTo": [],
"expressionLanguage": "",
"defaultExpression": "",
"commonExpressions": [],
"order": 0,
"isVisible": true,
"conditionalDisplay": null,
"isValid": true,
"validationErrors": [],
"lastUpdated": "2025-08-07T07:49:56.711Z",
"rawData": {},
"sourceElement": null
},
{
"id": null,
"name": "To Attribute",
"label": "To Attribute",
"group": "General",
"page": "",
"type": "float",
"dataType": "number",
"style": "",
"defaultValue": null,
"minValue": null,
"maxValue": null,
"step": null,
"menuItems": [],
"menuLabels": [],
"allowCustom": false,
"maxLength": null,
"pattern": null,
"isArray": false,
"arraySize": 1,
"dimensions": 1,
"description": "vert0to - Enter the new name for the attribute here.",
"tooltip": "",
"help": "",
"units": "",
"examples": [],
"isReadOnly": false,
"isAdvanced": false,
"isHidden": false,
"isAnimatable": true,
"isExpression": false,
"isPython": false,
"dependsOn": [],
"affects": [],
"linkedTo": [],
"expressionLanguage": "",
"defaultExpression": "",
"commonExpressions": [],
"order": 0,
"isVisible": true,
"conditionalDisplay": null,
"isValid": true,
"validationErrors": [],
"lastUpdated": "2025-08-07T07:49:56.711Z",
"rawData": {},
"sourceElement": null
},
{
"id": null,
"name": "Delete Attributes",
"label": "Delete Attributes",
"group": "General",
"page": "",
"type": "float",
"dataType": "number",
"style": "",
"defaultValue": null,
"minValue": null,
"maxValue": null,
"step": null,
"menuItems": [],
"menuLabels": [],
"allowCustom": false,
"maxLength": null,
"pattern": null,
"isArray": false,
"arraySize": 1,
"dimensions": 1,
"description": "primdel - - Use the field to specify the primitive attributes to delete. Simply enter a list of the attributes (separated by spaces) to delete, for example entering:Cd creaseweight. You can also use the dropdown menu on the right to select them.\n\n * -",
"tooltip": "",
"help": "",
"units": "",
"examples": [],
"isReadOnly": false,
"isAdvanced": false,
"isHidden": false,
"isAnimatable": true,
"isExpression": false,
"isPython": false,
"dependsOn": [],
"affects": [],
"linkedTo": [],
"expressionLanguage": "",
"defaultExpression": "",
"commonExpressions": [],
"order": 0,
"isVisible": true,
"conditionalDisplay": null,
"isValid": true,
"validationErrors": [],
"lastUpdated": "2025-08-07T07:49:56.711Z",
"rawData": {},
"sourceElement": null
},
{
"id": null,
"name": "*",
"label": "*",
"group": "General",
"page": "",
"type": "float",
"dataType": "number",
"style": "",
"defaultValue": null,
"minValue": null,
"maxValue": null,
"step": null,
"menuItems": [],
"menuLabels": [],
"allowCustom": false,
"maxLength": null,
"pattern": null,
"isArray": false,
"arraySize": 1,
"dimensions": 1,
"description": "* -",
"tooltip": "",
"help": "",
"units": "",
"examples": [],
"isReadOnly": false,
"isAdvanced": false,
"isHidden": false,
"isAnimatable": true,
"isExpression": false,
"isPython": false,
"dependsOn": [],
"affects": [],
"linkedTo": [],
"expressionLanguage": "",
"defaultExpression": "",
"commonExpressions": [],
"order": 0,
"isVisible": true,
"conditionalDisplay": null,
"isValid": true,
"validationErrors": [],
"lastUpdated": "2025-08-07T07:49:56.712Z",
"rawData": {},
"sourceElement": null
},
{
"id": null,
"name": "Prim Rename",
"label": "Prim Rename",
"group": "General",
"page": "",
"type": "float",
"dataType": "number",
"style": "",
"defaultValue": null,
"minValue": null,
"maxValue": null,
"step": null,
"menuItems": [],
"menuLabels": [],
"allowCustom": false,
"maxLength": null,
"pattern": null,
"isArray": false,
"arraySize": 1,
"dimensions": 1,
"description": "prim - Sequence of primitive renames\n\n\n\n prim0from - Specify the attribute you wish to rename, or select it from the dropdown menu on the right.\n\n\n\n prim0to - Enter the new name for the attribute here.",
"tooltip": "",
"help": "",
"units": "",
"examples": [],
"isReadOnly": false,
"isAdvanced": false,
"isHidden": false,
"isAnimatable": true,
"isExpression": false,
"isPython": false,
"dependsOn": [],
"affects": [],
"linkedTo": [],
"expressionLanguage": "",
"defaultExpression": "",
"commonExpressions": [],
"order": 0,
"isVisible": true,
"conditionalDisplay": null,
"isValid": true,
"validationErrors": [],
"lastUpdated": "2025-08-07T07:49:56.712Z",
"rawData": {},
"sourceElement": null
},
{
"id": null,
"name": "From Attribute",
"label": "From Attribute",
"group": "General",
"page": "",
"type": "float",
"dataType": "number",
"style": "",
"defaultValue": null,
"minValue": null,
"maxValue": null,
"step": null,
"menuItems": [],
"menuLabels": [],
"allowCustom": false,
"maxLength": null,
"pattern": null,
"isArray": false,
"arraySize": 1,
"dimensions": 1,
"description": "prim0from - Specify the attribute you wish to rename, or select it from the dropdown menu on the right.",
"tooltip": "",
"help": "",
"units": "",
"examples": [],
"isReadOnly": false,
"isAdvanced": false,
"isHidden": false,
"isAnimatable": true,
"isExpression": false,
"isPython": false,
"dependsOn": [],
"affects": [],
"linkedTo": [],
"expressionLanguage": "",
"defaultExpression": "",
"commonExpressions": [],
"order": 0,
"isVisible": true,
"conditionalDisplay": null,
"isValid": true,
"validationErrors": [],
"lastUpdated": "2025-08-07T07:49:56.712Z",
"rawData": {},
"sourceElement": null
},
{
"id": null,
"name": "To Attribute",
"label": "To Attribute",
"group": "General",
"page": "",
"type": "float",
"dataType": "number",
"style": "",
"defaultValue": null,
"minValue": null,
"maxValue": null,
"step": null,
"menuItems": [],
"menuLabels": [],
"allowCustom": false,
"maxLength": null,
"pattern": null,
"isArray": false,
"arraySize": 1,
"dimensions": 1,
"description": "prim0to - Enter the new name for the attribute here.",
"tooltip": "",
"help": "",
"units": "",
"examples": [],
"isReadOnly": false,
"isAdvanced": false,
"isHidden": false,
"isAnimatable": true,
"isExpression": false,
"isPython": false,
"dependsOn": [],
"affects": [],
"linkedTo": [],
"expressionLanguage": "",
"defaultExpression": "",
"commonExpressions": [],
"order": 0,
"isVisible": true,
"conditionalDisplay": null,
"isValid": true,
"validationErrors": [],
"lastUpdated": "2025-08-07T07:49:56.712Z",
"rawData": {},
"sourceElement": null
},
{
"id": null,
"name": "Delete Attributes",
"label": "Delete Attributes",
"group": "General",
"page": "",
"type": "float",
"dataType": "number",
"style": "",
"defaultValue": null,
"minValue": null,
"maxValue": null,
"step": null,
"menuItems": [],
"menuLabels": [],
"allowCustom": false,
"maxLength": null,
"pattern": null,
"isArray": false,
"arraySize": 1,
"dimensions": 1,
"description": "attrdel - - Use the field to specify the detail attributes to delete. Simply enter a list of the attributes (separated by spaces) to delete. You can also use the dropdown menu on the right to select them.\n\n * -",
"tooltip": "",
"help": "",
"units": "",
"examples": [],
"isReadOnly": false,
"isAdvanced": false,
"isHidden": false,
"isAnimatable": true,
"isExpression": false,
"isPython": false,
"dependsOn": [],
"affects": [],
"linkedTo": [],
"expressionLanguage": "",
"defaultExpression": "",
"commonExpressions": [],
"order": 0,
"isVisible": true,
"conditionalDisplay": null,
"isValid": true,
"validationErrors": [],
"lastUpdated": "2025-08-07T07:49:56.712Z",
"rawData": {},
"sourceElement": null
},
{
"id": null,
"name": "*",
"label": "*",
"group": "General",
"page": "",
"type": "float",
"dataType": "number",
"style": "",
"defaultValue": null,
"minValue": null,
"maxValue": null,
"step": null,
"menuItems": [],
"menuLabels": [],
"allowCustom": false,
"maxLength": null,
"pattern": null,
"isArray": false,
"arraySize": 1,
"dimensions": 1,
"description": "* -",
"tooltip": "",
"help": "",
"units": "",
"examples": [],
"isReadOnly": false,
"isAdvanced": false,
"isHidden": false,
"isAnimatable": true,
"isExpression": false,
"isPython": false,
"dependsOn": [],
"affects": [],
"linkedTo": [],
"expressionLanguage": "",
"defaultExpression": "",
"commonExpressions": [],
"order": 0,
"isVisible": true,
"conditionalDisplay": null,
"isValid": true,
"validationErrors": [],
"lastUpdated": "2025-08-07T07:49:56.712Z",
"rawData": {},
"sourceElement": null
},
{
"id": null,
"name": "Detail Rename",
"label": "Detail Rename",
"group": "General",
"page": "",
"type": "float",
"dataType": "number",
"style": "",
"defaultValue": null,
"minValue": null,
"maxValue": null,
"step": null,
"menuItems": [],
"menuLabels": [],
"allowCustom": false,
"maxLength": null,
"pattern": null,
"isArray": false,
"arraySize": 1,
"dimensions": 1,
"description": "attr - Sequence of detail renames\n\n\n\n attr0from - Specify the attribute you wish to rename, or select it from the dropdown menu on the right.\n\n\n\n attr0to - Enter the new name for the attribute here.",
"tooltip": "",
"help": "",
"units": "",
"examples": [],
"isReadOnly": false,
"isAdvanced": false,
"isHidden": false,
"isAnimatable": true,
"isExpression": false,
"isPython": false,
"dependsOn": [],
"affects": [],
"linkedTo": [],
"expressionLanguage": "",
"defaultExpression": "",
"commonExpressions": [],
"order": 0,
"isVisible": true,
"conditionalDisplay": null,
"isValid": true,
"validationErrors": [],
"lastUpdated": "2025-08-07T07:49:56.712Z",
"rawData": {},
"sourceElement": null
},
{
"id": null,
"name": "From Attribute",
"label": "From Attribute",
"group": "General",
"page": "",
"type": "float",
"dataType": "number",
"style": "",
"defaultValue": null,
"minValue": null,
"maxValue": null,
"step": null,
"menuItems": [],
"menuLabels": [],
"allowCustom": false,
"maxLength": null,
"pattern": null,
"isArray": false,
"arraySize": 1,
"dimensions": 1,
"description": "attr0from - Specify the attribute you wish to rename, or select it from the dropdown menu on the right.",
"tooltip": "",
"help": "",
"units": "",
"examples": [],
"isReadOnly": false,
"isAdvanced": false,
"isHidden": false,
"isAnimatable": true,
"isExpression": false,
"isPython": false,
"dependsOn": [],
"affects": [],
"linkedTo": [],
"expressionLanguage": "",
"defaultExpression": "",
"commonExpressions": [],
"order": 0,
"isVisible": true,
"conditionalDisplay": null,
"isValid": true,
"validationErrors": [],
"lastUpdated": "2025-08-07T07:49:56.712Z",
"rawData": {},
"sourceElement": null
},
{
"id": null,
"name": "To Attribute",
"label": "To Attribute",
"group": "General",
"page": "",
"type": "float",
"dataType": "number",
"style": "",
"defaultValue": null,
"minValue": null,
"maxValue": null,
"step": null,
"menuItems": [],
"menuLabels": [],
"allowCustom": false,
"maxLength": null,
"pattern": null,
"isArray": false,
"arraySize": 1,
"dimensions": 1,
"description": "attr0to - Enter the new name for the attribute here.",
"tooltip": "",
"help": "",
"units": "",
"examples": [],
"isReadOnly": false,
"isAdvanced": false,
"isHidden": false,
"isAnimatable": true,
"isExpression": false,
"isPython": false,
"dependsOn": [],
"affects": [],
"linkedTo": [],
"expressionLanguage": "",
"defaultExpression": "",
"commonExpressions": [],
"order": 0,
"isVisible": true,
"conditionalDisplay": null,
"isValid": true,
"validationErrors": [],
"lastUpdated": "2025-08-07T07:49:56.712Z",
"rawData": {},
"sourceElement": null
}
],
"parameterGroups": {},
"codeExamples": [],
"pythonExamples": [],
"expressions": [],
"commonInputs": [],
"commonOutputs": [],
"relatedOperators": [],
"workflowPatterns": [],
"images": [],
"videos": [],
"assets": [],
"keywords": [
"attribute",
"sop",
"allows",
"manually",
"rename",
"delete",
"point,",
"vertex,",
"primitive",
"attributes."
],
"tags": [
"SOP",
"TouchDesigner",
"Attribute SOP"
],
"searchWeight": 1,
"contentHash": "",
"processingDate": "2025-08-07T07:49:56.713Z",
"processingVersion": "1.0.0",
"isValid": true,
"validationErrors": []
}