Exemple #1
0
        private void SetShotManagerData()
        {
            foreach (Shot shot in ShotManager.Instance.shots)
            {
                ShotData shotData = new ShotData
                {
                    name    = shot.name,
                    start   = shot.start,
                    end     = shot.end,
                    enabled = shot.enabled
                };

                shotData.cameraName = "";
                if (null != shot.camera)
                {
                    Utils.GetTransformRelativePathTo(shot.camera.transform, rootTransform, out shotData.cameraName);
                }

                SceneData.Current.shots.Add(shotData);
            }
        }
Exemple #2
0
        private void LoadShot(ShotData data)
        {
            GameObject cam = null;

            if (data.cameraName.Length > 0)
            {
                Transform cameraTransform = rootTransform.Find(data.cameraName);
                if (null == cameraTransform)
                {
                    Debug.LogWarning($"Object name not found for camera: {data.cameraName}");
                    return;
                }
                cam = cameraTransform.gameObject;
            }

            ShotManager.Instance.AddShot(new Shot
            {
                name    = data.name,
                start   = data.start,
                end     = data.end,
                enabled = data.enabled,
                camera  = cam
            });
        }
Exemple #3
0
        public void FromBytes(byte[] buffer, ref int index)
        {
            for (int i = 0; i < 6; i++)
            {
                if (buffer[i] != headerBuffer[i])
                {
                    throw new Exception("Invalid VRtist file Header");
                }
            }
            index += 6;

            fileVersion = Converter.GetInt(buffer, ref index);
            if (fileVersion > version)
            {
                throw new Exception("File version mismatch, please update VRtist");
            }


            int objectsCount = Converter.GetInt(buffer, ref index);

            for (int i = 0; i < objectsCount; i++)
            {
                ObjectData data = new ObjectData();
                data.FromBytes(buffer, ref index);
                objects.Add(data);
            }

            int lightsCount = Converter.GetInt(buffer, ref index);

            for (int i = 0; i < lightsCount; i++)
            {
                LightData data = new LightData();
                data.FromBytes(buffer, ref index);
                lights.Add(data);
            }

            int camerasCount = Converter.GetInt(buffer, ref index);

            for (int i = 0; i < camerasCount; i++)
            {
                CameraData data = new CameraData();
                data.FromBytes(buffer, ref index);
                cameras.Add(data);
            }

            skyData = new SkySettings
            {
                topColor    = Converter.GetColor(buffer, ref index),
                middleColor = Converter.GetColor(buffer, ref index),
                bottomColor = Converter.GetColor(buffer, ref index)
            };

            int animationsCount = Converter.GetInt(buffer, ref index);

            for (int i = 0; i < animationsCount; i++)
            {
                AnimationData data = new AnimationData();
                data.FromBytes(buffer, ref index);
                animations.Add(data);
            }

            int rigCount = Converter.GetInt(buffer, ref index);

            for (int i = 0; i < rigCount; i++)
            {
                RigData data = new RigData();
                data.FromBytes(buffer, ref index);
                rigs.Add(data);
            }

            fps          = Converter.GetFloat(buffer, ref index);
            startFrame   = Converter.GetInt(buffer, ref index);
            endFrame     = Converter.GetInt(buffer, ref index);
            currentFrame = Converter.GetInt(buffer, ref index);

            int constraintsCount = Converter.GetInt(buffer, ref index);

            for (int i = 0; i < constraintsCount; i++)
            {
                ConstraintData data = new ConstraintData();
                data.FromBytes(buffer, ref index);
                constraints.Add(data);
            }

            int shotsCount = Converter.GetInt(buffer, ref index);

            for (int i = 0; i < shotsCount; i++)
            {
                ShotData data = new ShotData();
                data.FromBytes(buffer, ref index);
                shots.Add(data);
            }

            playerData = new PlayerData();
            playerData.FromBytes(buffer, ref index);
        }