Gráficas de funciones de Substance
Ejemplos
A continuación se muestran algunos ejemplos de casos de uso comunes de Functions.
Función simple
Una función simple en el contexto de un parámetro expuesto. Obtiene un valor flotante de entrada denominado “Intensity” (Intensidad) que se determina para ir de 0 a 1 (un rango fácil de entender) y lo reasigna a un rango establecido de 0,1 a 0,8. Eso significa que si el usuario establece Intensity en 0, internamente se utilizará 0.1, si la interfaz de usuario se establece en 1, se utilizará 0.8 y cualquier valor intermedio se interpolará linealmente. Este tipo de función se suele usar cuando se exponen parámetros, pero se usan funciones personalizadas.
Esta función también se puede escribir como lerp(0.1, 0.8, Intensity) en un pseudocódigo similar a HLSL o GLSL.
Función avanzada
Esta función avanzada muestra el funcionamiento interno de un procesador de píxeles destinado a ajustar el tono de una entrada de mapa de color en función de la intensidad de una segunda entrada de máscara de escala de grises.
Muestrea ambas entradas con la variable del sistema “$pos” y, a continuación, despoja al Alpha, convierte el valor de color en HSL y modifica el componente Hue multiplicándolo por el valor de escala de grises muestreado. A continuación, vuelve a montar el vector, convierte el HSL de nuevo en el RGB y vuelve a incorporar el Alpha para la salida final.
en pseudo-código esta sería una función mucho más complicada que no cabría en una sola línea.