» 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

~7h ago

tonfilm: even more #GPU #debugging with #renderdoc and #vvvv #dx11: debug-dx11-frames-with-renderdoc

~18h ago

lev: Heyy. Any vvvv guys in Amsterdam now?

~1d ago

StiX: @vnm there is contrib, just search forums and page

~2d ago

vnm: Hi! How can I get PC-name in VVVV?

~2d ago

mediadog: @fleg Yes, will be premiering a new public work at Times Square the 25th - drop a line!

~3d ago

vasilis: Really nice!