Ejemplo n.º 1
0
        public void LabelDraw_Billboard(Matrix world)
        {
            // Always draw unparented children :fatcat:
            foreach (var c in UnparentedChildren)
            {
                c.LabelDraw_Billboard(world);
            }

            if (!(EnableDbgLabelDraw && DBG.GetCategoryEnableDbgLabelDraw(Category)))
            {
                return;
            }

            if (DbgLabels.Count > 0)
            {
                foreach (var label in DbgLabels.OrderByDescending(lbl => (GFX.World.CameraLocationInWorld.Position - Vector3.Transform(Vector3.Zero, lbl.World)).LengthSquared()))
                {
                    DBG.Draw3DBillboard(label.Text, label.World * Transform.WorldMatrix * world, label.Color);
                }
            }

            foreach (var c in Children)
            {
                c.LabelDraw_Billboard(Transform.WorldMatrix * world);
            }
        }
Ejemplo n.º 2
0
        public void LabelDraw(Matrix world)
        {
            // Always draw unparented children :fatcat:
            foreach (var c in UnparentedChildren)
            {
                c.LabelDraw(world);
            }

            if (!(EnableDbgLabelDraw && DBG.GetCategoryEnableDbgLabelDraw(Category)))
            {
                return;
            }

            if (DbgLabels.Count > 0)
            {
                foreach (var label in DbgLabels)
                {
                    DBG.DrawTextOn3DLocation_FixedPixelSize(label.World * Transform.WorldMatrix * world, Vector3.Zero,
                                                            label.Text, label.Color, label.Height * 1.5f, startAndEndSpriteBatchForMe: false);
                }
            }

            foreach (var c in Children)
            {
                c.LabelDraw(Transform.WorldMatrix * world);
            }
        }