Démarrage rapide
Créer une scène pilotable avec une action, une variable et le client MDM.
Objectif
Créer en quelques minutes une lampe dont Pulse Control peut changer l'intensité et l'état.
1. Créer le composant pilotable
Créez PulseLamp.cs :
using PulseSDK.Attributes;
using PulseSDK.Core;
using UnityEngine;
public sealed class PulseLamp : PulseBehaviour
{
[SerializeField] private Light target;
[SerializeField, Range(0f, 1f)] private float intensity = 1f;
[PulseVariable("lamp.intensity", Min = 0f, Max = 1f)]
public float Intensity
{
get => intensity;
set
{
intensity = value;
ApplyState();
}
}
[PulseAction("lamp.toggle")]
public void Toggle()
{
target.enabled = !target.enabled;
}
private void Awake() => ApplyState();
private void ApplyState()
{
if (target != null)
target.intensity = intensity;
}
}Pourquoi une propriété ? Son setter centralise l'effet visuel, que la valeur vienne de l'Inspector, de votre jeu ou d'un SET Pulse. Le clamp 0–1 est également publié dans le schéma.
2. Préparer la scène
- Ajoutez une
Light, puis le composantPulseLampà un GameObject. - Affectez la lumière au champ Target.
- Créez un GameObject nommé
Pulse Runtime. - Ajoutez Pulse Manager, puis Pulse MDM Client à ce GameObject.
- Laissez l'URL
ws://127.0.0.1:10002pour une application exécutée sur le casque avec le broker local. - Activez Connect On Start.
PulseMDMClient est dans l'espace de noms global : vous n'avez pas de using particulier à ajouter pour ce composant.
3. Lancer et valider
Passez en Play Mode avec un broker accessible. À la connexion, le client rejoint la room PULSE_SDK avec le rôle sdk, utilise Application.identifier comme identifiant, puis envoie le SCHEMA.
Dans le testeur ou Pulse Control, vérifiez que :
- l'action
lamp.toggleapparaît et inverse l'état de la lumière ; - la variable
lamp.intensityapparaît avec une valeur initiale ; - un
SETentre 0 et 1 modifie réellement l'intensité.
Un changement fait localement dans Unity après l'envoi du schéma n'est pas automatiquement renvoyé en DELTA par la version 0.1.3.
Ce que vous devez avoir à la fin
- Un objet
Pulse RuntimeportePulseManageretPulseMDMClient. - Un
PulseLampactif est enregistré. - Le contrôleur reçoit
lamp.toggleetlamp.intensity. -
CMDetSETproduisent un effet visible dans Unity.
Étape suivante : choisir et fiabiliser la connexion.
Cette page vous a-t-elle aidé ?
Dernière mise à jour le