» Texture Transformation
This site relies heavily on Javascript. You should enable it if you want the full experience. Learn more.

Texture Transformation

Russian

Primitives

Note that all of the primitives like Quad (DX9), Segment (DX9),... have a Texture Transform next to the Transform. If you want to position/scale/rotate the texture on a primitive (instead of the primitive itself) you best connect a Transform (Transform 2d) node to the Texture Transform. Like this you can achieve all desired transformations.

Also note the Sampler State which accepts Filter (EX9.SamplerState) and Address (EX9.SamplerState) the latter of which is also interesting in connection with texture transformations. It allows you to specify how a texture is drawn outside of its own borders, ie. when a texture is scaled smaller. The address mode can be specified for U and V (ie. horizontal and vertical direction) separately and take one of 5 options:

  • Wrap - simple repeat
  • Mirror - repeating with every second version being flipped
  • Clamp - repeating only the last pixel
  • Border - allows to specify a border color via Border Color
  • MirrorOnce - mirrors once, then clamps

Effects

Most effects have a Texture Transform as well but they don't have a Sampler State. If you want to use a special sampler state on an effect you can only do that in its code, which is easy. First rightclick an effect and save a local copy via Ctrl+S. Now locate the sampler state block, which typically looks something like this:

sampler Samp = sampler_state
{
    Texture   = (Tex); 
    MipFilter = LINEAR;
    MinFilter = LINEAR;
    MagFilter = LINEAR;
};

Here you can now add addressmodes and a bordercolor, like

sampler Samp = sampler_state 
{
    Texture   = (Tex);          
    MipFilter = LINEAR;         
    MinFilter = LINEAR;
    MagFilter = LINEAR;
    AddressU = BORDER;
    AddressV = MIRROR;
    BorderColor = float4(1, 0, 0, 1); //red border
};

anonymous user login

Shoutbox

~2d ago

joreg: vvvvTv S0204 is out: Custom Widgets with Dear ImGui: https://youtube.com/live/nrXfpn5V9h0

~2d ago

joreg: New user registration is currently disabled as we're moving to a new login provider: https://visualprogramming.net/blog/2024/reclaiming-vvvv.org/

~9d ago

joreg: vvvvTv S02E03 is out: Logging: https://youtube.com/live/OpUrJjTXBxM

~11d ago

~13d ago

joreg: Follow TobyK on his Advent of Code: https://www.twitch.tv/tobyklight

~16d ago

joreg: vvvvTv S02E02 is out: Saving & Loading UI State: https://www.youtube.com/live/GJQGVxA1pIQ

~16d ago

joreg: We now have a presence on LinkedIn: https://www.linkedin.com/company/vvvv-group

~23d ago

joreg: vvvvTv S02E01 is out: Buttons & Sliders with Dear ImGui: https://www.youtube.com/live/PuuTilbqd9w

~30d ago

joreg: vvvvTv S02E00 is out: Sensors & Servos with Arduino: https://visualprogramming.net/blog/2024/vvvvtv-is-back-with-season-2/

~30d ago