Navigation

Ventuz 5 Quick Guide

  • Introduction
  • Getting Started
  • Ventuz Editions
  • Designer Overview
  • Ventuz System Requirements
  • Configuration
  • Video/Audio Configuration
  • Machine Configuration
  • GPI Configuration for Runtime or Director
  • Optimize Rendering Performance
  • Supported Formats
  • Supported Hardware
  • Multisampling / Anti-Aliasing
  • Input Subsystem
  • Ventuz Proprietary Files
  • What's new
  • FAQ
  • Common Mistakes
  • Deployment
  • Migration Guide
  • Summary Shortcuts

Ventuz 5 Designer

  • Index
  • Getting Started
  • Designer Options
  • Designer Overview
Projects & Scenes
  • Projects and Scenes
  • Project Browser
  • Project Properties
  • Project Maintenance
  • Project and Scene Data
  • Scene Tree
  • Scene Management
  • Scene Statistics
  • Deployment
Interface
  • Designer Interface
  • Renderer Window
  • Realtime Rendering
  • Optimize Scene Performance
  • Performance Statistics
  • Transformation Gizmo
  • Render to Disk
  • Camera Navigation
  • Isolated Objects
  • Manipulate Objects with Gizmos
  • Layer Editor
  • Common Layer Properties
  • IPP Effects
  • Color Correction FX
  • Distortion FX
  • Filter FX
  • Layer Editor Shortcuts
  • Hierarchy Editor
  • Working with Nodes
  • Containers
  • Find and Replace
  • Shortcuts Hierarchy Editor
  • Content Editor
  • Working with Nodes
  • Containers
  • Content Editor Shortcuts
  • Toolbox
  • Available Nodes
  • Property Editor
  • Project Data and Scene Data
  • Shader Editor
  • Text Editor
  • Scene Tree
  • Message View
  • Stage Editor
  • Animation Nodes
  • Animation Editor
  • Animation and State Engine
  • Templates
  • Template Engine
  • Shortcuts Animation Editor
  • Text Nodes
  • Text Rendering
  • Text Editor
  • Character Sets
  • Geometry Import
  • World Nodes
  • Geometry Nodes
  • Texture Nodes
  • Material&Color Nodes
  • Render Option Nodes
  • Interaction Nodes
  • Input Subsystem
  • Multitouch
  • TUIO Protocol
  • Open Sound Control
  • VR Nodes
  • How to work with Head Mounted Displays
  • Cluster
  • Multi Display Setups and Shaping
  • Warping, Soft Edging and Masking

Ventuz 5 Node Reference

ANIMATION
  • Mover
  • Alternator
  • Simple Control
  • Timeline Control
  • Keyframe Animation
  • Animation Group
GEOMETRY
  • Rectangle
  • Rounded Rectangle
  • Gradient Rectangle
  • Overlay Rectangle
  • Cube
  • Circle
  • Sphere
  • Cylinder
  • Cone
  • Torus
  • Chart
  • Random Points
  • Mesh Loader
  • Geometry Import (Live)
  • Volume
DATA
  • Database
  • Excel
  • JSON
  • RSS Feed
  • Resource Linker
  • Text File
  • XML
INTERACTION
  • Touch Button
  • Touch Excluder
  • Touch Marker
  • Touch Paint
  • Touch Pattern
  • Touch Proxy
  • Touch Ripples
  • Touch Transformations
  • Web Browser
  • Touch Teleport
  • Touch Simulator
INPUT/OUTPUT (I/O)
  • GPI
  • Joystick
  • Keyboard
  • MIDI
  • Mouse
  • Network
  • Open Sound Control
  • Serial
  • Timecode
LOGIC
  • Array Processing
  • Convert To Text
  • Cluster Synchronization
  • Counter
  • Date Time
  • Directory
  • Dispatcher
  • Enumeration
  • Expressions
  • Invert
  • Log
  • Loop Breaker
  • Math Effects
  • Matrix Operations
  • Scene Event
  • Script
  • String Operations
  • System ID
  • Text Splitter
  • Timer
  • Toggle
  • URL
  • Value Switch
  • Value Buffer
  • Variables
  • Visual Indexer
COLOR/MATERIAL
  • Alpha
  • Fog
  • Ground Fog
  • Sky Box
  • Color to RGBA
  • HSLA to Color
  • RGBA to Color
  • Color Transformer
  • HLSL Shader
  • Color
  • Material
LAYER
  • 3D Layers
  • 3D Layer Reference
  • 2D Layers
  • PSD Import Layer
  • Others
