完善文件格式
This commit is contained in:
@@ -194,7 +194,7 @@
|
|||||||
//
|
//
|
||||||
openFileDialog_Skel.AddExtension = false;
|
openFileDialog_Skel.AddExtension = false;
|
||||||
openFileDialog_Skel.AddToRecent = false;
|
openFileDialog_Skel.AddToRecent = false;
|
||||||
openFileDialog_Skel.Filter = "skel 文件 (*.skel; *.json)|*.skel;*.json";
|
openFileDialog_Skel.Filter = "skel 文件 (*.skel; *.json)|*.skel;*.json|所有文件 (*.*)|*.*";
|
||||||
openFileDialog_Skel.Multiselect = true;
|
openFileDialog_Skel.Multiselect = true;
|
||||||
//
|
//
|
||||||
// BatchOpenSpineDialog
|
// BatchOpenSpineDialog
|
||||||
|
|||||||
4
SpineViewer/Dialogs/OpenSpineDialog.Designer.cs
generated
4
SpineViewer/Dialogs/OpenSpineDialog.Designer.cs
generated
@@ -232,13 +232,13 @@
|
|||||||
//
|
//
|
||||||
openFileDialog_Skel.AddExtension = false;
|
openFileDialog_Skel.AddExtension = false;
|
||||||
openFileDialog_Skel.AddToRecent = false;
|
openFileDialog_Skel.AddToRecent = false;
|
||||||
openFileDialog_Skel.Filter = "skel 文件 (*.skel; *.json)|*.skel;*.json";
|
openFileDialog_Skel.Filter = "skel 文件 (*.skel; *.json)|*.skel;*.json|所有文件 (*.*)|*.*";
|
||||||
//
|
//
|
||||||
// openFileDialog_Atlas
|
// openFileDialog_Atlas
|
||||||
//
|
//
|
||||||
openFileDialog_Atlas.AddExtension = false;
|
openFileDialog_Atlas.AddExtension = false;
|
||||||
openFileDialog_Atlas.AddToRecent = false;
|
openFileDialog_Atlas.AddToRecent = false;
|
||||||
openFileDialog_Atlas.Filter = "atlas 文件 (*.atlas)|*.atlas";
|
openFileDialog_Atlas.Filter = "atlas 文件 (*.atlas)|*.atlas|所有文件 (*.*)|*.*";
|
||||||
//
|
//
|
||||||
// OpenSpineDialog
|
// OpenSpineDialog
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -118,10 +118,10 @@
|
|||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
</resheader>
|
</resheader>
|
||||||
<metadata name="openFileDialog_Skel.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
<metadata name="openFileDialog_Skel.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
<value>156, 25</value>
|
<value>75, 24</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
<metadata name="openFileDialog_Atlas.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
<metadata name="openFileDialog_Atlas.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
<value>404, 23</value>
|
<value>317, 22</value>
|
||||||
</metadata>
|
</metadata>
|
||||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
|||||||
@@ -49,22 +49,29 @@ namespace SpineViewer.Spine.Implementations
|
|||||||
public Spine36(string skelPath, string? atlasPath = null) : base(skelPath, atlasPath)
|
public Spine36(string skelPath, string? atlasPath = null) : base(skelPath, atlasPath)
|
||||||
{
|
{
|
||||||
atlas = new Atlas(AtlasPath, textureLoader);
|
atlas = new Atlas(AtlasPath, textureLoader);
|
||||||
if (Path.GetExtension(SkelPath) == ".skel")
|
try
|
||||||
{
|
{
|
||||||
|
// 先尝试二进制文件
|
||||||
skeletonJson = null;
|
skeletonJson = null;
|
||||||
skeletonBinary = new SkeletonBinary(atlas);
|
skeletonBinary = new SkeletonBinary(atlas);
|
||||||
skeletonData = skeletonBinary.ReadSkeletonData(SkelPath);
|
skeletonData = skeletonBinary.ReadSkeletonData(SkelPath);
|
||||||
}
|
}
|
||||||
else if (Path.GetExtension(SkelPath) == ".json")
|
catch
|
||||||
{
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
// 再尝试 Json 文件
|
||||||
skeletonBinary = null;
|
skeletonBinary = null;
|
||||||
skeletonJson = new SkeletonJson(atlas);
|
skeletonJson = new SkeletonJson(atlas);
|
||||||
skeletonData = skeletonJson.ReadSkeletonData(SkelPath);
|
skeletonData = skeletonJson.ReadSkeletonData(SkelPath);
|
||||||
}
|
}
|
||||||
else
|
catch
|
||||||
{
|
{
|
||||||
|
// 都不行就报错
|
||||||
throw new ArgumentException($"Unknown skeleton file format {SkelPath}");
|
throw new ArgumentException($"Unknown skeleton file format {SkelPath}");
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
animationStateData = new AnimationStateData(skeletonData);
|
animationStateData = new AnimationStateData(skeletonData);
|
||||||
skeleton = new Skeleton(skeletonData);
|
skeleton = new Skeleton(skeletonData);
|
||||||
animationState = new AnimationState(animationStateData);
|
animationState = new AnimationState(animationStateData);
|
||||||
|
|||||||
@@ -51,24 +51,30 @@ namespace SpineViewer.Spine.Implementations
|
|||||||
public Spine38(string skelPath, string? atlasPath = null) : base(skelPath, atlasPath)
|
public Spine38(string skelPath, string? atlasPath = null) : base(skelPath, atlasPath)
|
||||||
{
|
{
|
||||||
atlas = new Atlas(AtlasPath, textureLoader);
|
atlas = new Atlas(AtlasPath, textureLoader);
|
||||||
if (Path.GetExtension(SkelPath) == ".skel")
|
try
|
||||||
{
|
{
|
||||||
|
// 先尝试二进制文件
|
||||||
skeletonJson = null;
|
skeletonJson = null;
|
||||||
skeletonBinary = new SkeletonBinary(atlas);
|
skeletonBinary = new SkeletonBinary(atlas);
|
||||||
skeletonData = skeletonBinary.ReadSkeletonData(SkelPath);
|
skeletonData = skeletonBinary.ReadSkeletonData(SkelPath);
|
||||||
}
|
}
|
||||||
else if (Path.GetExtension(SkelPath) == ".json")
|
catch
|
||||||
{
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
// 再尝试 Json 文件
|
||||||
skeletonBinary = null;
|
skeletonBinary = null;
|
||||||
skeletonJson = new SkeletonJson(atlas);
|
skeletonJson = new SkeletonJson(atlas);
|
||||||
skeletonData = skeletonJson.ReadSkeletonData(SkelPath);
|
skeletonData = skeletonJson.ReadSkeletonData(SkelPath);
|
||||||
}
|
}
|
||||||
else
|
catch
|
||||||
{
|
{
|
||||||
|
// 都不行就报错
|
||||||
throw new ArgumentException($"Unknown skeleton file format {SkelPath}");
|
throw new ArgumentException($"Unknown skeleton file format {SkelPath}");
|
||||||
}
|
}
|
||||||
animationStateData = new AnimationStateData(skeletonData);
|
}
|
||||||
|
|
||||||
|
animationStateData = new AnimationStateData(skeletonData);
|
||||||
skeleton = new Skeleton(skeletonData);
|
skeleton = new Skeleton(skeletonData);
|
||||||
animationState = new AnimationState(animationStateData);
|
animationState = new AnimationState(animationStateData);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user