导出数据转spine

This commit is contained in:
tianmo
2026-09-07 21:29:15 +08:00
parent d258d4f435
commit 3a7c0b4092
65 changed files with 6000 additions and 0 deletions
+90
View File
@@ -0,0 +1,90 @@
#pragma once
#include <stdint.h>
#if defined(_WIN32)
#define DTS_RUNTIME_EXPORT __declspec(dllexport)
#else
#define DTS_RUNTIME_EXPORT __attribute__((visibility("default")))
#endif
#ifdef __cplusplus
extern "C" {
#endif
enum { DTS_RUNTIME_API_VERSION = 3 };
enum DtsRuntimeCapability {
DTS_RUNTIME_CAP_SKELETON_METADATA = 1u << 0,
DTS_RUNTIME_CAP_DRAW_COMMANDS = 1u << 1
};
typedef struct DtsRuntimeInfo {
uint32_t structSize;
uint32_t apiVersion;
const char* spineVersionLine;
const char* adapterBuild;
uint32_t capabilities;
} DtsRuntimeInfo;
typedef void* DtsRuntimeHandle;
typedef struct DtsLoadRequest {
uint32_t structSize;
const char* skeletonPathUtf8;
const char* atlasPathUtf8;
float scale;
} DtsLoadRequest;
typedef struct DtsSkeletonInfo {
uint32_t structSize;
uint32_t boneCount;
uint32_t slotCount;
uint32_t skinCount;
uint32_t animationCount;
uint32_t eventCount;
uint32_t constraintCount;
} DtsSkeletonInfo;
typedef struct DtsRenderVertex {
float x;
float y;
float u;
float v;
uint32_t color;
} DtsRenderVertex;
typedef struct DtsDrawCommand {
uint32_t structSize;
const DtsRenderVertex* vertices;
uint32_t vertexCount;
const uint16_t* indices;
uint32_t indexCount;
const char* texturePathUtf8;
uint32_t blendMode;
} DtsDrawCommand;
DTS_RUNTIME_EXPORT uint32_t dtsRuntimeGetApiVersion(void);
DTS_RUNTIME_EXPORT int32_t dtsRuntimeGetInfo(DtsRuntimeInfo* info);
DTS_RUNTIME_EXPORT DtsRuntimeHandle dtsRuntimeCreate(void);
DTS_RUNTIME_EXPORT void dtsRuntimeDestroy(DtsRuntimeHandle handle);
DTS_RUNTIME_EXPORT int32_t dtsRuntimeLoad(DtsRuntimeHandle handle, const DtsLoadRequest* request);
DTS_RUNTIME_EXPORT int32_t dtsRuntimeGetSkeletonInfo(
DtsRuntimeHandle handle, DtsSkeletonInfo* info);
DTS_RUNTIME_EXPORT const char* dtsRuntimeGetAnimationName(
DtsRuntimeHandle handle, uint32_t index);
DTS_RUNTIME_EXPORT float dtsRuntimeGetAnimationDuration(
DtsRuntimeHandle handle, uint32_t index);
DTS_RUNTIME_EXPORT const char* dtsRuntimeGetSkinName(
DtsRuntimeHandle handle, uint32_t index);
DTS_RUNTIME_EXPORT const char* dtsRuntimeGetLastError(DtsRuntimeHandle handle);
DTS_RUNTIME_EXPORT int32_t dtsRuntimeSetAnimation(
DtsRuntimeHandle handle, const char* animationNameUtf8, int32_t loop);
DTS_RUNTIME_EXPORT int32_t dtsRuntimeUpdate(DtsRuntimeHandle handle, float deltaSeconds);
DTS_RUNTIME_EXPORT uint32_t dtsRuntimeGetDrawCommandCount(DtsRuntimeHandle handle);
DTS_RUNTIME_EXPORT int32_t dtsRuntimeGetDrawCommand(
DtsRuntimeHandle handle, uint32_t index, DtsDrawCommand* command);
#ifdef __cplusplus
}
#endif