Example #1
0
        protected override void OnProcessOutputSchema(MutableObject newSchema)
        {
            WorldPosition.SetValue(Vector3.one, newSchema);
            MousePosition.SetValue(Vector3.one, newSchema);
            DragActive.SetValue(true, newSchema);

            Router.TransmitAllSchema(newSchema);
        }
Example #2
0
        public override IEnumerator ReceivePayload(VisualPayload payload)
        {
            var mouseSatellite = payload.VisualData.Bound.gameObject.AddComponent <MouseDragSatellite>();

            mouseSatellite.MouseDrag += (worldPos, mousePos, dragActive) =>
            {
                WorldPosition.SetValue(worldPos, payload.Data);
                MousePosition.SetValue(mousePos, payload.Data);
                DragActive.SetValue(dragActive, payload.Data);

                JobManager.Instance.StartJob(
                    Router.TransmitAll(payload),
                    jobName: "Mouse Drag",
                    startImmediately: true,
                    maxExecutionsPerFrame: 1);
            };

            yield break;
        }