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

Blog

new post

Blog-posts are sorted by the tags you see below. You can filter the listing by checking/unchecking individual tags. Doubleclick or Shift-click a tag to see only its entries. For more informations see: About the Blog.

  reset tags

addon-release core-release date devvvv gallery news screenshot stuff
delicious flickr vimeo
Order by post date popularity

Previously on vvvv: vvvvhat happened in February 2020


It happened!

As if it was yesterday when we first announced our plans for what is now vvvv gamma. It has finally landed. Please read all about it in the still hot vvvv gamma 2020.1 release announcement.

So now is really the time to jump onto it and for this, besides the growing number of video tutorials, in April, we offer this series of webinars.

Despite corona, meetups are still happening, but online! This means that now everybody can join us and present what they're working on. Get inspired by the recording of the first edition and if you have something to show or discuss, please head over to the #2 vvorldvvide Meetup - Call for presenters! and let us know.

Contributions

Gallery

Inauguration of Zaryadye’s Concert Organ by Bashiba

And one more not to miss: Festung Dresden as posted by colorsound.

Jobs


That was it for March. Anything to add? Please do so in the comments!

joreg, Sunday, Apr 5th 2020 Digg | Tweet | Delicious 0 comments  

Who joreg, david, you
When Tue, Apr 28th 2020 - 20:00 until Tue, Apr 28th 2020 - 22:00
Where cyberspace, Germany

Hey vvvvolks,

The last online meetup was fun.

Let't do it again. Tuesday April 28th 8pm CET it is..

We are calling for presentations!

Here is the plan: We'll be using again a video-conferencing platform for moderators and presenters and will be streaming out to evvvveryone via the TV channel and possibly other channels as well. Updates on how to use the back channel will be given..

Please get in touch via meetup@vvvv.org and let us know what you want to present. We'll then get back to you and organize for the streaming.

Hope to get some more international vvvvolks in this way...
we are looking forward to this! a_a_a_a david joreg sebl

david, Friday, Apr 3rd 2020 Digg | Tweet | Delicious 0 comments  

This is it!

The first official stable version of the all-new vvvv gamma 2020.1 is available for download and purchase now. And here is a first look at it for those who haven't dared to play with it yet:

This is vvvv gamma.

After more than 7 years in research and development and a full year of public preview, we're happy to have reached this first major milestone. Many thanks go out to all of you who've participated in our public bug hunt and who spent their time testing an evolving system and giving valuable feedback that allowed us to come this far. We take a deep bow before you!

We believe vvvv gamma is a novel approach to visual programming that brings it to a level where it can be useful beyond its traditional niche. Like this, we hope to continuously grow the community and allow existing users to expand their expertise and allow them to realize more complex and stable programs.

Still not convinced? Please head over to our preliminary page onhttp://visualprogramming.net where we've prepared a convenient list of selling points for you. And tell your friends and family!

Buy vvvv gamma for commercial use

Starting today, as you're working on a commercial project using vvvv gamma, you need a license. So if Corona hasn't canceled your work and you're in the lucky situation that you can use vvvv gamma commercially already, please head over to the store now and insert coins.

Discounts

You'll see that all gamma licenses have an early bird discount of 20% applied automatically. We'll run this promotion for at least a month from now and reevaluate then.

Further, if you've bought a commercial license of vvvv beta since April 1st, 2018, you are eligible to apply an additional discount of 20% to one of your future orders. This discount applies to all vvvv gamma developer licenses of one order. To do so, simply use the coupon code GIMMEGAMMA at checkout.

If you are a freelancer who has worked for projects since April 1st, 2018, where a company bought the licenses but you would now like to get your own license, you can also be eligible for the GIMMEGAMMA discount. Please get in touch via licensing@vvvv.org with a verifiable claim that you've worked for a commercial vvvv project and we'll get back to you.

Note that while the early bird discount will run out at some point, the GIMMEGAMMA discount will be available to eligible users without any time restriction.

We've promised to have subscription plans that will be 30% cheaper from the second year onwards. These are still planned to come within the coming year and everyone who buys an annual license now will have a chance to convert to such a subscription in time.

What next?

Let's recap a bit:

  • February 2013: First mention and demo of what is to become VL during NODE13 keynode
  • May 2015: beta-preview builds are shipping with VL
  • December 2016: beta35 is released with VL as a first-class patching language
  • April 2019: vvvv gamma is released as a public preview

Accordingly, consider today's release milestone number five of many more to come. While in most aspects vvvv gamma is already much more advanced than beta, obviously the current state still is not a replacement for it. The most obvious part still missing is the announced integration of a 3d engine. Work on this has been progressing nicely but only now we can fully concentrate on it and work towards a first release, which will be milestone six.