RENDER OPTIONS
  • Alpha Blending
  • Alpha Testing
  • Clip Plane
  • Filter
  • Mask
  • Mirror
  • Effect
  • Point Options
  • Render Cube Map
  • Render Options
  • Stencil
  • ZTesting
LIGHT
  • Light Sources
TEXT
  • Text Effects
  • Text Layouts
  • Text Rendering
VR/AR
  • Tracked Devices
  • Draw Tracked Devices
WORLD
  • Axis
  • Billboard
  • GetWorld
  • SetWorld
  • Arrange
  • Ticker
  • Layout
  • Group
  • World Z Sort
  • YesNo
  • Switch
  • Spread
  • Filter Pass
  • Set Pass
  • Hierarchy Container
  • Scene Port
  • Content Container
  • Template Port
  • Container Info
  • Camera
TEXTURE
  • Background
  • Hatch
  • Image
  • Texture
  • SVG Loader
  • Live Video
  • Movie Stream
  • Movie Frame
  • Movie Clip
  • Texture Loader
  • Snapshot
  • Gradient Texture
  • Texture Saver
  • Video Source Selector
  • VIO Input
SOUND
  • Audio Clip
  • Sound
  • Volume Control
  • FFT Audio Analysis
SLIDES
  • Slide Manager
  • Slide
  • Slide Port
  • Pivot

Ventuz 5 Director

  • Application Settings
  • Assets
  • Channels
  • Command Line Options
  • Content References
  • Designing Templates
  • Environment
  • Glossary
  • Index
  • Introduction
  • Pages
  • Playlist
  • Plug-Ins
  • Project Data
  • Property Editor
  • Shortcuts
  • GPI Configuration
  • Shot Box
  • Show
  • Taking Action
  • Timeline
  • Topology
  • User Interface
  • Director Mode

How To

  • How to Run Ventuz
  • How to Work with Designer
  • Ventuz Designer Drag&Drop workflow
  • How to use Head Mounted Displays
  • How to work with Shadows
  • How to use Emoijs
  • How to Build a Template
  • How to use Newtek NDI
  • How to Create Visuals Loader Node
  • How to Remote Control with a Phone
  • How to Setup a Cluster Render
  • How to use a Mixed Frame Rate Cluster
  • How to use Tracking
  • How to work with 3D Reference Layers

Keyboard Shortcuts

  • Summary Shortcuts
  • Layer Editor Shortcuts
  • Hierarchy Editor Shortcuts
  • Content Editor Shortcuts
  • Animation Editor Shortcuts
  • Director Shortcuts

Advanced and Development

  • Command Line Options
  • Remoting Overview
  • Remoting 4
  • Deprecated Remoting
  • Ventuz IP Ports
  • Ventuz Machine Service
  • Remoting Machine Signature
  • TUIO
  • .NET Scripting
  • HLSL Shader Programming
  • Ventuz API and SDK
  • Ventuz VIO API

General Reference

  • Terminology
  • Manual Index

Miscellaneous

  • Presets
  • PropertyGroups
« Previous Article
» Index «
Next Article »

Alpha Blending

Blending This node modifies the blending rules for superposed pixels with industry standard presets
Alpha Blending This node modifies the blending rules for superposed pixels.

Alpha Blending is a technique used to specify how a pixel being drawn by a triangle and the pre-existing color value in the render output are mixed. It is commonly used to simulate transparency effects, see Introduction to Realtime Rendering.

When a fragment has passed all tests (see 3D Mask Nodes , Z-Testing Node, Alpha Testing Node, Stencil Nodes), its color is applied to the render output and overwrites any value previous set by other objects. With alpha blending, the final pixel color can be a combination of both the fragment (source) pixel color and alpha as well as the pixel color and alpha in the render output (destination).

Blending

The Blending Node offers Presets for common used blend functions. Only a subset of the available Blending Modes on the Layer level is available inside a 3D Layer.

Preset Color Function Alpha Function
Overwrite SourceColor SourceAlpha
Normal SourceColor + DestinationColor * (1-SourceAlpha) SourceAlpha + DestinationAlpha * (1-SourceAlpha)
LinearDodge (Add) SourceColor + DestinationColor SourceAlpha + DestinationAlpha * (1-SourceAlpha)
Screen (SourceColor + DestinationColor) - (SourceColor * DestinationColor) SourceAlpha + DestinationAlpha * (1-SourceAlpha)
Substract Rendering from Background SourceColor - DestinationColor SourceAlpha + DestinationAlpha * (1-SourceAlpha)
Substract Background from Rendering DestinationColor - SourceColor SourceAlpha + DestinationAlpha * (1-SourceAlpha)
Multiply SourceColor * DestinationColor SourceAlpha + DestinationAlpha * (1-SourceAlpha)
Multiply X2 SourceColor * DestinationColor * 2 SourceAlpha + DestinationAlpha * (1-SourceAlpha)
Glow SourceColor + DestinationColor DestinationAlpha

