![Protoflux](/images/thumb/c/ca/Protoflux_Logo_Color_1080.png/300px-Protoflux_Logo_Color_1080.png)
ProtoFlux est un language de scripting graphique qui peut être manipulé dans l'espace 3D avec l'outil ProtoFlux.
ProtoFlux est la cerise sur le gateau de nous outils créatifs - le language de programmation visuel le plus puissant que notre équipe expérimenté a crée et vous permettant de prototyper et construire tout ce que vous voulez, de simples interactions a des jeux complexes - avec une collaboration et exécution en temps réel.
Vous pouvez tout créer, d'avatars ou monde a des systèmes complexes.
Utilisation
ProtoFlux est représenté dans le monde avec des nodes qui peuvent être matérialisées avec le navigateur de nodes ProtoFlux qui est lui-même matérialisable depuis l'outil ProtoFlux.
Vous pouvez matérialiser un outil ProtoFlux en allant dans le dossier Resonite Essentials de votre Inventaire pour commencer a programmer (l'outil lui-même est dans le dossier "Tools").
Pour voir une liste de nodes, allez sur liste de nodes en mode navigateur pour une vue comme dans le jeu ou liste de nodes par ordre alphabétique pour une liste complète. Toutes les pages de node ont des liens vers les deux listes.
Pour commencer a utiliser ProtoFlux, vous devez en premier matérialiser l'outil ProtoFlux depuis le dossier mentionné ci-dessus. Une fois équipé, le navigateur de nodes ProtoFlux peut être trouvé dans le menu contextuel. Pour sélectionner une node, double cliques sur celle-ci avec l'outil. Cela va faire apparaître le nom de la node au-dessus de l'outil. Double-cliquez pour matérialiser la node.
Vous pouvez aussi sélectionner des nodes qui existent déjà avec votre bouton secondaire en pointant la node.
Les nodes peuvent être connectées en pointant le laser au point de connexion de la node et en tenant le bouton primaire (trigger pour la plupart des manettes) et en faisant un glisser-déposer sur le point de connexion d'une autre node. Cette connexion peut être coupée en tenant le bouton primaire, ce qui va faire apparaître une ligne rouge que vous devez collisionner avec la connexion que vous voulez retirer.
Interfacer avec des composants / slots
Pour changer ou lire les propriétés d'un slot ou composant, saisissez le composant avec votre manette (ou clic droit en Desktop) en pointant a un champ avec l'outil ProtoFlux (par exemple, pointez et saisissez le champ "Position" sur un slot). Tout en gardant le champ saisi, ouvrez votre menu contextuel ce qui vous donnera plus d'options.
Sourcer: Cela va matérialiser une node qui référence la source de cette propriété. Cela est utile pour lire une valeur mais aussi l'écrire avec ProtoFlux.
Conduire: Cela va matérialiser une node vous permettant de continuellement écrire une valeur dans la variable.
Référencer: Cela va matérialiser une node vous permettant d'avoir une référence vers le champ. Cela est utile pour les nodes comme ProtoFlux:Tween Value qui demandent la référence d'une valeur changeante.
Emballer / Déballer ProtoFlux
Pour emballer ProtoFlux, tenez votre bouton secondaire en visant un groupe de nodes en utilisant l'outil ProtoFlux. Les nodes devraient devenir bleues, cela indique que le groupe a été sélectionné (cela vous permet même de bouger toutes les nodes sélectionnées comme un seul objet).
Une fois les nodes sélectionnés, créez un Slot vide avec l'inspecteur. Cela va être le slot dans lequel ProtoFlux va être emballé. Ensuite, saisissez le slot avec l'outil ProtoFlux et ouvrez votre menu contextuel; dans celui-ci, cliquez sur "Emballer dans". Une fois emballé, ProtoFlux va toujours fonctionner normalement mais ne sera plus présent visuellement dans le monde.
Pour le déballer, saisissez le même slot que vous venez d'utiliser avec un outil ProtoFlux, ouvrez votre menu contextuel et cliquez sur "Déballer".
Variables
Dans ProtoFlux, il y a trois types de variables génériques:
Le type de variable le plus simple est le Data Model Store. Il est automatiquement synchronisé a tous les utilisateurs quand il est écrit. Les scripts les plus simples peuvent êtres faits avec celui-ci mais peuvent avoir un impact sur la performance si sur-utilisés.
Le second dans la liste est un Store. Il est similaire aux variables standard dans tous les languages de programmation. Il n'est cependant pas synchronisé sur le réseau, ce qui peut causer de la désynchronisation.
En dernier, nous avons les Locals. Chaque Local est instancié pour une chaîne d’exécution différente. Si votre ProtoFlux est appelé deux fois a la suite, la variable sera lue et écrite dans chaque contexte qui sera unique. Cette variable est supprimée quand l’exécution se finis.
Impulses
Voir Impulses