So we're still keeping the fireworks low for now and are diving right into the next steps. This doesn't mean that you shouldn't be most excited and start using VL to its full potential. Start with the video tutorials and watch this space for an announcement of more webinars...

We hope you find vvvv gamma useful and we keep looking forward to your feedback!
Yours, devvvvs.

joreg, Wednesday, Apr 1st 2020 Digg | Tweet | Delicious 10 comments  
Update: The latest preview version is here: http://visualprogramming.net

And here we go!

Only about a year after the first public preview of vvvv gamma we hereby announce what will be the final round of previews:
The vvvv gamma 2020.1 series.

We have a code-freeze. This is essentially what will be in the final release. We'll only be adding to documentation and fix showstopper bugs, should they come up. Of course we're aware of many more issues but we hope at this point to have squashed all the biggest buggers and are confident to release a first stable version within the next weeks.

Her majesty... at your service.

What's new compared to the vvvv beta series

General

  • Trivial installation via an installer
  • The overall performance is much improved
  • Projects can be exported as executables
  • All your work is automatically backuped
  • A help browser: press F1 without any node selected
  • Helppatches opening when pressing F1 with a node selected
  • You have quick access to your recent sketches
  • By default projects are now handled in one file
  • There are central settings per user, overridable per project
  • You can pause and step your patches frame by frame
  • Extensibility: Write plain C# to extend vvvv with custom nodes
  • Simply use almost any .NET library available e.g. on nuget.org
  • Proper scope and dependency handling
  • Structured documentation for your patches. Add summary, remarks, help to elements
  • Being close to C# allows for VL help to be found on msdn/stackoverflow

Patching

  • Patches are now zoomable
  • You can use frames to structure your patches visually
  • UI runs in its own thread
  • Tooltips show help and errors
  • IOBoxes allow for much faster configuration
  • You can doubleclick a link to insert a node or finish a link with a doubleclick to create a node
  • Patch your own pingroups
  • The color theme is now customizable and defaults to dark

Language

Besides staying true to its nature of being a an easy to use and quick prototyping environment, vvvv is also a proper programming language with modern features, combining concepts of dataflow and object oriented programming:

  • Define your own datatypes (Classes and Records)
  • Composed Datatypes (Spread of Spread,..)
  • No more binsizes needed!1!!
  • Loops to iterate within one frame
  • Recursive patches
  • Generics
  • Delegates
  • Reactive programming
  • Async data processing (multi-threading)
  • Easy caching of expensive operations

Node Library

While for now the number of libraries we ship is limited, the fact that you can essentially use any .NET libary directly mitigates this problem at least a bit. Besides there is already quite some user contributions available in the wip forum and here is what we ship:

  • A thorough core library for all your basic needs
  • State of the art 2d drawing with VL.Skia
  • Effortless computervision via VL.OpenCV
  • Support for Midi, OSC, ArtNet, Serial,...

Learning

The integrated help-browser comes with a lot of examples and howto-patches and a growing number of video tutorials is available on youtube.

Pricing

We've announced the pricing model of vvvv gamma in a separate post. Until further notice, the previews of vvvv gamma are free of charge but due to its preview-nature we don't recommend using it in commercial scenarios yet.

Download

Here you go: vvvv gamma 2020.1 preview 0040

Changelog:

Upcoming

0040 27 03 20

  • Re-enabled very rough and highly experimental support for attributes in roslyn backend - Elementa inspector patch working again
  • Fixed a crash related to recursive type rendering

0032 24 03 20

Compared to the 2019.2 series

  • Args node now handles options without parameters
  • Added a bunch of new simple howto patches
  • Added clock to display call frequency of runtime value in tooltip
  • Added ToImage [IReadOnlyList]
  • Removed culture specific resource assemblies and disabled pdb files in release build
  • Fixed a sync issue in UI when disabling manual signature and fixed pin synchronization when using "Connect to signature"
  • Visualize model synchronization step in progress bar
  • Using Memory<byte> instead of unsafe IntPtr in IImageData
  • Fixed deserialization of collection of characters
  • Fixed assignments to pads sometimes having a side-effect on other pads with that same name

Ideally this will be the last preview, realistically we'll have to release some more. So please check back often and report your findings in the chat, forum or a comment below!

Yours truely,
devvvvs.

joreg, Tuesday, Mar 24th 2020 Digg | Tweet | Delicious 0 comments  

Who joreg, david
When Thu, Apr 9th 2020 until Thu, Apr 30th 2020
Where online webinar, Germany

Dear all. I hope everybody is fine and healthy wherever you are on the globe.

