Tag Archives: ramp

Nov 12 2014

Ramp TOP tutorial.

The Ramp TOP. TouchDesigner 088. 2014.
The Ramp TOP is one of the most widely used Texture Operators.

1
00:00:00,900 –> 00:00:03,267
Let’s examine the ramp TOP.

2
00:00:03,267 –> 00:00:09,333
I’ve set up 5 example networks,
and let’s take a look at the
first one.

3
00:00:09,333 –> 00:00:18,667
The ramp TOP is a powerful
operator that creates gradients,
or ramps, of four distinct types
or styles.

4
00:00:18,667 –> 00:00:22,633
Here’s a ramp TOP with default
settings.

5
00:00:22,633 –> 00:00:28,800
The ramp is comprised of an
arbitrary series of tabs, or
notches.

6
00:00:28,800 –> 00:00:35,433
Each tab has a position and an
RGBA value.

7
00:00:35,433 –> 00:00:41,267
By left clicking in the value
field, I can add new tabs.

8
00:00:41,267 –> 00:00:48,933
Then I adjust the hue,
saturation, and value sliders to
create the colors I desire.

9
00:00:48,933 –> 00:00:58,033
The four types of gradient
shapes are vertical, horizontal,
radial, and circular.

10
00:00:58,033 –> 00:01:05,767
Now let’s examine another ramp
TOP parameter, the “Interpolate
Notches” setting.

11
00:01:05,767 –> 00:01:15,633
Our first example used a linear
interpolation method, which
creates a smooth blend across
the ramp tabs, or keys.

12
00:01:15,633 –> 00:01:25,200
In this example, we use the step
method, which creates discrete
hard-edged steps from value to
value.

13
00:01:25,200 –> 00:01:34,367
The ramp TOP uses a specially
formatted table DAT to supply
it’s ramp key settings.

14
00:01:34,367 –> 00:01:43,833
By changing values in the cells,
we can directly manipulate the
ramp TOP without using the
parameters panel.

15
00:01:43,833 –> 00:01:55,933
I’ll adjust the positional steps
between my 4 key entries to
specific positions, creating
exactly 4 subdivisions of 25%
each.

16
00:01:55,933 –> 00:01:58,433

17
00:01:58,433 –> 00:02:04,333
Next, I’ll adjust the RGBA
values to very specific numbers.

18
00:02:04,333 –> 00:02:10,067
This method allows us to create
extremely accurate color fields.

19
00:02:10,067 –> 00:02:14,233

20
00:02:14,233 –> 00:02:22,033
This network is designed to help
us visualize the “Extend”
parameters of the ramp TOP.

21
00:02:22,033 –> 00:02:27,900
We’re using a slider to animate
the “Phase” parameter of the
ramp TOP.

22
00:02:27,900 –> 00:02:35,367
As I move the slider from left
to right, watch the colour field
in the parameters panel.

23
00:02:35,367 –> 00:02:42,600
You’ll see we are offsetting the
reference points that are the
beginning and end of the ramp.

24
00:02:42,600 –> 00:02:54,367
The gradient created by the ramp
TOP has a beginning and an end,
but we can move the ramp in 2D
space past its natural edges.

25
00:02:54,367 –> 00:03:01,733
Therefore, we need to decide how
we should fill the extra space
in the 2D rendering.

26
00:03:01,733 –> 00:03:05,400
This is the function of the
“Extend” parameter.

27
00:03:05,400 –> 00:03:08,367
I’ll set the extend to “Hold”.

28
00:03:08,367 –> 00:03:14,267
This condition will cause the
ramp TOP to repeat the first and
last values forever.

29
00:03:14,267 –> 00:03:26,967
When I set the extend to “Zero”,
the ramp TOP renders any value
out of the initial ramp value
range as a zero RGBA value.

30
00:03:26,967 –> 00:03:31,600
The other two extend options are
“Mirror” and “Repeat”,

31
00:03:31,600 –> 00:03:43,100
and depending on your
application, using and mastering
the extend parameters can help
you create amazing effects with
the ramp TOP.

32
00:03:43,100 –> 00:03:44,200

33
00:03:44,200 –> 00:03:51,433
This example Illustrates a
simple way to visualize time
with a clock style graphic.

34
00:03:51,433 –> 00:04:04,067
The network uses a clock CHOP to
generate an increasing value
each millisecond, and ends with
a ramp TOP of radial type.

35
00:04:04,067 –> 00:04:11,700
The “Interpolate Notches”
parameter is set to step, and
we use 3 key values.

36
00:04:11,700 –> 00:04:20,900
The position of the middle key
value moves from 1 to 0 over the
course of each second.

37
00:04:20,900 –> 00:04:33,533
I’ve set the “Phase” parameter
to .25, because the ramp TOP
defaults to placing the start of
the radial ramp at the 3 o’clock
position.

38
00:04:33,533 –> 00:04:43,733
The clock CHOP generates the
milliseconds, then we use a math
CHOP to re-range, or normalize
the values.

39
00:04:43,733 –> 00:04:48,467
Next, we use a chop execute DAT.

40
00:04:48,467 –> 00:04:57,567
This is a DAT operator whose
contents can be set to run when
the state of a specified CHOP
changes.

41
00:04:57,567 –> 00:05:02,800
In this case, a single line
Python snippet will run.

42
00:05:02,800 –> 00:05:08,667
I’ve commented the Python script
to show exactly how the code
works.

