Draw() 보호된 메소드

protected Draw ( GameTime gameTime ) : void
gameTime GameTime
리턴 void
예제 #1
0
        public void Draw(Game1 game, LocalPlayer player)
        {
            if (Type == 0)
            {
                DrawModel(game, model, player, Position, Rotation, 1, Vector3.One * Growth * 3, game.Loader.Fresnel2, new Vector3(0.2f, 0.4f, 0.8f) * (3 - Growth * 1.5f));
            }
            if (Type == 2)
            {
                game.FindLights(Position, 100, false, true, bounders);
                NewDrawList = game.ReturnLightList;
                NewDrawNumb = game.ReturnLightNumb;

                game.Draw(model, player, Position, Rotation, 1, new Vector3(0.5f, 0.5f, 0.5f), NewDrawNumb, NewDrawList, Vector2.One, DepthStencilState.Default, Vector3.One);
            }
        }
예제 #2
0
 public void Draw(Game1 game, LocalPlayer player)
 {
     game.Draw(game.Loader.FlagModel, player, Position, new Vector3(0, Rotation.Y, 0), 1, Vector3.One, NewDrawNumb, NewDrawList, Vector2.One, DepthStencilState.Default, new Vector3(0.5f, 2.5f, 5) * 5);
 }
예제 #3
0
        public void Draw(Game1 game, LocalPlayer player)
        {
            if (Relevent)
            {
                if (alive)
                {
                    if (NeedToFindLightList && !HasCheckedLights)
                    {
                        HasCheckedLights    = true;
                        NeedToFindLightList = false;
                        game.FindLightsLimited(Position, Vector2.Distance(Size, Vector2.Zero) / 4, false, true, Boundaries);
                        NewDrawList = (LightObject[])game.ReturnLightList.Clone();
                        NewDrawNumb = game.ReturnLightNumb;
                    }

                    if (!game.B_Holder.EffectHasSetCamera[Type, player.ID - 1])
                    {
                        ViewPositionParameter.SetValue(new Vector4(player.CameraPos, 0));
                        ViewParameter.SetValue(player.playerView);
                        ProjectionParameter.SetValue(player.playerProjection);
                        game.B_Holder.EffectHasSetCamera[Type, player.ID - 1] = true;
                    }


                    {
                        float alpha = 1;
                        if (game.B_Holder.BlockSize[Type].Y > 600)
                        {
                            alpha = Alpha[player.PlayerNumber - 1];
                            if (Vector3.Distance(Position, player.CameraPos) < 1200)
                            {
                                alpha -= 0.05f;
                                if (alpha < 0.1f)
                                {
                                    alpha = 0.1f;
                                }
                            }
                            else
                            {
                                alpha += 0.05f;
                                if (alpha > 1)
                                {
                                    alpha = 1;
                                }
                            }
                            if (game.IsInMenu)
                            {
                                alpha = 1;
                            }

                            Alpha[player.PlayerNumber - 1] = alpha;
                        }



                        if (player.playmode == LocalPlayer.PlayMode.Play && game.SectionLoaded == 0 && Type == 3)
                        {
                            if (!SwitchDraw)
                            {
                                game.Draw(game.B_Holder.BlockModel[Type], player, Position, Rotation, alpha, new Vector3(Size.X / game.B_Holder.BlockSize[Type].X, 1, Size.Y / game.B_Holder.BlockSize[Type].Z), NewDrawNumb, NewDrawList, new Vector2(1, (Size.X + Size.Y) / 600), game.B_Holder.BlockStencil[Type], Vector3.One);
                            }
                            else
                            {
                                game.Draw(game.B_Holder.BlockModel[Type], player, Position, Rotation, alpha, new Vector3(Size.Y / game.B_Holder.BlockSize[Type].X, 1, Size.X / game.B_Holder.BlockSize[Type].Z), NewDrawNumb, NewDrawList, new Vector2(1, (Size.X + Size.Y) / 600), game.B_Holder.BlockStencil[Type], Vector3.One);
                            }
                        }
                        else
                        {
                            // if (!SwitchDraw)
                            game.Draw(this, game.B_Holder.BlockModel[Type], player, alpha, NewDrawNumb, NewDrawList, game.B_Holder.BlockStencil[Type], Vector3.One);
                            // else
                            //    game.Draw(this, game.B_Holder.BlockModel[Type], player, Position, Rotation, alpha, new Vector3(Size.Y / game.B_Holder.BlockSize[Type].X, 1, Size.X / game.B_Holder.BlockSize[Type].Z), NewDrawNumb, NewDrawList, new Vector2(1, (Size.X + Size.Y) / 600), game.B_Holder.BlockStencil[Type], Vector3.One);
                        }
                    }
                }
            }
        }