The Interactive & Immersive HQ

Delete SOP tricks in TouchDesigner

In today’s post we’ll take a look at the Delete SOP in TouchDesigner. This operator allows us to selectively remove unwanted geometry components from a geometry object. We will also visit some possible practical uses and basic examples. Let’s get to it!

Delete SOP

As a filter operator, it requires an input in order to have an effect on the chain. Now; this SOP makes it possible for us to delete points and primitives based on various criteria such as point or primitive number, a range of point or primitive numbers, a group of points or primitives, a region defined by a bounding volume, or by an object’s normal entity. 

Let’s explore the different parameters and possibilities of the Delete SOP with a few examples:

TouchDesigner DeleteSOP 3dGeometry

In the first page of the operator we have access to the general setup of the operator. This includes group naming, operation, entity, and geometry type parameters. We also have the option to remove unused points, and removing the geometry but keeping its points!

The setting of the previous parameters will have different effects based on the entity we decide to delete by.

Number Entity

In this example we are using a Box SOP and displaying its points and point numbers, since we will be selecting the option “Points” in the “operation” parameter.

TouchDesigner DeleteSOP 3dGeometry

Now, when deleting by Number entity there are three operations: deleting by pattern, deleting by range and deleting by expression.

Delete by Pattern

By using patterns like 0-27:2, which means “in the range of 0 to 27 delete every point every other number. Essentially cutting the point count in half. Here is the output of this pattern:

TouchDesigner DeleteSOP 3dGeometry

Now, look how different the output is when the pattern is 0-27:3

TouchDesigner DeleteSOP 3dGeometry

Here are some examples proposed by the Derivative Documentation:

If you want to deepen your pattern and expansion, please visit these links:

https://derivative.ca/UserGuide/Pattern_Matching

https://docs.derivative.ca/Pattern_Expansion

Delete by Range

With Start/End and Select_of_ parameters at our disposal we can create variations of ranges for the operator to delete within.

Here’s the transformation when using a Start:0 – End 27, and selecting 1 of 2. 

TouchDesigner DeleteSOP 3dGeometry

It yields the same result as the first example given in the Delete by Pattern section, right? Well, here’s the result of offsetting the start of this range by just one point:

TouchDesigner DeleteSOP 3dGeometry

Previz example using Delete SOP

Let’s imagine we have to start grounding an idea about an installation on the floor of a hall. With a simple pattern we turn a Box geometry into a hall simulator:

TouchDesigner DeleteSOP 3dGeometry

Further, by adding a sketch of our installation idea on the geometry we end up with a basic previz component,. Even though it’s a basic and rough outline, it opens the path to further development of our idea, and could possibly serve for use when pitching ideas to clients!

TouchDesigner DeleteSOP 3dGeometry
Previz Sketch by PvllSound

Get Our 7 Core TouchDesigner Templates, FREE

We’re making our 7 core project file templates available – for free.

These templates shed light into the most useful and sometimes obtuse features of TouchDesigner.

They’re designed to be immediately applicable for the complete TouchDesigner beginner, while also providing inspiration for the advanced user.

Bounding Volume

With this method, it is possible to use a box or a sphere to delete regions of the 3d space. It’s pretty straightforward but be mindful with its size and center parameters. 

For this example we’ll use a polygon geometry type and select primitives as our Entity in the Delete page.

TouchDesigner DeleteSOP 3dGeometry

Here is a box volume deleting from a Sphere SOP:

TouchDesigner DeleteSOP 3dGeometry

And, here is a sphere volume deleting from a Box SOP (all the internal points have been removed):

TouchDesigner DeleteSOP 3dGeometry

Remember we can also switch between deleting our selected entities or our excluded ones. For example here is a sphere not deleting the selection but the exclusion:

TouchDesigner DeleteSOP 3dGeometry

Particle example using Delete SOP

Let’s imagine we have a Grid SOP generating a particle stream in the direction of our camera. 

TouchDesigner DeleteSOP 3dGeometry

By applying a box volume deletion to the middle of the grid we can avoid having particles moving directly into the position of our camera. This is a way of opening some space for the camera view to not be intersected. This is a technique I used for creating the following scene:

TouchDesigner DeleteSOP 3dGeometry
Project by PvllSound

Final thoughts

  • Be mindful of the geometry type you are using. In some cases the operator needs the right settings to perform. For instance, it wouldn’t delete separate primitives of a surface if the geometry type were set to Mesh. So, In this case the Polygon type would be a better option to use.
  • Take the time to explore “random” patterns and ranges. You’ll be surprised at the possibilities that start to surface with a bit of research in this direction.

I hope this gives you some insight into the uses and functions of the Delete SOP in TouchDesigner. Please, share with us any questions or works derived from this operator overview. Until next time!