» Tutorial Effects - Sr. Wiggle
This site relies heavily on Javascript. You should enable it if you want the full experience. Learn more.

Tutorial Effects - Sr. Wiggle

English | Italian | Mandarin | Japanese

TOC: Of Effects and Shaders
Back: Vertexshader Preparations
Next: Function Printing


Comencemos con el famoso efecto MrWiggle que distosiona una malla mediante ondas sinusoidales:

El vertex shader es llamado por cada vértice de la malla. Como has aprendido aquí here, el input del vertex shader es la data almacenada en los vértices de la malla que son ahora procesados:

vs2ps VS(
    float4 PosO  : POSITION,
    float4 TexCd : TEXCOORD0)
{
...
}

Aquí estamos interesados en el PosO vector, que es la posición del vértice actual. Añadiremos un offset a la coordenada x del vértice que va a depender de su posición vertical (coordenada y):

PosO.x += sin(PosO.y);

Añadimos algunos parámetros para controlar las ondas:

PosO.x += sin(PosO.y * Frequency + Phase) * Amplitude;

Así el vertex shader con sus inputs queda como esto:

float Frequency = 10;
float Phase = 0;
float Amplitude = 0.01;
 
vs2ps VS(
    float4 PosO  : POSITION,
    float4 TexCd : TEXCOORD0)
{
    //declara la estructura de salida
    vs2ps Out;
 
    //offset de la coordenada x
    PosO.x += sin(PosO.y * Frequency + Phase) * Amplitude;
 
    //transforma la posición
    Out.Pos = mul(PosO, tWVP);
 
    //transforma las coordenadas de textura
    Out.TexCd = mul(TexCd, tTex);
 
    return Out;
}

y el patch:

mr wiggle patch

Next: Function Printing
Back: Vertexshader Preparations
TOC: Of Effects and Shaders

anonymous user login

Shoutbox

~14h ago

tekcor: Hey, does someone has an AxisDraw V3/A3 for sale?

~5d ago

nanotekt: vvvv+blender=lovvvve :D https://youtu.be/dUyeoi9mBIc

~6d ago

Patxi7: Pepper's Ghost & vvvv https://vimeo.com/632159133

~11d ago

mediadog: @manuelgonzalvez Needed to explicitly install VLC for VLC2; I use 3.0.6-win64 for stability.

~11d ago

mediadog: @manuelgonzalvez 42 getting crashes from DX11 VLC lib after last Win10 update. Switched to VLC2 plugin OK so far.

~12d ago

sunep: Looks interesting. Can't find a price though https://en.ids-imaging.com/ensenso-3d-camera-s-series.html

~22d ago

joreg: @guest re svg export: i'm afraid not.

~22d ago

joreg: @manuelgonzalvez what's stopping you? now is the time!

~22d ago

joreg: @schlonzo glad you like it!

~23d ago

schlonzo: the new burger menu is great!