Experimental:Noise POP

From Derivative
Jump to navigation Jump to search

Summary
[edit]

The Noise POP affects every point with a noise field, which can be thought of as smooth, randomly-rising and falling values in 3D space.

By default the Noise POP moves every point's P attribute a distance in X, Y and Z based on the point's position in the noise space. You can visualize the field by sending a Grid POP into a Noise POP. Turn on the toggle parameter Compute Point Normals to see proper shading.

The Type menu lets you choose between Simplex, Perlin in 2-4 dimensions. Simplex has the least grid-like field appearance. The Period determines the approximate distance between two peaks in each dimension (if you set Harmonics to 0).

Harmonics adds more detail by adding to the field another half-period noise field, and recursively for the number of "harmonics". Harmonic Spread is the ratio of period of one applied harmonic to the next. Furthermore the entire noise field can be translated, rotated or scaled via the Transform page.

The noise field value averages 0 in X, Y and Z. The Amplitude and Exponent parameters affect the magnitude of the resulting value, and the Offset is added to the resulting noise values.

Output attributes - On the Output page, you can output and name the raw noise values to an attribute named Noise by default. Because the Noise Size menu parameter on the Noise page defaults to Scalar, the Noise attribute is a single scalar float.

If the Noise Size menu parameter is set to Vector, the Noise attribute is a 3-component float, or 4 if the Parameter Size is set to 4.

On the Output page you can also output several math functions that are derived from the noise field, like Gradient and Curl.

The Gradient is the rate-of-change of a scalar noise around each point in X Y and Z (aka the "first order derivative") and is a float3 named NoiseGradient

Curl is an expression of how much the slope twists around each point. A 3D Curl is a float3 named NoiseCurl. A 2D Curl is float2 named NoiseCurl2

If Combine Operation is Add (default) or Multiply, a float3 noise is always applied to P, even though the noise may be set to scalar. With Combine Attribute Scope, the noise can be applied to any scalar or vector attribute (one component to 4 components), and output to any new or existing attribute.

With Combine Entity you can instead combine the NoiseCurl with any attribute.

With Noise Size set to Vector, changing the Parameters Size to 2, 3 or 4 gives you individual parameter controls of Amplitude, Exponent and Offset per X Y Z W dimension.

To animate the noise, put something like absTime.seconds in any of the Translate or Translate 4D parameters on the Transform page.

Per-point mapping of parameters - The Noise POP has a Map page, which allows every point to get a different value for Amplitude, Offset, Exponent, Period, Harmonic Spread and Harmonic Gain parameters. In this mechanism, a separate attribute in the input contains values that override (or add to / multiply by) the parameter value.

PythonIcon.pngnoisePOP_Class


Parameters - Noise Page

Noise Lookup Attribute noiselookupattrib -

Type type - -
  • Perlin 2D (GPU) perlin2d -
  • Perlin 3D (GPU) perlin3d -
  • Perlin 4D (GPU) perlin4d -
  • Simplex 2D (GPU) simplex2d -
  • Simplex 3D (GPU) simplex3d -
  • Simplex 4D (GPU) simplex4d -

Single Noise Component singlenoisecomp -

Seed seed -

Period period -

Harmonics harmon -

Harmonic Spread spread -

Harmonic Gain gain -

Parameter Size parsize - -
  • 1 1 -
  • 2 2 -
  • 3 3 -
  • 4 4 -

Amplitude amp -

Exponent exp -

Offset offset -

Attribute Class attrclass - -
  • Point point -
  • Vertex vertex -
  • Primitive primitive -

Group group -


Parameters - Transform Page

Transform Order xord - -
  • Scale Rotate Translate srt -
  • Scale Translate Rotate str -
  • Rotate Scale Translate rst -
  • Rotate Translate Scale rts -
  • Translate Scale Rotate tsr -
  • Translate Rotate Scale trs -

Rotate Order rord - -
  • Rx Ry Rz xyz -
  • Rx Rz Ry xzy -
  • Ry Rx Rz yxz -
  • Ry Rz Rx yzx -
  • Rz Rx Ry zxy -
  • Rz Ry Rx zyx -

Translate t - -
  • Translate tx -
  • Translate ty -
  • Translate tz -

Rotate r - -
  • Rotate rx -
  • Rotate ry -
  • Rotate rz -

