diff --git a/SpineViewer/Spine/Implementations/SpineObject/SpineObject21.cs b/SpineViewer/Spine/Implementations/SpineObject/SpineObject21.cs
index 6644e01..d5e3a5c 100644
--- a/SpineViewer/Spine/Implementations/SpineObject/SpineObject21.cs
+++ b/SpineViewer/Spine/Implementations/SpineObject/SpineObject21.cs
@@ -105,7 +105,7 @@ namespace SpineViewer.Spine.Implementations.SpineObject
}
}
SlotAttachmentNames = slotAttachments.ToFrozenDictionary(item => item.Key, item => item.Value.Keys.ToImmutableArray());
- SkinNames = skeletonData.Skins.Select(v => v.Name).Where(v => v != "default").ToImmutableArray();
+ SkinNames = skeletonData.Skins.Select(v => v.Name).ToImmutableArray();
AnimationNames = [EMPTY_ANIMATION, .. skeletonData.Animations.Select(v => v.Name)];
skeleton = new Skeleton(skeletonData) { Skin = new(Guid.NewGuid().ToString()) }; // 挂载一个空皮肤当作容器
@@ -199,7 +199,8 @@ namespace SpineViewer.Spine.Implementations.SpineObject
protected override void addSkin(string name)
{
- if (skeletonData.FindSkin(name) is Skin sk)
+ // default 不需要加载
+ if (name != "default" && skeletonData.FindSkin(name) is Skin sk)
{
// XXX: 3.7 及以下不支持 AddSkin
foreach (var (k, v) in sk.Attachments)
diff --git a/SpineViewer/Spine/Implementations/SpineObject/SpineObject36.cs b/SpineViewer/Spine/Implementations/SpineObject/SpineObject36.cs
index 7ee6830..293d67d 100644
--- a/SpineViewer/Spine/Implementations/SpineObject/SpineObject36.cs
+++ b/SpineViewer/Spine/Implementations/SpineObject/SpineObject36.cs
@@ -104,7 +104,7 @@ namespace SpineViewer.Spine.Implementations.SpineObject
}
}
SlotAttachmentNames = slotAttachments.ToFrozenDictionary(item => item.Key, item => item.Value.Keys.ToImmutableArray());
- SkinNames = skeletonData.Skins.Select(v => v.Name).Where(v => v != "default").ToImmutableArray();
+ SkinNames = skeletonData.Skins.Select(v => v.Name).ToImmutableArray();
AnimationNames = [EMPTY_ANIMATION, .. skeletonData.Animations.Select(v => v.Name)];
skeleton = new Skeleton(skeletonData) { Skin = new(Guid.NewGuid().ToString()) }; // 挂载一个空皮肤当作容器
@@ -198,7 +198,8 @@ namespace SpineViewer.Spine.Implementations.SpineObject
protected override void addSkin(string name)
{
- if (skeletonData.FindSkin(name) is Skin sk)
+ // default 不需要加载
+ if (name != "default" && skeletonData.FindSkin(name) is Skin sk)
{
// XXX: 3.7 及以下不支持 AddSkin
foreach (var (k, v) in sk.Attachments)
diff --git a/SpineViewer/Spine/Implementations/SpineObject/SpineObject37.cs b/SpineViewer/Spine/Implementations/SpineObject/SpineObject37.cs
index 457afd7..74231de 100644
--- a/SpineViewer/Spine/Implementations/SpineObject/SpineObject37.cs
+++ b/SpineViewer/Spine/Implementations/SpineObject/SpineObject37.cs
@@ -101,7 +101,7 @@ namespace SpineViewer.Spine.Implementations.SpineObject
}
}
SlotAttachmentNames = slotAttachments.ToFrozenDictionary(item => item.Key, item => item.Value.Keys.ToImmutableArray());
- SkinNames = skeletonData.Skins.Select(v => v.Name).Where(v => v != "default").ToImmutableArray();
+ SkinNames = skeletonData.Skins.Select(v => v.Name).ToImmutableArray();
AnimationNames = [EMPTY_ANIMATION, .. skeletonData.Animations.Select(v => v.Name)];
skeleton = new Skeleton(skeletonData) { Skin = new(Guid.NewGuid().ToString()) }; // 挂载一个空皮肤当作容器
@@ -169,7 +169,8 @@ namespace SpineViewer.Spine.Implementations.SpineObject
protected override void addSkin(string name)
{
- if (skeletonData.FindSkin(name) is Skin sk)
+ // default 不需要加载
+ if (name != "default" && skeletonData.FindSkin(name) is Skin sk)
{
// XXX: 3.7 及以下不支持 AddSkin
foreach (var (k, v) in sk.Attachments)
diff --git a/SpineViewer/Spine/Implementations/SpineObject/SpineObject38.cs b/SpineViewer/Spine/Implementations/SpineObject/SpineObject38.cs
index 279bceb..d67f959 100644
--- a/SpineViewer/Spine/Implementations/SpineObject/SpineObject38.cs
+++ b/SpineViewer/Spine/Implementations/SpineObject/SpineObject38.cs
@@ -108,7 +108,7 @@ namespace SpineViewer.Spine.Implementations.SpineObject
}
}
SlotAttachmentNames = slotAttachments.ToFrozenDictionary(item => item.Key, item => item.Value.Keys.ToImmutableArray());
- SkinNames = skeletonData.Skins.Select(v => v.Name).Where(v => v != "default").ToImmutableArray();
+ SkinNames = skeletonData.Skins.Select(v => v.Name).ToImmutableArray();
AnimationNames = [EMPTY_ANIMATION, .. skeletonData.Animations.Select(v => v.Name)];
skeleton = new Skeleton(skeletonData) { Skin = new(Guid.NewGuid().ToString()) }; // 挂载一个空皮肤当作容器
@@ -176,7 +176,8 @@ namespace SpineViewer.Spine.Implementations.SpineObject
protected override void addSkin(string name)
{
- if (skeletonData.FindSkin(name) is Skin sk)
+ // default 不需要加载
+ if (name != "default" && skeletonData.FindSkin(name) is Skin sk)
{
skeleton.Skin.AddSkin(sk);
skeleton.SetSlotsToSetupPose();
diff --git a/SpineViewer/Spine/Implementations/SpineObject/SpineObject40.cs b/SpineViewer/Spine/Implementations/SpineObject/SpineObject40.cs
index eb8078c..012fc22 100644
--- a/SpineViewer/Spine/Implementations/SpineObject/SpineObject40.cs
+++ b/SpineViewer/Spine/Implementations/SpineObject/SpineObject40.cs
@@ -104,7 +104,7 @@ namespace SpineViewer.Spine.Implementations.SpineObject
}
}
SlotAttachmentNames = slotAttachments.ToFrozenDictionary(item => item.Key, item => item.Value.Keys.ToImmutableArray());
- SkinNames = skeletonData.Skins.Select(v => v.Name).Where(v => v != "default").ToImmutableArray();
+ SkinNames = skeletonData.Skins.Select(v => v.Name).ToImmutableArray();
AnimationNames = [EMPTY_ANIMATION, .. skeletonData.Animations.Select(v => v.Name)];
skeleton = new Skeleton(skeletonData) { Skin = new(Guid.NewGuid().ToString()) }; // 挂载一个空皮肤当作容器
@@ -172,7 +172,8 @@ namespace SpineViewer.Spine.Implementations.SpineObject
protected override void addSkin(string name)
{
- if (skeletonData.FindSkin(name) is Skin sk)
+ // default 不需要加载
+ if (name != "default" && skeletonData.FindSkin(name) is Skin sk)
{
skeleton.Skin.AddSkin(sk);
skeleton.SetSlotsToSetupPose();
diff --git a/SpineViewer/Spine/Implementations/SpineObject/SpineObject41.cs b/SpineViewer/Spine/Implementations/SpineObject/SpineObject41.cs
index f4f5365..7e0be0f 100644
--- a/SpineViewer/Spine/Implementations/SpineObject/SpineObject41.cs
+++ b/SpineViewer/Spine/Implementations/SpineObject/SpineObject41.cs
@@ -104,7 +104,7 @@ namespace SpineViewer.Spine.Implementations.SpineObject
}
}
SlotAttachmentNames = slotAttachments.ToFrozenDictionary(item => item.Key, item => item.Value.Keys.ToImmutableArray());
- SkinNames = skeletonData.Skins.Select(v => v.Name).Where(v => v != "default").ToImmutableArray();
+ SkinNames = skeletonData.Skins.Select(v => v.Name).ToImmutableArray();
AnimationNames = [EMPTY_ANIMATION, .. skeletonData.Animations.Select(v => v.Name)];
skeleton = new Skeleton(skeletonData) { Skin = new(Guid.NewGuid().ToString()) }; // 挂载一个空皮肤当作容器
@@ -172,7 +172,8 @@ namespace SpineViewer.Spine.Implementations.SpineObject
protected override void addSkin(string name)
{
- if (skeletonData.FindSkin(name) is Skin sk)
+ // default 不需要加载
+ if (name != "default" && skeletonData.FindSkin(name) is Skin sk)
{
skeleton.Skin.AddSkin(sk);
skeleton.SetSlotsToSetupPose();
diff --git a/SpineViewer/Spine/Implementations/SpineObject/SpineObject42.cs b/SpineViewer/Spine/Implementations/SpineObject/SpineObject42.cs
index 46cab74..0b6606f 100644
--- a/SpineViewer/Spine/Implementations/SpineObject/SpineObject42.cs
+++ b/SpineViewer/Spine/Implementations/SpineObject/SpineObject42.cs
@@ -104,7 +104,7 @@ namespace SpineViewer.Spine.Implementations.SpineObject
}
}
SlotAttachmentNames = slotAttachments.ToFrozenDictionary(item => item.Key, item => item.Value.Keys.ToImmutableArray());
- SkinNames = skeletonData.Skins.Select(v => v.Name).Where(v => v != "default").ToImmutableArray();
+ SkinNames = skeletonData.Skins.Select(v => v.Name).ToImmutableArray();
AnimationNames = [EMPTY_ANIMATION, .. skeletonData.Animations.Select(v => v.Name)];
skeleton = new Skeleton(skeletonData) { Skin = new(Guid.NewGuid().ToString()) }; // 挂载一个空皮肤当作容器
@@ -172,7 +172,8 @@ namespace SpineViewer.Spine.Implementations.SpineObject
protected override void addSkin(string name)
{
- if (skeletonData.FindSkin(name) is Skin sk)
+ // default 不需要加载
+ if (name != "default" && skeletonData.FindSkin(name) is Skin sk)
{
skeleton.Skin.AddSkin(sk);
skeleton.SetSlotsToSetupPose();
diff --git a/SpineViewer/Spine/SpineObject.cs b/SpineViewer/Spine/SpineObject.cs
index 135e9f0..a10ba79 100644
--- a/SpineViewer/Spine/SpineObject.cs
+++ b/SpineViewer/Spine/SpineObject.cs
@@ -93,8 +93,8 @@ namespace SpineViewer.Spine
tex.Display();
Preview = tex.Texture.CopyToBitmap();
- // 初始化皮肤加载情况
- foreach (var n in SkinNames) skinLoadStatus[n] = false;
+ // 初始化皮肤加载情况, 不需要记录 default
+ foreach (var n in SkinNames.Where(v => v != "default")) skinLoadStatus[n] = false;
// 默认初始化10个动画空位
for (int i = 0; i < 10; i++) setAnimation(i, AnimationNames.First());
@@ -359,7 +359,7 @@ namespace SpineViewer.Spine
///
/// 查询皮肤加载状态, 皮肤不存在时返回 false
///
- public bool GetSkinStatus(string name) { lock (_lock) return skinLoadStatus.TryGetValue(name, out var status) && status; }
+ public bool GetSkinStatus(string name) { lock (_lock) return name == "default" || skinLoadStatus.TryGetValue(name, out var status) && status; }
///
/// 设置皮肤加载状态, 忽略不存在的皮肤
diff --git a/SpineViewer/Spine/SpineView/SpineSkinProperty.cs b/SpineViewer/Spine/SpineView/SpineSkinProperty.cs
index 93c3f60..69661fa 100644
--- a/SpineViewer/Spine/SpineView/SpineSkinProperty.cs
+++ b/SpineViewer/Spine/SpineView/SpineSkinProperty.cs
@@ -66,7 +66,7 @@ namespace SpineViewer.Spine.SpineView
private class SkinPropertyDescriptor(string name, Attribute[]? attributes) : PropertyDescriptor(name, attributes)
{
public override Type ComponentType => typeof(SpineSkinProperty);
- public override bool IsReadOnly => false;
+ public override bool IsReadOnly => Name == "default";
public override Type PropertyType => typeof(bool);
public override bool CanResetValue(object component) => false;
public override void ResetValue(object component) { }