» Custom GUI Method Collection
You were redirected to the new location of this resource. Please update your bookmarks.
This site relies heavily on Javascript. You should enable it if you want the full experience. Learn more.

Custom GUI Method Collection

This page is rather outdated!

If you're looking for UI options for vvvv try these related contributions.

Table of Contents

Introduction

VVVV users experience a reoccuring demand for a graphical user interface, that is: a means of easily controlling the parameters of a patch. Native elements of this nature within VVVV (like the iobox (value) advanced|IOBox)? have one drawback: modifying them constitutes a change in the program graph itself - which can not be calculated when missing values - and causes freezing or stutter in the render windows.
Several users have already found a solution in building their own GUIs, outsourcing the display and modification of parameters to separate render windows, avoiding any intervention with the render process. As useful as their solutions are, they are sometimes complex, hard to understand, or intensive on resources. As such, their use is often limited to the specific tasks they were designed for and hard to accomodate to other patches.

Motivation

This method collection aims to cover some of the topics and problems most often faced when building a custom GUI. It is supposed to deliver small, separate solutions to specific issues that are easy to understand and adapt. It should empower even unexperienced users to build appropriate interfaces without having to rely on prefabricated solutions that may be unfit for their needs.

State Of The Art

Following is a collection of things that have already been done in the field of GUI-development on this wiki: some of the projects, a set of forum discussions and other pages concerned with the topic. This should reflect the current discourse.

Projects

Gui2D Plugin convenient and fast plugins to build a GUI in a EX9 Renderer
Remote (VVVV) Remote control vvvv with different interfaces.
inside vvvv Buttons (3D) (see your ./modules - folder)
user modules? Buttons (2D), Gestures (2D), Dragging (3D), Keyboard & Device Input, Text Display (3D), Camera Control
WestTricks Assorted tips & tricks compiled by west and others
GUI modular o_0! Modular GUI by majortom
Overlay Interface On-Screen GUI by david development stopped.->now: Remote (VVVV)
sanch modules Spreadable GUI by sanch
woei GUI elements by woei
diki patches multipatch GUI by diki
dh basic GDI GUI by dh

Forum Threads

Wiki Pages

DX 9 GUI Modules

The Method Collection

Prelude: Definition of GUI

(As tonfilm suggests:) GUI being short for 'Graphical User Interface', a GUI is usually expected to encompass two aspects: First, a structured visual representation of variables of a system. Second, the ability to change these variables through either human (user) interaction or the system itself. For the scope of this page, we will ignore the vast implications of the term 'interface' and focus on the three common devices involved: mouse, keyboard and monitor.

Parameter Input

Getting values inside VVVV is, in the most basic form, as easy as creating a Mouse (System Global) or Keyboard (System Global) node. Both of them deliver values that can then be further modified to fit specific data types. Related issues are bank selection (where a small number of keys is used to control a larger number of parameters by redirecting their inputs according to 'banks'), the storage of values, and relative instead of absolute value input - all of which are adressed in this (first) version of the Value Input demo patch (8.04 Kb Zip).

Parameter Display

(soon)

The Display as Input Device

(soon)

Wishlist

A list of methods other users (you?) would like to see covered here.

anonymous user login

Shoutbox

~5d ago

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

~12d ago

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

~11d ago

~12d ago

fleg: hey there! What's the best tool for remote work? Teamviewer feels terrible. Thanks!

~26d ago

joreg: Last call: 6-session vvvv beginner course starting November 4: https://thenodeinstitute.org/courses/ws24-5-vvvv-beginners-part-i/

~1mth ago

joreg: Missed the last meetup? You can rewatch it here: https://www.youtube.com/live/MdvTa58uxB0?si=Fwi-9hHoCmo794Ag

~1mth ago

theurbankind: When is the next big event, like node festival ?

~1mth ago

~1mth ago

joreg: Join us for the next vvvv meetup on Oktober 17th: https://visualprogramming.net/blog/2024/25.-vvvv-worldwide-meetup/

~2mth ago

joreg: 6 session beginner course part 2 "Deep Dive" starts January 13th: https://thenodeinstitute.org/courses/ws24-5-vvvv-beginners-part-ii/