Due to the COVID-19 situation we are finally forced to extend online activities. Surely everybody was waiting for this anyways... ;-) As everybody should #staythefuckhome we now do the vvvv meetups as an worldwide online meetups as mentioned in this post.

We set a few more webinar dates.

Please check in here. You will receive a link to the webinar prior to the event..

Newbies: Getting started with vvvv gamma

April 9th and April 30th - 18:00 - 20:00 CET
This one is for curios minds of any background who want to try it for the first time..
https://nodeforum.org/announcements/introduction-webinars-to-vvvv-gamma/
https://nodeforum.org/announcements/introduction-webinars-to-vvvv-gamma-2/

Follow up: Introduction to object oriented patching in vvvv gamma

April 16th - 18:00 - 21:00 CET
This one addresses any curious mind who has fallen in lovvvve with gamma already.
https://nodeforum.org/announcements/introduction-to-object-oriented-patching/

Extra: Visual Programming for Coders

April 15th - 18:00 - 21:00 CET
This one addresses more programmers
https://nodeforum.org/announcements/webinar-visual-programming-for-coders/

Hope to see you at the screens
David

david, Friday, Mar 20th 2020 Digg | Tweet | Delicious 2 comments  

Who evvvveryone
When Tue, Mar 24th 2020 - 20:00 until Tue, Mar 24th 2020 - 22:20
Where Internet, Germany

Helo vvvvorld,

so this is how you wanted it to happen all along: The next vvvv meetup on March 24th will be vvorldvvide and online only!

Here is the plan: We'll be using a video-conferencing platform for moderators and presenters and will be streaming out to evvvveryone via our TV channel with our chat as your backchannel. And we're looking for up to 4 presenters to show us what they are working on. Anything vvvv counts, 15min max. How does that sound?

Now it is up to you: Please get in touch via meetup@vvvv.org and let us know what you want to present. We'll then get back to you and organize for the streaming.

Hope to get some more international vvvvolks in this way...
Looking forward to this!

Confirmed Presenters

joreg, Thursday, Mar 19th 2020 Digg | Tweet | Delicious 1 comments  

As we near the official release of vvvv gamma, let's take a minute and look back on what happened so far.

Here's a compilation of every vvvv gamma and VL related blog post.

We hope it serves as both, an overview of historic developments and a helpful learning source for VL users that might have forgotten some along the way:

2020

Announcement for stable release of vvvv gamma 2020.1: vvvv-gamma-2020.1-release

Download and changelog of vvvv gamma 2020.1 preview: vvvv-gamma-2020.1-preview

Download and changelog of vvvv gamma 2019.2 preview: vvvv-gamma-2019.2-preview

Introducing help patches per node: vl-help-patches

A roundup of the latest features of the VL.Xenko 3d rendering engine: vl-xenko-3d-engine-update-3

2019

Reworked licensing model: vvvv-gamma-licensing-2

New web presence for vvvv gamma: visualprogramming.net

Introducing the HelpBrowser for easy in-app learning: vl-getting-you-started

Big feature, export executables: vl-exporting-an-application

Announcing our cooperation between Xenko and vvvv: vvvv-meets-xenko

Background information on the VL compiler overhaul: vl-new-roslyn-based-backend

Public VL presentation on a .NET developer conference: vvvv-at-dotnextconf-moscow-video

Download and changelog of vvvv gamma 2019.1 preview: vvvv-gamma-2019.1-preview

First draft of the new licensing model: vvvv-gamma-licensing

Switching all VL libraries to Xenko vector types: vl-switch-to-xenko-math

Tooltips and runtime value inspection are pretty and can be patched: vl-tooltips

IOBoxes are now feature rich and can handle collections: vl-the-big-iobox-update

Big progress on computer vision: vl.opencv-release-candidate

Dynamic input/output pins are here: vl-input-and-output-pin-groups

Understanding the difference between definition and application: vl-the-application-side-of-things

Added regular expression nodes: vl-regular-expressions

2018

Public vvvv gamma and roadmap announcement: the-road-to-gamma

Progress report on the VL.Xenko 3d rendering engine: vl-xenko-3d-engine-update-2

Improvements on the VL.Skia 2d rendering engine: vl-skia-update

Initial progress report on the VL.Xenko 3d rendering engine: vl-xenko-3d-engine-update-1

Announcing the VL.Xenko 3d rendering engine: vl-threedee

Announcement and insight into the VL.Skia 2d rendering engine: vl.skia

Reading and writing VL data types to disk: vl-serialization

Explaining the structural elements of VL documents: vl-groups-and-categories

Beatify and organize your patches with frames: vl-frame-your-patches

Update on file read/write: vl-improved-file-io

Big cleanup of the VL.CoreLib: vl-corelib-cleanup

Working with different threads and main loops: vl-patch-your-own-mainloops

