UNPKG

@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

757 lines 47.4 kB
{ "id": "phaser_chop", "name": "Phaser CHOP", "displayName": "Phaser CHOP", "category": "CHOP", "subcategory": "Generators", "version": "", "lastUpdated": "2025-08-07T07:50:07.336Z", "sourceFile": "C:\\Program Files\\Derivative\\TouchDesigner\\Samples\\Learn\\OfflineHelp\\https.docs.derivative.ca\\Phaser_CHOP.htm", "url": "", "description": "The Phaser CHOP does staggered (time-offset) animation interpolation. Phaser outputs one channel with multi-samples. Each sample animates from 0 to 1 over a cycle, but each sample value rises from 0 and arrives at 1 at different times.", "summary": "The Phaser CHOP does staggered (time-offset) animation interpolation. Phaser outputs one channel with multi-samples. Each sample animates from 0 to 1 over a cycle, but each sample value rises from 0 a", "details": "", "usage": "", "tips": [], "warnings": [], "parameters": [ { "id": null, "name": "Edge", "label": "Edge", "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 Phaser does staggered (time-offset) animation interpolation. Phaser outputs one channel with multi-samples. Each sample animates from 0 to 1 over a cycle, but each sample value rises from 0 and arrives at 1 at different times.\nFor example, you may have a set of N objects that you want to animate from a start position to an end position. You set Num Samples to N, which will make the Phaser output one channel with N samples that will animate the samples from 0 to 1 and be interpolated with an easing function. In the Phaser the start-to-end cycle is controlled by the first input of the , which is expected to be one channel with value between 0 to 1. \nThe 0-1 values can be used with the Lookup CHOP to animate groups of channels.\nBy default the timing is staggered uniformly. If you want to stagger their transitions irregularly, you use the second input, a set of values in one channel (typically N samples) that are between 0 and 1. The phase value specifies the object's timing relationship with the rest of those in the . A phase value of 1 corresponds to an animated object thats \"ahead of the pack\" (ie. it will start animating before the others). A value of 0 corresponds to an object that is late (ie. it will be the last to start easing/animating). If a phase input is not provided then the phase will simply be i/N where N is the total number of objects (ie. samples), and i is the index of the current sample.\nThere is also a notion of an \"Edge\" in the Phaser, which describes the cohesiveness of the group of animated objects and how fast the samples rise. A small value will cause the objects to go through the animation very quickly or at high value, very slowly and in unison with other samples.\nLook at David Braun's TouchDesigner Summit Talk to see the background of the Phaser . Its functionality draws heavily from David's research and development in quantitative easing. \nSee also the OP Snippets.\nphaserCHOP_Class\n\nContents\n \n \n \n \n \n \n \n\n\n\n\n\n edge - The separation edge of the phasing between two states. A smaller edge corresponds to sharper separation according to differences in phase. Edge Parameter will not be used if there is an Edge Input.\n\n\n\n nsamples - Specify the size of the output. This parameter will not be used if there is a phase input.\n\n\n\n outputformat - - Specifies the format of the output.\n\n samples - Multiple samples in a channel. channels - Multiple channels.\n\n\n\n timeslice - Turning this on forces the channels to be \"Time Sliced\". A is the time between the last cook frame and the current cook frame.\n\n\n\n scope - To determine which channels get affected, some CHOPs use a string on the Common page. See Pattern Matching.\n\n\n\n srselect - - Handle cases where multiple input CHOPs' sample rates are different. When Resampling occurs, the curves are interpolated according to the Interpolation Method Option, or \"Linear\" if the Interpolate Options are not available.\n\n first - Use rate of first input to resample others. max - Resample to the highest sample rate. min - Resample to the lowest sample rate. err - Doesn't accept conflicting sample rates.\n\n exportmethod - - This will determine how to connect the channel to the parameter. Refer to the Export article for more information.\n\n datindex - Uses the docked table and references the channel via the index of the channel in the . datname - Uses the docked table and references the channel via the name of the channel in the . autoname - The channel is the full destination of where to export to, such has geo1/transform1:tx.\n\n autoexportroot - This path points to the root node where all of the paths that exporting by Channel Name is : are relative to.\n\n\n\n exporttable - The used to hold the export information when using the Table Methods (See above).\n\n\n\n\n\n - The timing of the phase. When not wired the timing will default to an LFO ramp over 4 seconds. The should only contain one channel; all other channels except the first will be ignored.\n - When wired the Phaser 's output will mirror the phase input's. However, if Mult-Channel Output Format is selected it will in effect transpose the output.\n - Edge samples will be used instead of the Edge parameter.\n\n\nExtra Information for the Phaser can be accessed via an Info CHOP.\n\n\n\n - Start of the interval in samples. - Number of samples in the . - The samplerate of the channels in frames per second. - Number of channels in the . - 1 if is enabled, 0 otherwise. - A count of how often the export connections have been updated.\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\\nwikieditorwikieditor2021.10000before 2021.10000\nCHOPs\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\nA CHOP outputs one or more channels, where a channel is simply a sequence of numbers (Samples), representing motion, audio, etc. Channels are passed between CHOPs in TouchDesigner networks. Channels can be Exported to Parameters.\n\n\n\nA Time Slice is the time from the last cook frame to the current cook frame. In CHOPs it is the set of short channels that contain the CHOP channels' samples between the last and the current cook frame.\n\n\n\nA parameter in most CHOPs that restricts which channels of that CHOP will be affected. Normally all channels of a CHOP are affected by the operator. TOPs have Channel Mask, a similar feature.\n\n\n\nsamples-per-second of a CHOP. Each CHOP in your network has a sample rate. In contrast, the overall timeline has a Frame Rate, which is the number of frames to cook and display per second, generally your monitor display frequency, default 60.\n\n\n\nExporting is the connection of CHOP channels to parameters of operators. The output of each exporting CHOP is one or more channels, active only while the CHOP Viewer is on. The current value of a channel can be exported to a parameter of any operator, overriding that parameter's value. See Parameter.\n\n\n\nAn Operator Family that manipulates text strings: multi-line text or tables. Multi-line text is often a python Script or GLSL Shader, but can be any multi-line text. Tables are rows and columns of cells, each containing a text string.\n\n\n\nThe location of an operator within the TouchDesigner environment, for example, /geo1/circle1, a node called circle1 in a component called geo1. The path / is called Root. This path is displayed at the top of every Pane, showing which Component's network you are currently in. To refer instead to a filesystem folder, directory, disk file or http: address, see Folder.\n\n\n\nEvery operator in TouchDesigner has a set of control Parameters that can be integer or floating point numbers, menus, binary toggles, text strings or operator paths, which determine the output of the operator.\n\n\n\nTouchDesigner is a hierarchy of components. \"root\" is the top-most network in the hierarchy. The Network Path or Path for root is simply /. A typical path is /project1/moviein1.\n\n\n\n\n\n\n\n\nRetrieved from \"https://docs.derivative.ca/index.php?title=Phaser_CHOP&oldid=29532\"\n\t\tCategory: CHOPs", "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:50:07.331Z", "rawData": {}, "sourceElement": null }, { "id": null, "name": "Edge", "label": "Edge", "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 Phaser does staggered (time-offset) animation interpolation. Phaser outputs one channel with multi-samples. Each sample animates from 0 to 1 over a cycle, but each sample value rises from 0 and arrives at 1 at different times.\nFor example, you may have a set of N objects that you want to animate from a start position to an end position. You set Num Samples to N, which will make the Phaser output one channel with N samples that will animate the samples from 0 to 1 and be interpolated with an easing function. In the Phaser the start-to-end cycle is controlled by the first input of the , which is expected to be one channel with value between 0 to 1. \nThe 0-1 values can be used with the Lookup CHOP to animate groups of channels.\nBy default the timing is staggered uniformly. If you want to stagger their transitions irregularly, you use the second input, a set of values in one channel (typically N samples) that are between 0 and 1. The phase value specifies the object's timing relationship with the rest of those in the . A phase value of 1 corresponds to an animated object thats \"ahead of the pack\" (ie. it will start animating before the others). A value of 0 corresponds to an object that is late (ie. it will be the last to start easing/animating). If a phase input is not provided then the phase will simply be i/N where N is the total number of objects (ie. samples), and i is the index of the current sample.\nThere is also a notion of an \"Edge\" in the Phaser, which describes the cohesiveness of the group of animated objects and how fast the samples rise. A small value will cause the objects to go through the animation very quickly or at high value, very slowly and in unison with other samples.\nLook at David Braun's TouchDesigner Summit Talk to see the background of the Phaser . Its functionality draws heavily from David's research and development in quantitative easing. \nSee also the OP Snippets.\nphaserCHOP_Class\n\nContents\n \n \n \n \n \n \n \n\n\n\n\n\n edge - The separation edge of the phasing between two states. A smaller edge corresponds to sharper separation according to differences in phase. Edge Parameter will not be used if there is an Edge Input.\n\n\n\n nsamples - Specify the size of the output. This parameter will not be used if there is a phase input.\n\n\n\n outputformat - - Specifies the format of the output.\n\n samples - Multiple samples in a channel. channels - Multiple channels.\n\n\n\n timeslice - Turning this on forces the channels to be \"Time Sliced\". A is the time between the last cook frame and the current cook frame.\n\n\n\n scope - To determine which channels get affected, some CHOPs use a string on the Common page. See Pattern Matching.\n\n\n\n srselect - - Handle cases where multiple input CHOPs' sample rates are different. When Resampling occurs, the curves are interpolated according to the Interpolation Method Option, or \"Linear\" if the Interpolate Options are not available.\n\n first - Use rate of first input to resample others. max - Resample to the highest sample rate. min - Resample to the lowest sample rate. err - Doesn't accept conflicting sample rates.\n\n exportmethod - - This will determine how to connect the channel to the parameter. Refer to the Export article for more information.\n\n datindex - Uses the docked table and references the channel via the index of the channel in the . datname - Uses the docked table and references the channel via the name of the channel in the . autoname - The channel is the full destination of where to export to, such has geo1/transform1:tx.\n\n autoexportroot - This path points to the root node where all of the paths that exporting by Channel Name is : are relative to.\n\n\n\n exporttable - The used to hold the export information when using the Table Methods (See above).\n\n\n\n\n\n - The timing of the phase. When not wired the timing will default to an LFO ramp over 4 seconds. The should only contain one channel; all other channels except the first will be ignored.\n - When wired the Phaser 's output will mirror the phase input's. However, if Mult-Channel Output Format is selected it will in effect transpose the output.\n - Edge samples will be used instead of the Edge parameter.\n\n\nExtra Information for the Phaser can be accessed via an Info CHOP.\n\n\n\n - Start of the interval in samples. - Number of samples in the . - The samplerate of the channels in frames per second. - Number of channels in the . - 1 if is enabled, 0 otherwise. - A count of how often the export connections have been updated.\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\\nwikieditorwikieditor2021.10000before 2021.10000\nCHOPs\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\nA CHOP outputs one or more channels, where a channel is simply a sequence of numbers (Samples), representing motion, audio, etc. Channels are passed between CHOPs in TouchDesigner networks. Channels can be Exported to Parameters.\n\n\n\nA Time Slice is the time from the last cook frame to the current cook frame. In CHOPs it is the set of short channels that contain the CHOP channels' samples between the last and the current cook frame.\n\n\n\nA parameter in most CHOPs that restricts which channels of that CHOP will be affected. Normally all channels of a CHOP are affected by the operator. TOPs have Channel Mask, a similar feature.\n\n\n\nsamples-per-second of a CHOP. Each CHOP in your network has a sample rate. In contrast, the overall timeline has a Frame Rate, which is the number of frames to cook and display per second, generally your monitor display frequency, default 60.\n\n\n\nExporting is the connection of CHOP channels to parameters of operators. The output of each exporting CHOP is one or more channels, active only while the CHOP Viewer is on. The current value of a channel can be exported to a parameter of any operator, overriding that parameter's value. See Parameter.\n\n\n\nAn Operator Family that manipulates text strings: multi-line text or tables. Multi-line text is often a python Script or GLSL Shader, but can be any multi-line text. Tables are rows and columns of cells, each containing a text string.\n\n\n\nThe location of an operator within the TouchDesigner environment, for example, /geo1/circle1, a node called circle1 in a component called geo1. The path / is called Root. This path is displayed at the top of every Pane, showing which Component's network you are currently in. To refer instead to a filesystem folder, directory, disk file or http: address, see Folder.\n\n\n\nEvery operator in TouchDesigner has a set of control Parameters that can be integer or floating point numbers, menus, binary toggles, text strings or operator paths, which determine the output of the operator.\n\n\n\nTouchDesigner is a hierarchy of components. \"root\" is the top-most network in the hierarchy. The Network Path or Path for root is simply /. A typical path is /project1/moviein1.\n\n\n\n\n\n\n\n\nRetrieved from \"https://docs.derivative.ca/index.php?title=Phaser_CHOP&oldid=29532\"\n\t\tCategory: CHOPs", "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:50:07.333Z", "rawData": {}, "sourceElement": null }, { "id": null, "name": "Edge", "label": "Edge", "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 Phaser does staggered (time-offset) animation interpolation. Phaser outputs one channel with multi-samples. Each sample animates from 0 to 1 over a cycle, but each sample value rises from 0 and arrives at 1 at different times.\nFor example, you may have a set of N objects that you want to animate from a start position to an end position. You set Num Samples to N, which will make the Phaser output one channel with N samples that will animate the samples from 0 to 1 and be interpolated with an easing function. In the Phaser the start-to-end cycle is controlled by the first input of the , which is expected to be one channel with value between 0 to 1. \nThe 0-1 values can be used with the Lookup CHOP to animate groups of channels.\nBy default the timing is staggered uniformly. If you want to stagger their transitions irregularly, you use the second input, a set of values in one channel (typically N samples) that are between 0 and 1. The phase value specifies the object's timing relationship with the rest of those in the . A phase value of 1 corresponds to an animated object thats \"ahead of the pack\" (ie. it will start animating before the others). A value of 0 corresponds to an object that is late (ie. it will be the last to start easing/animating). If a phase input is not provided then the phase will simply be i/N where N is the total number of objects (ie. samples), and i is the index of the current sample.\nThere is also a notion of an \"Edge\" in the Phaser, which describes the cohesiveness of the group of animated objects and how fast the samples rise. A small value will cause the objects to go through the animation very quickly or at high value, very slowly and in unison with other samples.\nLook at David Braun's TouchDesigner Summit Talk to see the background of the Phaser . Its functionality draws heavily from David's research and development in quantitative easing. \nSee also the OP Snippets.\nphaserCHOP_Class\n\nContents\n \n \n \n \n \n \n \n\n\n\n\n\n edge - The separation edge of the phasing between two states. A smaller edge corresponds to sharper separation according to differences in phase. Edge Parameter will not be used if there is an Edge Input.\n\n\n\n nsamples - Specify the size of the output. This parameter will not be used if there is a phase input.\n\n\n\n outputformat - - Specifies the format of the output.\n\n samples - Multiple samples in a channel. channels - Multiple channels.\n\n\n\n timeslice - Turning this on forces the channels to be \"Time Sliced\". A is the time between the last cook frame and the current cook frame.\n\n\n\n scope - To determine which channels get affected, some CHOPs use a string on the Common page. See Pattern Matching.\n\n\n\n srselect - - Handle cases where multiple input CHOPs' sample rates are different. When Resampling occurs, the curves are interpolated according to the Interpolation Method Option, or \"Linear\" if the Interpolate Options are not available.\n\n first - Use rate of first input to resample others. max - Resample to the highest sample rate. min - Resample to the lowest sample rate. err - Doesn't accept conflicting sample rates.\n\n exportmethod - - This will determine how to connect the channel to the parameter. Refer to the Export article for more information.\n\n datindex - Uses the docked table and references the channel via the index of the channel in the . datname - Uses the docked table and references the channel via the name of the channel in the . autoname - The channel is the full destination of where to export to, such has geo1/transform1:tx.\n\n autoexportroot - This path points to the root node where all of the paths that exporting by Channel Name is : are relative to.\n\n\n\n exporttable - The used to hold the export information when using the Table Methods (See above).\n\n\n\n\n\n - The timing of the phase. When not wired the timing will default to an LFO ramp over 4 seconds. The should only contain one channel; all other channels except the first will be ignored.\n - When wired the Phaser 's output will mirror the phase input's. However, if Mult-Channel Output Format is selected it will in effect transpose the output.\n - Edge samples will be used instead of the Edge parameter.\n\n\nExtra Information for the Phaser can be accessed via an Info CHOP.\n\n\n\n - Start of the interval in samples. - Number of samples in the . - The samplerate of the channels in frames per second. - Number of channels in the . - 1 if is enabled, 0 otherwise. - A count of how often the export connections have been updated.\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\\nwikieditorwikieditor2021.10000before 2021.10000\nCHOPs\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\nA CHOP outputs one or more channels, where a channel is simply a sequence of numbers (Samples), representing motion, audio, etc. Channels are passed between CHOPs in TouchDesigner networks. Channels can be Exported to Parameters.\n\n\n\nA Time Slice is the time from the last cook frame to the current cook frame. In CHOPs it is the set of short channels that contain the CHOP channels' samples between the last and the current cook frame.\n\n\n\nA parameter in most CHOPs that restricts which channels of that CHOP will be affected. Normally all channels of a CHOP are affected by the operator. TOPs have Channel Mask, a similar feature.\n\n\n\nsamples-per-second of a CHOP. Each CHOP in your network has a sample rate. In contrast, the overall timeline has a Frame Rate, which is the number of frames to cook and display per second, generally your monitor display frequency, default 60.\n\n\n\nExporting is the connection of CHOP channels to parameters of operators. The output of each exporting CHOP is one or more channels, active only while the CHOP Viewer is on. The current value of a channel can be exported to a parameter of any operator, overriding that parameter's value. See Parameter.\n\n\n\nAn Operator Family that manipulates text strings: multi-line text or tables. Multi-line text is often a python Script or GLSL Shader, but can be any multi-line text. Tables are rows and columns of cells, each containing a text string.\n\n\n\nThe location of an operator within the TouchDesigner environment, for example, /geo1/circle1, a node called circle1 in a component called geo1. The path / is called Root. This path is displayed at the top of every Pane, showing which Component's network you are currently in. To refer instead to a filesystem folder, directory, disk file or http: address, see Folder.\n\n\n\nEvery operator in TouchDesigner has a set of control Parameters that can be integer or floating point numbers, menus, binary toggles, text strings or operator paths, which determine the output of the operator.\n\n\n\nTouchDesigner is a hierarchy of components. \"root\" is the top-most network in the hierarchy. The Network Path or Path for root is simply /. A typical path is /project1/moviein1.\n\n\n\n\n\n\n\n\nRetrieved from \"https://docs.derivative.ca/index.php?title=Phaser_CHOP&oldid=29532\"", "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:50:07.335Z", "rawData": {}, "sourceElement": null }, { "id": null, "name": "Edge", "label": "Edge", "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": "edge - The separation edge of the phasing between two states. A smaller edge corresponds to sharper separation according to differences in phase. Edge Parameter will not be used if there is an Edge Input.", "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:50:07.335Z", "rawData": {}, "sourceElement": null }, { "id": null, "name": "Num Samples", "label": "Num Samples", "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": "nsamples - Specify the size of the output. This parameter will not be used if there is a phase input.", "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:50:07.335Z", "rawData": {}, "sourceElement": null }, { "id": null, "name": "Output Format", "label": "Output Format", "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": "outputformat - - Specifies the format of the output.\n\n samples - Multiple samples in a channel. channels - Multiple channels.", "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:50:07.335Z", "rawData": {}, "sourceElement": null }, { "id": null, "name": "Multi-Samples", "label": "Multi-Samples", "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": "samples - Multiple samples in a channel. channels - Multiple channels.", "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:50:07.335Z", "rawData": {}, "sourceElement": null }, { "id": null, "name": "Time Slice", "label": "Time Slice", "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": "timeslice - Turning this on forces the channels to be \"Time Sliced\". A is the time between the last cook frame and the current cook frame.", "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:50:07.335Z", "rawData": {}, "sourceElement": null }, { "id": null, "name": "Scope", "label": "Scope", "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": "scope - To determine which channels get affected, some CHOPs use a string on the Common page. See Pattern Matching.", "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:50:07.335Z", "rawData": {}, "sourceElement": null }, { "id": null, "name": "Sample Rate Match", "label": "Sample Rate Match", "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": "srselect - - Handle cases where multiple input CHOPs' sample rates are different. When Resampling occurs, the curves are interpolated according to the Interpolation Method Option, or \"Linear\" if the Interpolate Options are not available.\n\n first - Use rate of first input to resample others. max - Resample to the highest sample rate. min - Resample to the lowest sample rate. err - Doesn't accept conflicting sample rates.", "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:50:07.335Z", "rawData": {}, "sourceElement": null }, { "id": null, "name": "Resample At First Input's Rate", "label": "Resample At First Input's Rate", "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": "first - Use rate of first input to resample others. max - Resample to the highest sample rate. min - Resample to the lowest sample rate. err - Doesn't accept conflicting sample rates.", "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:50:07.335Z", "rawData": {}, "sourceElement": null }, { "id": null, "name": "Export Method", "label": "Export Method", "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": "exportmethod - - This will determine how to connect the channel to the parameter. Refer to the Export article for more information.\n\n datindex - Uses the docked table and references the channel via the index of the channel in the . datname - Uses the docked table and references the channel via the name of the channel in the . autoname - The channel is the full destination of where to export to, such has geo1/transform1:tx.", "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:50:07.335Z", "rawData": {}, "sourceElement": null }, { "id": null, "name": "DAT Table by Index", "label": "DAT Table by Index", "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": "datindex - Uses the docked table and references the channel via the index of the channel in the . datname - Uses the docked table and references the channel via the name of the channel in the . autoname - The channel is the full destination of where to export to, such has geo1/transform1:tx.", "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:50:07.335Z", "rawData": {}, "sourceElement": null }, { "id": null, "name": "Export Root", "label": "Export Root", "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": "autoexportroot - This path points to the root node where all of the paths that exporting by Channel Name is : are relative to.", "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:50:07.335Z", "rawData": {}, "sourceElement": null }, { "id": null, "name": "Export Table", "label": "Export Table", "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": "exporttable - The used to hold the export information when using the Table Methods (See above).", "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:50:07.335Z", "rawData": {}, "sourceElement": null } ], "parameterGroups": {}, "codeExamples": [], "pythonExamples": [], "expressions": [], "commonInputs": [], "commonOutputs": [], "relatedOperators": [], "workflowPatterns": [], "images": [], "videos": [], "assets": [], "keywords": [ "phaser", "chop", "staggered", "(time-offset)", "animation", "interpolation.", "outputs", "channel", "multi-samples." ], "tags": [ "CHOP", "TouchDesigner", "Phaser CHOP" ], "searchWeight": 1, "contentHash": "", "processingDate": "2025-08-07T07:50:07.336Z", "processingVersion": "1.0.0", "isValid": true, "validationErrors": [] }