Ejemplo n.º 1
0
        private void ChangeScene(int i)
        {
            var sceneCount = Enum.GetNames(typeof(DebugScenes)).Length;

            currentScene = (DebugScenes)((i + (int)currentScene + sceneCount) % sceneCount);

            currentText.Text = currentScene.ToString();

            spriteComponent.Enabled      = false;
            modelComponent.Enabled       = false;
            modelComponent2.Enabled      = false;
            modelComponent3.Enabled      = false;
            entity.Transform.Scale       = new Vector3(1);
            entity.Transform.Position    = new Vector3(0);
            entity.Transform.Rotation    = Quaternion.Identity;
            entity.Transform.LocalMatrix = Matrix.Identity;
            entity.Transform.UseTRS      = true;
            entity2.Transform.UseTRS     = false;

            switch (currentScene)
            {
            case DebugScenes.Orientation:
                entity.Transform.Position  = new Vector3(0, 0, -0.6f);
                entity3.Transform.Position = new Vector3(0, 0, 0.6f);
                entity.Transform.Scale     = new Vector3(0.5f);
                entity3.Transform.Scale    = new Vector3(0.5f);
                modelComponent.Enabled     = true;
                modelComponent2.Enabled    = true;
                modelComponent3.Enabled    = true;
                modelComponent.Model       = teapot;
                break;

            case DebugScenes.UserAccel:
            case DebugScenes.Gravity:
            case DebugScenes.RawAccel:
                entity.Transform.UseTRS      = false;
                spriteComponent.Enabled      = true;
                spriteComponent.Color        = sceneToColor[currentScene];
                spriteComponent.CurrentFrame = 0;
                break;

            case DebugScenes.Gyroscope:
                entity.Transform.Scale = new Vector3(0.5f);
                modelComponent.Enabled = true;
                modelComponent.Model   = teapot;
                break;

            case DebugScenes.Compass:
                spriteComponent.Enabled      = true;
                spriteComponent.Color        = Color.Red;
                spriteComponent.CurrentFrame = 0;
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }
        }
Ejemplo n.º 2
0
        private void ChangeScene(int i)
        {
            var sceneCount = Enum.GetNames(typeof(DebugScenes)).Length;
            currentScene = (DebugScenes)((i + (int)currentScene + sceneCount) % sceneCount);

            currentText.Text = currentScene.ToString();

            spriteComponent.Enabled = false;
            modelComponent.Enabled = false;
            modelComponent2.Enabled = false;
            modelComponent3.Enabled = false;
            entity.Transform.Scale = new Vector3(1);
            entity.Transform.Position = new Vector3(0);
            entity.Transform.Rotation = Quaternion.Identity;
            entity.Transform.LocalMatrix = Matrix.Identity;
            entity.Transform.UseTRS = true;
            entity2.Transform.UseTRS = false;

            var provider = spriteComponent.SpriteProvider as SpriteFromSheet;
            switch (currentScene)
            {
                case DebugScenes.Orientation:
                    entity.Transform.Position = new Vector3(0, 0, -0.6f);
                    entity3.Transform.Position = new Vector3(0, 0, 0.6f);
                    entity.Transform.Scale = new Vector3(0.5f);
                    entity3.Transform.Scale = new Vector3(0.5f);
                    modelComponent.Enabled = true;
                    modelComponent2.Enabled = true;
                    modelComponent3.Enabled = true;
                    modelComponent.Model = teapot;
                    break;
                case DebugScenes.UserAccel:
                case DebugScenes.Gravity:
                case DebugScenes.RawAccel:
                    entity.Transform.UseTRS = false;
                    spriteComponent.Enabled = true;
                    spriteComponent.Color = sceneToColor[currentScene];
                    if (provider != null)
                        provider.CurrentFrame = 0;
                    break;
                case DebugScenes.Gyroscope:
                    entity.Transform.Scale = new Vector3(0.5f);
                    modelComponent.Enabled = true;
                    modelComponent.Model = teapot;
                    break;
                case DebugScenes.Compass:
                    spriteComponent.Enabled = true;
                    spriteComponent.Color = Color.Red;
                    if (provider != null)
                        provider.CurrentFrame = 0;
                    break;
                default:
                    throw new ArgumentOutOfRangeException();
            }
        }