Announcement of computer vision for VL: vl-opencv-is-in-da-house

The fundamental building block for timelines and searches in sorted collections: binary-search-for-your-keyframes

How to connect image data types of different libraries with each other: vl-image-exchange-interface

Prepare GPU data directly on VL to use it with dx11 rendering: dynamic-dx11-buffers-in-vl

2017

Better debug features: vl-one-frame-at-a-time

Maintenence release for Arduino/Firmata: firmata-updates-and-fixes

Import any .NET library (!) into VL: vl-using-.net-libraries-and-writing-custom-nodes

Parser for serial data and other byte streams: new-tokenizer-nodes

Announcing reactive/async programming with observables: vl-reactive-programming

Nodes for working properly with MIDI: vl-event-based-midi

Parse, modify and write XML and JSON: vl-xml-and-json-nodes

Update on 2D and 3D editing: editing-framework-update

Nodes to work with network sockets: vl-networking-and-async

2016

Nodes for Arduino/Firmata: firmata-second-service

Nodes to work with input gestures: zoom-pan-rotate-touchgestures

Cummulative VL update (performance, clock and time, high DPI): vl-progress-report-4

Nodes for working with the file system: vl-many-paths-lead-to-rome

Initial file handling nodes: let-me-present-to-you-file-io

Cummulative VL update (UI improvements): vl-progress-report-3

Cummulative VL update (UX improvements): vl-progress-report-2

Cummulative VL update (new UI elements): vl-progress-report-1

Huge update overall and new downloads: vl-midsummer-nights-dream

VL progress report (pads, fields, properties, operation signature): vl-spring-update

VL progress report (patch structure, categories, library): vl-winter-update

Learn about the fundamental data types of VL: integer-and-primitive-types-in-vl

Nodes for 2D and 3D editing: introducing-the-editing-framework

2015

VL progress report (new devices, library, nuget, UI): vl-autumn-update

Working with value ranges: mapping-and-ranges-in-vl

Understanding spherical and cartesian space: polar-spherical-and-geographic-coordinates

VL progress report (library, eye tracker, UI, loops): vl-summer-update

Add type annotations to properties: vl-type-browser-now-in-alpha-builds

Community feature voting: vl-feature-voting

First official download of VL: vvvv50-vl-pack-alpha

Preparing for the first launch: 50-pre-release-roundup

Understanding data type patches: 50-custom-datatypes

Understanding generics: 50-generics

2014

Understanding properties aka. fields: 50-properties

Understanding operations aka. methods: 50-colors

Initial thoughs: 50-that-next-big-thing.-an-overview.

Object oriented patching for the masses: 50-vl-features-i-a-patch-is-now-a-class

The very first applications built with VL: 50-the-humble-quad-bundle

Anything to add? Let us know in the comments.

yours,
devvvvs

tonfilm, Wednesday, Mar 11th 2020 Digg | Tweet | Delicious 1 comments  

Dear all,

Here is the call for workshops, lectures and presentations. NODE20 is taking place from October 2nd to 8th 2020 in Frankfurt and we're getting started planning the program for the community. Together with you!
We call the community program the summit for creative technologies. We are david and joreg and we are the spearheads of its curation. In our quest to improve the process of the selection and curation of the overall workshops we’ve chosen a board consisting of vvvveterans sebl, miik, kathi and motzi to help us make decisions. But since we are creating this program for you, you are of course our most important advisors, because we need to understand what interests you in order to make the program meaningful for everybody.

Therefore we want to hear from you:

  • What do you want to learn?
  • What can you offer to teach?
  • How does our theme affect you?

The NODE20 Theme

This year, NODE will examine art-making and creative practice in times of planetary crisis. A crisis that is, in large part, fuelled by our technology needs (Internet use, for example, accounts for one billion tons of greenhouse gas emissions every year). How seriously do we as a community of digital creators take our share of responsibility? How can we rethink our practices both in terms of footprint and criticality and empower others to do the same? And how do we leverage NODE as a cultural platform that brings the public into the conversation?

The arts and culture program, spearheaded by this year’s curatorial team of Jeanne Charlotte Vogt (NODE), Carmen Salas (Connecting Dots), Alexander Scholz (HOLO) and other experts in the field, will tackle some of these questions head-on. Taking the form of an interdisciplinary laboratory jam-packed with discursive and hands-on formats, we want to collectively explore how art and technology can be used for creative countermeasures that – hopefully – effect change. To do so, we invite you, particularly those of you typically underrepresented (gender, race, sexual orientation), to submit ideas for talks, workshops, and creative interventions.

