调整调试输出逻辑

This commit is contained in:
ww-rm
2025-10-02 10:23:51 +08:00
parent d5b7a74520
commit 0d72d8749a

View File

@@ -628,7 +628,7 @@ namespace Spine
if (DebugRegions) if (DebugRegions)
{ {
vt.Color = AttachmentLineColor; vt.Color = AttachmentLineColor;
foreach (var slot in _skeleton.Slots.Where(s => s.Bone.Active && !s.Disabled)) foreach (var slot in _skeleton.IterDrawOrder().Where(s => s.A > 0 && s.Bone.Active && !s.Disabled))
{ {
if (slot.Attachment is IRegionAttachment regionAttachment) if (slot.Attachment is IRegionAttachment regionAttachment)
{ {
@@ -660,7 +660,7 @@ namespace Spine
if (DebugMeshes) if (DebugMeshes)
{ {
vt.Color = MeshLineColor; vt.Color = MeshLineColor;
foreach (var slot in _skeleton.Slots.Where(s => s.Bone.Active && !s.Disabled)) foreach (var slot in _skeleton.IterDrawOrder().Where(s => s.A > 0 && s.Bone.Active && !s.Disabled))
{ {
if (slot.Attachment is IMeshAttachment meshAttachment) if (slot.Attachment is IMeshAttachment meshAttachment)
{ {
@@ -696,7 +696,7 @@ namespace Spine
if (DebugMeshHulls) if (DebugMeshHulls)
{ {
vt.Color = AttachmentLineColor; vt.Color = AttachmentLineColor;
foreach (var slot in _skeleton.Slots.Where(s => s.Bone.Active && !s.Disabled)) foreach (var slot in _skeleton.IterDrawOrder().Where(s => s.A > 0 && s.Bone.Active && !s.Disabled))
{ {
if (slot.Attachment is IMeshAttachment meshAttachment) if (slot.Attachment is IMeshAttachment meshAttachment)
{ {
@@ -742,7 +742,7 @@ namespace Spine
if (DebugClippings) if (DebugClippings)
{ {
vt.Color = ClippingLineColor; vt.Color = ClippingLineColor;
foreach (var slot in _skeleton.Slots.Where(s => s.Bone.Active && !s.Disabled)) foreach (var slot in _skeleton.IterDrawOrder().Where(s => s.A > 0 && s.Bone.Active && !s.Disabled))
{ {
if (slot.Attachment is IClippingAttachment clippingAttachment) if (slot.Attachment is IClippingAttachment clippingAttachment)
{ {
@@ -799,7 +799,7 @@ namespace Spine
if (DebugBones) if (DebugBones)
{ {
var width = Math.Max(Math.Abs(_skeleton.ScaleX), Math.Abs(_skeleton.ScaleY)); var width = Math.Max(Math.Abs(_skeleton.ScaleX), Math.Abs(_skeleton.ScaleY));
foreach (var bone in _skeleton.Bones.Where(b => b.Active)) foreach (var bone in _skeleton.IterDrawOrder().Where(s => s.A > 0 && s.Bone.Active && !s.Disabled).Select(st => st.Bone))
{ {
var boneLength = bone.Length; var boneLength = bone.Length;
var p1 = new SFML.System.Vector2f(bone.WorldX, bone.WorldY); var p1 = new SFML.System.Vector2f(bone.WorldX, bone.WorldY);
@@ -815,7 +815,7 @@ namespace Spine
if (DebugBones) if (DebugBones)
{ {
var radius = Math.Max(Math.Abs(_skeleton.ScaleX), Math.Abs(_skeleton.ScaleY)); var radius = Math.Max(Math.Abs(_skeleton.ScaleX), Math.Abs(_skeleton.ScaleY));
foreach (var bone in _skeleton.Bones.Where(b => b.Active)) foreach (var bone in _skeleton.IterDrawOrder().Where(s => s.A > 0 && s.Bone.Active && !s.Disabled).Select(st => st.Bone))
{ {
DrawCirclePoint(target, new(bone.WorldX, bone.WorldY), BonePointColor, radius); DrawCirclePoint(target, new(bone.WorldX, bone.WorldY), BonePointColor, radius);
} }