Fundamentals of POPs
Curriculum Navigator:
If you’re viewing this page from the TouchDesigner curriculum explorer, you can use the buttons below to interact with this topic.
Overview:
POPs can be used to create and modify 3D geometry data that runs on GPU-accelerated graphics cards or chips. The core data for POPs are ‘points with attributes,’ that then form the basis for particle systems, point clouds, lines, polygons, and other 3D shapes.
Every POP contains a list of points which are made of Point Attributes. The most common attribute is Position or (P), which is the position in 3D space of the points. Other common attributes include Color (Color) and Normal (N). In addition to Point Attributes, POPs also contain Primitives and Vertices. Primitives types include:
- Point (1 point)
- Line (2-point)
- Line Strip (1 or more points)
- Triangle (3 points)
- Quad (4 points)
Each primitive has a list of vertices, where a vertex is an index into the point list. Note that both Primitives and Vertices can also have attributes.
In general, POPs can be thought of as a replacement of many SOP operations in TouchDesigner. POPs have a modernized workflow with enhanced speed due to running on the GPU as parallelized compute shaders.
References:
- POPs – Derivative Wiki
- Circle POP – Derivative Wiki
- POP to DAT – Derivative Wiki
