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 »

Keyboard

Windows Key This node informs about keystrokes while the focus is on the renderer window.
DirectInput Key This node informs about every keystroke done on the keyboard.
Textfield Input Concatenates keyboard input received by the renderer window to a single string.

Windows Key

This node makes it possible to interact with a Ventuz scene via keyboard. It provides information whether a specific key is pressed or not. Additionally, it triggers events when a key is pressed or released.

This node only reacts on key hits that occur within the Renderer window. Key hits outside this window are ignored.

If AutoDeactivate is enabled, this node will be automatically deactivated if the parent Hierarchy Container is blocked. The property Active determines if this node is active and if it should react on the key hits. The property Key defines which key the node listens for. To specify the key, click on the triangle in the Key property argument field and then press the desired key. It is also possible to specify a key combination like CTRL + P.

If SendEventArg is enabled the ​key code is sent as argument via the KeyDown and KeyUp event which occur if the correct key is pressed. This is usually used when binding a key event to a Script Node so that the key code value is available in the event handler without having to bind an additional property.

If Key is set to None, the node will react on all keyboard inputs!

The Emit method simulates a key stroke and the node behaves as if the specific key on the keyboard has been hit. In this case the KeyUp occurs one frame after the KeyDown event. This Emit can be used to build a Ventuz scene which works identically with a real keyboard and a virtual keyboard on a touch display. By default, an emit will only create a Ventuz-internal key press/release message that will not be sent to Windows or any other application. When enabling EmitSimulatesHardware, the press/release are submitted to Windows instead and will thus create the same behavior as if the user would have pressed a key on his keyboard. This has multiple side-effects:

  • The key press/release will be sent to whatever window has keyboard focus. This could even be another application, so extra care has to be taken that the key press will not trigger some unintended functionality. Note this also means that pressing the Emit method in the Property Editor will send the key to the Property Editor (as it has focus due to the mouse click)!
  • If the key is a non-diacritic symbol, Windows will generate a character message in addition to the press/release messages. For example, pressing the ^ key on the keyboard fires a press/release but no character message. If the a key is pressed afterwards, a â character message is sent in addition to the press/release key messages. Those are required for certain nodes that have to do with text input, most notably the Textfield Input and the Web Browser node.

In addition to the events described above, this node provides information about the state (NotPressed, Pressed) of a specific key and its code (KeyCode).

DirectInput Key

This node provides nearly the same functionality as Windows Key. But there are two differences: this node notices every key stroke inside and outside the Renderer window and even outside the Ventuz application. It is not possible to send the key code as argument via the events and it is not provided as an output property.

Textfield Input

Technically the Textfield Input node is related to the Windows Key node. Both only listen to key presses that are issued when the Renderer Window has keyboard focus. But where the Windows Key node is designed for listening to individual key strokes, the Textfield Input node listens for characters being generated instead of keys being pressed. When a diacritic key is pressed (for example the ^ key), Windows notifies applications of the key being pressed but does not issue a character. Only when a second key is pressed, the combined result (for example â) is sent. For non-accented characters, both the key press and character are sent at the same time.

The Textfield Input node listens for such character messages and concatenates all such characters into a single string that is provided via the Text output property. This is usually bound to a Text Layout/Text Rendering combination to visualize the input. Using Backspace to delete the last character is supported but there is no caret that can be used to specify at which position the next character is inserted.

If the SingleLine property is activated, the Textfield Input node will ignoring new line characters. The PressedEnter event will however fire regardless of the SingleLine property. In addition, MaxLength can be used to restrict the number of characters in the generated string. If set to a value different from -1, any new keypress will only be added to the output string if it does not exceed the limit set in MaxLength.

If the Textfield Input is supposed to be used in conjunction with the Windows Key Emit method, the EmitSimulatesHardware property has to be activated. Otherwise only Ventuz-internal key press/release events are generated which do not cause Windows to send the character messages the Textfield Input node requires.

The InjectChar method accepts an integer value which is translated to a unicode character. When the method is invoked, the browser reacts as if this key would have been inserted via the hardware keyboard. Note that this is not the same as pressing a hardware key. For example, to generate the letter â on a German keyboard takes two key presses, first the ^ key and then the a key. In order to support more languages, the inject method accepts a character and not a key press. There are however a number of special character codes supported:

Code Description
13 Return
9 Tab
8 Backspace
127 Delete
27 Escape

The pass an integer value as part of the method invocation, either the output event of a Script node or an Event node has to be used. For the latter, the value can be specified in its Argument property.

The Property Editor accepts hexadecimal numbers if they are entered with a leading "0x" or "#"

The unicode values for the most commonly used characters can be found ​here and ​here. Additional information on other character sets can be found ​here.

See also:
  • Input Handling inside Ventuz
  • ​MSDN: KeyData property
  • Web Browser node

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