» 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

~15d ago

~18d ago

joreg: The Winter Season of vvvv workshops is now over but all recordings are still available for purchase: https://thenodeinstitute.org/ws23-vvvv-intermediates/

~24d ago

schlonzo: Love the new drag and drop functionality for links in latest previews!

~1mth ago

joreg: Workshop on 29 02: Create Sequencers and Precise Clock Based Tools. Signup here: https://thenodeinstitute.org/courses/ws23-vvvv-08-create-sequencers-and-precise-clock-based-tools-in-vvvv-gamma/

~1mth ago

joreg: Workshop on 22 02: Unlocking Shader Artistry: A Journey through ‘The Book of Shaders’ with FUSE. Signup here: https://thenodeinstitute.org/courses/ws23-vvvv-12-book-of-shaders/

~2mth ago

joreg: Talk and Workshop on February 15 & 16 in Frankfurt: https://visualprogramming.net/blog/vvvv-at-node-code-frankfurt/

~2mth ago

woei: @Joanie_AntiVJ: think so, looks doable