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

fr.VL

English

VL est un nouveau langage de programmation visuelle disponible dans vvvv. Il combine certains aspects de la programmation orientée objet avec celui du dataflow. Il génère directement du CIL (Common Intermediate Language) et peut également utiliser des librairies .NET. vvvv et VL vivent en harmonie. Si jamais vous êtes bloqué à essayer de résoudre un problème avec vvvv, il y a de fortes chances que VL puisse vous sauver la mise. Vous aurez vraisemblablement de moins en moins besoin de basculer sur du C# en cas de problème.

Features

Définition d'une particule (Particle) avec des propriétés (position, velocity, radius) et des opérations Create (blanc), Update (gris) et Hittest (bleu)

Types

En plus des types primitifs comme String, Value, Color,... VL vous permet de patcher vos propres types plus complexes disposant de fonctions, et vous permet également d'en générer dynamiquement des instances.

Iteration sur un spread de Particles et suppression automatique de celles dont le Lifetime est supérieur à 100

Régions, boucles

Dans vvvv, les boucles sont gérées automatiquement grâce à un spreading automatique au sein des nodes. VL donne cette responsabilité au patcher, lui ouvrant un tout nouveau monde de possibilités.

Patchez des opérations sans assigner de type aux entrées ou aux sorties

Génériques

La programmation générique est largement supportée dans les langages de programmation modernes. Il s'agit du fait d'implémenter des opérations sans se soucier du type sur lequel elles vont opérer lors de l'exécution du programme. Il s'agit dans VL du fonctionnement par défaut, ce qui s'avère pratique pour créer des librairies fonctionnant avec n'importe-quel type de données.

Déclenchement de l'exécution d'une requête web dans une région asynchrone afin de pas bloquer la mainloop

Régions asynchrones

Parfois, certains bouts d'un patch mettent plus de temps à s'exécuter, mais ne doivent pas bloquer la mainloop. Pour ce genre de cas, VL dispose de régions asynchrones (Async regions). Tout ce qui s'y trouve est calculé dans un thread en arrière-plan et un résultat est retourné lorsque l'opération est terminée.

Décide lors de l'exécution du programme s'il faut classer par temps ou par id

Delegates

Dans VL, les opérations peuvent circuler via des liens. De cette manière, un patch peut invoquer lors de son exécution une opération qui n'avait pas été définie en amont.. Il s'agit d'un pattern très puissant dans le dev moderne qui fait de l'utilisation de génériques et de la programmation modulaire un jeu d'enfant.

Gère les événements MIDI lorsqu'ils arrivent et ne renvoie que les messages Controller à la sortie MIDI (sans toucher à la Mainloop)

Observables

VL utilise les Observables pour la gestion d'événements. Cette approche fonctionne à merveille avec le paradigme du dataflow et s'avère très flexible.

Pour commencer

VL est inclus dans vvvv depuis la beta35. Voilà de quoi vous mettre sur les rails :

VL en action

Certaines nodes disponibles dans vvvv tournent déjà grâce à VL. Voici une liste non exhaustive, juste pour vous faire une idée :

  • Editing Framework (Cameras, Point/BezierEditors)
  • Nodes Arduino/Firmata
  • Encodeurs et décodeurs TUIO
  • Lecteur fichiers MIDI

anonymous user login

Shoutbox

~24h ago

joreg: Release Candidate 3 for #vvvv beta39 is out: beta39-release-candidate Please test and report your findings!

~1d ago

young47: Will visit Köln and Düsseldorf this week. I'm an artist from Moscow, would be happy to meet someone! If you will be there, reply :)

~1d ago

microdee: vpm got a clean-up update. Download here: https://github.com/vvvvpm/vpm/releases/tag/1.3

~3d ago

joreg: @udo2013 please note that bass is only available with x86 builds!

~3d ago

aeckheim: Can't find the visual c++ runtime 2008. setup.exe link leads to nowhere. try to setup newest beta version

~4d ago

joreg: More #vvvv workshop dates for the coming months are announced: upcoming-full-day-vvvv-gamma-workshops-in-berlin

~6d ago

mburk: @synth can confirm crashes with instance noodles. studio drivers fixed it.

~7d ago

synth: @nissidis: So i am not crazy! Thanks for confirmation :) These are the things i do have problems with as well.

~7d ago

nissidis: @synth I do with Instance Noodles and FieldTrip (RTX 2080) I rolled back to Studio Drivers (instead of GameReady ones)