Also: in order to be able to shape the program with the community’s needs in mind, we’d like to hear your thoughts about the subject from all of you! Please take a moment to fill out the Google form linked below and let us know if and how environmental concerns affect you.
https://forms.gle/N9Xbxsnxj7aCPRPG6

What’s going to be different this time

We used to start the festival on Monday and end it on a Saturday. This time we start on Friday evening and will have the closing party on a Thursday night! Like this we’re expecting a more public audience in the beginning and will be going more nerdy towards the end.

There will be no more complicated workshop-seat booking-system. Everyone with a ticket for the day can join any event. First come first serve. This comes from experience in the past where we’ve never really had the resources or even saw a necessity to enforce the seat reservations. We still believe that no one will miss their favorite workshops because typically there was always still the chance to find a spot in each room, even if only standing. Also we’ll try to record many of the events again so that they can be revisited later.

Instead of only 3 or 6h workshops, this time we’ll have different formats:

  1. daily 3h vvvv gamma fundamental
  2. 3h vvvv gamma beginner workshops
  3. general 3 or 6h hands-on workshops
  4. 1h lecture
  5. 1h presentation

ad 1) We’ll be running daily 3h vvvv gamma fundamentals workshops. Like this we’re hoping to level the knowledge of people who will be attending the follow-up beginner workshops. The content of these will be standardized so that it is easy for many people to host them.

ad 2) If you’re hosting one of these you know that your participants will at least have gone through the fundamentals. So here we are looking for creative, playful hands-on workshops that should work towards some kind of output that participants can take away. Consider a little music-visualization as mp4, a printed generative design poster, an executable app, a lasercut, a 3d print… These workshops are targeted at people who’ll have their first contact with vvvv at NODE20. These workshops are targeted as well at people who did not know about vvvv before. The argument for the workshop should be the output that we create with the help of vvvv. Also other tools are of course not forbidden!

ad 3) The classic hands-on workshops we had in the past editions of NODE. These are targeted at the classic vvvv user and can range from intermediate to advanced. If you propose or request a workshop for non vvvv users that’s fine also. Think combining tools and practices. Think in subjects. Think also about the leitmotiv.

ad 4) There are topics that are relevant but don’t need to be taught as hands-on workshops. Think:
How are you using vvvv and other tools in your production pipeline
Best practices (technical, creative process, workflows)
About the tool you created with vvvv (Timeline, VJ Tool, CMS solution,...)

ad 5) Here we’re looking for more inspirational and theoretical talks targeted not necessarily only at vvvv users but anyone with interest in design, art & technology

Apart from those five types of formats we’ll curate a schedule out of, like last time, there’ll also be a chance for participant-provided content. More on that in a later announcement.

vvvv beta and gamma

This year is crucial for the vvvv world, we know. We basically have two tools that are relevant to teach, with VL being the link between them. Ideally vvvv gamma is released with 3d support before NODE20 making it a complete alternative to vvvv beta and NODE20 the best moment to kickstart you into the future. But keep in mind: Anything you learn about vvvv gamma will be applicable to vvvv beta via VL, and also the other way round, many concepts you can learn with vvvv beta, like Transformations, Shaders, Physics, Protocols... can also be applied to vvvv gamma.

Not too many people may yet feel confident enough to teach with vvvv gamma. This is where the vvvv group will help out. Teaching the teachers first. So if you show your interest in teaching with vvvv gamma they are offering to help you prepare the workshop and make sure you are confident teaching it.

How to contribute

For details on how to contribute please read

Feel free to request/propose as many events as you like. Only before you do so please check if there is already a similar request/proposal and consider adding to that existing discussion rather than starting a new topic. Discussing entries is very much encouraged hoping that it can help us all to better define individual proposals/requests.

Then for both requests and proposals use the like-button of the topic to show your interest in it. The six of us will then look at the discussions and like-counts to get an idea of what's hot and what's not. Please note that a high like-count here will not be a guarantee for a workshop to take place as requested/proposed. We'll have more parameters to consider for each workshop than just the likes but they'll certainly be a factor for our decisions.

Deadline

This call doesn't have a strong deadline but we'll make a first curatorial assessment on April 20 2020. So to maximize your chances of being heard make sure your entries are there before that day. What happens afterwards, we'll announce by then.

What we offer and what we expect.

Instead of paying fees for workshops/lectures, at NODE we always decided to rather spend our financial resources on covering contributors stays for the whole week. We believe that making sure they stay longer, allows for more meaningful interactions and results in a better investment of our limited resources to the benefit of the whole community.

Our budget is not fixed at this stage, but compared to NODE17 we already know that we have to be more cost-effective. So this time around we cannot cover travel-costs by default for every contributor. Instead we'll want those who cannot afford it to contact us and we'll try to find individual solutions.

