예제 #1
0
 public virtual void Draw(ARGraphDealer dealer)
 {
     if (CurrentActiveScene != null)
     {
         CurrentActiveScene.Draw(dealer);
     }
 }
예제 #2
0
        protected override void Initialize()
        {
            models.Add(new IllModel(@"Combined\Combined", new Vector3(0, 0, 0), new Vector3(0, MathHelper.ToRadians(0), 0), ScreenWidth / 0.34f
                                    , this));
            models.Add(new IllModel(@"chahu\chahu", new Vector3(0, 0, 0), new Vector3(0, MathHelper.ToRadians(0), 0), ScreenWidth / 0.34f
                                    , this));
            models.Add(new IllModel(@"huaping\huaping", new Vector3(0, 0, 0), new Vector3(0, MathHelper.ToRadians(0), 0), 0.3f * ScreenWidth / 0.34f
                                    , this));
            models.Add(new IllModel(@"floor\floor", new Vector3(0, 0, 0), new Vector3(0, MathHelper.ToRadians(0), 0), 0.2f * ScreenWidth / 0.34f
                                    , this));

            graphDealer      = new ARGraphDealer(this);
            camera1          = new ARBaseCamera(new Vector3(0, 0, 1), new Vector3(0, 0, -2), graphDealer.Projection);
            camera1.Position = new Vector3(0, 0, 0.4f);
            graphDealer.SetCamera(camera1);
            updateDealer = new ARUpdateDealer(this);
            //GraphicsDeviceManager.ToggleFullScreen();

            if (kinectbool && KinectSensor.KinectSensors.Count > 0)
            {
                kinect = new KinectComponent(this);
                Components.Add(kinect);
            }

            bloom          = new BloomComponent(this);
            bloom.Settings = BloomSettings.PresetSettings[0];
            //bloom.Visible = false;
            Components.Add(bloom);

            base.Initialize();
        }
예제 #3
0
        protected override void Initialize()
        {
            updateDealer  = new ARUpdateDealer(this);
            graphDealer   = new ARGraphDealer(this);
            supdateDealer = new ARUpdateDealer(this);


            base.Initialize();
        }
예제 #4
0
 public override void Draw(ARGraphDealer dealer)
 {
     if (modelPath != "")
     {
         if (model == null)
         {
             model = dealer.Game.Content.Load <Model>(modelPath);
         }
         dealer.ModelDrawer.DrawXNAModel(model, dealer.Camera, World);
     }
     base.Draw(dealer);
 }
예제 #5
0
 public virtual void Draw(ARGraphDealer dealer)
 {
     foreach (T o in memberList)
     {
         if (!IsItemRemoving(o))
         {
             if (o is IARDrawable)
             {
                 ((IARDrawable)o).Draw(dealer);
             }
         }
     }
 }
예제 #6
0
        public void Draw(ARGraphDealer dealer)
        {
            if (loadedTexture == null)
            {
                loadedTexture = dealer.Game.Content.Load <Texture2D>(texture);
            }
            projectedPosition = Vector4.Transform(new Vector4(absolutePosition, 1), dealer.Camera.View * dealer.Camera.Projection);
            Vector2 size           = new Vector2(loadedTexture.Width * scale, loadedTexture.Height * scale);
            Vector2 screenPosition = absolutePosition.Project(dealer.Camera, dealer.Game.GraphicsDevice.Viewport);

            size = size * dealer.Camera.Projection.M11 / projectedPosition.W * dealer.Game.GraphicsDevice.Viewport.Height / 2;
            Rectangle t = new Rectangle((int)(screenPosition.X - size.X / 2), (int)(screenPosition.Y - size.Y / 2), (int)(size.X), (int)(size.Y));

            dealer.Painter.SpriteBatch.Begin();
            dealer.Painter.SpriteBatch.Draw(loadedTexture
                                            , t
                                            , null
                                            , Color.White
                                            , 0
                                            , Vector2.Zero
                                            , SpriteEffects.None
                                            , 0.5f);
            dealer.Painter.SpriteBatch.End();
        }
예제 #7
0
 public virtual void Draw(ARGraphDealer dealer)
 {
     currentStage.Draw(dealer);
 }
예제 #8
0
 public virtual void Draw(ARGraphDealer dealer)
 {
 }
예제 #9
0
 public virtual void Draw(ARGraphDealer dealer)
 {
     model.Draw(dealer);
 }