43
00:05:08,667 –> 00:05:20,600
We extract the normalized value
from the math CHOP, and place it
in the appropriate cell of the
ramp’s table DAT.

44
00:05:20,600 –> 00:05:29,233
As with many techniques in Touch
Designer, there are several
possible ways to achieve the
same results.

45
00:05:29,233 –> 00:05:31,800

46
00:05:31,800 –> 00:05:44,867
In this example, we will create
a rudimentary audio visualizer
using a similar technique as our
last example.

47
00:05:44,867 –> 00:05:46,867
We start with an audio file in
CHOP, then we normalize the
value range with a math CHOP,
and then apply the value to the
middle key of a 3 step ramp TOP.

Posted In
Tagged
Nov 11 2014

Box SOP tutorial.

The Box SOP. TouchDesigner 088. 2014.
The Box SOP is a fundamental and very powerful Surface Operator.

1
00:00:02,000 –> 00:00:08,000
Here’s a demo of the box SOP.

2
00:00:08,000 –> 00:00:13,500
If we click the viewer active
button on the bottom right of
the operator.

3
00:00:13,500 –> 00:00:17,800
You’ll see that since this is a
three-dimensional operator,

4
00:00:17,800 –> 00:00:22,000
we can use the left mouse button
and move to rotate.

5
00:00:22,000 –> 00:00:25,200
We use the middle mouse button
and drag to zoom.

6
00:00:25,200 –> 00:00:29,033
Right click will bring up a
context menu.

7
00:00:29,033 –> 00:00:30,667

8
00:00:30,667 –> 00:00:36,033
We can select orthographic view
ports , perspective viewport
option.

9
00:00:36,033 –> 00:00:44,133

10
00:00:44,133 –> 00:00:47,600
Right click and drag to move.

11
00:00:47,600 –> 00:00:49,600

12
00:00:49,600 –> 00:00:54,500
Here are the box parameters.

13
00:00:54,500 –> 00:00:59,200
Size in Touch Designer units.

14
00:00:59,200 –> 00:01:04,267
Here’s a simple network showing
the application of

15
00:01:04,267 –> 00:01:07,067
a 2 dimensional map to a
material.

16
00:01:07,067 –> 00:01:10,300
A texture operator- in this case
the ramp.

17
00:01:10,300 –> 00:01:14,233
Applied to a material which is
then applied to the SOP

18
00:01:14,233 –> 00:01:16,633
using the material SOP.

19
00:01:16,633 –> 00:01:17,967

20
00:01:17,967 –> 00:01:23,633
In the box SOP parameters we
have options for texture
coordinate generation.

21
00:01:23,633 –> 00:01:33,033

22
00:01:33,033 –> 00:01:34,467
Normal computation.

23
00:01:34,467 –> 00:01:39,533
As you can see here we are not
computing normals so we have no
shading.

24
00:01:39,533 –> 00:01:45,500

25
00:01:45,500 –> 00:01:51,533
Right click in the active
viewport to pull up the context
menu.

26
00:01:51,533 –> 00:01:54,267
3d navigation.

27
00:01:54,267 –> 00:01:59,100

28
00:01:59,100 –> 00:02:01,467
We have another context menu,

29
00:02:01,467 –> 00:02:04,833
the display options.

30
00:02:04,833 –> 00:02:07,033

31
00:02:07,033 –> 00:02:11,733
Here we have options for how we
can identify and view our 3d
points.

32
00:02:11,733 –> 00:02:18,300

33
00:02:18,300 –> 00:02:24,033
We can view our point
identifications and locations in
3d.

34
00:02:24,033 –> 00:02:26,233

35
00:02:26,233 –> 00:02:35,333
Middle mouse and hold for
information about any node in a
pop up.

36
00:02:35,333 –> 00:02:40,100
As you can see here for surface
operators we will get
information

37
00:02:40,100 –> 00:02:44,567
about the number of points, the
location of points.

38
00:02:44,567 –> 00:02:46,000

39
00:02:46,000 –> 00:02:50,000
I’ve consolidated the corner
points on the Box SOP.

40
00:02:50,000 –> 00:02:57,767
Now we have a total of 8 points
that are joined instead of 24
points.

41
00:02:57,767 –> 00:03:01,067

42
00:03:01,067 –> 00:03:04,100
Another simple example network.

43
00:03:04,100 –> 00:03:09,267
Box SOPS can take an input.

44
00:03:09,267 –> 00:03:14,667
By using an input the box SOP
will automatically

45
00:03:14,667 –> 00:03:21,433
scale itself to the bounding box
of the input geometry.

46
00:03:21,433 –> 00:03:27,200
We have a sphere that is then
deformed using a noise SOP

47
00:03:27,200 –> 00:03:29,300
and animated.

48
00:03:29,300 –> 00:03:31,067
I’ll turn off the animation.

49
00:03:31,067 –> 00:03:38,767
Our box SOP has become a
bounding box for the size of the
input geometry

50
00:03:38,767 –> 00:03:41,633

51
00:03:41,633 –> 00:03:45,333
I’ll animate the noise SOP
again.

52
00:03:45,333 –> 00:03:52,633
As you can see, the box SOP
will adjust in realtime

53
00:03:52,633 –> 00:03:58,333
to the scale of the incoming
geometry.

54
00:03:58,333 –> 00:04:00,333

Posted In
Tagged