{
  "name": "Sort POP",
  "id": "sort_pop",
  "category": "POP",
  "subcategory": "Experimental",
  "description": "The Sort POP sorts the point list and/or the primitive list based on the position P or any attribute component. When sorting by P it can sort the points relative to a vector, or proximity to a point, or relative to a Geometry COMP's Z axis.",
  "parameters": [
    {
      "name": "P",
      "label": "Point Method",
      "description": "Configure Point Method for the operator",
      "type": "menu",
      "options": [
        {
          "label": "No Change",
          "value": "none",
          "description": ""
        },
        {
          "label": "By Attribute",
          "value": "byattrib",
          "description": ""
        },
        {
          "label": "Random",
          "value": "seed",
          "description": ""
        },
        {
          "label": "Proximity to Point",
          "value": "prox",
          "description": ""
        },
        {
          "label": "Along Vector",
          "value": "vector",
          "description": ""
        },
        {
          "label": "Relative to Object Z-axis",
          "value": "object",
          "description": "axis object -"
        },
        {
          "label": "Not UInt Attrib",
          "value": "notuint",
          "description": ""
        },
        {
          "label": "4 bits UInt (max 16)",
          "value": "uint4",
          "description": ""
        },
        {
          "label": "8 bits UInt (max 256)",
          "value": "uint8",
          "description": ""
        },
        {
          "label": "12 bits UInt (max 4096)",
          "value": "uint12",
          "description": ""
        },
        {
          "label": "16 bits UInt (max 65,536)",
          "value": "uint16",
          "description": ""
        },
        {
          "label": "20 bits UInt (max 1 M)",
          "value": "uint20",
          "description": ""
        },
        {
          "label": "24 bits UInt (max 16 M)",
          "value": "uint24",
          "description": ""
        },
        {
          "label": "28 bits UInt (max 268 M)",
          "value": "uint28",
          "description": ""
        },
        {
          "label": "32 bits UInt (max 4 B)",
          "value": "uint32",
          "description": ""
        },
        {
          "label": "Point",
          "value": "pointproxx",
          "description": ""
        },
        {
          "label": "Point",
          "value": "pointproxy",
          "description": ""
        },
        {
          "label": "Point",
          "value": "pointproxz",
          "description": ""
        },
        {
          "label": "Vector",
          "value": "pointdirx",
          "description": ""
        },
        {
          "label": "Vector",
          "value": "pointdiry",
          "description": ""
        },
        {
          "label": "Vector",
          "value": "pointdirz",
          "description": ""
        },
        {
          "label": "No Change",
          "value": "none",
          "description": ""
        },
        {
          "label": "By Point Attribute",
          "value": "byptattrib",
          "description": ""
        },
        {
          "label": "By Primitive Attribute",
          "value": "byprimattrib",
          "description": ""
        },
        {
          "label": "Random",
          "value": "seed",
          "description": ""
        },
        {
          "label": "Proximity to Point",
          "value": "prox",
          "description": ""
        },
        {
          "label": "Along Vector",
          "value": "vector",
          "description": ""
        },
        {
          "label": "Relative to Object Z-axis",
          "value": "object",
          "description": "axis object -"
        },
        {
          "label": "Not UInt Attrib",
          "value": "notuint",
          "description": ""
        },
        {
          "label": "4 bits UInt (max 16)",
          "value": "uint4",
          "description": ""
        },
        {
          "label": "8 bits UInt (max 256)",
          "value": "uint8",
          "description": ""
        },
        {
          "label": "12 bits UInt (max 4096)",
          "value": "uint12",
          "description": ""
        },
        {
          "label": "16 bits UInt (max 65,536)",
          "value": "uint16",
          "description": ""
        },
        {
          "label": "20 bits UInt (max 1 M)",
          "value": "uint20",
          "description": ""
        },
        {
          "label": "24 bits UInt (max 16 M)",
          "value": "uint24",
          "description": ""
        },
        {
          "label": "28 bits UInt (max 268 M)",
          "value": "uint28",
          "description": ""
        },
        {
          "label": "32 bits UInt (max 4 B)",
          "value": "uint32",
          "description": ""
        },
        {
          "label": "Point",
          "value": "primproxx",
          "description": ""
        },
        {
          "label": "Point",
          "value": "primproxy",
          "description": ""
        },
        {
          "label": "Point",
          "value": "primproxz",
          "description": ""
        },
        {
          "label": "Vector",
          "value": "primdirx",
          "description": ""
        },
        {
          "label": "Vector",
          "value": "primdiry",
          "description": ""
        },
        {
          "label": "Vector",
          "value": "primdirz",
          "description": ""
        },
        {
          "label": "sRGB",
          "value": "srgb",
          "description": "sRGB color space, with sRGB transfer function. Considered an SDR color space with respect to Reference White."
        },
        {
          "label": "sRGB - Linear",
          "value": "srgblinear",
          "description": "Linear srgblinear - sRGB color space, with linear transfer function. Considered an SDR color space with respect to Reference White."
        },
        {
          "label": "Rec.601 (NTSC)",
          "value": "rec601ntsc",
          "description": "Rec.601 with NTSC primaries color space, with Rec.601 transfer function. Considered an SDR color space with respect to Reference White."
        },
        {
          "label": "Rec.709",
          "value": "rec709",
          "description": "Rec.709 color space, with Rec.709 (same as Rec.2020) transfer function. Considered an SDR color space with respect to Reference White."
        },
        {
          "label": "Rec.2020",
          "value": "rec2020",
          "description": "Rec.2020 color space, with Rec.2020 (same as Rec.709) transfer function. Considered an HDR color space with respect to Reference White."
        },
        {
          "label": "DCI-P3",
          "value": "dcip3",
          "description": "P3 dcip3 - DCI-P3 color space, with D65 white point and 2.6 gamma transfer function. Considered an HDR color space with respect to Reference White."
        },
        {
          "label": "DCI-P3 (D60)",
          "value": "dcip3d60",
          "description": "P3 (D60) dcip3d60 - DCI-P3 \"D60 sim\" color space, with D60 white point, and 2.6 gamma transfer function. Considered an HDR color space with respect to Reference White."
        },
        {
          "label": "Display-P3 (D65)",
          "value": "displayp3d65",
          "description": "P3 (D65) displayp3d65 - Display-P3 color space, with D65 white point, and sRGB gamma transfer function. Considered an HDR color space with respect to Reference White."
        },
        {
          "label": "ACES2065-1",
          "value": "aces2065-1",
          "description": "1 aces2065-1 - ACES 2065-1 (also known as ACES AP0) color space, with a linear gamma transfer function. Considered an HDR color space with respect to Reference White."
        },
        {
          "label": "ACEScg",
          "value": "acescg",
          "description": "ACEScg (also known as ACES AP1) color space, with a linear gamma transfer function. Considered an HDR color space with respect to Reference White."
        },
        {
          "label": "Passthrough",
          "value": "passthrough",
          "description": "When selected, the color values will be used as-is in the operation, without any modification or attempt to convert them into the Working Color Space."
        },
        {
          "label": "Default For Color Space",
          "value": "default",
          "description": "Will use either the SDR or the HDR Reference White, based on the color space selected."
        },
        {
          "label": "Standard (SDR)",
          "value": "sdr",
          "description": "Will treat the Parameter Color Space as SDR for it's reference white value."
        },
        {
          "label": "High (HDR)",
          "value": "hdr",
          "description": "Will treat the Parameter Color Space as HDR for it's reference white value."
        }
      ]
    },
    {
      "name": "ptmethod",
      "label": "Point Method",
      "description": "Configure Point Method for the operator",
      "type": "menu",
      "options": [
        {
          "label": "No Change",
          "value": "none",
          "description": ""
        },
        {
          "label": "By Attribute",
          "value": "byattrib",
          "description": ""
        },
        {
          "label": "Random",
          "value": "seed",
          "description": ""
        },
        {
          "label": "Proximity to Point",
          "value": "prox",
          "description": ""
        },
        {
          "label": "Along Vector",
          "value": "vector",
          "description": ""
        },
        {
          "label": "Relative to Object Z-axis",
          "value": "object",
          "description": "axis object -"
        }
      ]
    },
    {
      "name": "none",
      "label": "No Change",
      "description": "Configure No Change for the operator",
      "type": "menu",
      "options": [
        {
          "label": "No Change",
          "value": "none",
          "description": ""
        },
        {
          "label": "By Attribute",
          "value": "byattrib",
          "description": ""
        },
        {
          "label": "Random",
          "value": "seed",
          "description": ""
        },
        {
          "label": "Proximity to Point",
          "value": "prox",
          "description": ""
        },
        {
          "label": "Along Vector",
          "value": "vector",
          "description": ""
        },
        {
          "label": "Relative to Object Z-axis",
          "value": "object",
          "description": "axis object -"
        }
      ]
    },
    {
      "name": "pointattr",
      "label": "Attribute",
      "description": "Configure Attribute for the operator",
      "type": "string"
    },
    {
      "name": "pointuint",
      "label": "Attrib is UInt",
      "description": "Configure Attrib is UInt for the operator",
      "type": "menu",
      "options": [
        {
          "label": "Not UInt Attrib",
          "value": "notuint",
          "description": ""
        },
        {
          "label": "4 bits UInt (max 16)",
          "value": "uint4",
          "description": ""
        },
        {
          "label": "8 bits UInt (max 256)",
          "value": "uint8",
          "description": ""
        },
        {
          "label": "12 bits UInt (max 4096)",
          "value": "uint12",
          "description": ""
        },
        {
          "label": "16 bits UInt (max 65,536)",
          "value": "uint16",
          "description": ""
        },
        {
          "label": "20 bits UInt (max 1 M)",
          "value": "uint20",
          "description": ""
        },
        {
          "label": "24 bits UInt (max 16 M)",
          "value": "uint24",
          "description": ""
        },
        {
          "label": "28 bits UInt (max 268 M)",
          "value": "uint28",
          "description": ""
        },
        {
          "label": "32 bits UInt (max 4 B)",
          "value": "uint32",
          "description": ""
        }
      ]
    },
    {
      "name": "notuint",
      "label": "Not UInt Attrib",
      "description": "Configure Not UInt Attrib for the operator",
      "type": "menu",
      "options": [
        {
          "label": "Not UInt Attrib",
          "value": "notuint",
          "description": ""
        },
        {
          "label": "4 bits UInt (max 16)",
          "value": "uint4",
          "description": ""
        },
        {
          "label": "8 bits UInt (max 256)",
          "value": "uint8",
          "description": ""
        },
        {
          "label": "12 bits UInt (max 4096)",
          "value": "uint12",
          "description": ""
        },
        {
          "label": "16 bits UInt (max 65,536)",
          "value": "uint16",
          "description": ""
        },
        {
          "label": "20 bits UInt (max 1 M)",
          "value": "uint20",
          "description": ""
        },
        {
          "label": "24 bits UInt (max 16 M)",
          "value": "uint24",
          "description": ""
        },
        {
          "label": "28 bits UInt (max 268 M)",
          "value": "uint28",
          "description": ""
        },
        {
          "label": "32 bits UInt (max 4 B)",
          "value": "uint32",
          "description": ""
        }
      ]
    },
    {
      "name": "pointseed",
      "label": "Seed",
      "description": "Configure Seed for the operator",
      "type": "string"
    },
    {
      "name": "pointprox",
      "label": "Point",
      "description": "Configure Point for the operator",
      "type": "menu",
      "options": [
        {
          "label": "Point",
          "value": "pointproxx",
          "description": ""
        },
        {
          "label": "Point",
          "value": "pointproxy",
          "description": ""
        },
        {
          "label": "Point",
          "value": "pointproxz",
          "description": ""
        }
      ]
    },
    {
      "name": "pointproxx",
      "label": "Point",
      "description": "Configure Point for the operator",
      "type": "menu",
      "options": [
        {
          "label": "Point",
          "value": "pointproxx",
          "description": ""
        },
        {
          "label": "Point",
          "value": "pointproxy",
          "description": ""
        },
        {
          "label": "Point",
          "value": "pointproxz",
          "description": ""
        }
      ]
    },
    {
      "name": "pointdir",
      "label": "Vector",
      "description": "Configure Vector for the operator",
      "type": "menu",
      "options": [
        {
          "label": "Vector",
          "value": "pointdirx",
          "description": ""
        },
        {
          "label": "Vector",
          "value": "pointdiry",
          "description": ""
        },
        {
          "label": "Vector",
          "value": "pointdirz",
          "description": ""
        }
      ]
    },
    {
      "name": "pointdirx",
      "label": "Vector",
      "description": "Configure Vector for the operator",
      "type": "menu",
      "options": [
        {
          "label": "Vector",
          "value": "pointdirx",
          "description": ""
        },
        {
          "label": "Vector",
          "value": "pointdiry",
          "description": ""
        },
        {
          "label": "Vector",
          "value": "pointdirz",
          "description": ""
        }
      ]
    },
    {
      "name": "pointobj",
      "label": "Object",
      "description": "Configure Object for the operator",
      "type": "string"
    },
    {
      "name": "pointrev",
      "label": "Reverse",
      "description": "Configure Reverse for the operator",
      "type": "string"
    },
    {
      "name": "pointshift",
      "label": "Shift",
      "description": "Configure Shift for the operator",
      "type": "string"
    },
    {
      "name": "pointoffset",
      "label": "Offset",
      "description": "Configure Offset for the operator",
      "type": "string"
    },
    {
      "name": "primmethod",
      "label": "Primitive Method",
      "description": "Configure Primitive Method for the operator",
      "type": "menu",
      "options": [
        {
          "label": "No Change",
          "value": "none",
          "description": ""
        },
        {
          "label": "By Point Attribute",
          "value": "byptattrib",
          "description": ""
        },
        {
          "label": "By Primitive Attribute",
          "value": "byprimattrib",
          "description": ""
        },
        {
          "label": "Random",
          "value": "seed",
          "description": ""
        },
        {
          "label": "Proximity to Point",
          "value": "prox",
          "description": ""
        },
        {
          "label": "Along Vector",
          "value": "vector",
          "description": ""
        },
        {
          "label": "Relative to Object Z-axis",
          "value": "object",
          "description": "axis object -"
        }
      ]
    },
    {
      "name": "primattr",
      "label": "Attribute",
      "description": "Configure Attribute for the operator",
      "type": "string"
    },
    {
      "name": "primuint",
      "label": "Attrib is UInt",
      "description": "Configure Attrib is UInt for the operator",
      "type": "menu",
      "options": [
        {
          "label": "Not UInt Attrib",
          "value": "notuint",
          "description": ""
        },
        {
          "label": "4 bits UInt (max 16)",
          "value": "uint4",
          "description": ""
        },
        {
          "label": "8 bits UInt (max 256)",
          "value": "uint8",
          "description": ""
        },
        {
          "label": "12 bits UInt (max 4096)",
          "value": "uint12",
          "description": ""
        },
        {
          "label": "16 bits UInt (max 65,536)",
          "value": "uint16",
          "description": ""
        },
        {
          "label": "20 bits UInt (max 1 M)",
          "value": "uint20",
          "description": ""
        },
        {
          "label": "24 bits UInt (max 16 M)",
          "value": "uint24",
          "description": ""
        },
        {
          "label": "28 bits UInt (max 268 M)",
          "value": "uint28",
          "description": ""
        },
        {
          "label": "32 bits UInt (max 4 B)",
          "value": "uint32",
          "description": ""
        }
      ]
    },
    {
      "name": "primseed",
      "label": "Seed",
      "description": "Configure Seed for the operator",
      "type": "string"
    },
    {
      "name": "primprox",
      "label": "Point",
      "description": "Configure Point for the operator",
      "type": "menu",
      "options": [
        {
          "label": "Point",
          "value": "primproxx",
          "description": ""
        },
        {
          "label": "Point",
          "value": "primproxy",
          "description": ""
        },
        {
          "label": "Point",
          "value": "primproxz",
          "description": ""
        }
      ]
    },
    {
      "name": "primproxx",
      "label": "Point",
      "description": "Configure Point for the operator",
      "type": "menu",
      "options": [
        {
          "label": "Point",
          "value": "primproxx",
          "description": ""
        },
        {
          "label": "Point",
          "value": "primproxy",
          "description": ""
        },
        {
          "label": "Point",
          "value": "primproxz",
          "description": ""
        }
      ]
    },
    {
      "name": "primdir",
      "label": "Vector",
      "description": "Configure Vector for the operator",
      "type": "menu",
      "options": [
        {
          "label": "Vector",
          "value": "primdirx",
          "description": ""
        },
        {
          "label": "Vector",
          "value": "primdiry",
          "description": ""
        },
        {
          "label": "Vector",
          "value": "primdirz",
          "description": ""
        }
      ]
    },
    {
      "name": "primdirx",
      "label": "Vector",
      "description": "Configure Vector for the operator",
      "type": "menu",
      "options": [
        {
          "label": "Vector",
          "value": "primdirx",
          "description": ""
        },
        {
          "label": "Vector",
          "value": "primdiry",
          "description": ""
        },
        {
          "label": "Vector",
          "value": "primdirz",
          "description": ""
        }
      ]
    },
    {
      "name": "primobj",
      "label": "Object",
      "description": "Configure Object for the operator",
      "type": "string"
    },
    {
      "name": "primrev",
      "label": "Reverse",
      "description": "Configure Reverse for the operator",
      "type": "string"
    },
    {
      "name": "primshift",
      "label": "Shift",
      "description": "Configure Shift for the operator",
      "type": "string"
    },
    {
      "name": "primoffset",
      "label": "Offset",
      "description": "Configure Offset for the operator",
      "type": "string"
    },
    {
      "name": "bypass",
      "label": "Bypass",
      "description": "Configure Bypass for the operator",
      "type": "string"
    },
    {
      "name": "delinputattrs",
      "label": "Delete Input Attributes",
      "description": "Configure Delete Input Attributes for the operator",
      "type": "string"
    },
    {
      "name": "parmcolorspace",
      "label": "Parameter Color Space",
      "description": "Configure Parameter Color Space for the operator",
      "type": "menu",
      "options": [
        {
          "label": "sRGB",
          "value": "srgb",
          "description": "sRGB color space, with sRGB transfer function. Considered an SDR color space with respect to Reference White."
        },
        {
          "label": "sRGB - Linear",
          "value": "srgblinear",
          "description": "Linear srgblinear - sRGB color space, with linear transfer function. Considered an SDR color space with respect to Reference White."
        },
        {
          "label": "Rec.601 (NTSC)",
          "value": "rec601ntsc",
          "description": "Rec.601 with NTSC primaries color space, with Rec.601 transfer function. Considered an SDR color space with respect to Reference White."
        },
        {
          "label": "Rec.709",
          "value": "rec709",
          "description": "Rec.709 color space, with Rec.709 (same as Rec.2020) transfer function. Considered an SDR color space with respect to Reference White."
        },
        {
          "label": "Rec.2020",
          "value": "rec2020",
          "description": "Rec.2020 color space, with Rec.2020 (same as Rec.709) transfer function. Considered an HDR color space with respect to Reference White."
        },
        {
          "label": "DCI-P3",
          "value": "dcip3",
          "description": "P3 dcip3 - DCI-P3 color space, with D65 white point and 2.6 gamma transfer function. Considered an HDR color space with respect to Reference White."
        },
        {
          "label": "DCI-P3 (D60)",
          "value": "dcip3d60",
          "description": "P3 (D60) dcip3d60 - DCI-P3 \"D60 sim\" color space, with D60 white point, and 2.6 gamma transfer function. Considered an HDR color space with respect to Reference White."
        },
        {
          "label": "Display-P3 (D65)",
          "value": "displayp3d65",
          "description": "P3 (D65) displayp3d65 - Display-P3 color space, with D65 white point, and sRGB gamma transfer function. Considered an HDR color space with respect to Reference White."
        },
        {
          "label": "ACES2065-1",
          "value": "aces2065-1",
          "description": "1 aces2065-1 - ACES 2065-1 (also known as ACES AP0) color space, with a linear gamma transfer function. Considered an HDR color space with respect to Reference White."
        },
        {
          "label": "ACEScg",
          "value": "acescg",
          "description": "ACEScg (also known as ACES AP1) color space, with a linear gamma transfer function. Considered an HDR color space with respect to Reference White."
        },
        {
          "label": "Passthrough",
          "value": "passthrough",
          "description": "When selected, the color values will be used as-is in the operation, without any modification or attempt to convert them into the Working Color Space."
        }
      ]
    },
    {
      "name": "srgb",
      "label": "sRGB",
      "description": "Configure sRGB for the operator",
      "type": "menu",
      "options": [
        {
          "label": "sRGB",
          "value": "srgb",
          "description": "sRGB color space, with sRGB transfer function. Considered an SDR color space with respect to Reference White."
        },
        {
          "label": "sRGB - Linear",
          "value": "srgblinear",
          "description": "Linear srgblinear - sRGB color space, with linear transfer function. Considered an SDR color space with respect to Reference White."
        },
        {
          "label": "Rec.601 (NTSC)",
          "value": "rec601ntsc",
          "description": "Rec.601 with NTSC primaries color space, with Rec.601 transfer function. Considered an SDR color space with respect to Reference White."
        },
        {
          "label": "Rec.709",
          "value": "rec709",
          "description": "Rec.709 color space, with Rec.709 (same as Rec.2020) transfer function. Considered an SDR color space with respect to Reference White."
        },
        {
          "label": "Rec.2020",
          "value": "rec2020",
          "description": "Rec.2020 color space, with Rec.2020 (same as Rec.709) transfer function. Considered an HDR color space with respect to Reference White."
        },
        {
          "label": "DCI-P3",
          "value": "dcip3",
          "description": "P3 dcip3 - DCI-P3 color space, with D65 white point and 2.6 gamma transfer function. Considered an HDR color space with respect to Reference White."
        },
        {
          "label": "DCI-P3 (D60)",
          "value": "dcip3d60",
          "description": "P3 (D60) dcip3d60 - DCI-P3 \"D60 sim\" color space, with D60 white point, and 2.6 gamma transfer function. Considered an HDR color space with respect to Reference White."
        },
        {
          "label": "Display-P3 (D65)",
          "value": "displayp3d65",
          "description": "P3 (D65) displayp3d65 - Display-P3 color space, with D65 white point, and sRGB gamma transfer function. Considered an HDR color space with respect to Reference White."
        },
        {
          "label": "ACES2065-1",
          "value": "aces2065-1",
          "description": "1 aces2065-1 - ACES 2065-1 (also known as ACES AP0) color space, with a linear gamma transfer function. Considered an HDR color space with respect to Reference White."
        },
        {
          "label": "ACEScg",
          "value": "acescg",
          "description": "ACEScg (also known as ACES AP1) color space, with a linear gamma transfer function. Considered an HDR color space with respect to Reference White."
        },
        {
          "label": "Passthrough",
          "value": "passthrough",
          "description": "When selected, the color values will be used as-is in the operation, without any modification or attempt to convert them into the Working Color Space."
        }
      ]
    },
    {
      "name": "parmreferencewhite",
      "label": "Parameter Reference White",
      "description": "Configure Parameter Reference White for the operator",
      "type": "menu",
      "options": [
        {
          "label": "Default For Color Space",
          "value": "default",
          "description": "Will use either the SDR or the HDR Reference White, based on the color space selected."
        },
        {
          "label": "Standard (SDR)",
          "value": "sdr",
          "description": "Will treat the Parameter Color Space as SDR for it's reference white value."
        },
        {
          "label": "High (HDR)",
          "value": "hdr",
          "description": "Will treat the Parameter Color Space as HDR for it's reference white value."
        }
      ]
    },
    {
      "name": "default",
      "label": "Default For Color Space",
      "description": "Configure Default For Color Space for the operator",
      "type": "menu",
      "options": [
        {
          "label": "Default For Color Space",
          "value": "default",
          "description": "Will use either the SDR or the HDR Reference White, based on the color space selected."
        },
        {
          "label": "Standard (SDR)",
          "value": "sdr",
          "description": "Will treat the Parameter Color Space as SDR for it's reference white value."
        },
        {
          "label": "High (HDR)",
          "value": "hdr",
          "description": "Will treat the Parameter Color Space as HDR for it's reference white value."
        }
      ]
    }
  ],
  "experimental": true,
  "sourceFile": "Experimental-Sort_POP.htm",
  "parsedAt": "2025-08-08T03:03:59.781Z"
}