Nœud Math
Le nœud Math effectue des opérations mathématiques.
Inputs
The inputs of the node are dynamic. Some inputs are only available in certain operations. For instance, the Addend input is only available in the Multiply Add operator.
- Value
Valeur d’entrée. Les fonctions trigonométriques lisent cette valeur en radians.
- Addend
Entrer la valeur Addend.
- Base
Entrer la valeur Base.
- Exponent
Entrer la valeur Exponent.
- Epsilon
Entrer la valeur Epsilon.
- Distance
Entrer la valeur Distance.
- Min
Entrer la valeur Minimum.
- Max
Entrer la valeur Maximum.
- Increment
Entrer la valeur Increment.
- Scale
Entrer la valeur Scale.
- Degrees
Entrer la valeur Degrees.
- Radians
Entrer la valeur Radians.
Properties
- Operation
L’opérateur mathématique à appliquer aux valeurs d’entrée :
- Fonctions
- Add:
La somme des deux valeurs.
- Subtract:
La différence entre les deux valeurs.
- Multiply:
Le produit des deux valeurs.
- Divide:
La division de la première valeur par la seconde valeur.
- Multiply Add:
La somme du produit des deux valeurs avec Addend.
- Power:
La Base élevée à la puissance de Exponent.
- Logarithm:
Le log de la valeur avec Base comme sa base.
- Square Root:
La racine carrée de la valeur.
- Inverse Square Root:
Un divisé par la racine carrée de la valeur.
- Absolute:
La valeur d’entrée est lue sans tenir compte de son signe. Cela transforme les valeurs négatives en valeurs positives.
- Exponent:
Élève le nombre de Euler à la puissance de la valeur.
- Comparison
- Minimum:
Met en sortie la plus petite des valeurs d’entrée.
- Maximum:
Met en sortie la plus grande des valeurs d’entrée.
- Less Than:
Met en sortie 1.0 si la première valeur est inférieure à la seconde. Sinon, la sortie est de 0.0.
- Greater Than:
Met en sortie 1.0 si la première valeur est supérieure à la seconde. Sinon, la sortie est de 0.0.
- Sign:
Extrait le signe de la valeur d’entrée. Tous les nombres positifs mettent en sortie 1.0. Tous les nombres négatifs mettent en sortie -1.0. Et 0.0 met en sortie 0.0.
- Compare:
Met en sortie 1.0 si la différence entre les deux valeurs d’entrée est inférieure ou égale à Epsilon.
- Smooth Minimum:
- Smooth Maximum:
- Rounding
- Round:
Arrondir la valeur d’entrée à l’entier le plus proche.
- Floor:
Arrondir la valeur d’entrée à l’entier inférieur le plus proche.
- Ceil:
Arrondir la valeur d’entrée à l’entier supérieur le plus proche.
- Truncate:
Met en sortie la partie entière de value.
- Fraction:
Renvoie la partie fractionnaire de value.
- Modulo:
Met en sortie le reste de la division de la première par la seconde valeur.
- Wrap:
Donne une valeur entre Min et Max basée sur la différence absolue entre la valeur d’entrée et le multiple entier le plus proche de Max inférieur à la valeur.
- Snap:
Arrondir la valeur d’entrée au multiple entier le plus proche de Increment.
- Ping-pong:
The output value is moved between 0.0 and the Scale based on the input value.
- Trigonométrie
- Sine:
Le Sinus de la valeur d’entrée.
- Cosine:
Le Cosinus de la valeur d’entrée.
- Tangent:
La Tangente de la valeur d’entrée.
- Arcsine:
L'Arcsinus de la valeur d’entrée.
- Arccosine:
L'Arccosinus de la valeur d’entrée.
- Arctangent:
L'Arctangente de la valeur d’entrée.
- Arctan2:
Met en sortie la Tangente Inverse de la première valeur divisée par la seconde valeur mesurée en radians.
- Hyperbolic Sine:
Le Sinus hyperbolique de la valeur d’entrée.
- Hyperbolic Cosine:
Le Cosinus hyperbolique de la valeur d’entrée.
- Hyperbolic Tangent:
La Tangente hyperbolique de la valeur d’entrée.
- Conversion
- To Radians:
L’entrée en degrés est convertie en radians.
- To Degrees:
L’entrée en radians est convertie en degrés.
- Clamp
Borne la sortie dans l’intervalle (0.0 à 1.0). Voir Clamp.
Outputs
- Value
Sortie de valeur numérique.
Exemples
Z-Mask manuel
This example has one scene input by the top Render Layers node, which has a cube that is about 10 units from the camera. The bottom Render Layers node inputs a scene with a plane that covers the left half of the view and is 7 units from the camera. Both are fed through their respective Map Value nodes to divide the Z-buffer by 20 (multiply by 0.05, as shown in the Size field) and clamped to be a min/max of 0.0/1.0 respectively.
For the minimum function, the node selects those Z values where the corresponding pixel is closer to the camera; so it chooses the Z values for the plane and part of the cube. The background has an infinite Z value, so it is clamped to 1.0 (shown as white). In the maximum example, the Z values of the cube are greater than the plane, so they are chosen for the left side, but the plane Render Layers Z are infinite (mapped to 1.0) for the right side, so they are chosen.
Utilisation de la fonction Sinus (Sine) pour Pulsate
Cet exemple comporte un nœud Time qui établit une séquence linéaire de 0 à 1 sur 101 images. À la trame 25, la valeur de sortie est de 0,25. Cette valeur est multipliée par 2 × pi (6,28) et convertie en 1,0 par la fonction Sinus, puisque \(sin(2 × pi/ 4) = sin(pi/ 2) = +1,0\).
Since the sine function can put out values between (-1.0 to 1.0), the Map Value node scales that to 0.0 to 1.0 by taking the input (-1 to 1), adding 1 (making 0 to 2), and multiplying the result by one-half (thus scaling the output between 0 to 1). The default Color Ramp converts those values to a gray-scale. Thus, medium gray corresponds to a 0.0 output by the sine, black to -1.0, and white to 1.0. As you can see, \(sin(pi/ 2) = 1.0\). Like having your own visual color calculator! Animating this node setup provides a smooth cyclic sequence through the range of grays.
Utilisez cette fonction pour faire varier, par exemple, le canal alpha d’une image afin de produire un effet de fondu enchaîné (fading in/out). Modifiez le canal Z pour déplacer une scène dans le champ de la mise au point. Modifiez la valeur d’un canal de couleur pour créer une “impulsion, vibration” de couleur.
Éclaircissement (mise à l’échelle) d’un canal
Cet exemple comporte un nœud Math (Multiply) qui augmente le canal de luminance (Y) de l’image pour la rendre plus lumineuse. Notez que vous devez utiliser un nœud Map Value avec min() et max() activés pour fixer la sortie à des valeurs valides. Avec cette approche, vous pouvez utiliser une fonction logarithmique pour obtenir une image à plage dynamique élevée. Pour cet exemple particulier, il existe également un nœud Bright/Contrast qui pourrait permettre un contrôle plus simple de la luminosité.
Restriction de la sélection de couleur (postérisation)
Dans cet exemple, nous restreignons les couleurs à 6 valeurs : 0, 0.2, 0.4, 0.6, 0.8, 1.
To split up a continuous range of values between 0 and 1 to certain set of values, the following function is used: \(round(x × n - 0.5) / (n - 1)\), where « n » is the number of possible output values, and « x » is the input pixel color. Read more about this function.
Pour implémenter cette fonction dans Blender, considérez la configuration de nœuds ci-dessus. Nous enchaînons les nœuds mathématiques dans une fonction qui prend chaque couleur (valeurs de 0 à 1), la multiplie par six, le nombre souhaité de divisions (les valeurs deviennent de 0 à 6), la décale de 0,5 (-0,5 à 5,5), arrondit la valeur au nombre entier le plus proche (produit 0, 1, 2, 3, 4, 5), puis divise la couleur du pixel d’image par cinq (0,0, 0,2, 0,4, 0,6, 0,8, 1,0).
In the case of a color image, you need to split it into separate RGB channels using Separate/Combine RGBA nodes and perform this operation on each channel independently.