So to sum up, here is what we can offer:

  • You get a full festival pass for the whole week
  • You get accomodation for the whole week

And here is what we expect:

  • You pay your own travels unless you need support in which case you get in touch with us to find a solution
  • You co-host at least one other workshop
  • You help out in the preparation of at least your own workshops and events

Happy brainstorming to you! Let us know if you have any further questions. We are very much looking forward to your submissions and discussions!

And finally some refreshment for your memories:

david, Monday, Mar 9th 2020 Digg | Tweet | Delicious 0 comments  
Update: The latest preview version is here: http://visualprogramming.net

Moments later,...

...we're announcing the immediate availability of the vvvv gamma 2019.2 series of previews, finally including one of the more anticipated features in vvvv history: Executable Export.

This means we are now in the final stage of the preview leading up to a proper initial release after the waves introduced by the new features in this series have been smoothed out.

Her majesty... at your service.

What's new compared to the vvvv beta series

General

  • Trivial installation via an installer
  • The overall performance is much improved
  • Projects can be exported as executables
  • All your work is automatically backuped
  • A help browser: press F1 without any node selected
  • Helppatches opening when pressing F1 with a node selected
  • You have quick access to your recent sketches
  • By default projects are now handled in one file
  • There are central settings per user, overridable per project
  • You can pause and step your patches frame by frame
  • Extensibility: Write plain C# to extend vvvv with custom nodes
  • Simply use almost any .NET library available e.g. on nuget.org
  • Proper scope and dependency handling
  • Structured documentation for your patches. Add summary, remarks, help to elements
  • Being close to C# allows for VL help to be found on msdn/stackoverflow

Patching

  • Patches are now zoomable
  • You can use frames to structure your patches visually
  • UI runs in its own thread
  • Tooltips show help and errors
  • IOBoxes allow for much faster configuration
  • You can doubleclick a link to insert a node or finish a link with a doubleclick to create a node
  • Patch your own pingroups
  • The color theme is now customizable and defaults to dark

Language

Besides staying true to its nature of being a an easy to use and quick prototyping environment, vvvv is also a proper programming language with modern features, combining concepts of dataflow and object oriented programming:

  • Define your own datatypes (Classes and Records)
  • Composed Datatypes (Spread of Spread,..)
  • No more binsizes needed!1!!
  • Loops to iterate within one frame
  • Recursive patches
  • Generics
  • Delegates
  • Reactive programming
  • Async data processing (multi-threading)
  • Easy caching of expensive operations

Node Library

While for now the number of libraries we ship is limited, the fact that you can essentially use any .NET libary directly mitigates this problem at least a bit. Besides there is already quite some user contributions available in the wip forum and here is what we ship:

  • A thorough core library for all your basic needs
  • State of the art 2d drawing with VL.Skia
  • Effortless computervision via VL.OpenCV
  • Support for Midi, OSC, ArtNet, Serial,...

Tutorials and HowTos

A growing number of video tutorials is available on youtube.

Pricing

We've announced the pricing model of vvvv gamma in a separate post. Until further notice, the previews of vvvv gamma are free of charge but due to its preview-nature we don't recommend using it in commercial scenarios yet.

Download

Here you go: vvvv gamma 2019.2 preview 321

Changelog:

Upcoming

