Script pour note midi vers variable FSM

Règles du forum
Attention, si vous postez un lien vers un package (en guise d'exemple), assurez-vous qu'il ne contient que des éléments personnels et/ou libres de droit (donc sans l'asset PlayMaker dedans)

Sinon c'est assimilé à du piratage par diffusion sans autorisation de contenus protégés

Les modos auront alors comme consigne de carrément supprimer votre question
mozz
Messages : 2
Inscription : 29 Août 2016 00:07

Script pour note midi vers variable FSM

Message par mozz » 29 Sep 2016 00:21

Bonjour à tous, débutant sur unity j'ai besoin de réaliser un projet de controle d'un personnage en 3d via des informations midi envoyées par Live Ableton.
j'ai une version de Unity 5 free avec MidiUnified et Playmaker, j'arrive à faire changer l'animation de mon personnage en passant par un script qui déclenche un trigger ou un bool de la fenêtre Animator mais je voudrais passer par Playmaker et du coup récupérer les éléments de mon message midi (canal, note, vélocité) dans des variables FSM de playmaker mais là je bloque complêtement!!!
Pourriez vous me filer un petit coup de main?
voici mon premier script qui déclenche un bool lorsque la note midi spécifié est jouée :

Code : Tout sélectionner

using UnityEngine;
using System.Collections;
using ForieroEngine.MIDIUnified;
using HutongGames.PlayMaker;

public class MusicCubetest2 : MonoBehaviour
{
public int midiIndex = 60;

	Animator anim;
	void Awake ()
	{
		MidiOut.ShortMessageEvent += ShortMessage;
		anim = GetComponent<Animator> ();
	}
	void ShortMessage (int Command, int Data1, int Data2)
	{
		if (Command.ToMidiCommand () == 144 && Data1 == midiIndex) {
			anim.SetBool ("Eye2", true);
		}

		if (Command.ToMidiCommand () == 128 && Data1 == midiIndex) {
			anim.SetBool ("Eye2", false);
		}
	}
}

mozz
Messages : 2
Inscription : 29 Août 2016 00:07

Re: Script pour note midi vers variable FSM

Message par mozz » 29 Sep 2016 00:24

j'imagine qu'il faudrait mélanger le premier script avec un du genre de celui ci :

Code : Tout sélectionner

using UnityEngine;
using HutongGames.PlayMaker;

public class Mybehavior : MonoBehaviour
{
	    public PlayMakerFSM fsm;

	    void Update()
	    {
		        // getting fsm variables by name
		        FsmInt intVariable = fsm.FsmVariables.GetFsmInt("mymidimessage");

		        // setting fsm variable value
		        intVariable.Value = LA NOTE MIDI;     
		    }
}

Avatar de l’utilisateur
Thyriax
Messages : 221
Inscription : 09 Mars 2011 11:57
Contact :

Re: Script pour note midi vers variable FSM

Message par Thyriax » 04 Oct 2016 08:09

Salut !
Je ne connais pas du tout MidiUnified , mais d'après ce que je vois sur l'Asset Store, il est livré avec des actions Playmaker.
Il doit y avoir un moyen de récupérer les variables dont tu as besoin.
De plus, dans les actions Playmaker, tu en as toute une panoplie relative a l"Animator" d'Unity.

Bon courage!

Répondre

Revenir vers « Vos Questions »