Scale s - -
  • Scale sx -
  • Scale sy -
  • Scale sz -

Pivot p - -
  • Pivot px -
  • Pivot py -
  • Pivot pz -

Translate 4D t4d -


Parameters - Output Page

Simulation Noise simulationnoise - -
  • None none -
  • Curl 2D curl2d -
  • Curl 3D curl3d -

Combine Operation combineop - -
  • Set set -
  • Add add -
  • Multiply mult -
  • Translate along Normal translatealongnormal -

Combine Attribute Scope combineattrscope -

Output Attribute Scope outputattrscope - -
  • P P -
  • N N -
  • Color Color -
  • Color.i012 Color.i012 -
  • Tex Tex -
  • PointScale PointScale -
  • LineWidth LineWidth -


Override Automatic Attribute overrideautoattr -

New Attribute Type newattrtype - -
  • float float -
  • double double -
  • int int -
  • uint uint -
  • dir dir -
  • dbl dir ddir -

New Attribute Number of Components attrnumcomps - -
  • 1 1 -
  • 2 2 -
  • 3 3 -
  • 4 4 -

New Attribute Default Value newattrdefaultval - -
  • New Attribute Default Value newattrdefaultval1 -
  • New Attribute Default Value newattrdefaultval2 -
  • New Attribute Default Value newattrdefaultval3 -
  • New Attribute Default Value newattrdefaultval4 -

Derivative derivative -

Derivative Output Attribute Scope derivoutputattscope - -
  • P P -
  • N N -
  • Color Color -
  • Color.i012 Color.i012 -
  • Tex Tex -
  • PointScale PointScale -
  • LineWidth LineWidth -


Override Automatic Attribute derivoverrideautoattr -

New Attribute Type derivnewattrtype - -
  • float float -
  • double double -
  • int int -
  • uint uint -
  • dir dir -
  • dbl dir ddir -

New Attribute Number of Components derivattribnumcomps - -
  • 1 1 -
  • 2 2 -
  • 3 3 -
  • 4 4 -

New Attribute Default Value derivnewattribdefaultval - -
  • New Attribute Default Value derivnewattribdefaultval1 -
  • New Attribute Default Value derivnewattribdefaultval2 -
  • New Attribute Default Value derivnewattribdefaultval3 -
  • New Attribute Default Value derivnewattribdefaultval4 -

Compute Point Normals computenormals -

Mode mode - - Pick between Performance vs Quality noise. Performance noise is the existing TD noise. Quality noise reduces certain artifacts and axis alignment issues with the existing noise at the cost of speed. Currently only enabled for Simplex Noise type.
  • Performance performance - Performant noise.
  • Quality quality - Quality noise.


Parameters - Map Page

Mapping map -
OP map0op -

Element map0element -

Parameter map0parm - -
  • period (Period) period -
  • offset (Offset) offset -
  • amp (Amplitude) amp -
  • exp (Exponent) exp -
  • spread (Harmonic Spread) spread -
  • gain (Harmonic Gain) gain -

Combine Operation map0combineop - -
  • Set set -
  • Multiply mult -
  • Add add -


Parameters - Common Page

Bypass bypass -

Delete Input Attributes delinputattrs -

Parameter Color Space parmcolorspace - - Controls how all color parameters on this node are interpreted. The color values as treated as being in the selected color space, and are converted to the Working Color Space before they are used as part of the node's operation. Note that this does not change the color space of the node itself, as that is always in the Working Color Space.
  • sRGB srgb - sRGB color space, with sRGB transfer function. Considered an SDR color space with respect to Reference White.


  • sRGB - Linear srgblinear - sRGB color space, with linear transfer function. Considered an SDR color space with respect to Reference White.


  • Rec.601 (NTSC) rec601ntsc - Rec.601 with NTSC primaries color space, with Rec.601 transfer function. Considered an SDR color space with respect to Reference White.


  • Rec.709 rec709 - Rec.709 color space, with Rec.709 (same as Rec.2020) transfer function. Considered an SDR color space with respect to Reference White.


  • Rec.2020 rec2020 - Rec.2020 color space, with Rec.2020 (same as Rec.709) transfer function. Considered an HDR color space with respect to Reference White.


  • DCI-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.


  • DCI-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.


  • Display-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.


  • ACES2065-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.


  • ACEScg acescg - ACEScg (also known as ACES AP1) color space, with a linear gamma transfer function. Considered an HDR color space with respect to Reference White.


  • Passthrough passthrough - 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.