321 04 03 20

  • Fixed copy-paste of output pins not merging correctly into target patch
  • Fixed patch pins not always being synced to nodes with the "Connect to Signature" flag
  • Do not create empty regions (nodes without a patch) when syncing to a node definition which lost its delegate input
  • Should an incremental compilation of a project fail, try from scratch before giving up.
  • Fixed implicitly inserted CreateDefault node not being tracked in dependency graph - fixes backend crash when modifying it
  • Fixed assembly initializers being called far too often leading to long hotswap times in bigger projects
  • Fixed regression that enums don't have System.Enum as super type anymore (was for example breaking VL.Devices.Kinect2)
  • Fixed vvvv.exe becoming a ghost process when crashing on startup
  • Fixed disposable interface being added twice when VL.CoreLib was missing - caused subsequent emit crash
  • Only load project assembly from cache if all its dependencies have also been loaded from cache - fixes emit error when dependent project was modified
  • Backend will now unload not needed project states
  • Faster RGBA to RGB conversion (IImage to SKImage)
  • Fixed cast exception triggered by node browser when browsing through nodes from assemblies
  • Fixed various crashes when opening a completely broken document structure (missing assemblies, missing documents etc.)
  • Fixed file/string readers not eliminating BOM
  • New nodes Loop [Observable], Subscribe (Provider) [Observable], Using (Provider) [Observable] and moved PollData, PollResource from Resources to Observable category
    • New region Loop [Observable] managing internal state as well as giving access to cancellation and observer to optionally push data
    • Subscribe [Observable] returning a provider which manages the lifetime of the upstream observable sequence
    • PollData and PollResource now stateful internally thanks to making use of new Loop
  • Removed recently introduced TryOpen/Retry/RunOn [Resources] nodes as they turned out as hard to use (deadlock) and not necessary
  • Added new struct ArrayBuilder used by two new nodes:
    • StoreSequence [Collections.MutableArray] to efficiently either grab an upstream array from a sequence or copy its content into an internal array which will then get exposed.
    • HoldLatestCopy [Collections] to efficiently copy data pushed from a background thread into the main thread
  • Bunch of minor performance improvements to VL.Skia by making use of methods provided by the System.Runtime.CompilerServices.Unsafe class and calling SKCanvas.SetMatrix in Transform nodes, not rendering nodes
  • Fixed allocation issues of Points [Skia.Layers] by exposing internally used DrawPoints via ReadOnlySpan
  • Fixed assignment of higher order regions not being carried over to expanded patch
  • Ensure names of emitted assemblies are unique even after reloading a document
  • Type Unification got even more robust and versatile. Better type renderings and type error messages.
    • generic node applications with generic pins (like "a Asset") previously just lead to type "Asset" for the generic pin for as long as the pin was still unconnected. This way you often had to force connections. Now these type parameters stick around leading to not calling the node until to the point where you actually connect to something.
    • types can look like this: "a Asset". This is a short rendering for a constrained type parameter "T1 where T1: Asset". F# also has an abbreviation for types like this. They call it flexible types.
    • types can look like this: "Sequence (Ungeneric) & IReadOnlyList<T>" which is a beautified rendering for "T1 where T1: IEnumerable, IReadOnlyList<T>"
    • if necessary (like on recursive types) the type parameter will not get hidden. "T1: IReadOnlyTree<T1>" is not hiding the T1 behind an "a IReadOnlyTree<T1>" in order to make clear that it references itself.
    • invalid type annotations (those where the type arguments of the user break the constraints of the type parameters) lead to proper error messages.
    • quite less emit problems due to more robust type unification
  • Added RemoveAll for Spread and SpreadBuilder
  • Fixed Random node not being thread safe
  • Fixed ForEachParallel crashing with input count of zero and modified it so it returns a spread builder instead of a spread to avoid allocations

236 18 02 20

  • added ShowOrigin setting
  • More type inference fixes
  • Fixed primitive types not having any super types like IComparable (was reported in chat by sebl)
  • Fixed type constraints on higher order region with one single patch not properly generated should the name of the inner patch have changed
  • Fixed "auto connect to signature" of patches like CreateDefault which have a fixed set of pins
  • Fixed output pin groups of type Dictionary<string, obj> not working anymore when pin on application side was annotated
  • Fixed compiler crash when having a generic type annotation in a patch
  • Fixed CLR array types not being mapped to type symbols
  • Removed Spread.Pin/Unpin - same functionality is available through much safer TryGetMemory/Pin -> MemoryHandle.Dispose path
  • Fixed pixel format being swapped from R8G8B8 to B8G8R8A by SKImage.FromImage node
  • Fixed null pointer when trying to navigate into patches of completely broken documents
  • Fixed higher order regions not working when definition added an inner pin
  • Added a few convenience nodes for resource providers useful when opening and polling devices. Even though not yet released they already look promising for devices like Kinect or Astra.
  • Fixed minimal changes on solution made by compiler getting discarded (pin order somtimes not updating on application side)
  • Fixed pin group builder (ModifyPinGroup) changing the model when it shouldn't
  • Fixed repeat loop not working on inputs of type T where T : IReadOnlyList

211 07 02 20

  • Don't use BOM in UTF8Encoding
  • Backend generates new lines on its own without having to rely on super heavy NormalizeWhitespace function. This should get rid of very long compile times when traversing deeper into a library. Debugging the generated C# code with Visual Studio will only work properly when running with -debug and -nocache flags
  • improved type unification cleverness and stability
  • Helpbrowser: chat language buttons added
  • AppExporter "Export" button gives immediate feeedback

0193 31 01 20

  • fixed pin-reordering in signatures as reported here: https://discourse.vvvv.org/t/2019-2-0081-pin-reordering-buggy-behavior/18132
  • Removed private flags between our package dependencies as it caused msbuild to skip copying certain assemblies coming from VL.CoreLib as well as making our packages smaller.
  • Fixed parts of patches being grayed out and when traversing inside becoming all good - compiler was missing one iteration in recursive blobs -https://discourse.vvvv.org/t/lazy-type-inference/18066
  • improved support for helppatches
  • Reworked error handling of CreateDefault and RegisterServices operations
  • Extended the general renaming code path to handle all cases and removed obsolete rename commands
  • The Micorsoft Build Tools 2019 are now optional. If not installed the Export menu entry will be disabled
  • Removed the .vl suffix on generated executable and fixed Run button