The shaders in Ventuz5 make sure the source color is pre-multiplied with the source alpha. This is why the formula for normal blending does not multiply the SourceColor with SourceAlpha, this has already happened in the shader. The same is true for all other blending modes.

Alpha Blending

Compared to the Blending Node there are no predefined blending modes here. Instead the Node directly offers the capability of the graphics card for greater flexibility. Both the source and destination color are treated as a 4-dimensional vector (red, green, blue, alpha) which is multiplied with a blend factor before applying the chosen operation.

color = (SourceColor * source_factor) op (DestinationColor * destination_factor)

The blend factors are selected with the Source and Destination properties:

  • One: Multiply each component by one.
  • Zero: All channels of the color are multiplied by zero
  • BlendFactor: Multiply each component by the respective component of the color specified in the BlendFactor property.
  • InverseBlendFactor: Multiply each component by the respective inverse component of the color specified in the BlendFactor property.
  • BothInverseSourceAlpha: The source color is multiplied by one minus the source alpha and the destination color is multiplied by the source alpha
  • SourceAlphaSaturated: The red, green and blue channel are multiplied with the min(alpha_source, 1 - alpha_destination), alpha is multiplied by one. This can only be used for Source and will override the value set in Destination.
  • InverseDestinationColor: Multiply each component with one minus the respective component in the destination color.
  • DestinationColor: Multiply each component with the respective component in the destination color.
  • InverseDestinationAlpha: Multiply all channels with one minus the destination alpha.
  • DestinationAlpha: Multiply all channels with the destination alpha.
  • InverseSourceAlpha: Multiply all channels with one minus the source alpha.
  • SourceAlpha: Multiply all channels with the source alpha.
  • InverseSourceColor: Multiply each component with one minus the respective component in the source color.
  • SourceColor: Multiply each component with the respective component in the source color.

The resulting vectors are combined with the Operation:

  • Add: Result = Source + Destination
  • Maximum: Result = MAX(Source, Destination)
  • Minimum: Result = MIN(Source, Destination)
  • ReverseSubstract: Result = Destination - Source
  • Substract: Result = Source - Destination

When using Maximum or Minimum as an operator, blend factors are ignored.

When SeparateAlpha is activated, a set of blend factors and operation can be used for the alpha channel that differs from the color channel. If SeparateAlpha is disabled RGB and A are using the same BlendFunction.

To recreate the presets from the Blending Node, enable SeparateAlpha and use these settings:

Preset Color Function Alpha Function
Overwrite (SourceColor * One) ADD (DestinationColor * Zero) (SourceAlpha * One) ADD (DestinationAlpha * Zero)
Normal (SourceColor * One) ADD (DestinationColor * InverseSourceAlpha) (SourceAlpha * One) ADD (DestinationAlpha * InverseSourceAlpha)
LinearDodge (Add) (SourceColor * One) ADD (DestinationColor * One) (SourceAlpha * One) ADD (DestinationAlpha * InverseSourceAlpha)
Screen (SourceColor * InverseDestinationColor) ADD (DestinationColor * One) (SourceAlpha * One) ADD (DestinationAlpha * InverseSourceAlpha)
Substract Rendering from Background (SourceColor * One) ReverseSubtract (DestinationColor * One) (SourceAlpha * One) ADD (DestinationAlpha * InverseSourceAlpha)
Substract Background from Rendering (SourceColor * One) Subtract (DestinationColor * One) (SourceAlpha * One) ADD (DestinationAlpha * InverseSourceAlpha)
Multiply (SourceColor * DestinationColor) ADD (DestinationColor * Zero) (SourceAlpha * One) ADD (DestinationAlpha * InverseSourceAlpha)
Multiply X2 (SourceColor * DestinationColor) ADD (DestinationColor * SourceColor) (SourceAlpha * One) ADD (DestinationAlpha * InverseSourceAlpha)
Glow (SourceColor * Onw) ADD (DestinationColor * One) (SourceAlpha * Zero) ADD (DestinationAlpha * One)

See also:
  • Alpha Testing node
  • Layer Blend Modes
  • ​MSDN: Blend Factors
  • ​MSDN: Blend Operators
  • ​Wikipedia: Blend Modes

« Previous Article
» Index «
Next Article »
Copyright 2004-2017 Ventuz Technology Group