@spatialwalk/avatarkit 1.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +375 -0
- package/dist/StreamingAudioPlayer-C2TfYsO8.js +293 -0
- package/dist/StreamingAudioPlayer-C2TfYsO8.js.map +1 -0
- package/dist/animation/AnimationWebSocketClient.d.ts +50 -0
- package/dist/animation/AnimationWebSocketClient.d.ts.map +1 -0
- package/dist/animation/utils/eventEmitter.d.ts +13 -0
- package/dist/animation/utils/eventEmitter.d.ts.map +1 -0
- package/dist/animation/utils/flameConverter.d.ts +26 -0
- package/dist/animation/utils/flameConverter.d.ts.map +1 -0
- package/dist/audio/AnimationPlayer.d.ts +53 -0
- package/dist/audio/AnimationPlayer.d.ts.map +1 -0
- package/dist/audio/StreamingAudioPlayer.d.ts +113 -0
- package/dist/audio/StreamingAudioPlayer.d.ts.map +1 -0
- package/dist/avatar_core_wasm-DmkU6dYn.js +1666 -0
- package/dist/avatar_core_wasm-DmkU6dYn.js.map +1 -0
- package/dist/avatar_core_wasm.wasm +0 -0
- package/dist/config/app-config.d.ts +48 -0
- package/dist/config/app-config.d.ts.map +1 -0
- package/dist/config/constants.d.ts +13 -0
- package/dist/config/constants.d.ts.map +1 -0
- package/dist/config/region-config.d.ts +17 -0
- package/dist/config/region-config.d.ts.map +1 -0
- package/dist/config/sdk-config-loader.d.ts +12 -0
- package/dist/config/sdk-config-loader.d.ts.map +1 -0
- package/dist/core/Avatar.d.ts +23 -0
- package/dist/core/Avatar.d.ts.map +1 -0
- package/dist/core/AvatarController.d.ts +125 -0
- package/dist/core/AvatarController.d.ts.map +1 -0
- package/dist/core/AvatarDownloader.d.ts +100 -0
- package/dist/core/AvatarDownloader.d.ts.map +1 -0
- package/dist/core/AvatarKit.d.ts +60 -0
- package/dist/core/AvatarKit.d.ts.map +1 -0
- package/dist/core/AvatarManager.d.ts +26 -0
- package/dist/core/AvatarManager.d.ts.map +1 -0
- package/dist/core/AvatarView.d.ts +158 -0
- package/dist/core/AvatarView.d.ts.map +1 -0
- package/dist/generated/driveningress/v1/driveningress.d.ts +80 -0
- package/dist/generated/driveningress/v1/driveningress.d.ts.map +1 -0
- package/dist/generated/driveningress/v2/driveningress.d.ts +81 -0
- package/dist/generated/driveningress/v2/driveningress.d.ts.map +1 -0
- package/dist/generated/google/protobuf/any.d.ts +145 -0
- package/dist/generated/google/protobuf/any.d.ts.map +1 -0
- package/dist/generated/google/protobuf/struct.d.ts +108 -0
- package/dist/generated/google/protobuf/struct.d.ts.map +1 -0
- package/dist/generated/google/protobuf/timestamp.d.ts +129 -0
- package/dist/generated/google/protobuf/timestamp.d.ts.map +1 -0
- package/dist/generated/jsonapi/v1/base.d.ts +140 -0
- package/dist/generated/jsonapi/v1/base.d.ts.map +1 -0
- package/dist/generated/platform/v1/asset_groups.d.ts +225 -0
- package/dist/generated/platform/v1/asset_groups.d.ts.map +1 -0
- package/dist/generated/platform/v1/assets.d.ts +149 -0
- package/dist/generated/platform/v1/assets.d.ts.map +1 -0
- package/dist/generated/platform/v1/character.d.ts +395 -0
- package/dist/generated/platform/v1/character.d.ts.map +1 -0
- package/dist/generated/platform/v1/redeem.d.ts +22 -0
- package/dist/generated/platform/v1/redeem.d.ts.map +1 -0
- package/dist/index-DwhR9l52.js +9712 -0
- package/dist/index-DwhR9l52.js.map +1 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +19 -0
- package/dist/index.js.map +1 -0
- package/dist/renderer/RenderSystem.d.ts +77 -0
- package/dist/renderer/RenderSystem.d.ts.map +1 -0
- package/dist/renderer/covariance.d.ts +13 -0
- package/dist/renderer/covariance.d.ts.map +1 -0
- package/dist/renderer/renderer.d.ts +8 -0
- package/dist/renderer/renderer.d.ts.map +1 -0
- package/dist/renderer/sortSplats.d.ts +12 -0
- package/dist/renderer/sortSplats.d.ts.map +1 -0
- package/dist/renderer/webgl/reorderData.d.ts +14 -0
- package/dist/renderer/webgl/reorderData.d.ts.map +1 -0
- package/dist/renderer/webgl/webglRenderer.d.ts +66 -0
- package/dist/renderer/webgl/webglRenderer.d.ts.map +1 -0
- package/dist/renderer/webgpu/webgpuRenderer.d.ts +54 -0
- package/dist/renderer/webgpu/webgpuRenderer.d.ts.map +1 -0
- package/dist/types/character-settings.d.ts +23 -0
- package/dist/types/character-settings.d.ts.map +1 -0
- package/dist/types/character.d.ts +39 -0
- package/dist/types/character.d.ts.map +1 -0
- package/dist/types/index.d.ts +68 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/utils/animation-interpolation.d.ts +17 -0
- package/dist/utils/animation-interpolation.d.ts.map +1 -0
- package/dist/utils/error-utils.d.ts +27 -0
- package/dist/utils/error-utils.d.ts.map +1 -0
- package/dist/utils/logger.d.ts +35 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/posthog-tracker.d.ts +82 -0
- package/dist/utils/posthog-tracker.d.ts.map +1 -0
- package/dist/utils/reqId.d.ts +20 -0
- package/dist/utils/reqId.d.ts.map +1 -0
- package/dist/utils/toast.d.ts +74 -0
- package/dist/utils/toast.d.ts.map +1 -0
- package/dist/wasm/avatarCoreAdapter.d.ts +188 -0
- package/dist/wasm/avatarCoreAdapter.d.ts.map +1 -0
- package/dist/wasm/avatarCoreMemory.d.ts +141 -0
- package/dist/wasm/avatarCoreMemory.d.ts.map +1 -0
- package/package.json +62 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ReqID 生成工具
|
|
3
|
+
*
|
|
4
|
+
* 统一格式:时间戳(UTC时间,秒级,格式:YYYYMMDDHHmmss)+ 下划线 + 12位 NanoID
|
|
5
|
+
* 示例:20251027143034_aB3dEf9hIjKl
|
|
6
|
+
*
|
|
7
|
+
* 时间部分使用 UTC 时间,便于跨端日志排查时统一转换时区检索
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* 生成统一的请求 ID
|
|
11
|
+
*
|
|
12
|
+
* 格式:时间戳(UTC时间,秒级,格式:YYYYMMDDHHmmss)+ 下划线 + 12位 NanoID
|
|
13
|
+
* 时间部分使用 UTC 时间,便于跨端日志排查时统一转换时区检索
|
|
14
|
+
*
|
|
15
|
+
* @returns 格式为 YYYYMMDDHHmmss_nanoid 的请求 ID
|
|
16
|
+
* @example
|
|
17
|
+
* generateReqId() // "20251027143034_aB3dEf9hIjKl"
|
|
18
|
+
*/
|
|
19
|
+
export declare function generateReqId(): string;
|
|
20
|
+
//# sourceMappingURL=reqId.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reqId.d.ts","sourceRoot":"","sources":["../../utils/reqId.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAUH;;;;;;;;;GASG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAkBtC"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Toast Utility Library
|
|
3
|
+
* 使用原生API替代vue-sonner,提供环境感知的提示功能
|
|
4
|
+
* - Only shows debug/info/success toasts in test/dev environment
|
|
5
|
+
* - Only shows fatal errors in production environment
|
|
6
|
+
* - Loading toasts show detailed content only in test/dev environment
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* Toast options interface
|
|
10
|
+
*/
|
|
11
|
+
export interface ToastOptions {
|
|
12
|
+
description?: string;
|
|
13
|
+
duration?: number;
|
|
14
|
+
action?: {
|
|
15
|
+
label: string;
|
|
16
|
+
onClick: () => void;
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Native Toast Implementation
|
|
21
|
+
* 使用原生API替代vue-sonner
|
|
22
|
+
*/
|
|
23
|
+
export declare const toast: {
|
|
24
|
+
/**
|
|
25
|
+
* Success toast - only shown in test/dev environment
|
|
26
|
+
*/
|
|
27
|
+
success(_message: string, _options?: ToastOptions): string | number | undefined;
|
|
28
|
+
/**
|
|
29
|
+
* Error toast - only shown for fatal errors in production
|
|
30
|
+
* In dev/test, all errors are shown
|
|
31
|
+
*/
|
|
32
|
+
error(_message: string, _options?: ToastOptions): string | number | undefined;
|
|
33
|
+
/**
|
|
34
|
+
* Info toast - only shown in test/dev environment
|
|
35
|
+
*/
|
|
36
|
+
info(message: string, options?: ToastOptions): string | number | undefined;
|
|
37
|
+
/**
|
|
38
|
+
* Warning toast - only shown in test/dev environment
|
|
39
|
+
*/
|
|
40
|
+
warning(message: string, options?: ToastOptions): string | number | undefined;
|
|
41
|
+
/**
|
|
42
|
+
* Loading toast - only shown in test/dev environment
|
|
43
|
+
*/
|
|
44
|
+
loading(_message: string, _options?: ToastOptions): string | number | undefined;
|
|
45
|
+
/**
|
|
46
|
+
* Dismiss toast
|
|
47
|
+
*/
|
|
48
|
+
dismiss(_toastId: string | number): void;
|
|
49
|
+
/**
|
|
50
|
+
* Custom toast - only shown in test/dev environment
|
|
51
|
+
*/
|
|
52
|
+
custom(_component: unknown, _options?: ToastOptions): string | number | undefined;
|
|
53
|
+
/**
|
|
54
|
+
* Promise toast - only shown in test/dev environment
|
|
55
|
+
*/
|
|
56
|
+
promise<T>(promise: Promise<T>, options: {
|
|
57
|
+
loading: string;
|
|
58
|
+
success: string | ((data: T) => string);
|
|
59
|
+
error: string | ((error: unknown) => string);
|
|
60
|
+
}): Promise<T>;
|
|
61
|
+
};
|
|
62
|
+
/**
|
|
63
|
+
* Export individual functions for convenience
|
|
64
|
+
*/
|
|
65
|
+
export declare const success: (_message: string, _options?: ToastOptions) => string | number | undefined, error: (_message: string, _options?: ToastOptions) => string | number | undefined, info: (message: string, options?: ToastOptions) => string | number | undefined, warning: (message: string, options?: ToastOptions) => string | number | undefined, loading: (_message: string, _options?: ToastOptions) => string | number | undefined, dismiss: (_toastId: string | number) => void, custom: (_component: unknown, _options?: ToastOptions) => string | number | undefined, promise: <T>(promise: Promise<T>, options: {
|
|
66
|
+
loading: string;
|
|
67
|
+
success: string | ((data: T) => string);
|
|
68
|
+
error: string | ((error: unknown) => string);
|
|
69
|
+
}) => Promise<T>;
|
|
70
|
+
/**
|
|
71
|
+
* Default export
|
|
72
|
+
*/
|
|
73
|
+
export default toast;
|
|
74
|
+
//# sourceMappingURL=toast.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toast.d.ts","sourceRoot":"","sources":["../../utils/toast.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAYH;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE;QACP,KAAK,EAAE,MAAM,CAAA;QACb,OAAO,EAAE,MAAM,IAAI,CAAA;KACpB,CAAA;CACF;AAED;;;GAGG;AACH,eAAO,MAAM,KAAK;IAChB;;OAEG;sBACe,MAAM,aAAa,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS;IAS/E;;;OAGG;oBACa,MAAM,aAAa,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS;IAU7E;;OAEG;kBACW,MAAM,YAAY,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS;IAS1E;;OAEG;qBACc,MAAM,YAAY,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS;IAS7E;;OAEG;sBACe,MAAM,aAAa,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS;IAQ/E;;OAEG;sBACe,MAAM,GAAG,MAAM,GAAG,IAAI;IAMxC;;OAEG;uBACgB,OAAO,aAAa,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS;IAQjF;;OAEG;YACK,CAAC,WACE,OAAO,CAAC,CAAC,CAAC,WACV;QACP,OAAO,EAAE,MAAM,CAAA;QACf,OAAO,EAAE,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC,CAAA;QACvC,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,CAAC,CAAA;KAC7C,GACA,OAAO,CAAC,CAAC,CAAC;CAoBd,CAAA;AAED;;GAEG;AACH,eAAO,MAAQ,OAAO,aAjHF,MAAM,aAAa,YAAY,KAAG,MAAM,GAAG,MAAM,GAAG,SAAS,EAiHzD,KAAK,aApGX,MAAM,aAAa,YAAY,KAAG,MAAM,GAAG,MAAM,GAAG,SAAS,EAoGhD,IAAI,YAvFnB,MAAM,YAAY,YAAY,KAAG,MAAM,GAAG,MAAM,GAAG,SAAS,EAuFvC,OAAO,YA3EzB,MAAM,YAAY,YAAY,KAAG,MAAM,GAAG,MAAM,GAAG,SAAS,EA2EjC,OAAO,aA/DjC,MAAM,aAAa,YAAY,KAAG,MAAM,GAAG,MAAM,GAAG,SAAS,EA+D1B,OAAO,aApD1C,MAAM,GAAG,MAAM,KAAG,IAAI,EAoDsB,MAAM,eA3CjD,OAAO,aAAa,YAAY,KAAG,MAAM,GAAG,MAAM,GAAG,SAAS,EA2CX,OAAO,GAhCrE,CAAC,WACE,OAAO,CAAC,CAAC,CAAC,WACV;IACP,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC,CAAA;IACvC,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,CAAC,CAAA;CAC7C,KACA,OAAO,CAAC,CAAC,CAyB2E,CAAA;AAEzF;;GAEG;AACH,eAAe,KAAK,CAAA"}
|
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
import { AvatarCoreMemoryManager } from './avatarCoreMemory';
|
|
2
|
+
export interface WasmModuleConfig {
|
|
3
|
+
baseUrl?: string;
|
|
4
|
+
[key: string]: unknown;
|
|
5
|
+
}
|
|
6
|
+
export interface AvatarCoreOptions {
|
|
7
|
+
logLevel?: 'basic' | 'verbose';
|
|
8
|
+
enableValidation?: boolean;
|
|
9
|
+
enablePerformanceMetrics?: boolean;
|
|
10
|
+
retryCount?: number;
|
|
11
|
+
baseAssetsPath?: string;
|
|
12
|
+
modelFolder?: string;
|
|
13
|
+
wasmConfig?: WasmModuleConfig;
|
|
14
|
+
wasmPath?: string;
|
|
15
|
+
}
|
|
16
|
+
interface PerformanceMetrics {
|
|
17
|
+
initTime: number;
|
|
18
|
+
loadTime: number;
|
|
19
|
+
computeFrames: number;
|
|
20
|
+
totalComputeTime: number;
|
|
21
|
+
averageComputeTime: number;
|
|
22
|
+
}
|
|
23
|
+
export interface FlameInfo {
|
|
24
|
+
vertexCount: number;
|
|
25
|
+
faceCount: number;
|
|
26
|
+
jointCount: number;
|
|
27
|
+
}
|
|
28
|
+
export interface CharacterInfo {
|
|
29
|
+
pointCount: number;
|
|
30
|
+
hasAnimation: boolean;
|
|
31
|
+
}
|
|
32
|
+
export interface FlameParams {
|
|
33
|
+
shape_params?: number[];
|
|
34
|
+
expr_params?: number[];
|
|
35
|
+
rotation?: number[];
|
|
36
|
+
translation?: number[];
|
|
37
|
+
neck_pose?: number[];
|
|
38
|
+
jaw_pose?: number[];
|
|
39
|
+
eyes_pose?: number[];
|
|
40
|
+
eyelid?: number[];
|
|
41
|
+
has_eyelid?: boolean;
|
|
42
|
+
}
|
|
43
|
+
export declare class AvatarCoreAdapter {
|
|
44
|
+
private options;
|
|
45
|
+
private wasmConfig;
|
|
46
|
+
private wasmModule;
|
|
47
|
+
private memoryManager;
|
|
48
|
+
private coreHandle;
|
|
49
|
+
private characterHandle;
|
|
50
|
+
private animationHandle;
|
|
51
|
+
private totalFrames;
|
|
52
|
+
private isInitialized;
|
|
53
|
+
private isCharacterLoaded;
|
|
54
|
+
private api;
|
|
55
|
+
private performanceMetrics;
|
|
56
|
+
wasmTime: number;
|
|
57
|
+
private errorCodes;
|
|
58
|
+
private flameInfo?;
|
|
59
|
+
private characterInfo?;
|
|
60
|
+
constructor(options?: AvatarCoreOptions);
|
|
61
|
+
/**
|
|
62
|
+
* 加载 WASM 模块并设置 API
|
|
63
|
+
* 每次都创建全新的 WASM 实例,确保 C++ 内存是干净的
|
|
64
|
+
*
|
|
65
|
+
* 注意:这里使用动态 import() 导入 WASM 模块。
|
|
66
|
+
* Vite 在构建时会自动为 WASM 文件和 JS glue 代码添加 hash(如 avatar_core_wasm-CxWuw7eS.wasm),
|
|
67
|
+
* 确保浏览器缓存与版本一致,不会有缓存问题。
|
|
68
|
+
*
|
|
69
|
+
* Hash 的作用机制:
|
|
70
|
+
* - WASM 文件内容变化 → hash 自动变化 → URL 变化 → 浏览器拉取新版本
|
|
71
|
+
* - WASM 文件内容不变 → hash 保持不变 → URL 不变 → 浏览器使用缓存
|
|
72
|
+
* - Emscripten 生成的 JS 内部会使用 hard-coded 的 hash 路径加载 .wasm 文件
|
|
73
|
+
*/
|
|
74
|
+
loadWASMModule(): Promise<void>;
|
|
75
|
+
/**
|
|
76
|
+
* 验证 WASM 模块功能
|
|
77
|
+
*/
|
|
78
|
+
private validateWASMModule;
|
|
79
|
+
/**
|
|
80
|
+
* 初始化内存视图
|
|
81
|
+
*/
|
|
82
|
+
private initializeMemoryViews;
|
|
83
|
+
/**
|
|
84
|
+
* 设置 C API 函数包装
|
|
85
|
+
*/
|
|
86
|
+
private setupCAPIFunctions;
|
|
87
|
+
/**
|
|
88
|
+
* 读取当前动画帧的 FlameParams(用于过渡或调试)
|
|
89
|
+
*/
|
|
90
|
+
getCurrentFrameParams(frameIndex?: number): Promise<FlameParams>;
|
|
91
|
+
/**
|
|
92
|
+
* 初始化 Avatar Core 核心
|
|
93
|
+
*/
|
|
94
|
+
private initializeAvatarCore;
|
|
95
|
+
/**
|
|
96
|
+
* 加载模板资源(从预加载的 ArrayBuffers)
|
|
97
|
+
*/
|
|
98
|
+
loadTemplateResourcesFromBuffers(templateResources: Record<string, ArrayBuffer>): Promise<boolean>;
|
|
99
|
+
/**
|
|
100
|
+
* 加载角色数据(从预加载的 ArrayBuffers)
|
|
101
|
+
*/
|
|
102
|
+
loadCharacterFromBuffers(shapeBuffer: ArrayBuffer, pointCloudBuffer: ArrayBuffer): Promise<boolean>;
|
|
103
|
+
private loadAnimationFromData;
|
|
104
|
+
/**
|
|
105
|
+
* Load animation from ArrayBuffer (for CDN-based dynamic loading)
|
|
106
|
+
*/
|
|
107
|
+
loadAnimationFromBuffer(animData: ArrayBuffer): Promise<number>;
|
|
108
|
+
switchAnimationFile(animationFile: string): Promise<number>;
|
|
109
|
+
/**
|
|
110
|
+
* 获取动画总帧数
|
|
111
|
+
*/
|
|
112
|
+
getAnimationTotalFrames(): Promise<number>;
|
|
113
|
+
/**
|
|
114
|
+
* 从动画中获取指定帧的参数
|
|
115
|
+
*/
|
|
116
|
+
getAnimationFrameParams(frameIndex?: number): Promise<number>;
|
|
117
|
+
/**
|
|
118
|
+
* 设置眼部追踪配置(对齐 app 实现)
|
|
119
|
+
*/
|
|
120
|
+
setEyeTrackingConfig(config: {
|
|
121
|
+
enabled: boolean;
|
|
122
|
+
auto_eyelid_adjustment?: boolean;
|
|
123
|
+
eyelid_threshold?: number;
|
|
124
|
+
}): Promise<boolean>;
|
|
125
|
+
/**
|
|
126
|
+
* 设置眼部追踪目标(高级功能)
|
|
127
|
+
*/
|
|
128
|
+
setGazeTarget(x: number, y: number, z: number): Promise<boolean>;
|
|
129
|
+
/**
|
|
130
|
+
* 重置眼部追踪
|
|
131
|
+
*/
|
|
132
|
+
resetEyeTracking(): Promise<boolean>;
|
|
133
|
+
/**
|
|
134
|
+
* 查询 FLAME 模型信息
|
|
135
|
+
*/
|
|
136
|
+
private queryFlameInfo;
|
|
137
|
+
/**
|
|
138
|
+
* 查询角色信息
|
|
139
|
+
*/
|
|
140
|
+
private queryCharacterInfo;
|
|
141
|
+
/**
|
|
142
|
+
* 检查错误码并抛出异常
|
|
143
|
+
*/
|
|
144
|
+
private checkError;
|
|
145
|
+
/**
|
|
146
|
+
* 更新进度回调
|
|
147
|
+
*/
|
|
148
|
+
private updateProgress;
|
|
149
|
+
/**
|
|
150
|
+
* 获取性能指标
|
|
151
|
+
*/
|
|
152
|
+
getPerformanceMetrics(): PerformanceMetrics & {
|
|
153
|
+
memoryStats?: ReturnType<AvatarCoreMemoryManager['getMemoryStats']>;
|
|
154
|
+
flameInfo?: FlameInfo;
|
|
155
|
+
characterInfo?: CharacterInfo;
|
|
156
|
+
version?: string;
|
|
157
|
+
};
|
|
158
|
+
/**
|
|
159
|
+
* 释放当前角色和动画资源(但保留 core)
|
|
160
|
+
*/
|
|
161
|
+
releaseCurrentCharacter(): void;
|
|
162
|
+
/**
|
|
163
|
+
* 释放所有资源(包括 core)
|
|
164
|
+
*/
|
|
165
|
+
release(): void;
|
|
166
|
+
/**
|
|
167
|
+
* 兼容性接口:提供与 FlameComplete3DGSManager 相同的接口
|
|
168
|
+
*/
|
|
169
|
+
loadFlameModel(_modelData: any): Promise<boolean>;
|
|
170
|
+
load3DGSData(_original3DGSPoints: any, _binding: any, _flameFaces: any): Promise<boolean>;
|
|
171
|
+
/**
|
|
172
|
+
* 计算帧并返回 GPU 友好的 flat 格式(零拷贝,协方差预计算)
|
|
173
|
+
* 🚀 性能优化版本:
|
|
174
|
+
* - C++ 预计算协方差矩阵
|
|
175
|
+
* - 零拷贝直接访问 WASM 内存http://localhost:3000/us/
|
|
176
|
+
* - 直接输出 GPU 格式 [pos3, color4, cov6]
|
|
177
|
+
*/
|
|
178
|
+
computeCompleteFrameFlat(params?: {
|
|
179
|
+
frameIndex?: number;
|
|
180
|
+
}): Promise<Float32Array | null>;
|
|
181
|
+
/**
|
|
182
|
+
* 计算帧并返回 GPU 友好的 flat 格式(从 FLAME 参数)
|
|
183
|
+
* 🔑 用于 Realtime: 接受自定义 FLAME 参数并计算 Splat
|
|
184
|
+
*/
|
|
185
|
+
computeFrameFlatFromParams(flameParams: FlameParams): Promise<Float32Array | null>;
|
|
186
|
+
}
|
|
187
|
+
export {};
|
|
188
|
+
//# sourceMappingURL=avatarCoreAdapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"avatarCoreAdapter.d.ts","sourceRoot":"","sources":["../../wasm/avatarCoreAdapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Avatar Core WASM 内存管理工具
|
|
3
|
+
*
|
|
4
|
+
* 提供高效的内存分配、数据传递和零拷贝访问功能
|
|
5
|
+
* 专门为 avatar_core_wasm 优化
|
|
6
|
+
*/
|
|
7
|
+
interface WASMModule {
|
|
8
|
+
_malloc: (size: number) => number;
|
|
9
|
+
_free: (ptr: number) => void;
|
|
10
|
+
writeArrayToMemory: (array: Uint8Array, ptr: number) => void;
|
|
11
|
+
HEAPU8: Uint8Array;
|
|
12
|
+
HEAP32: Int32Array;
|
|
13
|
+
HEAPF32: Float32Array;
|
|
14
|
+
getValue: (ptr: number, type: string) => number;
|
|
15
|
+
setValue: (ptr: number, value: number, type: string) => void;
|
|
16
|
+
}
|
|
17
|
+
interface MemoryAllocation {
|
|
18
|
+
ptr: number;
|
|
19
|
+
size: number;
|
|
20
|
+
}
|
|
21
|
+
export interface TemplateResources {
|
|
22
|
+
flameModel: ArrayBuffer;
|
|
23
|
+
flameTemplate: ArrayBuffer;
|
|
24
|
+
teethPb: ArrayBuffer;
|
|
25
|
+
teethNpz: ArrayBuffer;
|
|
26
|
+
}
|
|
27
|
+
export interface CharacterData {
|
|
28
|
+
shape: ArrayBuffer;
|
|
29
|
+
pointCloud: ArrayBuffer;
|
|
30
|
+
}
|
|
31
|
+
export interface ExpressionParams {
|
|
32
|
+
expression?: number[];
|
|
33
|
+
jaw?: number[];
|
|
34
|
+
eyeR?: number[];
|
|
35
|
+
eyeL?: number[];
|
|
36
|
+
pose?: number[];
|
|
37
|
+
neck?: number[];
|
|
38
|
+
translation?: number[];
|
|
39
|
+
}
|
|
40
|
+
export interface ArrayMetadata {
|
|
41
|
+
ptr: number;
|
|
42
|
+
size: number;
|
|
43
|
+
dtype: string;
|
|
44
|
+
}
|
|
45
|
+
export declare class AvatarCoreMemoryManager {
|
|
46
|
+
private module;
|
|
47
|
+
private allocatedPointers;
|
|
48
|
+
private structPointers;
|
|
49
|
+
constructor(wasmModule: WASMModule);
|
|
50
|
+
/**
|
|
51
|
+
* 分配 WASM 内存并复制数据 - 纯 API 方式
|
|
52
|
+
*/
|
|
53
|
+
allocateAndCopy(arrayBuffer: ArrayBuffer): MemoryAllocation;
|
|
54
|
+
/**
|
|
55
|
+
* 创建 AvatarTemplateConfig 结构体
|
|
56
|
+
*/
|
|
57
|
+
createTemplateConfig(resources: TemplateResources): number;
|
|
58
|
+
/**
|
|
59
|
+
* 创建 AvatarCharacterData 结构体 - 新版 Emscripten 方式
|
|
60
|
+
*/
|
|
61
|
+
createCharacterData(shapeBuffer: ArrayBuffer, plyBuffer: ArrayBuffer): number;
|
|
62
|
+
/**
|
|
63
|
+
* 读取 AvatarFlameParams 结构体数据
|
|
64
|
+
* Used to extract current animation frame parameters from WASM memory
|
|
65
|
+
*/
|
|
66
|
+
readFlameParams(paramsPtr: number): {
|
|
67
|
+
shape_params: number[];
|
|
68
|
+
expr_params: number[];
|
|
69
|
+
rotation: number[];
|
|
70
|
+
translation: number[];
|
|
71
|
+
neck_pose: number[];
|
|
72
|
+
jaw_pose: number[];
|
|
73
|
+
eyes_pose: number[];
|
|
74
|
+
eyelid: number[];
|
|
75
|
+
has_eyelid: boolean;
|
|
76
|
+
};
|
|
77
|
+
/**
|
|
78
|
+
* 创建 AvatarFlameParams 结构体 - 新版 Emscripten 方式
|
|
79
|
+
*/
|
|
80
|
+
createFlameParams(params: {
|
|
81
|
+
shape_params?: number[];
|
|
82
|
+
expr_params?: number[];
|
|
83
|
+
rotation?: number[];
|
|
84
|
+
translation?: number[];
|
|
85
|
+
neck_pose?: number[];
|
|
86
|
+
jaw_pose?: number[];
|
|
87
|
+
eyes_pose?: number[];
|
|
88
|
+
eyelid?: number[];
|
|
89
|
+
has_eyelid?: boolean;
|
|
90
|
+
}): number;
|
|
91
|
+
/**
|
|
92
|
+
* 读取 AvatarSplatPointFlatArray 结构体数据(预计算协方差)
|
|
93
|
+
*
|
|
94
|
+
* 结构体布局:
|
|
95
|
+
* - AvatarSplatPointFlat* points (0-3, 32位指针)
|
|
96
|
+
* - uint32_t point_count (4-7)
|
|
97
|
+
* - float compute_time_ms (8-11)
|
|
98
|
+
*
|
|
99
|
+
* 每个点布局 (52 bytes):
|
|
100
|
+
* - position[3] (12 bytes)
|
|
101
|
+
* - color[4] (16 bytes, RGBA)
|
|
102
|
+
* - covariance[6] (24 bytes, 预计算好的协方差矩阵上三角)
|
|
103
|
+
*
|
|
104
|
+
* ⚠️ 使用 getValue 逐个读取,避免动态内存的 HEAPF32 detachment 问题
|
|
105
|
+
*/
|
|
106
|
+
readSplatPointFlatArray(arrayPtr: number): Float32Array | null;
|
|
107
|
+
/**
|
|
108
|
+
* 读取AvatarMeshData结构体数据
|
|
109
|
+
*/
|
|
110
|
+
readMeshData(outputPtr: number): {
|
|
111
|
+
vertices: Float32Array;
|
|
112
|
+
vertexCount: number;
|
|
113
|
+
faces: Uint32Array;
|
|
114
|
+
faceCount: number;
|
|
115
|
+
landmarks: Float32Array | null;
|
|
116
|
+
landmarkCount: number;
|
|
117
|
+
computeTime: number;
|
|
118
|
+
};
|
|
119
|
+
/**
|
|
120
|
+
* 释放指定指针的内存
|
|
121
|
+
*/
|
|
122
|
+
free(ptr: number): void;
|
|
123
|
+
/**
|
|
124
|
+
* 释放结构体内存
|
|
125
|
+
*/
|
|
126
|
+
freeStruct(name: string): void;
|
|
127
|
+
/**
|
|
128
|
+
* 清理所有分配的内存
|
|
129
|
+
*/
|
|
130
|
+
cleanup(): void;
|
|
131
|
+
/**
|
|
132
|
+
* 获取内存使用统计
|
|
133
|
+
*/
|
|
134
|
+
getMemoryStats(): {
|
|
135
|
+
allocatedPointers: number;
|
|
136
|
+
structPointers: number;
|
|
137
|
+
totalAllocatedMB: number;
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
export {};
|
|
141
|
+
//# sourceMappingURL=avatarCoreMemory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"avatarCoreMemory.d.ts","sourceRoot":"","sources":["../../wasm/avatarCoreMemory.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@spatialwalk/avatarkit",
|
|
3
|
+
"type": "module",
|
|
4
|
+
"version": "1.0.0-beta.1",
|
|
5
|
+
"packageManager": "pnpm@10.18.2",
|
|
6
|
+
"description": "SPAvatar SDK - 3D Gaussian Splatting Avatar Rendering SDK",
|
|
7
|
+
"author": "SPAvatar Team",
|
|
8
|
+
"license": "MIT",
|
|
9
|
+
"keywords": [
|
|
10
|
+
"avatar",
|
|
11
|
+
"3d",
|
|
12
|
+
"gaussian-splatting",
|
|
13
|
+
"webgl",
|
|
14
|
+
"webgpu",
|
|
15
|
+
"wasm"
|
|
16
|
+
],
|
|
17
|
+
"exports": {
|
|
18
|
+
".": {
|
|
19
|
+
"types": "./dist/index.d.ts",
|
|
20
|
+
"import": "./dist/index.js"
|
|
21
|
+
},
|
|
22
|
+
"./*": {
|
|
23
|
+
"types": "./dist/*.d.ts",
|
|
24
|
+
"import": "./dist/*.js"
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
"main": "./dist/index.js",
|
|
28
|
+
"module": "./dist/index.js",
|
|
29
|
+
"types": "./dist/index.d.ts",
|
|
30
|
+
"files": [
|
|
31
|
+
"README.md",
|
|
32
|
+
"dist"
|
|
33
|
+
],
|
|
34
|
+
"repository": {
|
|
35
|
+
"type": "git",
|
|
36
|
+
"url": "https://github.com/spatialwalk/avatarkit-web-sdk.git"
|
|
37
|
+
},
|
|
38
|
+
"publishConfig": {
|
|
39
|
+
"access": "public"
|
|
40
|
+
},
|
|
41
|
+
"scripts": {
|
|
42
|
+
"build": "SDK_BUILD=true vite build --mode library",
|
|
43
|
+
"dev": "vite build --mode library --watch",
|
|
44
|
+
"clean": "rm -rf dist",
|
|
45
|
+
"typecheck": "tsc --noEmit"
|
|
46
|
+
},
|
|
47
|
+
"peerDependencies": {
|
|
48
|
+
"@webgpu/types": "*"
|
|
49
|
+
},
|
|
50
|
+
"dependencies": {
|
|
51
|
+
"@bufbuild/protobuf": "^2.10.0",
|
|
52
|
+
"@guiiai/logg": "^1.2.4",
|
|
53
|
+
"nanoid": "^5.1.6",
|
|
54
|
+
"posthog-js": "^1.275.3"
|
|
55
|
+
},
|
|
56
|
+
"devDependencies": {
|
|
57
|
+
"@webgpu/types": "^0.1.65",
|
|
58
|
+
"typescript": "^5.0.0",
|
|
59
|
+
"vite": "^5.0.0",
|
|
60
|
+
"vite-plugin-dts": "^4.5.4"
|
|
61
|
+
}
|
|
62
|
+
}
|