# Node input.....?

#### UnCommonGrafx

This is a wonderful thread. I would put in a "More!" request.
Robert

#### Thomas Leitner

##### Member
Where is the public outcry that parking lots almost never look like this?

Addentum to Input Node Example 12:

In fact, you can easily create the usually double rows.
If we take a closer look at the instance ID, we see that all even and odd instances form a row. OD_Instance IDs from the OD_Tools shows the instance IDs:

We can use this to offset every second instance by 3.4 meters on the Z axis. A gradient with the value 0 for the first key (position 0 = first instance ID) and a value 340 for the second key (position 1 = second instance ID) is set to repeat. This alternates between moving one car and not moving another.

I also added a random offset so that it is not so regular.
This gradient uses the Fixed Random output as input, has two keys and is switched to Linear.

With this method, you can also easily arrange all the parking spaces at an angle.

Enough with cars....

ciao
Thomas

p.s.: Mini Cooper is a free model from www.archibase.net

Last edited:

#### raymondtrace

##### Founding member
Where is the public outcry that parking lots almost never look like this? ...

I assure you there was outrage over this image. This representation of a complete breakdown of society gave me nightmares.

#### Thomas Leitner

##### Member
I assure you there was outrage over this image. This representation of a complete breakdown of society gave me nightmares.

Sorry!
I assure you, I had an even worse version that I didn't want anyone to see.

ciao
Thomas

#### Thomas Leitner

##### Member
For those of you who already know this example from this thread, jump right to my Note - maybe some don't know this yet. For the purpose of completeness, this example should not be missing.

Input Node Example 13

Output used: World Position and Geometric Normal

Description: Outputs the location of the intersection in world coordinates as a vector (World Position). And the un-interpolated geometric normal as a vector (Geometric Normal).
In this example, the World Position gives us the spot position and the Geometric Normal gives us the direction for the Ray Trace node.

After breakig a porcelain statue with bullet dynamics we are challenged with the following problem.
When rendering materials like porcelain, which absolutely need sub surface scattering you can see the fracture lines shining through before breaking.

You can easily replace the object with an unbroken one for rendering before breaking, but once the collapse has started, this won't work any more. Larger pieces that have not yet broken show the fracture lines too.
This setup is used for the surface of the fracture edges. We want to make it invisible while the object is still whole. For this we use the output of the gradient as a clip map.

The node setup and the result:

Note: As some may know Lightwave has its own solution for this problem: Dynamics Part Info provides an Internal Polygon output that can be plugged into the Clip input of the Surface Node Editor.

So what's the point of another homemade solution?
Unfortunately, Dynamics Part Info only works for dynamic parts (as the name implies), which means that if you bake the bullet simulation as an mdd, Dynamics Part Info understandably no longer works.

Have fun.
ciao
Thomas

#### erikals

go some feedback from Bryphi and Mike Green
haven't looked into Mike's trick yet.

#### Thomas Leitner

##### Member
go some feedback from Bryphi and Mike Green
haven't looked into Mike's trick yet.

View attachment 150665

Hi Erik, I'm replying here so that the "Input Node" thread doesn't get too fragmented.
Of course, everyone can and should continue to write something here! Questions and suggestions.

ciao
Thomas

Last edited:

#### Thomas Leitner

##### Member
This example describes a technique for the instance generator node editor. Mark Warner shows this method in a new tutorial on Youtube: LightWave 3d: Join the Dots Part 1
This and his other tutorials should definitely be watched.

Input Node Example 14

Output used: Base Position

Description: Outputs the base position of the instance as an Vector. We use this to measure the distance to another object and scale the instanced object to have exactly the length of the distance. This allows you to create instanced connections between two objects that also scale properly in the animation. In this case springs.

Note: 0% stretch in instance generator means that the spring has its original size. For our purposes, I subtract its length from the calculated distance and connect it with the stretch input.

Finally, I set the rotation mode of the instances to Target and select the other object as Target Item.

Some more notes: To be able to stretch the spring without also distorting the cross section of the wire, I used this technique: In Modeler I created a 2 point polygon spiral. This 2 point polygon spiral can now be stretched as you like.
For rendering, I set the Particle/Line Thickness to a negative value (Object Properties > Primitive tab > Edges tab). Using a negative value for the thickness of a line causes them to be rendered as tube. The negative thickness is used as a radius in meters. The surface is created like a normal surface in the Surface Editor.

I'm only describing part of Mark Warner's tutorial here, so be sure to check it out. It's really a pleasure to watch his videos.

ciao
Thomas

Last edited:

Very Nice !

#### lardbros

##### Not so newbie member
Amazing Thomas! I never fail to watch Mark's brilliant videos either.
Thanks again for taking the time to do these tutorials

#### Thomas Leitner

##### Member
Input Node Example 15

Output used: Object Position

Description: Outputs the location of the intersection in local coordinates as a vector. In this example I use it to colorize the individual tiles (parts) of a mosaic in a single color using an image texture as source. Each tile should be one color.

If you use an image as a color map, the individual tiles of the mosaic will be multicolored. But most real mosaic consists of single colored tiles.

A close up to see what is going on:

Here is the node setup: We add the position of the part center to the position of each spot and use it to move the texture for each spot (think about it before you go to sleep...).

Furthermore, we can use this setup to create a custom roughness value for each tile. Again our node setup controls the position of a texture, this time of a turbulence texture.

Note: I use Part Move from DPKit here to rotate each tile a little bit. This is important for a real look, because in real life the tiles never lie completely flat. By the way, this also applies to windows of a house, especially skyscrapers. They should never be perfectly rotated in order to break up the reflection.

This setup could be great for motion graphics that use parts.

Have fun.
ciao
Thomas

p.s.: The fresco from Pompeii (Italy) portrays Sappho, a Greek poetess.

#### Sensei

##### TrueArt Support
@Thomas Leitner

Show how to quantize by hand
dst = ( (integer) ( src * value ) ) / value
eventually
dst = src - modulo( src, value )

You don't need to make tiles hundred/thousands polygons. Everything can be with one big single poly + nodal setup.

#### lardbros

##### Not so newbie member
Beautiful stuff Thomas! Totally loving this thread, it's the best thing to have happened in this forum for a long while
Thank you

#### Markc

##### ack ack
Thomas knows far too much about the input node, it should be called the TL node.....