0169 22 01 20

0140 09 01 20

  • Fixed ToObservable (Switch Factory) - used by many reactive nodes - not calling the factory after the element type changed due to a hotswap
  • Added HighDPI awareness to App.config for exported apps
  • Fixed stack overflow when patching a CreateDefault - system will now generate an error as long as the output is not connected
  • The default value of a record will again be cached in a static field
  • Fixed serializer serializing auto-generated fields
  • OSCMessage (Split) now returns timetag
  • CTRL+Shift+F now also finds interfaces
  • updated VL.OpenCV to 0.2.133
  • fixed problem with pin-editor for serializable types like Rectangle
  • Splash screen shows up in taskbar and has proper icon
  • Counter Clamp/Wrap/Mirror reset under/overflow correctly
  • NodeBrowser now has a TextBox that can select/copy/paste
  • Fixed regression that bang and press IO boxes would sometimes stick to true

0081 16 12 19

0026 10 12 19

0015 06 12 19

  • Patch drawing is antialiased and icons are showing again
  • Fix for drawing transparent PNGs
  • Fixed regression that delegate regions wouldn't create their pins anymore
  • Emit exception will show first error now as it's message
  • Fixed specialized operations not being marked as unused if there containing type was - seehttps://discourse.vvvv.org/t/gamma-x-2-breaking-not-opening-old-patches/18036

Compared to the 2019.1 series

Features
  • Export to executable
  • Faster startup and less memory consumption due to precompiled libs
  • Recursive operations and datatypes
  • Runtime errors: marked node is now always correct
  • Generated C# code can be debugged using Visual Studio
  • Help patches (where available) open when pressing F1 on a selected node
Breaking Changes

Unfortunately this preview introduces some breaking changes. This means that projects that were working fine with 2019.1 previews may no longer work correctly with 2019.2 previews! If you encounter such a situation and cannot resolve it on your own, please get in touch via forum or chat! Here is a list of possible problems you may encounter:

  • Existing patches may need additional type annotations due to changes in the type unification
  • Execution order of nodes may be different if it wasn't explicitly expressed before
  • Generic type parameters in an interface patch will now always belong to that defined interface (and not any of its operations)
  • Not really breaking, still a change: Runtime errors: no values in tooltips when in pause state

For technical details please see the blog post about the New Roslyn based backend.


We'll update this blogpost with new preview-releases regularly. Please check back often and report your findings in the chat, forum or a comment below!

Yours truely,
devvvvs.

joreg, Wednesday, Mar 4th 2020 Digg | Tweet | Delicious 1 comments  

Previously on vvvv: vvvvhat happened in January 2020


Bonjour from paris,

where I was happy to witness a short AV performance by dottore which he developed as part of a residency with us. vvvv gamma + VL.Xenko used to its finest...

Still by Natan Sinigaglia

Right after we had a nice vvvv meetup in a local bar and talked Xenko and timelines till late. Up next are workshops on Tuesday and Thursday and a presentation at Ircam on Friday.

Meanwhile back on vvvv.org we opened a new store and our call for creative coder in residency is still going till March 8!

With vvvv gamma we're getting closer to a release-candidate phase. We still have a few known issues we want to sort out before, but no more show stoppers. Please follow our progress and fetch latest previews from here.

Contributions

An update:

And there's been quite some action in the work-in-progress section on the forum:

Gallery

readme and Max about "Beathoven" at the last vvvv meetup in Berlin

Jobs


That was it for February. Anything to add? Please do so in the comments!

joreg, Tuesday, Mar 3rd 2020 Digg | Tweet | Delicious 1 comments  

anonymous user login

Shoutbox

~2d ago

~3d ago

joreg: Everyone go checkout this growing list of #vvvv beta tutorials by Takuma Nakata: https://www.youtube.com/playlist?list=PLK3HDkvkLePS9UKCVw1o_eb09Ocws6Wcr Thanks for those!

~3d ago

evvvvil: "Energy Confinement": Result of Tuesday's improvised live coding session on Twitch. https://www.shadertoy.com/view/WslyDl

~4d ago

m9dfukc: @siyah Yes! macOs support ... more like a distant dream but hey ;)

~4d ago

siyah: such a great news @devvvvs ps.I'm dreaming osx version (:

~4d ago

dottore: Congratulations @devvvvs!!!! :)

~6d ago

ggml: what a treat it is to sample the microdevil_intersect help patch from time to time