void Start() { bookmarks = new ulong[n_bookmarks]; _bodyFrames = new Queue <RGBDBodyFrame>(); _trackedBodies = new Dictionary <uint, RGBDBody>(); _eventQueue = new Queue <RGBDStreamEventArgs>(); _state = RGBD_STATE.IDLE; oiudp = GetComponent <UDPConnector>(); sfs = GetComponent <StreamFrameSource>(); _audio = GetComponent <RGBDAudio>(); _defaultTransform = sfs.cameraTransform; _recordedTransform = (new GameObject("_kinect_recorded")).transform; _recordedTransform.parent = transform; //cameraKinectView.transform.parent = _recordedTransform; //cameraKinectView.transform.localPosition = Vector3.zero; //cameraKinectView.transform.localRotation = Quaternion.identity; last_idle = Time.time + 1.0f; }
// CALLED FROM DIFFERENT THREAD(?) public void UpdateState(ConfigMessage cm) { ClearBodies(); RGBD_STATE new_state = cm.live ? RGBD_STATE.LIVE : RGBD_STATE.REPLAYING; if (_state != RGBD_STATE.REPLAYING && new_state == RGBD_STATE.REPLAYING) { QueueEvent(new RGBDStreamEventArgs("REPLAY_STARTED")); } if (_state != RGBD_STATE.LIVE && new_state == RGBD_STATE.LIVE) { QueueEvent(new RGBDStreamEventArgs("REPLAY_STOPPED")); if (_audio != null) { _audio.Clear(); } } if (new_state == RGBD_STATE.LIVE) { Debug.Log("Live"); sfs.cameraTransform = _defaultTransform; _replay_t0 = 0; } if (new_state == RGBD_STATE.REPLAYING) { Debug.Log("Replaying"); _replay_t0 = NOW(); if (_audio != null) { _audio.Clear(); } sfs.cameraTransform = _recordedTransform; dce = cm.extrinsics; } _state = new_state; }