示例#1
0
 public MapHeadRenderer()
 {
     for (int i = 0; i < _playerRenders.Length; i++)
     {
         _playerRenders[i] = new PlayerHeadDrawRenderTargetContent();
     }
 }
示例#2
0
        public void DrawPlayerHead(Camera camera, Player drawPlayer, Vector2 position, float alpha = 1f, float scale = 1f, Color borderColor = default(Color))
        {
            PlayerHeadDrawRenderTargetContent playerHeadDrawRenderTargetContent = _playerRenders[drawPlayer.whoAmI];

            playerHeadDrawRenderTargetContent.UsePlayer(drawPlayer);
            playerHeadDrawRenderTargetContent.Request();
            _anyDirty = true;
            _drawData.Clear();
            if (playerHeadDrawRenderTargetContent.IsReady)
            {
                RenderTarget2D target = playerHeadDrawRenderTargetContent.GetTarget();
                _drawData.Add(new DrawData(target, position, null, Color.White, 0f, ((Texture2D)target).Size() / 2f, scale, SpriteEffects.None, 0));
                RenderDrawData(drawPlayer);
            }
        }
示例#3
0
        public void DrawPlayerHead(
            Camera camera,
            Player drawPlayer,
            Vector2 position,
            float alpha       = 1f,
            float scale       = 1f,
            Color borderColor = default(Color))
        {
            PlayerHeadDrawRenderTargetContent playerRender = this._playerRenders[drawPlayer.whoAmI];

            playerRender.UsePlayer(drawPlayer);
            playerRender.Request();
            this._anyDirty = true;
            this._drawData.Clear();
            if (!playerRender.IsReady)
            {
                return;
            }
            RenderTarget2D target = playerRender.GetTarget();

            this._drawData.Add(new DrawData((Texture2D)target, position, new Rectangle?(), Color.White, 0.0f, target.Size() / 2f, scale, SpriteEffects.None, 0));
            this.RenderDrawData(drawPlayer);
        }