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

EX9.Effect.Node

French | Italian | Spanish

Creating an Effect

There are different ways to create effect nodes in vvvv. You can simply instantiate any of the effects that ship with vvvv by selecting them in the nodelist from the EX9.Effect category.

You can also dragdrop any effect file (with the extension .fx) onto a patch or from the menu select Open in Patch and select an effect file.

If you want to create an all new effect it is best to start from a simple template, that has the basic structure already laid out. The Template (EX9.Effect) node is what you're looking for. In the NodeBrowser look for this node but instead of simply creating it, clone it via CTRL+Enter or CTRL+Click. Give it a new unique name and vvvv will make a copy of the template you can now start from.

Pins

Looking at effect nodes you'll see a few pins all of them have in common:

Inputs

  • Render State: here you can connect any of the nodes from the EX9.RenderState category
  • Mesh: connect a mesh (geometry) to be rendered with the given effect.
  • Transform: here you connect the world transformation for the mesh
  • Technique: an enumeration of all the techniques in the effect
  • Technique Pass: here you specify the passes to be rendered. ut in a spread of values, the effect node will then render the given passes in the order of the spread. To render all passes of a technique, set the passes pin to -1 (default value).
  • Enabled: switch the rendering on and off. works slicewise!

Outputs

  • Layer: connect this to a renderer
  • Compiled: boolean telling you if the effect is compiled
  • Technique Valid: spread of booleans telling you if the individual techniques are valid on your gpu
  • Description: a summary of the effects innards.

The Pins representing the parameters in the effect are added according to the effect code. Note that vvvv can not interpret the structure of the effect as long as there are errors in the code and compilation fails.

Spreading Effects

todo: mesh subsets, arrays

Editing the effect code

To edit the code, rightclick the effect node and an editor window will pop up.

In the main text view you can directly edit the code. Simply start typing to be assisted with a codecompletion window that also includes a listing of all HLSL intrinsic functions. Press Ctrl+S to save and compile the effect.

If there are errors compiling the effect, they will be displayed in the lower part of the editor window. You can doubleclick any of the errors to jump to the line that contains the error.

Note: if you have several effect nodes of one Effect File open at a time, changing the code of one instance will automatically change the code of all effect nodes of that effect file, which is just the same behaviour as with patches.

anonymous user login

Shoutbox

~4d ago

~7d 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/

~14d ago

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

~22d 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/

~29d 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/

~1mth ago

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

~1mth ago

woei: @Joanie_AntiVJ: think so, looks doable

~1mth ago

xd_nitro: Anyone remember who increased projector brightness by removing some components that product the color?

~1mth ago

Joanie_AntiVJ: This looks super interesting (vectors over network) would anyone here know how to implement this in beta? https://github.com/madmappersoftware/Ponk