Compare commits
53 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6f9b357473 | ||
|
|
152d842043 | ||
|
|
d16f97d574 | ||
|
|
d28eabaca5 | ||
|
|
b730f677be | ||
|
|
8f8806417a | ||
|
|
06694c9e89 | ||
|
|
e9b0ce3db2 | ||
|
|
4c72608398 | ||
|
|
7e99882fbf | ||
|
|
0d72d8749a | ||
|
|
d5b7a74520 | ||
|
|
0202027edb | ||
|
|
d1d32b6292 | ||
|
|
b32485e122 | ||
|
|
36d578f4d4 | ||
|
|
42bd5c2830 | ||
|
|
44548618e8 | ||
|
|
681b1be360 | ||
|
|
30dee9978c | ||
|
|
47aafc7948 | ||
|
|
1d8e2efdff | ||
|
|
dd504d32ca | ||
|
|
267c7b81c3 | ||
|
|
c4a6fd9d86 | ||
|
|
6e46152e4c | ||
|
|
f2f296e494 | ||
|
|
34f9eeff2c | ||
|
|
1278fefea2 | ||
|
|
48d46afcff | ||
|
|
6742dacaf2 | ||
|
|
3337ecc03a | ||
|
|
b9eaacd1f7 | ||
|
|
a0ada51325 | ||
|
|
8e03911957 | ||
|
|
0b3db0fd0d | ||
|
|
bb2862ed4f | ||
|
|
8c3be98b54 | ||
|
|
b76224c010 | ||
|
|
bd9f8d714a | ||
|
|
6900968555 | ||
|
|
741d334a92 | ||
|
|
b583108afa | ||
|
|
f7ace4dfe9 | ||
|
|
7ce2bd5629 | ||
|
|
41716df7b2 | ||
|
|
fe9b9829e2 | ||
|
|
4365c2a008 | ||
|
|
7896e072e7 | ||
|
|
940397c673 | ||
|
|
d57ea781f0 | ||
|
|
b74f2811a7 | ||
|
|
66223f952b |
2
.github/ISSUE_TEMPLATE/bug_report.md
vendored
2
.github/ISSUE_TEMPLATE/bug_report.md
vendored
@@ -15,4 +15,4 @@ assignees: ''
|
|||||||
如果有必要,提供报错时的有关截图。/If applicable, add screenshots to help explain your problem.
|
如果有必要,提供报错时的有关截图。/If applicable, add screenshots to help explain your problem.
|
||||||
|
|
||||||
## 附件(可选)/Attachments (Optional)
|
## 附件(可选)/Attachments (Optional)
|
||||||
请将会**出现问题的文件**以及**日志文件**打包成一个 ZIP 后作为附件贴在 issue 内。/Please compress the problematic files and the log files into a single ZIP archive and attach it to this issue.
|
请将会**出现问题的文件**以及**日志文件**打包成一个 ZIP 后作为附件贴在 issue 内,日志文件位于程序目录下的 `logs` 文件夹内。/Please compress the problematic files and the log files into a single ZIP archive and attach it to this issue. The log files are located in the `logs` folder under the program directory.
|
||||||
|
|||||||
31
CHANGELOG.md
31
CHANGELOG.md
@@ -1,5 +1,36 @@
|
|||||||
# CHANGELOG
|
# CHANGELOG
|
||||||
|
|
||||||
|
## v0.16.3
|
||||||
|
|
||||||
|
- 修复加载工作区时的顺序错误
|
||||||
|
- 调整部分调试渲染的逻辑
|
||||||
|
- 完善命中检测逻辑
|
||||||
|
|
||||||
|
## v0.16.2
|
||||||
|
|
||||||
|
- 修复批量添加时的添加顺序错误
|
||||||
|
- 增加精确命中检测和插槽输出功能
|
||||||
|
- 部分代码重构
|
||||||
|
|
||||||
|
## v0.16.1
|
||||||
|
|
||||||
|
- 修复 3.4 版本存在的附件残留问题
|
||||||
|
|
||||||
|
## v0.16.0
|
||||||
|
|
||||||
|
- 增加最小化至托盘图标功能
|
||||||
|
- 调整部分参数项的顺序
|
||||||
|
- 增加开机自启和自启文件设置
|
||||||
|
- 切换桌面投影时自动设置预览分辨率为主屏幕分辨率
|
||||||
|
- 修复 3.4 版本下可能存在的附件残留问题
|
||||||
|
|
||||||
|
## v0.15.19
|
||||||
|
|
||||||
|
- 模型重载后选中最后一个重载模型
|
||||||
|
- 修复 3.4 版本可能的奇数顶点数组导致的越界崩溃问题
|
||||||
|
- 移除参数自动记录中的背景图片路径
|
||||||
|
- 增加测试性桌面投影功能
|
||||||
|
|
||||||
## v0.15.18
|
## v0.15.18
|
||||||
|
|
||||||
- 完善窗口日志颜色标记
|
- 完善窗口日志颜色标记
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<TargetFramework>net8.0-windows</TargetFramework>
|
<TargetFramework>net8.0-windows</TargetFramework>
|
||||||
<BaseOutputPath>$(SolutionDir)out</BaseOutputPath>
|
<BaseOutputPath>$(SolutionDir)out</BaseOutputPath>
|
||||||
<IncludeSourceRevisionInInformationalVersion>false</IncludeSourceRevisionInInformationalVersion>
|
<IncludeSourceRevisionInInformationalVersion>false</IncludeSourceRevisionInInformationalVersion>
|
||||||
<Version>0.15.18</Version>
|
<Version>0.16.0</Version>
|
||||||
<UseWPF>true</UseWPF>
|
<UseWPF>true</UseWPF>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
|
|||||||
87
README.en.md
87
README.en.md
@@ -8,29 +8,32 @@
|
|||||||
|
|
||||||
A simple and user-friendly Spine file viewer and exporter with multi-language support (Chinese/English/Japanese).
|
A simple and user-friendly Spine file viewer and exporter with multi-language support (Chinese/English/Japanese).
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
|
https://github.com/user-attachments/assets/37b6b730-088a-4352-827a-c338127a16f0
|
||||||
|
|
||||||
## Features
|
## Features
|
||||||
|
|
||||||
* Supports multiple versions of Spine files.
|
- Multiple versions of Spine files
|
||||||
* Batch open files via drag-and-drop or copy-paste.
|
- Batch file opening via drag-and-drop or copy-paste
|
||||||
* Batch preview functionality.
|
- Batch preview
|
||||||
* List-based multi-skeleton viewing and render order management.
|
- List-based multi-skeleton viewing and render order management
|
||||||
* Batch adjustment of skeleton parameters using multi-selection.
|
- Multi-selection in lists for batch skeleton parameter settings
|
||||||
* Multi-track animation settings.
|
- Multi-track animation settings
|
||||||
* Skin and custom slot attachment settings.
|
- Skin and custom slot attachment settings
|
||||||
* Custom slot visibility settings.
|
- Custom slot visibility
|
||||||
* Debug rendering support.
|
- Debug rendering
|
||||||
* View/model/track time scale adjustment.
|
- Playback speed adjustment for view/model/track timelines
|
||||||
* Track alpha blending parameter settings.
|
- Track alpha blending parameter settings
|
||||||
* Fullscreen preview mode.
|
- Fullscreen preview
|
||||||
* Export to single frame/image sequence/animated GIF/video formats.
|
- Export to single frame, image sequence, animated GIF, or video file
|
||||||
* Automatic resolution batch export.
|
- Automatic resolution batch export
|
||||||
* FFmpeg custom export support.
|
- Custom export with FFmpeg
|
||||||
* Program parameter saving.
|
- Program parameter saving
|
||||||
* File name extension association.
|
- File extension association
|
||||||
* Supports texture image formats other than PNG.
|
- Texture images in formats other than PNG
|
||||||
* ...
|
- Launch at startup with persistent dynamic wallpaper
|
||||||
|
- ......
|
||||||
|
|
||||||
### Supported Spine Versions
|
### Supported Spine Versions
|
||||||
|
|
||||||
@@ -78,14 +81,14 @@ In the menu, go to "File" -> "Preferences..." -> "Language," select your desired
|
|||||||
|
|
||||||
The program is organized into a left-right layout:
|
The program is organized into a left-right layout:
|
||||||
|
|
||||||
* **Left Panel:** Functionality panel.
|
- **Left Panel:** Functionality panel.
|
||||||
* **Right Panel:** Preview display.
|
- **Right Panel:** Preview display.
|
||||||
|
|
||||||
The left panel includes three sub-panels:
|
The left panel includes three sub-panels:
|
||||||
|
|
||||||
* **Browse:** Preview the content of a specified folder without importing files into the program. This panel allows generating `.webp` previews for models or importing selected models.
|
- **Browse:** Preview the content of a specified folder without importing files into the program. This panel allows generating `.webp` previews for models or importing selected models.
|
||||||
* **Model:** Lists imported models for rendering. Parameters and rendering order can be adjusted here, along with other model-related functionalities.
|
- **Model:** Lists imported models for rendering. Parameters and rendering order can be adjusted here, along with other model-related functionalities.
|
||||||
* **Display:** Adjust parameters for the right-side preview display.
|
- **Display:** Adjust parameters for the right-side preview display.
|
||||||
|
|
||||||
Hover your mouse over buttons, labels, or input fields to see help text for most UI elements.
|
Hover your mouse over buttons, labels, or input fields to see help text for most UI elements.
|
||||||
|
|
||||||
@@ -101,10 +104,10 @@ The Model panel supports right-click menus, some shortcuts, and batch adjustment
|
|||||||
|
|
||||||
For preview display adjustments:
|
For preview display adjustments:
|
||||||
|
|
||||||
* **Left-click:** Select and drag models. Hold `Ctrl` for multi-selection, synchronized with the left-side list.
|
- **Left-click:** Select and drag models. Hold `Ctrl` for multi-selection, synchronized with the left-side list.
|
||||||
* **Right-click:** Drag the entire display.
|
- **Right-click:** Drag the entire display.
|
||||||
* **Scroll wheel:** Zoom in/out. Hold `Ctrl` to scale selected models.
|
- **Scroll wheel:** Zoom in/out. Hold `Ctrl` to scale selected models.
|
||||||
* **Render selected-only mode:** In this mode, the preview only shows selected models, and selection status can only be changed via the left-side list.
|
- **Render selected-only mode:** In this mode, the preview only shows selected models, and selection status can only be changed via the left-side list.
|
||||||
|
|
||||||
The buttons below the preview display allow time adjustments, serving as a simple playback control.
|
The buttons below the preview display allow time adjustments, serving as a simple playback control.
|
||||||
|
|
||||||
@@ -116,9 +119,17 @@ Use the right-click menu in the Model panel to export selected items.
|
|||||||
|
|
||||||
Key export parameters include:
|
Key export parameters include:
|
||||||
|
|
||||||
* **Output folder:** Optional. When not specified, output is saved to the respective model folder; otherwise, all output is saved to the provided folder.
|
- **Output folder:** Optional. When not specified, output is saved to the respective model folder; otherwise, all output is saved to the provided folder.
|
||||||
* **Export single:** By default, each model is exported independently. Selecting "Export single" renders all selected models in a single frame, producing a unified output.
|
- **Export single:** By default, each model is exported independently. Selecting "Export single" renders all selected models in a single frame, producing a unified output.
|
||||||
* **Auto resolution:** Ignores the preview resolution and viewport parameters, exporting output at the actual size of the content. For animations/videos, the output matches the size required for full visibility.
|
- **Auto resolution:** Ignores the preview resolution and viewport parameters, exporting output at the actual size of the content. For animations/videos, the output matches the size required for full visibility.
|
||||||
|
|
||||||
|
### Dynamic Wallpaper
|
||||||
|
|
||||||
|
Dynamic wallpaper is implemented through desktop projection, allowing the content of the current preview to be projected onto the desktop in real time.
|
||||||
|
|
||||||
|
You can enable or disable desktop projection from the program preferences or the right-click menu of the tray icon. After adjusting the model and display parameters, you can save the current configuration as a workspace file for convenient restoration later.
|
||||||
|
|
||||||
|
If you want the wallpaper to stay active after startup, you can enable auto-start in the preferences and specify which workspace file should be loaded when the program launches.
|
||||||
|
|
||||||
### More Information
|
### More Information
|
||||||
|
|
||||||
@@ -126,12 +137,12 @@ For detailed usage and documentation, see the [Wiki](https://github.com/ww-rm/Sp
|
|||||||
|
|
||||||
## Acknowledgements
|
## Acknowledgements
|
||||||
|
|
||||||
* [spine-runtimes](https://github.com/EsotericSoftware/spine-runtimes)
|
- [spine-runtimes](https://github.com/EsotericSoftware/spine-runtimes)
|
||||||
* [SFML.Net](https://github.com/SFML/SFML.Net)
|
- [SFML.Net](https://github.com/SFML/SFML.Net)
|
||||||
* [FFMpegCore](https://github.com/rosenbjerg/FFMpegCore)
|
- [FFMpegCore](https://github.com/rosenbjerg/FFMpegCore)
|
||||||
* [HandyControl](https://github.com/HandyOrg/HandyControl)
|
- [HandyControl](https://github.com/HandyOrg/HandyControl)
|
||||||
* [NLog](https://github.com/NLog/NLog)
|
- [NLog](https://github.com/NLog/NLog)
|
||||||
* [SkiaSharp](https://github.com/mono/SkiaSharp)
|
- [SkiaSharp](https://github.com/mono/SkiaSharp)
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
17
README.md
17
README.md
@@ -4,11 +4,15 @@
|
|||||||
[](https://github.com/ww-rm/SpineViewer/releases)
|
[](https://github.com/ww-rm/SpineViewer/releases)
|
||||||
[](https://github.com/ww-rm/SpineViewer/releases)
|
[](https://github.com/ww-rm/SpineViewer/releases)
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
[中文](README.md) | [English](README.en.md)
|
[中文](README.md) | [English](README.en.md)
|
||||||
|
|
||||||
一个简单好用的 Spine 文件查看&导出程序, 支持中/英/日多语言界面.
|
Spine 文件查看&导出程序, 同时也是支持 Spine 的动态壁纸程序.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
|
https://github.com/user-attachments/assets/37b6b730-088a-4352-827a-c338127a16f0
|
||||||
|
|
||||||
## 功能
|
## 功能
|
||||||
|
|
||||||
@@ -30,6 +34,7 @@
|
|||||||
- 支持程序参数保存
|
- 支持程序参数保存
|
||||||
- 支持文件后缀关联
|
- 支持文件后缀关联
|
||||||
- 支持非 png 格式的纹理图片格式
|
- 支持非 png 格式的纹理图片格式
|
||||||
|
- 支持开机自启常驻动态壁纸
|
||||||
- ......
|
- ......
|
||||||
|
|
||||||
### Spine 版本支持
|
### Spine 版本支持
|
||||||
@@ -117,6 +122,14 @@
|
|||||||
- 导出单个. 默认是每个模型独立导出, 即对模型列表进行批量操作, 如果选择仅导出单个, 那么被导出的所有模型将在同一个画面上被渲染, 输出产物只有一份.
|
- 导出单个. 默认是每个模型独立导出, 即对模型列表进行批量操作, 如果选择仅导出单个, 那么被导出的所有模型将在同一个画面上被渲染, 输出产物只有一份.
|
||||||
- 自动分辨率. 该模式会忽略预览画面的分辨率和视区参数, 导出产物的分辨率与被导出内容的实际大小一致, 如果是动图或者视频则会与完整显示动画的必需大小一致.
|
- 自动分辨率. 该模式会忽略预览画面的分辨率和视区参数, 导出产物的分辨率与被导出内容的实际大小一致, 如果是动图或者视频则会与完整显示动画的必需大小一致.
|
||||||
|
|
||||||
|
### 动态壁纸
|
||||||
|
|
||||||
|
动态壁纸通过桌面投影实现, 可以将当前预览画面上的内容实时投影至桌面.
|
||||||
|
|
||||||
|
在程序首选项或者托盘图标右键菜单中可以进行桌面投影的启用与否, 模型和画面参数调整完成后, 可以将当前参数保存为工作区文件, 方便之后恢复该配置.
|
||||||
|
|
||||||
|
如果希望开机自启常驻壁纸, 也可以在首选项中启用开机自启, 并且设置启动后需要加载的工作区文件.
|
||||||
|
|
||||||
### 更多
|
### 更多
|
||||||
|
|
||||||
更为详细的使用方法和说明见 [Wiki](https://github.com/ww-rm/SpineViewer/wiki), 有使用上的问题或者 BUG 可以提个 [Issue](https://github.com/ww-rm/SpineViewer/issues).
|
更为详细的使用方法和说明见 [Wiki](https://github.com/ww-rm/SpineViewer/wiki), 有使用上的问题或者 BUG 可以提个 [Issue](https://github.com/ww-rm/SpineViewer/issues).
|
||||||
|
|||||||
@@ -64,10 +64,10 @@ namespace SFMLRenderer
|
|||||||
hs?.Dispose();
|
hs?.Dispose();
|
||||||
}
|
}
|
||||||
|
|
||||||
private nint HwndMessageHook(nint hwnd, int msg, nint wParam, nint lParam, ref bool handled)
|
private IntPtr HwndMessageHook(IntPtr hwnd, int msg, IntPtr wParam, IntPtr lParam, ref bool handled)
|
||||||
{
|
{
|
||||||
_renderWindow?.DispatchEvents();
|
_renderWindow?.DispatchEvents();
|
||||||
return nint.Zero;
|
return IntPtr.Zero;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
171
SFMLRenderer/SFMLRenderWindow.cs
Normal file
171
SFMLRenderer/SFMLRenderWindow.cs
Normal file
@@ -0,0 +1,171 @@
|
|||||||
|
using SFML.Graphics;
|
||||||
|
using SFML.System;
|
||||||
|
using SFML.Window;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using System.Windows.Threading;
|
||||||
|
|
||||||
|
namespace SFMLRenderer
|
||||||
|
{
|
||||||
|
public class SFMLRenderWindow : RenderWindow, ISFMLRenderer
|
||||||
|
{
|
||||||
|
private readonly DispatcherTimer _timer = new() { Interval = TimeSpan.FromMilliseconds(10) };
|
||||||
|
|
||||||
|
public SFMLRenderWindow(VideoMode mode, string title, Styles style) : base(mode, title, style)
|
||||||
|
{
|
||||||
|
SetActive(false);
|
||||||
|
_timer.Tick += (s, e) => DispatchEvents();
|
||||||
|
_timer.Start();
|
||||||
|
RendererCreated?.Invoke(this, EventArgs.Empty);
|
||||||
|
}
|
||||||
|
|
||||||
|
public event EventHandler? RendererCreated;
|
||||||
|
|
||||||
|
public event EventHandler? RendererDisposing
|
||||||
|
{
|
||||||
|
add => throw new NotImplementedException();
|
||||||
|
remove => throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public event EventHandler<MouseMoveEventArgs>? CanvasMouseMove
|
||||||
|
{
|
||||||
|
add { MouseMoved += value; }
|
||||||
|
remove { MouseMoved -= value; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public event EventHandler<MouseButtonEventArgs>? CanvasMouseButtonPressed
|
||||||
|
{
|
||||||
|
add { MouseButtonPressed += value; }
|
||||||
|
remove { MouseButtonPressed -= value; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public event EventHandler<MouseButtonEventArgs>? CanvasMouseButtonReleased
|
||||||
|
{
|
||||||
|
add { MouseButtonReleased += value; }
|
||||||
|
remove { MouseButtonReleased -= value; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public event EventHandler<MouseWheelScrollEventArgs>? CanvasMouseWheelScrolled
|
||||||
|
{
|
||||||
|
add { MouseWheelScrolled += value; }
|
||||||
|
remove { MouseWheelScrolled -= value; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public Vector2u Resolution
|
||||||
|
{
|
||||||
|
get => Size;
|
||||||
|
set => Size = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Vector2f Center
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
using var view = GetView();
|
||||||
|
return view.Center;
|
||||||
|
}
|
||||||
|
set
|
||||||
|
{
|
||||||
|
using var view = GetView();
|
||||||
|
view.Center = value;
|
||||||
|
SetView(view);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public float Zoom
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
using var view = GetView();
|
||||||
|
return Math.Abs(Size.X / view.Size.X); // XXX: 仅使用宽度进行缩放计算
|
||||||
|
}
|
||||||
|
set
|
||||||
|
{
|
||||||
|
value = Math.Abs(value);
|
||||||
|
if (value <= 0) return;
|
||||||
|
using var view = GetView();
|
||||||
|
var signX = Math.Sign(view.Size.X);
|
||||||
|
var signY = Math.Sign(view.Size.Y);
|
||||||
|
var resolution = Size;
|
||||||
|
view.Size = new(resolution.X / value * signX, resolution.Y / value * signY);
|
||||||
|
SetView(view);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public float Rotation
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
using var view = GetView();
|
||||||
|
return view.Rotation;
|
||||||
|
}
|
||||||
|
set
|
||||||
|
{
|
||||||
|
using var view = GetView();
|
||||||
|
view.Rotation = value;
|
||||||
|
SetView(view);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public bool FlipX
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
using var view = GetView();
|
||||||
|
return view.Size.X < 0;
|
||||||
|
}
|
||||||
|
set
|
||||||
|
{
|
||||||
|
using var view = GetView();
|
||||||
|
var size = view.Size;
|
||||||
|
if (size.X > 0 && value || size.X < 0 && !value)
|
||||||
|
size.X *= -1;
|
||||||
|
view.Size = size;
|
||||||
|
SetView(view);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public bool FlipY
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
using var view = GetView();
|
||||||
|
return view.Size.Y < 0;
|
||||||
|
}
|
||||||
|
set
|
||||||
|
{
|
||||||
|
using var view = GetView();
|
||||||
|
var size = view.Size;
|
||||||
|
if (size.Y > 0 && value || size.Y < 0 && !value)
|
||||||
|
size.Y *= -1;
|
||||||
|
view.Size = size;
|
||||||
|
SetView(view);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public uint MaxFps
|
||||||
|
{
|
||||||
|
get => _maxFps;
|
||||||
|
set
|
||||||
|
{
|
||||||
|
SetFramerateLimit(value);
|
||||||
|
_maxFps = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
private uint _maxFps = 0;
|
||||||
|
|
||||||
|
public bool VerticalSync
|
||||||
|
{
|
||||||
|
get => _verticalSync;
|
||||||
|
set
|
||||||
|
{
|
||||||
|
SetVerticalSyncEnabled(value);
|
||||||
|
_verticalSync = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
private bool _verticalSync = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -7,7 +7,7 @@
|
|||||||
<TargetFramework>net8.0-windows</TargetFramework>
|
<TargetFramework>net8.0-windows</TargetFramework>
|
||||||
<BaseOutputPath>$(SolutionDir)out</BaseOutputPath>
|
<BaseOutputPath>$(SolutionDir)out</BaseOutputPath>
|
||||||
<IncludeSourceRevisionInInformationalVersion>false</IncludeSourceRevisionInInformationalVersion>
|
<IncludeSourceRevisionInInformationalVersion>false</IncludeSourceRevisionInInformationalVersion>
|
||||||
<Version>0.15.4</Version>
|
<Version>0.16.0</Version>
|
||||||
<UseWPF>true</UseWPF>
|
<UseWPF>true</UseWPF>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
using SFML.Graphics;
|
using NLog;
|
||||||
|
using SFML.Graphics;
|
||||||
using SkiaSharp;
|
using SkiaSharp;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
@@ -6,7 +7,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Spine.SpineWrappers
|
namespace Spine.Implementations
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 实现不同版本的 TextureLoader
|
/// 实现不同版本的 TextureLoader
|
||||||
@@ -22,6 +23,8 @@ namespace Spine.SpineWrappers
|
|||||||
SpineRuntime41.TextureLoader,
|
SpineRuntime41.TextureLoader,
|
||||||
SpineRuntime42.TextureLoader
|
SpineRuntime42.TextureLoader
|
||||||
{
|
{
|
||||||
|
private static readonly Logger _logger = LogManager.GetCurrentClassLogger();
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 默认的全局纹理加载器
|
/// 默认的全局纹理加载器
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -44,9 +47,18 @@ namespace Spine.SpineWrappers
|
|||||||
|
|
||||||
private Texture ReadTexture(string path)
|
private Texture ReadTexture(string path)
|
||||||
{
|
{
|
||||||
|
if (!File.Exists(path))
|
||||||
|
{
|
||||||
|
_logger.Error($"Texture file not found, {path}");
|
||||||
|
throw new FileNotFoundException("Texture file not found", path);
|
||||||
|
}
|
||||||
|
|
||||||
using var codec = SKCodec.Create(path, out var result);
|
using var codec = SKCodec.Create(path, out var result);
|
||||||
if (codec is null || result != SKCodecResult.Success)
|
if (codec is null || result != SKCodecResult.Success)
|
||||||
|
{
|
||||||
|
_logger.Error($"Failed to create codec '{path}', {result}");
|
||||||
throw new InvalidOperationException($"Failed to create codec '{path}', {result}");
|
throw new InvalidOperationException($"Failed to create codec '{path}', {result}");
|
||||||
|
}
|
||||||
|
|
||||||
var width = codec.Info.Width;
|
var width = codec.Info.Width;
|
||||||
var height = codec.Info.Height;
|
var height = codec.Info.Height;
|
||||||
@@ -57,7 +69,10 @@ namespace Spine.SpineWrappers
|
|||||||
|
|
||||||
result = codec.GetPixels(info, out var pixels);
|
result = codec.GetPixels(info, out var pixels);
|
||||||
if (result != SKCodecResult.Success)
|
if (result != SKCodecResult.Success)
|
||||||
|
{
|
||||||
|
_logger.Error($"Failed to decode image '{path}', {result}");
|
||||||
throw new InvalidOperationException($"Failed to decode image '{path}', {result}");
|
throw new InvalidOperationException($"Failed to decode image '{path}', {result}");
|
||||||
|
}
|
||||||
|
|
||||||
Texture tex = new((uint)width, (uint)height);
|
Texture tex = new((uint)width, (uint)height);
|
||||||
tex.Update(pixels);
|
tex.Update(pixels);
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime21;
|
using SpineRuntime21;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
@@ -6,7 +6,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V21
|
namespace Spine.Implementations.V21
|
||||||
{
|
{
|
||||||
internal sealed class Animation21(Animation innerObject) : IAnimation
|
internal sealed class Animation21(Animation innerObject) : IAnimation
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,10 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime21;
|
using SpineRuntime21;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V21
|
namespace Spine.Implementations.V21
|
||||||
{
|
{
|
||||||
internal sealed class AnimationState21(AnimationState innerObject, SpineObjectData21 data) : IAnimationState
|
internal sealed class AnimationState21(AnimationState innerObject, SpineObjectData21 data) : IAnimationState
|
||||||
{
|
{
|
||||||
@@ -35,7 +35,7 @@ namespace Spine.Implementations.SpineWrappers.V21
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Start += f;
|
_o.Start += f;
|
||||||
@@ -64,7 +64,7 @@ namespace Spine.Implementations.SpineWrappers.V21
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.End += f;
|
_o.End += f;
|
||||||
@@ -93,7 +93,7 @@ namespace Spine.Implementations.SpineWrappers.V21
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Complete += f;
|
_o.Complete += f;
|
||||||
@@ -3,11 +3,11 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime21;
|
using SpineRuntime21;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V21.Attachments
|
namespace Spine.Implementations.V21.Attachments
|
||||||
{
|
{
|
||||||
internal abstract class Attachment21(Attachment innerObject) : IAttachment
|
internal abstract class Attachment21(Attachment innerObject) : IAttachment
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V21;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime21;
|
using SpineRuntime21;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V21.Attachments
|
namespace Spine.Implementations.V21.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class BoundingBoxAttachment21(BoundingBoxAttachment innerObject) :
|
internal sealed class BoundingBoxAttachment21(BoundingBoxAttachment innerObject) :
|
||||||
Attachment21(innerObject),
|
Attachment21(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V21.Attachments
|
|||||||
|
|
||||||
public override BoundingBoxAttachment InnerObject => _o;
|
public override BoundingBoxAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot21 st)
|
if (slot is Slot21 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V21;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime21;
|
using SpineRuntime21;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V21.Attachments
|
namespace Spine.Implementations.V21.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class MeshAttachment21(MeshAttachment innerObject) :
|
internal sealed class MeshAttachment21(MeshAttachment innerObject) :
|
||||||
Attachment21(innerObject),
|
Attachment21(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V21.Attachments
|
|||||||
|
|
||||||
public override MeshAttachment InnerObject => _o;
|
public override MeshAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot21 st)
|
if (slot is Slot21 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V21;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime21;
|
using SpineRuntime21;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V21.Attachments
|
namespace Spine.Implementations.V21.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class RegionAttachment21(RegionAttachment innerObject) :
|
internal sealed class RegionAttachment21(RegionAttachment innerObject) :
|
||||||
Attachment21(innerObject),
|
Attachment21(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V21.Attachments
|
|||||||
|
|
||||||
public override RegionAttachment InnerObject => _o;
|
public override RegionAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot21 st)
|
if (slot is Slot21 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V21;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime21;
|
using SpineRuntime21;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V21.Attachments
|
namespace Spine.Implementations.V21.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class SkinnedMeshAttachment21(SkinnedMeshAttachment innerObject) :
|
internal sealed class SkinnedMeshAttachment21(SkinnedMeshAttachment innerObject) :
|
||||||
Attachment21(innerObject),
|
Attachment21(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V21.Attachments
|
|||||||
|
|
||||||
public override SkinnedMeshAttachment InnerObject => _o;
|
public override SkinnedMeshAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot21 st)
|
if (slot is Slot21 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,10 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime21;
|
using SpineRuntime21;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V21
|
namespace Spine.Implementations.V21
|
||||||
{
|
{
|
||||||
internal sealed class Bone21(Bone innerObject, Bone21? parent = null) : IBone
|
internal sealed class Bone21(Bone innerObject, Bone21? parent = null) : IBone
|
||||||
{
|
{
|
||||||
@@ -5,10 +5,10 @@ using System.Text;
|
|||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using System.Collections.Frozen;
|
using System.Collections.Frozen;
|
||||||
using System.Collections.Immutable;
|
using System.Collections.Immutable;
|
||||||
using Spine.SpineWrappers;
|
|
||||||
using SpineRuntime21;
|
using SpineRuntime21;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V21
|
namespace Spine.Implementations.V21
|
||||||
{
|
{
|
||||||
internal sealed class Skeleton21 : ISkeleton
|
internal sealed class Skeleton21 : ISkeleton
|
||||||
{
|
{
|
||||||
@@ -52,6 +52,7 @@ namespace Spine.Implementations.SpineWrappers.V21
|
|||||||
|
|
||||||
public Skeleton InnerObject => _o;
|
public Skeleton InnerObject => _o;
|
||||||
|
|
||||||
|
public string Name => _o.Data.Name;
|
||||||
public float R { get => _o.R; set => _o.R = value; }
|
public float R { get => _o.R; set => _o.R = value; }
|
||||||
public float G { get => _o.G; set => _o.G = value; }
|
public float G { get => _o.G; set => _o.G = value; }
|
||||||
public float B { get => _o.B; set => _o.B = value; }
|
public float B { get => _o.B; set => _o.B = value; }
|
||||||
@@ -95,11 +96,6 @@ namespace Spine.Implementations.SpineWrappers.V21
|
|||||||
public void SetSlotsToSetupPose() => _o.SetSlotsToSetupPose();
|
public void SetSlotsToSetupPose() => _o.SetSlotsToSetupPose();
|
||||||
public void Update(float delta) => _o.Update(delta);
|
public void Update(float delta) => _o.Update(delta);
|
||||||
|
|
||||||
public void GetBounds(out float x, out float y, out float w, out float h)
|
|
||||||
{
|
|
||||||
_o.GetBounds(out x, out y, out w, out h);
|
|
||||||
}
|
|
||||||
|
|
||||||
public override string ToString() => _o.ToString();
|
public override string ToString() => _o.ToString();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Interfaces.Attachments;
|
||||||
using Spine.Utils;
|
using Spine.Utils;
|
||||||
using SpineRuntime21;
|
using SpineRuntime21;
|
||||||
using System;
|
using System;
|
||||||
@@ -8,7 +8,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V21
|
namespace Spine.Implementations.V21
|
||||||
{
|
{
|
||||||
internal sealed class SkeletonClipping21 : ISkeletonClipping
|
internal sealed class SkeletonClipping21 : ISkeletonClipping
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,10 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime21;
|
using SpineRuntime21;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V21
|
namespace Spine.Implementations.V21
|
||||||
{
|
{
|
||||||
internal sealed class Skin21 : ISkin
|
internal sealed class Skin21 : ISkin
|
||||||
{
|
{
|
||||||
@@ -5,10 +5,11 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.Utils;
|
using Spine.Utils;
|
||||||
using Spine.SpineWrappers;
|
|
||||||
using SpineRuntime21;
|
using SpineRuntime21;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V21
|
namespace Spine.Implementations.V21
|
||||||
{
|
{
|
||||||
internal sealed class Slot21 : ISlot
|
internal sealed class Slot21 : ISlot
|
||||||
{
|
{
|
||||||
@@ -39,7 +40,7 @@ namespace Spine.Implementations.SpineWrappers.V21
|
|||||||
public float A { get => _o.A; set => _o.A = value; }
|
public float A { get => _o.A; set => _o.A = value; }
|
||||||
public IBone Bone => _bone;
|
public IBone Bone => _bone;
|
||||||
|
|
||||||
public Spine.SpineWrappers.Attachments.IAttachment? Attachment
|
public IAttachment? Attachment
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
{
|
{
|
||||||
@@ -6,12 +6,12 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.Utils;
|
using Spine.Utils;
|
||||||
using Spine.SpineWrappers;
|
|
||||||
using Spine.SpineWrappers.Attachments;
|
|
||||||
using SpineRuntime21;
|
using SpineRuntime21;
|
||||||
using Spine.Implementations.SpineWrappers.V21.Attachments;
|
using Spine.Implementations.V21.Attachments;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V21
|
namespace Spine.Implementations.V21
|
||||||
{
|
{
|
||||||
[SpineImplementation(2, 1)]
|
[SpineImplementation(2, 1)]
|
||||||
internal sealed class SpineObjectData21 : SpineObjectData
|
internal sealed class SpineObjectData21 : SpineObjectData
|
||||||
@@ -26,7 +26,7 @@ namespace Spine.Implementations.SpineWrappers.V21
|
|||||||
private readonly ImmutableArray<IAnimation> _animations;
|
private readonly ImmutableArray<IAnimation> _animations;
|
||||||
private readonly FrozenDictionary<string, IAnimation> _animationsByName;
|
private readonly FrozenDictionary<string, IAnimation> _animationsByName;
|
||||||
|
|
||||||
public SpineObjectData21(string skelPath, string atlasPath, Spine.SpineWrappers.TextureLoader textureLoader)
|
public SpineObjectData21(string skelPath, string atlasPath, TextureLoader textureLoader)
|
||||||
: base(skelPath, atlasPath, textureLoader)
|
: base(skelPath, atlasPath, textureLoader)
|
||||||
{
|
{
|
||||||
// 加载 atlas
|
// 加载 atlas
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime21;
|
using SpineRuntime21;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
@@ -6,7 +6,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V21
|
namespace Spine.Implementations.V21
|
||||||
{
|
{
|
||||||
internal sealed class TrackEntry21(TrackEntry innerObject, AnimationState21 animationState, SpineObjectData21 data): ITrackEntry
|
internal sealed class TrackEntry21(TrackEntry innerObject, AnimationState21 animationState, SpineObjectData21 data): ITrackEntry
|
||||||
{
|
{
|
||||||
@@ -34,7 +34,7 @@ namespace Spine.Implementations.SpineWrappers.V21
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(_animationState.GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(_animationState.GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Start += f;
|
_o.Start += f;
|
||||||
@@ -63,7 +63,7 @@ namespace Spine.Implementations.SpineWrappers.V21
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(_animationState.GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(_animationState.GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.End += f;
|
_o.End += f;
|
||||||
@@ -92,7 +92,7 @@ namespace Spine.Implementations.SpineWrappers.V21
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(_animationState.GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(_animationState.GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Complete += f;
|
_o.Complete += f;
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime34;
|
using SpineRuntime34;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
@@ -6,7 +6,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V34
|
namespace Spine.Implementations.V34
|
||||||
{
|
{
|
||||||
internal sealed class Animation34(Animation innerObject) : IAnimation
|
internal sealed class Animation34(Animation innerObject) : IAnimation
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,10 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime34;
|
using SpineRuntime34;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V34
|
namespace Spine.Implementations.V34
|
||||||
{
|
{
|
||||||
internal sealed class AnimationState34(AnimationState innerObject, SpineObjectData34 data) : IAnimationState
|
internal sealed class AnimationState34(AnimationState innerObject, SpineObjectData34 data) : IAnimationState
|
||||||
{
|
{
|
||||||
@@ -36,7 +36,7 @@ namespace Spine.Implementations.SpineWrappers.V34
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Start += f;
|
_o.Start += f;
|
||||||
@@ -65,7 +65,7 @@ namespace Spine.Implementations.SpineWrappers.V34
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.End += f;
|
_o.End += f;
|
||||||
@@ -94,7 +94,7 @@ namespace Spine.Implementations.SpineWrappers.V34
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Complete += f;
|
_o.Complete += f;
|
||||||
@@ -3,11 +3,11 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime34;
|
using SpineRuntime34;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V34.Attachments
|
namespace Spine.Implementations.V34.Attachments
|
||||||
{
|
{
|
||||||
internal abstract class Attachment34(Attachment innerObject) : IAttachment
|
internal abstract class Attachment34(Attachment innerObject) : IAttachment
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V34;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime34;
|
using SpineRuntime34;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V34.Attachments
|
namespace Spine.Implementations.V34.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class BoundingBoxAttachment34(BoundingBoxAttachment innerObject) :
|
internal sealed class BoundingBoxAttachment34(BoundingBoxAttachment innerObject) :
|
||||||
Attachment34(innerObject),
|
Attachment34(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V34.Attachments
|
|||||||
|
|
||||||
public override BoundingBoxAttachment InnerObject => _o;
|
public override BoundingBoxAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot34 st)
|
if (slot is Slot34 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V34;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime34;
|
using SpineRuntime34;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V34.Attachments
|
namespace Spine.Implementations.V34.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class MeshAttachment34(MeshAttachment innerObject) :
|
internal sealed class MeshAttachment34(MeshAttachment innerObject) :
|
||||||
Attachment34(innerObject),
|
Attachment34(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V34.Attachments
|
|||||||
|
|
||||||
public override MeshAttachment InnerObject => _o;
|
public override MeshAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot34 st)
|
if (slot is Slot34 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V34;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime34;
|
using SpineRuntime34;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V34.Attachments
|
namespace Spine.Implementations.V34.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class PathAttachment34(PathAttachment innerObject) :
|
internal sealed class PathAttachment34(PathAttachment innerObject) :
|
||||||
Attachment34(innerObject),
|
Attachment34(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V34.Attachments
|
|||||||
|
|
||||||
public override PathAttachment InnerObject => _o;
|
public override PathAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot34 st)
|
if (slot is Slot34 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V34;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime34;
|
using SpineRuntime34;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V34.Attachments
|
namespace Spine.Implementations.V34.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class RegionAttachment34(RegionAttachment innerObject) :
|
internal sealed class RegionAttachment34(RegionAttachment innerObject) :
|
||||||
Attachment34(innerObject),
|
Attachment34(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V34.Attachments
|
|||||||
|
|
||||||
public override RegionAttachment InnerObject => _o;
|
public override RegionAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot34 st)
|
if (slot is Slot34 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,10 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime34;
|
using SpineRuntime34;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V34
|
namespace Spine.Implementations.V34
|
||||||
{
|
{
|
||||||
internal sealed class Bone34(Bone innerObject, Bone34? parent = null) : IBone
|
internal sealed class Bone34(Bone innerObject, Bone34? parent = null) : IBone
|
||||||
{
|
{
|
||||||
@@ -5,10 +5,10 @@ using System.Text;
|
|||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using System.Collections.Frozen;
|
using System.Collections.Frozen;
|
||||||
using System.Collections.Immutable;
|
using System.Collections.Immutable;
|
||||||
using Spine.SpineWrappers;
|
|
||||||
using SpineRuntime34;
|
using SpineRuntime34;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V34
|
namespace Spine.Implementations.V34
|
||||||
{
|
{
|
||||||
internal sealed class Skeleton34 : ISkeleton
|
internal sealed class Skeleton34 : ISkeleton
|
||||||
{
|
{
|
||||||
@@ -52,6 +52,7 @@ namespace Spine.Implementations.SpineWrappers.V34
|
|||||||
|
|
||||||
public Skeleton InnerObject => _o;
|
public Skeleton InnerObject => _o;
|
||||||
|
|
||||||
|
public string Name => _o.Data.Name;
|
||||||
public float R { get => _o.R; set => _o.R = value; }
|
public float R { get => _o.R; set => _o.R = value; }
|
||||||
public float G { get => _o.G; set => _o.G = value; }
|
public float G { get => _o.G; set => _o.G = value; }
|
||||||
public float B { get => _o.B; set => _o.B = value; }
|
public float B { get => _o.B; set => _o.B = value; }
|
||||||
@@ -95,12 +96,6 @@ namespace Spine.Implementations.SpineWrappers.V34
|
|||||||
public void SetSlotsToSetupPose() => _o.SetSlotsToSetupPose();
|
public void SetSlotsToSetupPose() => _o.SetSlotsToSetupPose();
|
||||||
public void Update(float delta) => _o.Update(delta);
|
public void Update(float delta) => _o.Update(delta);
|
||||||
|
|
||||||
public void GetBounds(out float x, out float y, out float w, out float h)
|
|
||||||
{
|
|
||||||
float[] _ = [];
|
|
||||||
_o.GetBounds(out x, out y, out w, out h);
|
|
||||||
}
|
|
||||||
|
|
||||||
public override string ToString() => _o.ToString();
|
public override string ToString() => _o.ToString();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Interfaces.Attachments;
|
||||||
using Spine.Utils;
|
using Spine.Utils;
|
||||||
using SpineRuntime34;
|
using SpineRuntime34;
|
||||||
using System;
|
using System;
|
||||||
@@ -8,7 +8,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V34
|
namespace Spine.Implementations.V34
|
||||||
{
|
{
|
||||||
internal sealed class SkeletonClipping34 : ISkeletonClipping
|
internal sealed class SkeletonClipping34 : ISkeletonClipping
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,10 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime34;
|
using SpineRuntime34;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V34
|
namespace Spine.Implementations.V34
|
||||||
{
|
{
|
||||||
internal sealed class Skin34 : ISkin
|
internal sealed class Skin34 : ISkin
|
||||||
{
|
{
|
||||||
@@ -5,10 +5,11 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.Utils;
|
using Spine.Utils;
|
||||||
using Spine.SpineWrappers;
|
|
||||||
using SpineRuntime34;
|
using SpineRuntime34;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V34
|
namespace Spine.Implementations.V34
|
||||||
{
|
{
|
||||||
internal sealed class Slot34 : ISlot
|
internal sealed class Slot34 : ISlot
|
||||||
{
|
{
|
||||||
@@ -46,7 +47,7 @@ namespace Spine.Implementations.SpineWrappers.V34
|
|||||||
public float A { get => _o.A; set => _o.A = value; }
|
public float A { get => _o.A; set => _o.A = value; }
|
||||||
public IBone Bone => _bone;
|
public IBone Bone => _bone;
|
||||||
|
|
||||||
public Spine.SpineWrappers.Attachments.IAttachment? Attachment
|
public IAttachment? Attachment
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
{
|
{
|
||||||
@@ -6,12 +6,12 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.Utils;
|
using Spine.Utils;
|
||||||
using Spine.SpineWrappers;
|
|
||||||
using Spine.SpineWrappers.Attachments;
|
|
||||||
using SpineRuntime34;
|
using SpineRuntime34;
|
||||||
using Spine.Implementations.SpineWrappers.V34.Attachments;
|
using Spine.Implementations.V34.Attachments;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V34
|
namespace Spine.Implementations.V34
|
||||||
{
|
{
|
||||||
[SpineImplementation(3, 4)]
|
[SpineImplementation(3, 4)]
|
||||||
internal sealed class SpineObjectData34 : SpineObjectData
|
internal sealed class SpineObjectData34 : SpineObjectData
|
||||||
@@ -26,7 +26,7 @@ namespace Spine.Implementations.SpineWrappers.V34
|
|||||||
private readonly ImmutableArray<IAnimation> _animations;
|
private readonly ImmutableArray<IAnimation> _animations;
|
||||||
private readonly FrozenDictionary<string, IAnimation> _animationsByName;
|
private readonly FrozenDictionary<string, IAnimation> _animationsByName;
|
||||||
|
|
||||||
public SpineObjectData34(string skelPath, string atlasPath, Spine.SpineWrappers.TextureLoader textureLoader)
|
public SpineObjectData34(string skelPath, string atlasPath, TextureLoader textureLoader)
|
||||||
: base(skelPath, atlasPath, textureLoader)
|
: base(skelPath, atlasPath, textureLoader)
|
||||||
{
|
{
|
||||||
// 加载 atlas
|
// 加载 atlas
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime34;
|
using SpineRuntime34;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
@@ -6,7 +6,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V34
|
namespace Spine.Implementations.V34
|
||||||
{
|
{
|
||||||
internal sealed class TrackEntry34(TrackEntry innerObject, AnimationState34 animationState, SpineObjectData34 data): ITrackEntry
|
internal sealed class TrackEntry34(TrackEntry innerObject, AnimationState34 animationState, SpineObjectData34 data): ITrackEntry
|
||||||
{
|
{
|
||||||
@@ -34,7 +34,7 @@ namespace Spine.Implementations.SpineWrappers.V34
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(_animationState.GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(_animationState.GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Start += f;
|
_o.Start += f;
|
||||||
@@ -63,7 +63,7 @@ namespace Spine.Implementations.SpineWrappers.V34
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(_animationState.GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(_animationState.GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.End += f;
|
_o.End += f;
|
||||||
@@ -92,7 +92,7 @@ namespace Spine.Implementations.SpineWrappers.V34
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(_animationState.GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(_animationState.GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Complete += f;
|
_o.Complete += f;
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime35;
|
using SpineRuntime35;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
@@ -6,7 +6,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V35
|
namespace Spine.Implementations.V35
|
||||||
{
|
{
|
||||||
internal sealed class Animation35(Animation innerObject) : IAnimation
|
internal sealed class Animation35(Animation innerObject) : IAnimation
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,10 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime35;
|
using SpineRuntime35;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V35
|
namespace Spine.Implementations.V35
|
||||||
{
|
{
|
||||||
internal sealed class AnimationState35(AnimationState innerObject, SpineObjectData35 data) : IAnimationState
|
internal sealed class AnimationState35(AnimationState innerObject, SpineObjectData35 data) : IAnimationState
|
||||||
{
|
{
|
||||||
@@ -27,7 +27,7 @@ namespace Spine.Implementations.SpineWrappers.V35
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Start += f;
|
_o.Start += f;
|
||||||
@@ -56,7 +56,7 @@ namespace Spine.Implementations.SpineWrappers.V35
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Interrupt += f;
|
_o.Interrupt += f;
|
||||||
@@ -85,7 +85,7 @@ namespace Spine.Implementations.SpineWrappers.V35
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.End += f;
|
_o.End += f;
|
||||||
@@ -114,7 +114,7 @@ namespace Spine.Implementations.SpineWrappers.V35
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Complete += f;
|
_o.Complete += f;
|
||||||
@@ -143,7 +143,7 @@ namespace Spine.Implementations.SpineWrappers.V35
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Dispose += f;
|
_o.Dispose += f;
|
||||||
@@ -3,11 +3,11 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime35;
|
using SpineRuntime35;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V35.Attachments
|
namespace Spine.Implementations.V35.Attachments
|
||||||
{
|
{
|
||||||
internal abstract class Attachment35(Attachment innerObject) : IAttachment
|
internal abstract class Attachment35(Attachment innerObject) : IAttachment
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V35;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime35;
|
using SpineRuntime35;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V35.Attachments
|
namespace Spine.Implementations.V35.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class BoundingBoxAttachment35(BoundingBoxAttachment innerObject) :
|
internal sealed class BoundingBoxAttachment35(BoundingBoxAttachment innerObject) :
|
||||||
Attachment35(innerObject),
|
Attachment35(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V35.Attachments
|
|||||||
|
|
||||||
public override BoundingBoxAttachment InnerObject => _o;
|
public override BoundingBoxAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot35 st)
|
if (slot is Slot35 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V35;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime35;
|
using SpineRuntime35;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V35.Attachments
|
namespace Spine.Implementations.V35.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class ClippingAttachment35(ClippingAttachment innerObject) :
|
internal sealed class ClippingAttachment35(ClippingAttachment innerObject) :
|
||||||
Attachment35(innerObject),
|
Attachment35(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V35.Attachments
|
|||||||
|
|
||||||
public override ClippingAttachment InnerObject => _o;
|
public override ClippingAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot35 st)
|
if (slot is Slot35 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V35;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime35;
|
using SpineRuntime35;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V35.Attachments
|
namespace Spine.Implementations.V35.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class MeshAttachment35(MeshAttachment innerObject) :
|
internal sealed class MeshAttachment35(MeshAttachment innerObject) :
|
||||||
Attachment35(innerObject),
|
Attachment35(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V35.Attachments
|
|||||||
|
|
||||||
public override MeshAttachment InnerObject => _o;
|
public override MeshAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot35 st)
|
if (slot is Slot35 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V35;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime35;
|
using SpineRuntime35;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V35.Attachments
|
namespace Spine.Implementations.V35.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class PathAttachment35(PathAttachment innerObject) :
|
internal sealed class PathAttachment35(PathAttachment innerObject) :
|
||||||
Attachment35(innerObject),
|
Attachment35(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V35.Attachments
|
|||||||
|
|
||||||
public override PathAttachment InnerObject => _o;
|
public override PathAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot35 st)
|
if (slot is Slot35 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V35;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime35;
|
using SpineRuntime35;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V35.Attachments
|
namespace Spine.Implementations.V35.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class PointAttachment35(PointAttachment innerObject) :
|
internal sealed class PointAttachment35(PointAttachment innerObject) :
|
||||||
Attachment35(innerObject),
|
Attachment35(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V35.Attachments
|
|||||||
|
|
||||||
public override PointAttachment InnerObject => _o;
|
public override PointAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot35 st)
|
if (slot is Slot35 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V35;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime35;
|
using SpineRuntime35;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V35.Attachments
|
namespace Spine.Implementations.V35.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class RegionAttachment35(RegionAttachment innerObject) :
|
internal sealed class RegionAttachment35(RegionAttachment innerObject) :
|
||||||
Attachment35(innerObject),
|
Attachment35(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V35.Attachments
|
|||||||
|
|
||||||
public override RegionAttachment InnerObject => _o;
|
public override RegionAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot35 st)
|
if (slot is Slot35 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,10 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime35;
|
using SpineRuntime35;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V35
|
namespace Spine.Implementations.V35
|
||||||
{
|
{
|
||||||
internal sealed class Bone35(Bone innerObject, Bone35? parent = null) : IBone
|
internal sealed class Bone35(Bone innerObject, Bone35? parent = null) : IBone
|
||||||
{
|
{
|
||||||
@@ -5,10 +5,10 @@ using System.Text;
|
|||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using System.Collections.Frozen;
|
using System.Collections.Frozen;
|
||||||
using System.Collections.Immutable;
|
using System.Collections.Immutable;
|
||||||
using Spine.SpineWrappers;
|
|
||||||
using SpineRuntime35;
|
using SpineRuntime35;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V35
|
namespace Spine.Implementations.V35
|
||||||
{
|
{
|
||||||
internal sealed class Skeleton35 : ISkeleton
|
internal sealed class Skeleton35 : ISkeleton
|
||||||
{
|
{
|
||||||
@@ -52,6 +52,7 @@ namespace Spine.Implementations.SpineWrappers.V35
|
|||||||
|
|
||||||
public Skeleton InnerObject => _o;
|
public Skeleton InnerObject => _o;
|
||||||
|
|
||||||
|
public string Name => _o.Data.Name;
|
||||||
public float R { get => _o.R; set => _o.R = value; }
|
public float R { get => _o.R; set => _o.R = value; }
|
||||||
public float G { get => _o.G; set => _o.G = value; }
|
public float G { get => _o.G; set => _o.G = value; }
|
||||||
public float B { get => _o.B; set => _o.B = value; }
|
public float B { get => _o.B; set => _o.B = value; }
|
||||||
@@ -95,12 +96,6 @@ namespace Spine.Implementations.SpineWrappers.V35
|
|||||||
public void SetSlotsToSetupPose() => _o.SetSlotsToSetupPose();
|
public void SetSlotsToSetupPose() => _o.SetSlotsToSetupPose();
|
||||||
public void Update(float delta) => _o.Update(delta);
|
public void Update(float delta) => _o.Update(delta);
|
||||||
|
|
||||||
public void GetBounds(out float x, out float y, out float w, out float h)
|
|
||||||
{
|
|
||||||
float[] _ = [];
|
|
||||||
_o.GetBounds(out x, out y, out w, out h, ref _);
|
|
||||||
}
|
|
||||||
|
|
||||||
public override string ToString() => _o.ToString();
|
public override string ToString() => _o.ToString();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Interfaces.Attachments;
|
||||||
using Spine.Utils;
|
using Spine.Utils;
|
||||||
using SpineRuntime35;
|
using SpineRuntime35;
|
||||||
using System;
|
using System;
|
||||||
@@ -8,7 +8,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V35
|
namespace Spine.Implementations.V35
|
||||||
{
|
{
|
||||||
internal sealed class SkeletonClipping35 : ISkeletonClipping
|
internal sealed class SkeletonClipping35 : ISkeletonClipping
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,10 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime35;
|
using SpineRuntime35;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V35
|
namespace Spine.Implementations.V35
|
||||||
{
|
{
|
||||||
internal sealed class Skin35 : ISkin
|
internal sealed class Skin35 : ISkin
|
||||||
{
|
{
|
||||||
@@ -5,10 +5,11 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.Utils;
|
using Spine.Utils;
|
||||||
using Spine.SpineWrappers;
|
|
||||||
using SpineRuntime35;
|
using SpineRuntime35;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V35
|
namespace Spine.Implementations.V35
|
||||||
{
|
{
|
||||||
internal sealed class Slot35 : ISlot
|
internal sealed class Slot35 : ISlot
|
||||||
{
|
{
|
||||||
@@ -46,7 +47,7 @@ namespace Spine.Implementations.SpineWrappers.V35
|
|||||||
public float A { get => _o.A; set => _o.A = value; }
|
public float A { get => _o.A; set => _o.A = value; }
|
||||||
public IBone Bone => _bone;
|
public IBone Bone => _bone;
|
||||||
|
|
||||||
public Spine.SpineWrappers.Attachments.IAttachment? Attachment
|
public IAttachment? Attachment
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
{
|
{
|
||||||
@@ -6,12 +6,12 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.Utils;
|
using Spine.Utils;
|
||||||
using Spine.SpineWrappers;
|
|
||||||
using Spine.SpineWrappers.Attachments;
|
|
||||||
using SpineRuntime35;
|
using SpineRuntime35;
|
||||||
using Spine.Implementations.SpineWrappers.V35.Attachments;
|
using Spine.Implementations.V35.Attachments;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V35
|
namespace Spine.Implementations.V35
|
||||||
{
|
{
|
||||||
[SpineImplementation(3, 5)]
|
[SpineImplementation(3, 5)]
|
||||||
internal sealed class SpineObjectData35 : SpineObjectData
|
internal sealed class SpineObjectData35 : SpineObjectData
|
||||||
@@ -26,7 +26,7 @@ namespace Spine.Implementations.SpineWrappers.V35
|
|||||||
private readonly ImmutableArray<IAnimation> _animations;
|
private readonly ImmutableArray<IAnimation> _animations;
|
||||||
private readonly FrozenDictionary<string, IAnimation> _animationsByName;
|
private readonly FrozenDictionary<string, IAnimation> _animationsByName;
|
||||||
|
|
||||||
public SpineObjectData35(string skelPath, string atlasPath, Spine.SpineWrappers.TextureLoader textureLoader)
|
public SpineObjectData35(string skelPath, string atlasPath, TextureLoader textureLoader)
|
||||||
: base(skelPath, atlasPath, textureLoader)
|
: base(skelPath, atlasPath, textureLoader)
|
||||||
{
|
{
|
||||||
// 加载 atlas
|
// 加载 atlas
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime35;
|
using SpineRuntime35;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
@@ -6,7 +6,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V35
|
namespace Spine.Implementations.V35
|
||||||
{
|
{
|
||||||
internal sealed class TrackEntry35(TrackEntry innerObject, AnimationState35 animationState, SpineObjectData35 data): ITrackEntry
|
internal sealed class TrackEntry35(TrackEntry innerObject, AnimationState35 animationState, SpineObjectData35 data): ITrackEntry
|
||||||
{
|
{
|
||||||
@@ -26,7 +26,7 @@ namespace Spine.Implementations.SpineWrappers.V35
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(_animationState.GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(_animationState.GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Start += f;
|
_o.Start += f;
|
||||||
@@ -55,7 +55,7 @@ namespace Spine.Implementations.SpineWrappers.V35
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(_animationState.GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(_animationState.GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Interrupt += f;
|
_o.Interrupt += f;
|
||||||
@@ -84,7 +84,7 @@ namespace Spine.Implementations.SpineWrappers.V35
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(_animationState.GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(_animationState.GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.End += f;
|
_o.End += f;
|
||||||
@@ -113,7 +113,7 @@ namespace Spine.Implementations.SpineWrappers.V35
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(_animationState.GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(_animationState.GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Complete += f;
|
_o.Complete += f;
|
||||||
@@ -142,7 +142,7 @@ namespace Spine.Implementations.SpineWrappers.V35
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(_animationState.GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(_animationState.GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Dispose += f;
|
_o.Dispose += f;
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime36;
|
using SpineRuntime36;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
@@ -6,7 +6,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V36
|
namespace Spine.Implementations.V36
|
||||||
{
|
{
|
||||||
internal sealed class Animation36(Animation innerObject) : IAnimation
|
internal sealed class Animation36(Animation innerObject) : IAnimation
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,10 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime36;
|
using SpineRuntime36;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V36
|
namespace Spine.Implementations.V36
|
||||||
{
|
{
|
||||||
internal sealed class AnimationState36(AnimationState innerObject, SpineObjectData36 data) : IAnimationState
|
internal sealed class AnimationState36(AnimationState innerObject, SpineObjectData36 data) : IAnimationState
|
||||||
{
|
{
|
||||||
@@ -27,7 +27,7 @@ namespace Spine.Implementations.SpineWrappers.V36
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Start += f;
|
_o.Start += f;
|
||||||
@@ -56,7 +56,7 @@ namespace Spine.Implementations.SpineWrappers.V36
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Interrupt += f;
|
_o.Interrupt += f;
|
||||||
@@ -85,7 +85,7 @@ namespace Spine.Implementations.SpineWrappers.V36
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.End += f;
|
_o.End += f;
|
||||||
@@ -114,7 +114,7 @@ namespace Spine.Implementations.SpineWrappers.V36
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Complete += f;
|
_o.Complete += f;
|
||||||
@@ -143,7 +143,7 @@ namespace Spine.Implementations.SpineWrappers.V36
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Dispose += f;
|
_o.Dispose += f;
|
||||||
@@ -3,11 +3,11 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime36;
|
using SpineRuntime36;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V36.Attachments
|
namespace Spine.Implementations.V36.Attachments
|
||||||
{
|
{
|
||||||
internal abstract class Attachment36(Attachment innerObject) : IAttachment
|
internal abstract class Attachment36(Attachment innerObject) : IAttachment
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V36;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime36;
|
using SpineRuntime36;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V36.Attachments
|
namespace Spine.Implementations.V36.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class BoundingBoxAttachment36(BoundingBoxAttachment innerObject) :
|
internal sealed class BoundingBoxAttachment36(BoundingBoxAttachment innerObject) :
|
||||||
Attachment36(innerObject),
|
Attachment36(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V36.Attachments
|
|||||||
|
|
||||||
public override BoundingBoxAttachment InnerObject => _o;
|
public override BoundingBoxAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot36 st)
|
if (slot is Slot36 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V36;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime36;
|
using SpineRuntime36;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V36.Attachments
|
namespace Spine.Implementations.V36.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class ClippingAttachment36(ClippingAttachment innerObject) :
|
internal sealed class ClippingAttachment36(ClippingAttachment innerObject) :
|
||||||
Attachment36(innerObject),
|
Attachment36(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V36.Attachments
|
|||||||
|
|
||||||
public override ClippingAttachment InnerObject => _o;
|
public override ClippingAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot36 st)
|
if (slot is Slot36 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V36;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime36;
|
using SpineRuntime36;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V36.Attachments
|
namespace Spine.Implementations.V36.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class MeshAttachment36(MeshAttachment innerObject) :
|
internal sealed class MeshAttachment36(MeshAttachment innerObject) :
|
||||||
Attachment36(innerObject),
|
Attachment36(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V36.Attachments
|
|||||||
|
|
||||||
public override MeshAttachment InnerObject => _o;
|
public override MeshAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot36 st)
|
if (slot is Slot36 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V36;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime36;
|
using SpineRuntime36;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V36.Attachments
|
namespace Spine.Implementations.V36.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class PathAttachment36(PathAttachment innerObject) :
|
internal sealed class PathAttachment36(PathAttachment innerObject) :
|
||||||
Attachment36(innerObject),
|
Attachment36(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V36.Attachments
|
|||||||
|
|
||||||
public override PathAttachment InnerObject => _o;
|
public override PathAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot36 st)
|
if (slot is Slot36 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V36;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime36;
|
using SpineRuntime36;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V36.Attachments
|
namespace Spine.Implementations.V36.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class PointAttachment36(PointAttachment innerObject) :
|
internal sealed class PointAttachment36(PointAttachment innerObject) :
|
||||||
Attachment36(innerObject),
|
Attachment36(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V36.Attachments
|
|||||||
|
|
||||||
public override PointAttachment InnerObject => _o;
|
public override PointAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot36 st)
|
if (slot is Slot36 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V36;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime36;
|
using SpineRuntime36;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V36.Attachments
|
namespace Spine.Implementations.V36.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class RegionAttachment36(RegionAttachment innerObject) :
|
internal sealed class RegionAttachment36(RegionAttachment innerObject) :
|
||||||
Attachment36(innerObject),
|
Attachment36(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V36.Attachments
|
|||||||
|
|
||||||
public override RegionAttachment InnerObject => _o;
|
public override RegionAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot36 st)
|
if (slot is Slot36 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,10 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime36;
|
using SpineRuntime36;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V36
|
namespace Spine.Implementations.V36
|
||||||
{
|
{
|
||||||
internal sealed class Bone36(Bone innerObject, Bone36? parent = null) : IBone
|
internal sealed class Bone36(Bone innerObject, Bone36? parent = null) : IBone
|
||||||
{
|
{
|
||||||
@@ -5,10 +5,10 @@ using System.Text;
|
|||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using System.Collections.Frozen;
|
using System.Collections.Frozen;
|
||||||
using System.Collections.Immutable;
|
using System.Collections.Immutable;
|
||||||
using Spine.SpineWrappers;
|
|
||||||
using SpineRuntime36;
|
using SpineRuntime36;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V36
|
namespace Spine.Implementations.V36
|
||||||
{
|
{
|
||||||
internal sealed class Skeleton36 : ISkeleton
|
internal sealed class Skeleton36 : ISkeleton
|
||||||
{
|
{
|
||||||
@@ -52,6 +52,7 @@ namespace Spine.Implementations.SpineWrappers.V36
|
|||||||
|
|
||||||
public Skeleton InnerObject => _o;
|
public Skeleton InnerObject => _o;
|
||||||
|
|
||||||
|
public string Name => _o.Data.Name;
|
||||||
public float R { get => _o.R; set => _o.R = value; }
|
public float R { get => _o.R; set => _o.R = value; }
|
||||||
public float G { get => _o.G; set => _o.G = value; }
|
public float G { get => _o.G; set => _o.G = value; }
|
||||||
public float B { get => _o.B; set => _o.B = value; }
|
public float B { get => _o.B; set => _o.B = value; }
|
||||||
@@ -95,12 +96,6 @@ namespace Spine.Implementations.SpineWrappers.V36
|
|||||||
public void SetSlotsToSetupPose() => _o.SetSlotsToSetupPose();
|
public void SetSlotsToSetupPose() => _o.SetSlotsToSetupPose();
|
||||||
public void Update(float delta) => _o.Update(delta);
|
public void Update(float delta) => _o.Update(delta);
|
||||||
|
|
||||||
public void GetBounds(out float x, out float y, out float w, out float h)
|
|
||||||
{
|
|
||||||
float[] _ = [];
|
|
||||||
_o.GetBounds(out x, out y, out w, out h, ref _);
|
|
||||||
}
|
|
||||||
|
|
||||||
public override string ToString() => _o.ToString();
|
public override string ToString() => _o.ToString();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Interfaces.Attachments;
|
||||||
using Spine.Utils;
|
using Spine.Utils;
|
||||||
using SpineRuntime36;
|
using SpineRuntime36;
|
||||||
using System;
|
using System;
|
||||||
@@ -8,7 +8,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V36
|
namespace Spine.Implementations.V36
|
||||||
{
|
{
|
||||||
internal sealed class SkeletonClipping36 : ISkeletonClipping
|
internal sealed class SkeletonClipping36 : ISkeletonClipping
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,10 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime36;
|
using SpineRuntime36;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V36
|
namespace Spine.Implementations.V36
|
||||||
{
|
{
|
||||||
internal sealed class Skin36 : ISkin
|
internal sealed class Skin36 : ISkin
|
||||||
{
|
{
|
||||||
@@ -5,10 +5,11 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.Utils;
|
using Spine.Utils;
|
||||||
using Spine.SpineWrappers;
|
|
||||||
using SpineRuntime36;
|
using SpineRuntime36;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V36
|
namespace Spine.Implementations.V36
|
||||||
{
|
{
|
||||||
internal sealed class Slot36 : ISlot
|
internal sealed class Slot36 : ISlot
|
||||||
{
|
{
|
||||||
@@ -46,7 +47,7 @@ namespace Spine.Implementations.SpineWrappers.V36
|
|||||||
public float A { get => _o.A; set => _o.A = value; }
|
public float A { get => _o.A; set => _o.A = value; }
|
||||||
public IBone Bone => _bone;
|
public IBone Bone => _bone;
|
||||||
|
|
||||||
public Spine.SpineWrappers.Attachments.IAttachment? Attachment
|
public IAttachment? Attachment
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
{
|
{
|
||||||
@@ -6,12 +6,12 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.Utils;
|
using Spine.Utils;
|
||||||
using Spine.SpineWrappers;
|
|
||||||
using Spine.SpineWrappers.Attachments;
|
|
||||||
using SpineRuntime36;
|
using SpineRuntime36;
|
||||||
using Spine.Implementations.SpineWrappers.V36.Attachments;
|
using Spine.Implementations.V36.Attachments;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V36
|
namespace Spine.Implementations.V36
|
||||||
{
|
{
|
||||||
[SpineImplementation(3, 6)]
|
[SpineImplementation(3, 6)]
|
||||||
internal sealed class SpineObjectData36 : SpineObjectData
|
internal sealed class SpineObjectData36 : SpineObjectData
|
||||||
@@ -26,7 +26,7 @@ namespace Spine.Implementations.SpineWrappers.V36
|
|||||||
private readonly ImmutableArray<IAnimation> _animations;
|
private readonly ImmutableArray<IAnimation> _animations;
|
||||||
private readonly FrozenDictionary<string, IAnimation> _animationsByName;
|
private readonly FrozenDictionary<string, IAnimation> _animationsByName;
|
||||||
|
|
||||||
public SpineObjectData36(string skelPath, string atlasPath, Spine.SpineWrappers.TextureLoader textureLoader)
|
public SpineObjectData36(string skelPath, string atlasPath, TextureLoader textureLoader)
|
||||||
: base(skelPath, atlasPath, textureLoader)
|
: base(skelPath, atlasPath, textureLoader)
|
||||||
{
|
{
|
||||||
// 加载 atlas
|
// 加载 atlas
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime36;
|
using SpineRuntime36;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
@@ -6,7 +6,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V36
|
namespace Spine.Implementations.V36
|
||||||
{
|
{
|
||||||
internal sealed class TrackEntry36(TrackEntry innerObject, AnimationState36 animationState, SpineObjectData36 data): ITrackEntry
|
internal sealed class TrackEntry36(TrackEntry innerObject, AnimationState36 animationState, SpineObjectData36 data): ITrackEntry
|
||||||
{
|
{
|
||||||
@@ -26,7 +26,7 @@ namespace Spine.Implementations.SpineWrappers.V36
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(_animationState.GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(_animationState.GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Start += f;
|
_o.Start += f;
|
||||||
@@ -55,7 +55,7 @@ namespace Spine.Implementations.SpineWrappers.V36
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(_animationState.GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(_animationState.GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Interrupt += f;
|
_o.Interrupt += f;
|
||||||
@@ -84,7 +84,7 @@ namespace Spine.Implementations.SpineWrappers.V36
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(_animationState.GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(_animationState.GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.End += f;
|
_o.End += f;
|
||||||
@@ -113,7 +113,7 @@ namespace Spine.Implementations.SpineWrappers.V36
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(_animationState.GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(_animationState.GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Complete += f;
|
_o.Complete += f;
|
||||||
@@ -142,7 +142,7 @@ namespace Spine.Implementations.SpineWrappers.V36
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(_animationState.GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(_animationState.GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Dispose += f;
|
_o.Dispose += f;
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime37;
|
using SpineRuntime37;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
@@ -6,7 +6,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V37
|
namespace Spine.Implementations.V37
|
||||||
{
|
{
|
||||||
internal sealed class Animation37(Animation innerObject) : IAnimation
|
internal sealed class Animation37(Animation innerObject) : IAnimation
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,10 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime37;
|
using SpineRuntime37;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V37
|
namespace Spine.Implementations.V37
|
||||||
{
|
{
|
||||||
internal sealed class AnimationState37(AnimationState innerObject, SpineObjectData37 data) : IAnimationState
|
internal sealed class AnimationState37(AnimationState innerObject, SpineObjectData37 data) : IAnimationState
|
||||||
{
|
{
|
||||||
@@ -27,7 +27,7 @@ namespace Spine.Implementations.SpineWrappers.V37
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Start += f;
|
_o.Start += f;
|
||||||
@@ -56,7 +56,7 @@ namespace Spine.Implementations.SpineWrappers.V37
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Interrupt += f;
|
_o.Interrupt += f;
|
||||||
@@ -85,7 +85,7 @@ namespace Spine.Implementations.SpineWrappers.V37
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.End += f;
|
_o.End += f;
|
||||||
@@ -114,7 +114,7 @@ namespace Spine.Implementations.SpineWrappers.V37
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Complete += f;
|
_o.Complete += f;
|
||||||
@@ -143,7 +143,7 @@ namespace Spine.Implementations.SpineWrappers.V37
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Dispose += f;
|
_o.Dispose += f;
|
||||||
@@ -3,11 +3,11 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime37;
|
using SpineRuntime37;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V37.Attachments
|
namespace Spine.Implementations.V37.Attachments
|
||||||
{
|
{
|
||||||
internal abstract class Attachment37(Attachment innerObject) : IAttachment
|
internal abstract class Attachment37(Attachment innerObject) : IAttachment
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V37;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime37;
|
using SpineRuntime37;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V37.Attachments
|
namespace Spine.Implementations.V37.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class BoundingBoxAttachment37(BoundingBoxAttachment innerObject) :
|
internal sealed class BoundingBoxAttachment37(BoundingBoxAttachment innerObject) :
|
||||||
Attachment37(innerObject),
|
Attachment37(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V37.Attachments
|
|||||||
|
|
||||||
public override BoundingBoxAttachment InnerObject => _o;
|
public override BoundingBoxAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot37 st)
|
if (slot is Slot37 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V37;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime37;
|
using SpineRuntime37;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V37.Attachments
|
namespace Spine.Implementations.V37.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class ClippingAttachment37(ClippingAttachment innerObject) :
|
internal sealed class ClippingAttachment37(ClippingAttachment innerObject) :
|
||||||
Attachment37(innerObject),
|
Attachment37(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V37.Attachments
|
|||||||
|
|
||||||
public override ClippingAttachment InnerObject => _o;
|
public override ClippingAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot37 st)
|
if (slot is Slot37 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V37;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime37;
|
using SpineRuntime37;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V37.Attachments
|
namespace Spine.Implementations.V37.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class MeshAttachment37(MeshAttachment innerObject) :
|
internal sealed class MeshAttachment37(MeshAttachment innerObject) :
|
||||||
Attachment37(innerObject),
|
Attachment37(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V37.Attachments
|
|||||||
|
|
||||||
public override MeshAttachment InnerObject => _o;
|
public override MeshAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot37 st)
|
if (slot is Slot37 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V37;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime37;
|
using SpineRuntime37;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V37.Attachments
|
namespace Spine.Implementations.V37.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class PathAttachment37(PathAttachment innerObject) :
|
internal sealed class PathAttachment37(PathAttachment innerObject) :
|
||||||
Attachment37(innerObject),
|
Attachment37(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V37.Attachments
|
|||||||
|
|
||||||
public override PathAttachment InnerObject => _o;
|
public override PathAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot37 st)
|
if (slot is Slot37 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V37;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime37;
|
using SpineRuntime37;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V37.Attachments
|
namespace Spine.Implementations.V37.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class PointAttachment37(PointAttachment innerObject) :
|
internal sealed class PointAttachment37(PointAttachment innerObject) :
|
||||||
Attachment37(innerObject),
|
Attachment37(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V37.Attachments
|
|||||||
|
|
||||||
public override PointAttachment InnerObject => _o;
|
public override PointAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot37 st)
|
if (slot is Slot37 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V37;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime37;
|
using SpineRuntime37;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V37.Attachments
|
namespace Spine.Implementations.V37.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class RegionAttachment37(RegionAttachment innerObject) :
|
internal sealed class RegionAttachment37(RegionAttachment innerObject) :
|
||||||
Attachment37(innerObject),
|
Attachment37(innerObject),
|
||||||
@@ -16,7 +18,7 @@ namespace Spine.Implementations.SpineWrappers.V37.Attachments
|
|||||||
|
|
||||||
public override RegionAttachment InnerObject => _o;
|
public override RegionAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot37 st)
|
if (slot is Slot37 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,10 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime37;
|
using SpineRuntime37;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V37
|
namespace Spine.Implementations.V37
|
||||||
{
|
{
|
||||||
internal sealed class Bone37(Bone innerObject, Bone37? parent = null) : IBone
|
internal sealed class Bone37(Bone innerObject, Bone37? parent = null) : IBone
|
||||||
{
|
{
|
||||||
@@ -5,10 +5,10 @@ using System.Text;
|
|||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using System.Collections.Frozen;
|
using System.Collections.Frozen;
|
||||||
using System.Collections.Immutable;
|
using System.Collections.Immutable;
|
||||||
using Spine.SpineWrappers;
|
|
||||||
using SpineRuntime37;
|
using SpineRuntime37;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V37
|
namespace Spine.Implementations.V37
|
||||||
{
|
{
|
||||||
internal sealed class Skeleton37 : ISkeleton
|
internal sealed class Skeleton37 : ISkeleton
|
||||||
{
|
{
|
||||||
@@ -52,6 +52,7 @@ namespace Spine.Implementations.SpineWrappers.V37
|
|||||||
|
|
||||||
public Skeleton InnerObject => _o;
|
public Skeleton InnerObject => _o;
|
||||||
|
|
||||||
|
public string Name => _o.Data.Name;
|
||||||
public float R { get => _o.R; set => _o.R = value; }
|
public float R { get => _o.R; set => _o.R = value; }
|
||||||
public float G { get => _o.G; set => _o.G = value; }
|
public float G { get => _o.G; set => _o.G = value; }
|
||||||
public float B { get => _o.B; set => _o.B = value; }
|
public float B { get => _o.B; set => _o.B = value; }
|
||||||
@@ -95,12 +96,6 @@ namespace Spine.Implementations.SpineWrappers.V37
|
|||||||
public void SetSlotsToSetupPose() => _o.SetSlotsToSetupPose();
|
public void SetSlotsToSetupPose() => _o.SetSlotsToSetupPose();
|
||||||
public void Update(float delta) => _o.Update(delta);
|
public void Update(float delta) => _o.Update(delta);
|
||||||
|
|
||||||
public void GetBounds(out float x, out float y, out float w, out float h)
|
|
||||||
{
|
|
||||||
float[] _ = [];
|
|
||||||
_o.GetBounds(out x, out y, out w, out h, ref _);
|
|
||||||
}
|
|
||||||
|
|
||||||
public override string ToString() => _o.ToString();
|
public override string ToString() => _o.ToString();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Interfaces.Attachments;
|
||||||
using Spine.Utils;
|
using Spine.Utils;
|
||||||
using SpineRuntime37;
|
using SpineRuntime37;
|
||||||
using System;
|
using System;
|
||||||
@@ -8,7 +8,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V37
|
namespace Spine.Implementations.V37
|
||||||
{
|
{
|
||||||
internal sealed class SkeletonClipping37 : ISkeletonClipping
|
internal sealed class SkeletonClipping37 : ISkeletonClipping
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,10 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime37;
|
using SpineRuntime37;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V37
|
namespace Spine.Implementations.V37
|
||||||
{
|
{
|
||||||
internal sealed class Skin37 : ISkin
|
internal sealed class Skin37 : ISkin
|
||||||
{
|
{
|
||||||
@@ -5,10 +5,11 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.Utils;
|
using Spine.Utils;
|
||||||
using Spine.SpineWrappers;
|
|
||||||
using SpineRuntime37;
|
using SpineRuntime37;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V37
|
namespace Spine.Implementations.V37
|
||||||
{
|
{
|
||||||
internal sealed class Slot37 : ISlot
|
internal sealed class Slot37 : ISlot
|
||||||
{
|
{
|
||||||
@@ -46,7 +47,7 @@ namespace Spine.Implementations.SpineWrappers.V37
|
|||||||
public float A { get => _o.A; set => _o.A = value; }
|
public float A { get => _o.A; set => _o.A = value; }
|
||||||
public IBone Bone => _bone;
|
public IBone Bone => _bone;
|
||||||
|
|
||||||
public Spine.SpineWrappers.Attachments.IAttachment? Attachment
|
public IAttachment? Attachment
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
{
|
{
|
||||||
@@ -6,12 +6,12 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.Utils;
|
using Spine.Utils;
|
||||||
using Spine.SpineWrappers;
|
|
||||||
using Spine.SpineWrappers.Attachments;
|
|
||||||
using SpineRuntime37;
|
using SpineRuntime37;
|
||||||
using Spine.Implementations.SpineWrappers.V37.Attachments;
|
using Spine.Implementations.V37.Attachments;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V37
|
namespace Spine.Implementations.V37
|
||||||
{
|
{
|
||||||
[SpineImplementation(3, 7)]
|
[SpineImplementation(3, 7)]
|
||||||
internal sealed class SpineObjectData37 : SpineObjectData
|
internal sealed class SpineObjectData37 : SpineObjectData
|
||||||
@@ -26,7 +26,7 @@ namespace Spine.Implementations.SpineWrappers.V37
|
|||||||
private readonly ImmutableArray<IAnimation> _animations;
|
private readonly ImmutableArray<IAnimation> _animations;
|
||||||
private readonly FrozenDictionary<string, IAnimation> _animationsByName;
|
private readonly FrozenDictionary<string, IAnimation> _animationsByName;
|
||||||
|
|
||||||
public SpineObjectData37(string skelPath, string atlasPath, Spine.SpineWrappers.TextureLoader textureLoader)
|
public SpineObjectData37(string skelPath, string atlasPath, TextureLoader textureLoader)
|
||||||
: base(skelPath, atlasPath, textureLoader)
|
: base(skelPath, atlasPath, textureLoader)
|
||||||
{
|
{
|
||||||
// 加载 atlas
|
// 加载 atlas
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime37;
|
using SpineRuntime37;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
@@ -6,7 +6,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V37
|
namespace Spine.Implementations.V37
|
||||||
{
|
{
|
||||||
internal sealed class TrackEntry37(TrackEntry innerObject, AnimationState37 animationState, SpineObjectData37 data): ITrackEntry
|
internal sealed class TrackEntry37(TrackEntry innerObject, AnimationState37 animationState, SpineObjectData37 data): ITrackEntry
|
||||||
{
|
{
|
||||||
@@ -26,7 +26,7 @@ namespace Spine.Implementations.SpineWrappers.V37
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(_animationState.GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(_animationState.GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Start += f;
|
_o.Start += f;
|
||||||
@@ -55,7 +55,7 @@ namespace Spine.Implementations.SpineWrappers.V37
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(_animationState.GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(_animationState.GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Interrupt += f;
|
_o.Interrupt += f;
|
||||||
@@ -84,7 +84,7 @@ namespace Spine.Implementations.SpineWrappers.V37
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(_animationState.GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(_animationState.GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.End += f;
|
_o.End += f;
|
||||||
@@ -113,7 +113,7 @@ namespace Spine.Implementations.SpineWrappers.V37
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(_animationState.GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(_animationState.GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Complete += f;
|
_o.Complete += f;
|
||||||
@@ -142,7 +142,7 @@ namespace Spine.Implementations.SpineWrappers.V37
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(_animationState.GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(_animationState.GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Dispose += f;
|
_o.Dispose += f;
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime38;
|
using SpineRuntime38;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
@@ -6,7 +6,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V38
|
namespace Spine.Implementations.V38
|
||||||
{
|
{
|
||||||
internal sealed class Animation38(Animation innerObject) : IAnimation
|
internal sealed class Animation38(Animation innerObject) : IAnimation
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,10 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime38;
|
using SpineRuntime38;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V38
|
namespace Spine.Implementations.V38
|
||||||
{
|
{
|
||||||
internal sealed class AnimationState38(AnimationState innerObject, SpineObjectData38 data) : IAnimationState
|
internal sealed class AnimationState38(AnimationState innerObject, SpineObjectData38 data) : IAnimationState
|
||||||
{
|
{
|
||||||
@@ -27,7 +27,7 @@ namespace Spine.Implementations.SpineWrappers.V38
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Start += f;
|
_o.Start += f;
|
||||||
@@ -56,7 +56,7 @@ namespace Spine.Implementations.SpineWrappers.V38
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Interrupt += f;
|
_o.Interrupt += f;
|
||||||
@@ -85,7 +85,7 @@ namespace Spine.Implementations.SpineWrappers.V38
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.End += f;
|
_o.End += f;
|
||||||
@@ -114,7 +114,7 @@ namespace Spine.Implementations.SpineWrappers.V38
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Complete += f;
|
_o.Complete += f;
|
||||||
@@ -143,7 +143,7 @@ namespace Spine.Implementations.SpineWrappers.V38
|
|||||||
if (value is null) return;
|
if (value is null) return;
|
||||||
if (!_eventMapping.TryGetValue(value, out var f))
|
if (!_eventMapping.TryGetValue(value, out var f))
|
||||||
{
|
{
|
||||||
_eventMapping[value] = f = (TrackEntry t) => value(GetTrackEntry(t));
|
_eventMapping[value] = f = (t) => value(GetTrackEntry(t));
|
||||||
_eventCount[value] = 0;
|
_eventCount[value] = 0;
|
||||||
}
|
}
|
||||||
_o.Dispose += f;
|
_o.Dispose += f;
|
||||||
@@ -3,12 +3,12 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime38;
|
using SpineRuntime38;
|
||||||
using SpineRuntime38.Attachments;
|
using SpineRuntime38.Attachments;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V38.Attachments
|
namespace Spine.Implementations.V38.Attachments
|
||||||
{
|
{
|
||||||
internal abstract class Attachment38(Attachment innerObject) : IAttachment
|
internal abstract class Attachment38(Attachment innerObject) : IAttachment
|
||||||
{
|
{
|
||||||
@@ -3,11 +3,13 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V38;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime38;
|
using SpineRuntime38;
|
||||||
using SpineRuntime38.Attachments;
|
using SpineRuntime38.Attachments;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V38.Attachments
|
namespace Spine.Implementations.V38.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class BoundingBoxAttachment38(BoundingBoxAttachment innerObject) :
|
internal sealed class BoundingBoxAttachment38(BoundingBoxAttachment innerObject) :
|
||||||
Attachment38(innerObject),
|
Attachment38(innerObject),
|
||||||
@@ -17,7 +19,7 @@ namespace Spine.Implementations.SpineWrappers.V38.Attachments
|
|||||||
|
|
||||||
public override BoundingBoxAttachment InnerObject => _o;
|
public override BoundingBoxAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot38 st)
|
if (slot is Slot38 st)
|
||||||
{
|
{
|
||||||
@@ -3,11 +3,13 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V38;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime38;
|
using SpineRuntime38;
|
||||||
using SpineRuntime38.Attachments;
|
using SpineRuntime38.Attachments;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V38.Attachments
|
namespace Spine.Implementations.V38.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class ClippingAttachment38(ClippingAttachment innerObject) :
|
internal sealed class ClippingAttachment38(ClippingAttachment innerObject) :
|
||||||
Attachment38(innerObject),
|
Attachment38(innerObject),
|
||||||
@@ -17,7 +19,7 @@ namespace Spine.Implementations.SpineWrappers.V38.Attachments
|
|||||||
|
|
||||||
public override ClippingAttachment InnerObject => _o;
|
public override ClippingAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot38 st)
|
if (slot is Slot38 st)
|
||||||
{
|
{
|
||||||
@@ -3,11 +3,13 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V38;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime38;
|
using SpineRuntime38;
|
||||||
using SpineRuntime38.Attachments;
|
using SpineRuntime38.Attachments;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V38.Attachments
|
namespace Spine.Implementations.V38.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class MeshAttachment38(MeshAttachment innerObject) :
|
internal sealed class MeshAttachment38(MeshAttachment innerObject) :
|
||||||
Attachment38(innerObject),
|
Attachment38(innerObject),
|
||||||
@@ -17,7 +19,7 @@ namespace Spine.Implementations.SpineWrappers.V38.Attachments
|
|||||||
|
|
||||||
public override MeshAttachment InnerObject => _o;
|
public override MeshAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot38 st)
|
if (slot is Slot38 st)
|
||||||
{
|
{
|
||||||
@@ -3,11 +3,13 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V38;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime38;
|
using SpineRuntime38;
|
||||||
using SpineRuntime38.Attachments;
|
using SpineRuntime38.Attachments;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V38.Attachments
|
namespace Spine.Implementations.V38.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class PathAttachment38(PathAttachment innerObject) :
|
internal sealed class PathAttachment38(PathAttachment innerObject) :
|
||||||
Attachment38(innerObject),
|
Attachment38(innerObject),
|
||||||
@@ -17,7 +19,7 @@ namespace Spine.Implementations.SpineWrappers.V38.Attachments
|
|||||||
|
|
||||||
public override PathAttachment InnerObject => _o;
|
public override PathAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot38 st)
|
if (slot is Slot38 st)
|
||||||
{
|
{
|
||||||
@@ -3,11 +3,13 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V38;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime38;
|
using SpineRuntime38;
|
||||||
using SpineRuntime38.Attachments;
|
using SpineRuntime38.Attachments;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V38.Attachments
|
namespace Spine.Implementations.V38.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class PointAttachment38(PointAttachment innerObject) :
|
internal sealed class PointAttachment38(PointAttachment innerObject) :
|
||||||
Attachment38(innerObject),
|
Attachment38(innerObject),
|
||||||
@@ -17,7 +19,7 @@ namespace Spine.Implementations.SpineWrappers.V38.Attachments
|
|||||||
|
|
||||||
public override PointAttachment InnerObject => _o;
|
public override PointAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot38 st)
|
if (slot is Slot38 st)
|
||||||
{
|
{
|
||||||
@@ -3,11 +3,13 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Implementations.V38;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
using SpineRuntime38;
|
using SpineRuntime38;
|
||||||
using SpineRuntime38.Attachments;
|
using SpineRuntime38.Attachments;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V38.Attachments
|
namespace Spine.Implementations.V38.Attachments
|
||||||
{
|
{
|
||||||
internal sealed class RegionAttachment38(RegionAttachment innerObject) :
|
internal sealed class RegionAttachment38(RegionAttachment innerObject) :
|
||||||
Attachment38(innerObject),
|
Attachment38(innerObject),
|
||||||
@@ -17,7 +19,7 @@ namespace Spine.Implementations.SpineWrappers.V38.Attachments
|
|||||||
|
|
||||||
public override RegionAttachment InnerObject => _o;
|
public override RegionAttachment InnerObject => _o;
|
||||||
|
|
||||||
public override int ComputeWorldVertices(Spine.SpineWrappers.ISlot slot, ref float[] worldVertices)
|
public override int ComputeWorldVertices(ISlot slot, ref float[] worldVertices)
|
||||||
{
|
{
|
||||||
if (slot is Slot38 st)
|
if (slot is Slot38 st)
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,10 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime38;
|
using SpineRuntime38;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V38
|
namespace Spine.Implementations.V38
|
||||||
{
|
{
|
||||||
internal sealed class Bone38(Bone innerObject, Bone38? parent = null) : IBone
|
internal sealed class Bone38(Bone innerObject, Bone38? parent = null) : IBone
|
||||||
{
|
{
|
||||||
@@ -5,10 +5,10 @@ using System.Text;
|
|||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using System.Collections.Frozen;
|
using System.Collections.Frozen;
|
||||||
using System.Collections.Immutable;
|
using System.Collections.Immutable;
|
||||||
using Spine.SpineWrappers;
|
|
||||||
using SpineRuntime38;
|
using SpineRuntime38;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V38
|
namespace Spine.Implementations.V38
|
||||||
{
|
{
|
||||||
internal sealed class Skeleton38 : ISkeleton
|
internal sealed class Skeleton38 : ISkeleton
|
||||||
{
|
{
|
||||||
@@ -52,6 +52,7 @@ namespace Spine.Implementations.SpineWrappers.V38
|
|||||||
|
|
||||||
public Skeleton InnerObject => _o;
|
public Skeleton InnerObject => _o;
|
||||||
|
|
||||||
|
public string Name => _o.Data.Name;
|
||||||
public float R { get => _o.R; set => _o.R = value; }
|
public float R { get => _o.R; set => _o.R = value; }
|
||||||
public float G { get => _o.G; set => _o.G = value; }
|
public float G { get => _o.G; set => _o.G = value; }
|
||||||
public float B { get => _o.B; set => _o.B = value; }
|
public float B { get => _o.B; set => _o.B = value; }
|
||||||
@@ -95,12 +96,6 @@ namespace Spine.Implementations.SpineWrappers.V38
|
|||||||
public void SetSlotsToSetupPose() => _o.SetSlotsToSetupPose();
|
public void SetSlotsToSetupPose() => _o.SetSlotsToSetupPose();
|
||||||
public void Update(float delta) => _o.Update(delta);
|
public void Update(float delta) => _o.Update(delta);
|
||||||
|
|
||||||
public void GetBounds(out float x, out float y, out float w, out float h)
|
|
||||||
{
|
|
||||||
float[] _ = [];
|
|
||||||
_o.GetBounds(out x, out y, out w, out h, ref _);
|
|
||||||
}
|
|
||||||
|
|
||||||
public override string ToString() => _o.ToString();
|
public override string ToString() => _o.ToString();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using Spine.SpineWrappers.Attachments;
|
using Spine.Interfaces.Attachments;
|
||||||
using Spine.Utils;
|
using Spine.Utils;
|
||||||
using SpineRuntime38;
|
using SpineRuntime38;
|
||||||
using System;
|
using System;
|
||||||
@@ -8,7 +8,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V38
|
namespace Spine.Implementations.V38
|
||||||
{
|
{
|
||||||
internal sealed class SkeletonClipping38 : ISkeletonClipping
|
internal sealed class SkeletonClipping38 : ISkeletonClipping
|
||||||
{
|
{
|
||||||
@@ -3,10 +3,10 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.SpineWrappers;
|
using Spine.Interfaces;
|
||||||
using SpineRuntime38;
|
using SpineRuntime38;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V38
|
namespace Spine.Implementations.V38
|
||||||
{
|
{
|
||||||
internal sealed class Skin38 : ISkin
|
internal sealed class Skin38 : ISkin
|
||||||
{
|
{
|
||||||
@@ -5,11 +5,12 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.Utils;
|
using Spine.Utils;
|
||||||
using Spine.SpineWrappers;
|
|
||||||
using SpineRuntime38;
|
using SpineRuntime38;
|
||||||
using SpineRuntime38.Attachments;
|
using SpineRuntime38.Attachments;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V38
|
namespace Spine.Implementations.V38
|
||||||
{
|
{
|
||||||
internal sealed class Slot38 : ISlot
|
internal sealed class Slot38 : ISlot
|
||||||
{
|
{
|
||||||
@@ -47,7 +48,7 @@ namespace Spine.Implementations.SpineWrappers.V38
|
|||||||
public float A { get => _o.A; set => _o.A = value; }
|
public float A { get => _o.A; set => _o.A = value; }
|
||||||
public IBone Bone => _bone;
|
public IBone Bone => _bone;
|
||||||
|
|
||||||
public Spine.SpineWrappers.Attachments.IAttachment? Attachment
|
public IAttachment? Attachment
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
{
|
{
|
||||||
@@ -6,13 +6,13 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using Spine.Utils;
|
using Spine.Utils;
|
||||||
using Spine.SpineWrappers;
|
|
||||||
using Spine.SpineWrappers.Attachments;
|
|
||||||
using SpineRuntime38;
|
using SpineRuntime38;
|
||||||
using SpineRuntime38.Attachments;
|
using SpineRuntime38.Attachments;
|
||||||
using Spine.Implementations.SpineWrappers.V38.Attachments;
|
using Spine.Implementations.V38.Attachments;
|
||||||
|
using Spine.Interfaces;
|
||||||
|
using Spine.Interfaces.Attachments;
|
||||||
|
|
||||||
namespace Spine.Implementations.SpineWrappers.V38
|
namespace Spine.Implementations.V38
|
||||||
{
|
{
|
||||||
[SpineImplementation(3, 8)]
|
[SpineImplementation(3, 8)]
|
||||||
internal sealed class SpineObjectData38 : SpineObjectData
|
internal sealed class SpineObjectData38 : SpineObjectData
|
||||||
@@ -27,7 +27,7 @@ namespace Spine.Implementations.SpineWrappers.V38
|
|||||||
private readonly ImmutableArray<IAnimation> _animations;
|
private readonly ImmutableArray<IAnimation> _animations;
|
||||||
private readonly FrozenDictionary<string, IAnimation> _animationsByName;
|
private readonly FrozenDictionary<string, IAnimation> _animationsByName;
|
||||||
|
|
||||||
public SpineObjectData38(string skelPath, string atlasPath, Spine.SpineWrappers.TextureLoader textureLoader)
|
public SpineObjectData38(string skelPath, string atlasPath, TextureLoader textureLoader)
|
||||||
: base(skelPath, atlasPath, textureLoader)
|
: base(skelPath, atlasPath, textureLoader)
|
||||||
{
|
{
|
||||||
// 加载 atlas
|
// 加载 atlas
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user