Parameter Reference White parmreferencewhite - - When converting a parameter color value to the Working Color Space, this controls how it should be treated with respect to Reference White. If the Working Color Space is the same Reference White, then no adjustment is done. If they are different, then the Reference White level (brightness) of this color will be adjusted to the range expected by the Working Color Space. For example if the project is set to have a SDR Reference White of 120 nits, and the HDR Reference White is 80 nits, then a color of (1, 1, 1), which is 120 nits in the SDR color space, will be converted to be (1.5, 1.5, 1.5), which is 120 nits still in the HDR Working Color Space.
  • Default For Color Space default - Will use either the SDR or the HDR Reference White, based on the color space selected.


  • Standard (SDR) sdr - Will treat the Parameter Color Space as SDR for it's reference white value.


  • High (HDR) hdr - Will treat the Parameter Color Space as HDR for it's reference white value.

Operator Inputs

  • Input 0: -


Info CHOP Channels

Extra Information for the Noise POP can be accessed via an Info CHOP.

Common POP Info Channels

Common Operator Info Channels

  • total_cooks - Number of times the operator has cooked since the process started.
  • cook_time - Duration of the last cook in milliseconds.
  • cook_frame - Frame number when this operator was last cooked relative to the component timeline.
  • cook_abs_frame - Frame number when this operator was last cooked relative to the absolute time.
  • cook_start_time - Time in milliseconds at which the operator started cooking in the frame it was cooked.
  • cook_end_time - Time in milliseconds at which the operator finished cooking in the frame it was cooked.
  • cooked_this_frame - 1 if operator was cooked this frame.
  • warnings - Number of warnings in this operator if any.
  • errors - Number of errors in this operator if any.


TouchDesigner Build:

POPs
Experimental:Accumulate • Experimental:Analyze • Experimental:Attribute Combine • Experimental:Attribute Convert • Experimental:Attribute • Experimental:Blend • Experimental:Box • Experimental:Cache Blend • Experimental:Cache • Experimental:Cache Select • Experimental:CHOP to • Experimental:Circle • Experimental:Convert • Experimental:Copy • Experimental:CPlusPlus • Experimental:Curve • Experimental:DAT to • Experimental:Delete • Experimental:Dimension • Experimental:DMX Fixture • Experimental:DMX Out • Experimental:Extrude • Experimental:Facet • Experimental:Feedback • Experimental:Field • Experimental:File In • Experimental:Force • Experimental:GLSL Advanced • Experimental:GLSL Copy • Experimental:GLSL Create • Experimental:GLSL • Experimental:GLSL Select • Experimental:Grid • Experimental:Group • Experimental:Histogram • Experimental:Import Select • Experimental:In • Experimental:Limit • Experimental:Line Break • Experimental:Line Divide • Experimental:Line Metrics • Experimental:Line • Experimental:Line Smooth • Experimental:Line Thick • Experimental:Lookup Attribute • Experimental:Lookup Channel • Experimental:Lookup Texture • Experimental:Math Combine • Experimental:Math Mix • Experimental:Math • Experimental:Merge • Experimental:Neighbor • Experimental:Noise • Experimental:Normal • Experimental:Normalize • Experimental:Null • Experimental:Out • Experimental:Particle • Experimental:Pattern • Experimental:Phaser • Experimental:Point File In • Experimental:Point Generator • Experimental:Point • Experimental:Points, Vertices and Primitives in s • Experimental:Polygonize • Experimental:Primitive • Experimental:Projection • Experimental:Proximity • Experimental:Quantize • Experimental:Random • Experimental:Ray • Experimental:Rectangle • Experimental:ReRange • Experimental:Revolve • Experimental:Select • Experimental:Skin Deform • Experimental:Skin • Experimental:SOP to • Experimental:Sort • Experimental:Sphere • Experimental:Sprinkle • Experimental:Subdivide • Experimental:Switch • Experimental:Texture Map • Experimental:TOP to • Experimental:Topology • Experimental:Torus • Experimental:Trail • Experimental:Transform • Experimental:Trig • Experimental:Tube • Experimental:Twist