KCES

package
v2.3.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 2, 2026 License: BSD-3-Clause Imports: 37 Imported by: 0

Documentation

Index

Constants

View Source
const CtEnvelopeFormat = "kces-content-table"
View Source
const KCESModelExtrasKey = "kcesModel"

KCESModelExtrasKey 是 glTF 文档 extras 中承载 KCES 专有模型字段的键名 KCESModelExtrasKey is the key in glTF document extras that carries KCES-specific model fields

View Source
const NativeUnityObjectJSONFormat = "kces-unity-native-object"

NativeUnityObjectJSONFormat 是可编辑自描述 Unity 对象 JSON 的格式标识 NativeUnityObjectJSONFormat is the format marker for editable self-describing Unity object JSON

View Source
const RawUnityObjectFormat = "kces-unity-raw-object"

RawUnityObjectFormat 是旧原始 Unity 对象 JSON 封套的格式标识 RawUnityObjectFormat is the format marker for the legacy raw Unity object JSON envelope

View Source
const (
	RawUnityTypeTreeFormat = "kces-unity-typetree"
)

Variables

View Source
var ErrConversionOutputLimitExceeded = errors.New("KCES conversion output limit exceeded")

ErrConversionOutputLimitExceeded 表示 KCES 转换结果超过调用方提供的固定宽度字节上限 / ErrConversionOutputLimitExceeded indicates that KCES conversion output exceeds the caller-provided fixed-width byte limit

Functions

func IsAssetBGFile

func IsAssetBGFile(path string) bool

IsAssetBGFile 判断路径是否为原生 .asset_bg 文件 IsAssetBGFile reports whether a path names a native .asset_bg file

func IsKCESAssetSceneFile

func IsKCESAssetSceneFile(path string) bool

IsKCESAssetSceneFile 判断路径是否为原生 .asset_scene 文件 IsKCESAssetSceneFile reports whether a path names a native .asset_scene file

func IsKCESBridgeSessionFile

func IsKCESBridgeSessionFile(path string) bool

IsKCESBridgeSessionFile 不区分大小写识别准确的游戏文件名,避免把其他 .vd VirtualDirectory 载荷误判为 bridge session IsKCESBridgeSessionFile recognizes the exact game file name case-insensitively so unrelated .vd VirtualDirectory payloads are not treated as bridge sessions

func IsKCESBridgeSessionJSONFile

func IsKCESBridgeSessionJSONFile(path string) bool

IsKCESBridgeSessionJSONFile 识别 bridge_session.vd 对应的编辑 JSON 双扩展名 IsKCESBridgeSessionJSONFile recognizes the editing JSON double extension corresponding to bridge_session.vd

func IsKCESCtFile

func IsKCESCtFile(path string) bool

IsKCESCtFile 判断路径是否为原生 KCES .ct 文件 IsKCESCtFile reports whether a path names a native KCES .ct file

func IsKCESCtJSONFile

func IsKCESCtJSONFile(path string) bool

IsKCESCtJSONFile 判断路径是否为带正确格式标记的 KCES .ct 编辑 JSON IsKCESCtJSONFile reports whether a path names KCES .ct editing JSON with the correct format marker

func IsKCESDataFile

func IsKCESDataFile(path string) bool

IsKCESDataFile 判断路径是否为 KCES 使用的共用数据文件 IsKCESDataFile reports whether a path is a shared data file used by KCES

func IsKCESDataJSONFile

func IsKCESDataJSONFile(path string) bool

IsKCESDataJSONFile 判断路径是否为 KCES 共用数据文件的编辑 JSON IsKCESDataJSONFile reports whether a path is editing JSON for a shared KCES data file

func IsKCESExportNameMapFile

func IsKCESExportNameMapFile(path string) bool

IsKCESExportNameMapFile 判断路径是否为原生 export_map.enm 风格的 Unity JsonUtility 文档,并允许内容探测继续校验已改名的 .enm 副本 IsKCESExportNameMapFile reports whether a path names a native export_map.enm-style Unity JsonUtility document while allowing content probing to validate renamed .enm copies

func IsKCESExportNameMapJSONFile

func IsKCESExportNameMapJSONFile(path string) bool

IsKCESExportNameMapJSONFile 通过 .enm.json 双扩展名识别并完整校验 .enm 编辑文档 IsKCESExportNameMapJSONFile recognizes an .enm editing document by its .enm.json double extension and fully validates it

func IsKCESGLTFFile

func IsKCESGLTFFile(path string) bool

IsKCESGLTFFile 判断路径是否为 glTF 或 GLB 文件 IsKCESGLTFFile reports whether a path is a glTF or GLB file

func IsKCESGP03BridgeFile

func IsKCESGP03BridgeFile(path string) bool

IsKCESGP03BridgeFile 判断路径是否为原生 .brd 文件 IsKCESGP03BridgeFile reports whether a path names a native .brd file

func IsKCESGP03BridgeJSONFile

func IsKCESGP03BridgeJSONFile(path string) bool

IsKCESGP03BridgeJSONFile 判断路径是否为 .brd.json editing JSON IsKCESGP03BridgeJSONFile reports whether a path names .brd.json editing JSON

func IsKCESHitCheckFile

func IsKCESHitCheckFile(path string) bool

IsKCESHitCheckFile 判断路径是否为 .hitcheck 文件 IsKCESHitCheckFile reports whether a path names a .hitcheck file

func IsKCESHitCheckJSONFile

func IsKCESHitCheckJSONFile(path string) bool

IsKCESHitCheckJSONFile 判断路径是否为 .hitcheck 编辑 JSON IsKCESHitCheckJSONFile reports whether a path names .hitcheck editing JSON

func IsKCESKCMatFile

func IsKCESKCMatFile(path string) bool

IsKCESKCMatFile 判断路径是否为 KCES2 单个 .kcmat 文件 IsKCESKCMatFile reports whether a path names an individual KCES2 .kcmat file

func IsKCESKCMatJSONFile

func IsKCESKCMatJSONFile(path string) bool

IsKCESKCMatJSONFile 判断路径是否为 KCES2 单个 .kcmat 的编辑 JSON IsKCESKCMatJSONFile reports whether a path names editing JSON for an individual KCES2 .kcmat file

func IsKCESKCMenuFile

func IsKCESKCMenuFile(path string) bool

IsKCESKCMenuFile 判断路径是否为 KCES2 单个 .kcmenu 文件 IsKCESKCMenuFile reports whether a path names an individual KCES2 .kcmenu file

func IsKCESKCMenuJSONFile

func IsKCESKCMenuJSONFile(path string) bool

IsKCESKCMenuJSONFile 判断路径是否为 KCES2 单个 .kcmenu 的编辑 JSON IsKCESKCMenuJSONFile reports whether a path names editing JSON for an individual KCES2 .kcmenu file

func IsKCESKCModelFile

func IsKCESKCModelFile(path string) bool

IsKCESKCModelFile 判断路径是否为 KCES2 单个 .kcmodel 文件 IsKCESKCModelFile reports whether a path names an individual KCES2 .kcmodel file

func IsKCESKCModelJSONFile

func IsKCESKCModelJSONFile(path string) bool

IsKCESKCModelJSONFile 判断路径是否为 KCES2 单个 .kcmodel 的编辑 JSON IsKCESKCModelJSONFile reports whether a path names editing JSON for an individual KCES2 .kcmodel file

func IsKCESMaidColliderFile

func IsKCESMaidColliderFile(path string) bool

IsKCESMaidColliderFile 判断路径是否为原生女仆碰撞体载荷 IsKCESMaidColliderFile reports whether a path names a native maid-collider payload

func IsKCESMaidColliderJSONFile

func IsKCESMaidColliderJSONFile(path string) bool

IsKCESMaidColliderJSONFile 判断路径是否为女仆碰撞体编辑 JSON IsKCESMaidColliderJSONFile reports whether a path names maid-collider editing JSON

func IsKCESMaterialAssetsFile

func IsKCESMaterialAssetsFile(path string) bool

IsKCESMaterialAssetsFile 判断路径是否为 .materialassets 文件 IsKCESMaterialAssetsFile reports whether a path names a .materialassets file

func IsKCESMaterialAssetsJSONFile

func IsKCESMaterialAssetsJSONFile(path string) bool

IsKCESMaterialAssetsJSONFile 判断路径是否为 .materialassets 编辑 JSON IsKCESMaterialAssetsJSONFile reports whether a path names .materialassets editing JSON

func IsKCESMenuAssetsFile

func IsKCESMenuAssetsFile(path string) bool

IsKCESMenuAssetsFile 判断路径是否为 .menuassets 文件 IsKCESMenuAssetsFile reports whether a path names a .menuassets file

func IsKCESMenuAssetsJSONFile

func IsKCESMenuAssetsJSONFile(path string) bool

IsKCESMenuAssetsJSONFile 判断路径是否为 .menuassets 编辑 JSON IsKCESMenuAssetsJSONFile reports whether a path names .menuassets editing JSON

func IsKCESMiscFile

func IsKCESMiscFile(path string) bool

IsKCESMiscFile 判断路径是否为受支持的 KCES 杂项文件 IsKCESMiscFile reports whether a path is a supported KCES miscellaneous file

func IsKCESMiscJSONFile

func IsKCESMiscJSONFile(path string) bool

IsKCESMiscJSONFile 判断路径是否为受支持杂项格式的编辑 JSON IsKCESMiscJSONFile reports whether a path is editing JSON for a supported miscellaneous format

func IsKCESModelFile

func IsKCESModelFile(path string) bool

IsKCESModelFile 通过完整解码区分 KCES 与共用扩展名的其他 .model 格式 IsKCESModelFile distinguishes KCES from other .model formats sharing the extension by fully decoding the payload

func IsKCESModelJSONFile

func IsKCESModelJSONFile(path string) bool

IsKCESModelJSONFile 通过 KCES 模型字段识别 .model 编辑 JSON IsKCESModelJSONFile recognizes .model editing JSON through KCES model fields

func IsKCESNSONFile

func IsKCESNSONFile(path string) bool

IsKCESNSONFile 判断路径是否为 .nson 文件 IsKCESNSONFile reports whether a path names a .nson file

func IsKCESNSONJSONFile

func IsKCESNSONJSONFile(path string) bool

IsKCESNSONJSONFile 判断路径是否为 .nson 编辑 JSON IsKCESNSONJSONFile reports whether a path names .nson editing JSON

func IsKCESNativeAnimationClipFile

func IsKCESNativeAnimationClipFile(path string) bool

IsKCESNativeAnimationClipFile 判断文件是否为带内嵌 TypeTree 的 AnimationClip 主文件 IsKCESNativeAnimationClipFile reports whether a file is an AnimationClip primary file with an embedded TypeTree

func IsKCESNativeAudioClipFile

func IsKCESNativeAudioClipFile(path string) bool

IsKCESNativeAudioClipFile 判断文件是否为带内嵌 TypeTree 的 AudioClip 主文件 IsKCESNativeAudioClipFile reports whether a file is an AudioClip primary file with an embedded TypeTree

func IsKCESNativeMeshFile

func IsKCESNativeMeshFile(path string) bool

IsKCESNativeMeshFile 判断文件是否为带内嵌 TypeTree 的 Mesh 主文件 IsKCESNativeMeshFile reports whether a file is a Mesh primary file with an embedded TypeTree

func IsKCESNativeSpriteFile

func IsKCESNativeSpriteFile(path string) bool

IsKCESNativeSpriteFile 判断文件是否为带内嵌 TypeTree 的 Sprite 主文件 IsKCESNativeSpriteFile reports whether a file is a Sprite primary file with an embedded TypeTree

func IsKCESNativeTexture2DFile

func IsKCESNativeTexture2DFile(path string) bool

IsKCESNativeTexture2DFile 判断文件是否为带内嵌 TypeTree 的 Texture2D 主文件 IsKCESNativeTexture2DFile reports whether a file is a primary Texture2D file with an embedded TypeTree

func IsKCESNeiFile

func IsKCESNeiFile(path string) bool

IsKCESNeiFile 判断路径是否为 KCES 使用的 .nei 文件 IsKCESNeiFile reports whether a path names a .nei file used by KCES

func IsKCESPartsFile

func IsKCESPartsFile(path string) bool

IsKCESPartsFile 判断路径是否为受支持的 KCES 部件载荷 IsKCESPartsFile reports whether a path is a supported KCES parts payload

func IsKCESPartsJSONFile

func IsKCESPartsJSONFile(path string) bool

IsKCESPartsJSONFile 判断路径是否为受支持部件载荷的编辑 JSON IsKCESPartsJSONFile reports whether a path is editing JSON for a supported KCES parts payload

func IsKCESPathsFile

func IsKCESPathsFile(path string) bool

IsKCESPathsFile 判断路径是否为原生 paths.dat 文件 IsKCESPathsFile reports whether a path names a native paths.dat file

func IsKCESPathsJSONFile

func IsKCESPathsJSONFile(path string) bool

IsKCESPathsJSONFile 判断路径是否为 paths.dat 编辑 JSON IsKCESPathsJSONFile reports whether a path names paths.dat editing JSON

func IsKCESPayloadFile

func IsKCESPayloadFile(path string) bool

IsKCESPayloadFile 判断路径是否为受支持的 KCES 物理或碰撞载荷 IsKCESPayloadFile reports whether a path is a supported KCES physics or collider payload

func IsKCESPayloadJSONFile

func IsKCESPayloadJSONFile(path string) bool

IsKCESPayloadJSONFile 判断路径是否为受支持载荷的编辑 JSON IsKCESPayloadJSONFile reports whether a path is editing JSON for a supported payload

func IsKCESPersetFile

func IsKCESPersetFile(path string) bool

IsKCESPersetFile 通过扩展名和 VirtualDirectory wire 签名识别 KCES .perset 文件 IsKCESPersetFile recognizes a KCES .perset file by its extension and VirtualDirectory wire signature

func IsKCESPersetJSONFile

func IsKCESPersetJSONFile(path string) bool

IsKCESPersetJSONFile 通过 .perset.json 双扩展名和格式标记识别编辑 JSON IsKCESPersetJSONFile recognizes editing JSON by its .perset.json double extension and format marker

func IsKCESPresetFile

func IsKCESPresetFile(path string) bool

IsKCESPresetFile 通过 wire 签名识别当前 KCES 预设,而不依赖与旧格式共用的 .preset 扩展名 IsKCESPresetFile distinguishes current KCES presets by their wire signature instead of relying on the shared .preset extension

func IsKCESPresetJSONFile

func IsKCESPresetJSONFile(path string) bool

IsKCESPresetJSONFile 通过明确的格式标记区分 KCES 预设 JSON 与旧版预设 JSON IsKCESPresetJSONFile distinguishes KCES preset JSON from legacy preset JSON through the explicit format marker

func IsKCESPriorityMaterialAssetsFile

func IsKCESPriorityMaterialAssetsFile(path string) bool

IsKCESPriorityMaterialAssetsFile 判断路径是否为 .pmatassets 文件 IsKCESPriorityMaterialAssetsFile reports whether a path names a .pmatassets file

func IsKCESPriorityMaterialAssetsJSONFile

func IsKCESPriorityMaterialAssetsJSONFile(path string) bool

IsKCESPriorityMaterialAssetsJSONFile 判断路径是否为 .pmatassets 编辑 JSON IsKCESPriorityMaterialAssetsJSONFile reports whether a path names .pmatassets editing JSON

func IsKCESPskFile

func IsKCESPskFile(path string) bool

IsKCESPskFile 判断路径是否为 KCES 使用的 .psk 文件 IsKCESPskFile reports whether a path names a .psk file used by KCES

func IsKCESPskJSONFile

func IsKCESPskJSONFile(path string) bool

IsKCESPskJSONFile 判断路径是否为 .psk 编辑 JSON IsKCESPskJSONFile reports whether a path names .psk editing JSON

func IsKCESRawUnityBytesFile

func IsKCESRawUnityBytesFile(path string) bool

IsKCESRawUnityBytesFile 判断路径是否为受支持的 KCES 原始 Unity 对象字节文件 IsKCESRawUnityBytesFile reports whether a path is a supported KCES raw Unity object byte file

func IsKCESRawUnityBytesJSONFile

func IsKCESRawUnityBytesJSONFile(path string) bool

IsKCESRawUnityBytesJSONFile 判断路径是否为受支持的 KCES 原始 Unity 对象 JSON 文件 IsKCESRawUnityBytesJSONFile reports whether a path is a supported KCES raw Unity object JSON file

func IsKCESSavedAttachFile

func IsKCESSavedAttachFile(path string) bool

IsKCESSavedAttachFile 判断路径是否为原生 .sad 文件 IsKCESSavedAttachFile reports whether a path names a native .sad file

func IsKCESSavedAttachJSONFile

func IsKCESSavedAttachJSONFile(path string) bool

IsKCESSavedAttachJSONFile 判断路径是否为 .sad 编辑 JSON IsKCESSavedAttachJSONFile reports whether a path names .sad editing JSON

func IsKCESSystemDataFile

func IsKCESSystemDataFile(path string) bool

IsKCESSystemDataFile 判断路径是否为原生 system.dat 文件 IsKCESSystemDataFile reports whether a path names a native system.dat file

func IsKCESSystemDataJSONFile

func IsKCESSystemDataJSONFile(path string) bool

IsKCESSystemDataJSONFile 判断路径是否为带正确格式标记的 system.dat 编辑 JSON IsKCESSystemDataJSONFile reports whether a path names system.dat editing JSON with the correct format marker

func IsKCESUndressDataFile

func IsKCESUndressDataFile(path string) bool

IsKCESUndressDataFile 判断路径是否为 .undressdat 文件 IsKCESUndressDataFile reports whether a path names a .undressdat file

func IsKCESUndressDataJSONFile

func IsKCESUndressDataJSONFile(path string) bool

IsKCESUndressDataJSONFile 判断路径是否为 .undressdat 编辑 JSON IsKCESUndressDataJSONFile reports whether a path names .undressdat editing JSON

func IsKCESUndressPartsDataFile

func IsKCESUndressPartsDataFile(path string) bool

IsKCESUndressPartsDataFile 判断路径是否为 .undresspdat 文件 IsKCESUndressPartsDataFile reports whether a path names a .undresspdat file

func IsKCESUndressPartsDataJSONFile

func IsKCESUndressPartsDataJSONFile(path string) bool

IsKCESUndressPartsDataJSONFile 判断路径是否为 .undresspdat 编辑 JSON IsKCESUndressPartsDataJSONFile reports whether a path names .undresspdat editing JSON

func MissingUndressPairWarning

func MissingUndressPairWarning(nativePath string) string

MissingUndressPairWarning 检查同目录下的配对文件,缺失时返回双语提示文本,其余情况返回空串 编辑 JSON 也算配对文件存在,因为分两步转换一对文件时另一半可能还只有 .json 形式 MissingUndressPairWarning checks for the paired file in the same directory and returns bilingual guidance when it is absent, and an empty string otherwise Editing JSON counts as the paired file being present, because converting a pair in two steps can leave the other half in .json form only

func NativeAudioClipExtension

func NativeAudioClipExtension(data []byte) string

NativeAudioClipExtension 根据内联载荷签名返回无需转码即可使用的建议扩展名 NativeAudioClipExtension returns a suggested extension usable without transcoding based on the inline payload signature

func UndressPairExtension

func UndressPairExtension(pathOrExt string) string

UndressPairExtension 返回与给定 .undressdat 或 .undresspdat 配对的另一个扩展名,其余输入返回空串 UndressPairExtension returns the extension paired with a given .undressdat or .undresspdat and an empty string for any other input

Types

type AbaService

type AbaService struct{}

AbaService 提供 ABA 文件的读取、列出和纯目录提取操作 / AbaService provides reading, listing, and pure-directory extraction for ABA files

func (*AbaService) ListAba

func (s *AbaService) ListAba(path string) ([]aba.AssetEntry, error)

ListAba 列出 ABA 中所有 SerializedFile 的资源对象 ListAba lists resource objects from every SerializedFile in an ABA

func (*AbaService) ReadAba

func (s *AbaService) ReadAba(path string) (*aba.Aba, *os.File, error)

ReadAba 打开并解析 ABA 文件,返回值中的文件句柄由调用者关闭 ReadAba opens and parses an ABA file, and the caller closes the returned file handle

func (*AbaService) UnpackAba

func (s *AbaService) UnpackAba(abaPath string, outDir string) error

UnpackAba 将受支持的 KCES ABA 提取为不含 metadata、预览图和外部流文件的纯资源目录 UnpackAba extracts a supported KCES ABA into a plain resource directory without metadata, previews, or external stream files

type AssetBGService

type AssetBGService struct{}

AssetBGService 专门处理 COM3D2.5 背景资源使用且与 KCES ABA 共用 codec 的 .asset_bg UnityFS 文件 / AssetBGService handles COM3D2.5 .asset_bg UnityFS files that share the KCES ABA codec

func (*AssetBGService) ListAssetBG

func (s *AssetBGService) ListAssetBG(path string) ([]aba.AssetEntry, error)

ListAssetBG 列出 .asset_bg 中所有 SerializedFile 的资源对象 ListAssetBG lists resource objects from every SerializedFile in an .asset_bg file

func (*AssetBGService) ReadAssetBG

func (s *AssetBGService) ReadAssetBG(path string) (*aba.Aba, *os.File, error)

ReadAssetBG 直接打开并解析 .asset_bg UnityFS 文件,返回的文件句柄由调用者关闭 ReadAssetBG directly opens and parses an .asset_bg UnityFS file, and the caller closes the returned file handle

func (*AssetBGService) UnpackAssetBG

func (s *AssetBGService) UnpackAssetBG(path string, outDir string) error

UnpackAssetBG 将受支持的 .asset_bg 提取为不含 sidecar 和外部流文件的纯资源目录 UnpackAssetBG extracts a supported .asset_bg file into a plain resource directory without sidecars or external stream files

type AssetSceneService

type AssetSceneService struct{}

AssetSceneService 专门处理 KCES 场景资源使用的 .asset_scene UnityFS 文件 / AssetSceneService handles .asset_scene UnityFS files used by KCES scene resources

func (*AssetSceneService) ListAssetScene

func (s *AssetSceneService) ListAssetScene(path string) ([]aba.AssetEntry, error)

ListAssetScene 列出 .asset_scene 中所有 SerializedFile 的资源对象 ListAssetScene lists resource objects from every SerializedFile in an .asset_scene file

func (*AssetSceneService) ReadAssetScene

func (s *AssetSceneService) ReadAssetScene(path string) (*aba.Aba, *os.File, error)

ReadAssetScene 直接打开并解析 .asset_scene UnityFS 文件,返回的文件句柄由调用者关闭 ReadAssetScene directly opens and parses an .asset_scene UnityFS file, and the caller closes the returned file handle

func (*AssetSceneService) UnpackAssetScene

func (s *AssetSceneService) UnpackAssetScene(path string, outDir string) error

UnpackAssetScene 将受支持的 .asset_scene 提取为不含 sidecar 和外部流文件的纯资源目录 UnpackAssetScene extracts a supported .asset_scene file into a plain resource directory without sidecars or external stream files

type BridgeSessionService

type BridgeSessionService struct{}

BridgeSessionService 在 CRCEdit 的 bridge_session.vd 与严格编辑 JSON 封套之间转换 / BridgeSessionService converts between CRCEdit bridge_session.vd files and strict editing JSON envelopes

func (*BridgeSessionService) ConvertBridgeSessionToJSON

func (s *BridgeSessionService) ConvertBridgeSessionToJSON(ctx context.Context, inputPath, outputPath string, maxOutputBytes int64) error

ConvertBridgeSessionToJSON 将 bridge_session.vd 转换为严格编辑 JSON ConvertBridgeSessionToJSON converts bridge_session.vd to strict editing JSON

func (*BridgeSessionService) ConvertJSONToBridgeSession

func (s *BridgeSessionService) ConvertJSONToBridgeSession(ctx context.Context, inputPath, outputPath string, maxOutputBytes int64) error

ConvertJSONToBridgeSession 将严格编辑 JSON 转换为 bridge_session.vd ConvertJSONToBridgeSession converts strict editing JSON to bridge_session.vd

func (*BridgeSessionService) ReadBridgeSessionFile

func (s *BridgeSessionService) ReadBridgeSessionFile(path string) (*serializationKCES.KCESBridgeSession, error)

ReadBridgeSessionFile 读取并解码 bridge_session.vd 文件 ReadBridgeSessionFile reads and decodes a bridge_session.vd file

func (*BridgeSessionService) WriteBridgeSessionFile

func (s *BridgeSessionService) WriteBridgeSessionFile(path string, value *serializationKCES.KCESBridgeSession) error

WriteBridgeSessionFile 将 KCES bridge session 结构直接编码并写入 bridge_session.vd 文件 WriteBridgeSessionFile directly encodes a KCES bridge session value and writes it to a bridge_session.vd file

type CtEnvelope

type CtEnvelope struct {
	Format             string                                 `json:"format"`                       // 封套格式标识,固定为 kces-content-table / Envelope format marker, fixed to kces-content-table
	Version            int32                                  `json:"version"`                      // VirtualDirectory 版本号 / VirtualDirectory version
	Directories        map[string]ct.VirtualDirectoryMetadata `json:"directories,omitempty"`        // 子目录路径和真实版本字段,包含空目录 / Child-directory paths and real version fields, including empty directories
	Catalog            ct.AssetBundleCatalog                  `json:"catalog"`                      // 必需的 catalog 虚拟文件内容 / Required decoded catalog virtual file content
	ExtensionNameLists map[string]*ct.ExtensionNameList       `json:"extensionNameLists,omitempty"` // 按扩展名索引的 ExtensionNameList / ExtensionNameList values keyed by extension
	Files              []CtEnvelopeFile                       `json:"files,omitempty"`              // 未识别或非 catalog 虚拟文件 / Unrecognized or non-catalog virtual files
}

CtEnvelope 是将 catalog 和 ExtensionNameList 解码为类型化结构并以 base64 保留其他虚拟文件的 KCES .ct 编辑封套 / CtEnvelope is the KCES .ct editing envelope that decodes catalog and ExtensionNameList entries into typed structures while preserving other virtual files as base64 payloads

func (*CtEnvelope) UnmarshalJSON

func (value *CtEnvelope) UnmarshalJSON(data []byte) error

UnmarshalJSON 严格解码 .ct 编辑封套并拒绝缺失根字段或空 ExtensionNameLists 键 UnmarshalJSON strictly decodes the .ct editing envelope and rejects missing root fields or empty ExtensionNameLists keys

type CtEnvelopeFile

type CtEnvelopeFile struct {
	Name       string `json:"name"`       // 虚拟文件名 / Virtual file name
	DataBase64 string `json:"dataBase64"` // 原始文件数据的 base64 / Base64 of the raw file data
}

CtEnvelopeFile 保留 .ct 包中的非 catalog 虚拟文件 / CtEnvelopeFile preserves a non-catalog virtual file from a .ct bundle

func (*CtEnvelopeFile) UnmarshalJSON

func (value *CtEnvelopeFile) UnmarshalJSON(data []byte) error

UnmarshalJSON 严格解码 .ct 独立虚拟文件并要求名称与 dataBase64 字段显式出现 UnmarshalJSON strictly decodes a standalone .ct virtual file and requires name and dataBase64 to be explicitly present

type CtService

type CtService struct{}

CtService 提供 .ct 文件 VirtualDirectory 的读取、列出、提取、生成和写入操作 / CtService provides read, list, extraction, generation, and write operations for .ct VirtualDirectory files

func (*CtService) ConvertCtToJson

func (s *CtService) ConvertCtToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertCtToJson 将 KCES .ct 文件转换为可编辑 JSON 封套 ConvertCtToJson converts a KCES .ct file into an editable JSON envelope

func (*CtService) ConvertJsonToCt

func (s *CtService) ConvertJsonToCt(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToCt 将可编辑 JSON 封套转换回 KCES .ct 文件 ConvertJsonToCt converts an editable JSON envelope back into a KCES .ct file

func (*CtService) ExtractFile

func (s *CtService) ExtractFile(ctPath string, fileName string, w io.Writer) error

ExtractFile 从 .ct 中提取单个虚拟文件并写入目标 writer ExtractFile extracts one virtual file from a .ct file and writes it to the destination writer

func (*CtService) GenerateCtFromAba

func (s *CtService) GenerateCtFromAba(abaPath string, outPath string) error

GenerateCtFromAba 读取 .aba 的 AssetBundle 容器并生成使用默认 Parts/Plugin 元数据的配套 .ct 文件,outPath 为空时输出到 .aba 同目录同基名 GenerateCtFromAba reads the AssetBundle container of a .aba file and generates its companion .ct file with default Parts/Plugin metadata, writing next to the .aba with the same base name when outPath is empty

func (*CtService) ListCt

func (s *CtService) ListCt(path string) ([]string, error)

ListCt 列出 .ct 文件中的所有文件名 ListCt lists every virtual file name stored in a .ct file

func (*CtService) ReadCt

func (s *CtService) ReadCt(path string) (*ct.ContentTable, error)

ReadCt 读取 .ct 文件并返回 ContentTable ReadCt reads a .ct file and returns its ContentTable

func (*CtService) ReadCtEnvelope

func (s *CtService) ReadCtEnvelope(path string) (*CtEnvelope, error)

ReadCtEnvelope 读取 .ct 文件并返回可编辑 JSON 封套 ReadCtEnvelope reads a .ct file and returns its editable JSON envelope

func (*CtService) WriteCtEnvelopeFile

func (s *CtService) WriteCtEnvelopeFile(path string, value *CtEnvelope) error

WriteCtEnvelopeFile 将可编辑内容表封套直接构建并写入 .ct 或 VirtualDirectory 文件 WriteCtEnvelopeFile directly builds an editable content table envelope and writes it to a .ct or VirtualDirectory file

func (*CtService) WriteCtFile

func (s *CtService) WriteCtFile(path string, value *ct.ContentTable) error

WriteCtFile 将内容表结构直接编码并写入 .ct 或 VirtualDirectory 文件 WriteCtFile directly encodes a content table value and writes it to a .ct or VirtualDirectory file

type DB2ConfService

type DB2ConfService struct{}

DB2ConfService 专门处理 .db2conf 文件 / DB2ConfService handles .db2conf files

func (*DB2ConfService) ConvertDB2ConfToJson

func (s *DB2ConfService) ConvertDB2ConfToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertDB2ConfToJson 将 .db2conf 文件转换为编辑 JSON ConvertDB2ConfToJson converts a .db2conf file to editing JSON

func (*DB2ConfService) ConvertJsonToDB2Conf

func (s *DB2ConfService) ConvertJsonToDB2Conf(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToDB2Conf 将编辑 JSON 转换为 .db2conf 文件 ConvertJsonToDB2Conf converts editing JSON to a .db2conf file

func (*DB2ConfService) ReadDB2ConfFile

ReadDB2ConfFile 读取并解码 .db2conf 文件 ReadDB2ConfFile reads and decodes a .db2conf file

func (*DB2ConfService) WriteDB2ConfFile

func (s *DB2ConfService) WriteDB2ConfFile(path string, value *serializationKCES.MagicaClothSerializeData) error

WriteDB2ConfFile 编码并写入 .db2conf 文件 WriteDB2ConfFile encodes and writes a .db2conf file

type DBColService

type DBColService struct{}

DBColService 专门处理 .dbcol 文件 / DBColService handles .dbcol files

func (*DBColService) ConvertDBColToJson

func (s *DBColService) ConvertDBColToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertDBColToJson 将 .dbcol 文件转换为编辑 JSON ConvertDBColToJson converts a .dbcol file to editing JSON

func (*DBColService) ConvertJsonToDBCol

func (s *DBColService) ConvertJsonToDBCol(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToDBCol 将编辑 JSON 转换为 .dbcol 文件 ConvertJsonToDBCol converts editing JSON to a .dbcol file

func (*DBColService) ReadDBColFile

func (s *DBColService) ReadDBColFile(path string) (*serializationKCES.ColliderPackage, error)

ReadDBColFile 读取并解码 .dbcol 文件 ReadDBColFile reads and decodes a .dbcol file

func (*DBColService) WriteDBColFile

func (s *DBColService) WriteDBColFile(path string, value *serializationKCES.ColliderPackage) error

WriteDBColFile 编码并写入 .dbcol 文件 WriteDBColFile encodes and writes a .dbcol file

type DBConfService

type DBConfService struct{}

DBConfService 专门处理 .dbconf 文件 / DBConfService handles .dbconf files

func (*DBConfService) ConvertDBConfToJson

func (s *DBConfService) ConvertDBConfToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertDBConfToJson 将 .dbconf 文件转换为编辑 JSON ConvertDBConfToJson converts a .dbconf file to editing JSON

func (*DBConfService) ConvertJsonToDBConf

func (s *DBConfService) ConvertJsonToDBConf(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToDBConf 将编辑 JSON 转换为 .dbconf 文件 ConvertJsonToDBConf converts editing JSON to a .dbconf file

func (*DBConfService) ReadDBConfFile

func (s *DBConfService) ReadDBConfFile(path string) (*serializationKCES.DynamicBoneStatus, error)

ReadDBConfFile 读取并解码 .dbconf 文件 ReadDBConfFile reads and decodes a .dbconf file

func (*DBConfService) WriteDBConfFile

func (s *DBConfService) WriteDBConfFile(path string, value *serializationKCES.DynamicBoneStatus) error

WriteDBConfFile 编码并写入 .dbconf 文件 WriteDBConfFile encodes and writes a .dbconf file

type DSB2ConfService

type DSB2ConfService struct{}

DSB2ConfService 专门处理 .dsb2conf 文件 / DSB2ConfService handles .dsb2conf files

func (*DSB2ConfService) ConvertDSB2ConfToJson

func (s *DSB2ConfService) ConvertDSB2ConfToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertDSB2ConfToJson 将 .dsb2conf 文件转换为编辑 JSON ConvertDSB2ConfToJson converts a .dsb2conf file to editing JSON

func (*DSB2ConfService) ConvertJsonToDSB2Conf

func (s *DSB2ConfService) ConvertJsonToDSB2Conf(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToDSB2Conf 将编辑 JSON 转换为 .dsb2conf 文件 ConvertJsonToDSB2Conf converts editing JSON to a .dsb2conf file

func (*DSB2ConfService) ReadDSB2ConfFile

ReadDSB2ConfFile 读取并解码 .dsb2conf 文件 ReadDSB2ConfFile reads and decodes a .dsb2conf file

func (*DSB2ConfService) WriteDSB2ConfFile

func (s *DSB2ConfService) WriteDSB2ConfFile(path string, value *serializationKCES.MagicaClothSerializeData) error

WriteDSB2ConfFile 编码并写入 .dsb2conf 文件 WriteDSB2ConfFile encodes and writes a .dsb2conf file

type DSBConfService

type DSBConfService struct{}

DSBConfService 专门处理 .dsbconf 文件 / DSBConfService handles .dsbconf files

func (*DSBConfService) ConvertDSBConfToJson

func (s *DSBConfService) ConvertDSBConfToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertDSBConfToJson 将 .dsbconf 文件转换为编辑 JSON ConvertDSBConfToJson converts a .dsbconf file to editing JSON

func (*DSBConfService) ConvertJsonToDSBConf

func (s *DSBConfService) ConvertJsonToDSBConf(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToDSBConf 将编辑 JSON 转换为 .dsbconf 文件 ConvertJsonToDSBConf converts editing JSON to a .dsbconf file

func (*DSBConfService) ReadDSBConfFile

func (s *DSBConfService) ReadDSBConfFile(path string) (*serializationKCES.ClothParams, error)

ReadDSBConfFile 读取并解码 .dsbconf 文件 ReadDSBConfFile reads and decodes a .dsbconf file

func (*DSBConfService) WriteDSBConfFile

func (s *DSBConfService) WriteDSBConfFile(path string, value *serializationKCES.ClothParams) error

WriteDSBConfFile 编码并写入 .dsbconf 文件 WriteDSBConfFile encodes and writes a .dsbconf file

type DSL2ConfService

type DSL2ConfService struct{}

DSL2ConfService 专门处理 .dsl2conf 文件 / DSL2ConfService handles .dsl2conf files

func (*DSL2ConfService) ConvertDSL2ConfToJson

func (s *DSL2ConfService) ConvertDSL2ConfToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertDSL2ConfToJson 将 .dsl2conf 文件转换为编辑 JSON ConvertDSL2ConfToJson converts a .dsl2conf file to editing JSON

func (*DSL2ConfService) ConvertJsonToDSL2Conf

func (s *DSL2ConfService) ConvertJsonToDSL2Conf(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToDSL2Conf 将编辑 JSON 转换为 .dsl2conf 文件 ConvertJsonToDSL2Conf converts editing JSON to a .dsl2conf file

func (*DSL2ConfService) ReadDSL2ConfFile

ReadDSL2ConfFile 读取并解码 .dsl2conf 文件 ReadDSL2ConfFile reads and decodes a .dsl2conf file

func (*DSL2ConfService) WriteDSL2ConfFile

func (s *DSL2ConfService) WriteDSL2ConfFile(path string, value *serializationKCES.MagicaClothSerializeData) error

WriteDSL2ConfFile 编码并写入 .dsl2conf 文件 WriteDSL2ConfFile encodes and writes a .dsl2conf file

type DSLColService

type DSLColService struct{}

DSLColService 专门处理 .dslcol 文件 / DSLColService handles .dslcol files

func (*DSLColService) ConvertDSLColToJson

func (s *DSLColService) ConvertDSLColToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertDSLColToJson 将 .dslcol 文件转换为编辑 JSON ConvertDSLColToJson converts a .dslcol file to editing JSON

func (*DSLColService) ConvertJsonToDSLCol

func (s *DSLColService) ConvertJsonToDSLCol(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToDSLCol 将编辑 JSON 转换为 .dslcol 文件 ConvertJsonToDSLCol converts editing JSON to a .dslcol file

func (*DSLColService) ReadDSLColFile

func (s *DSLColService) ReadDSLColFile(path string) (*serializationKCES.ColliderPackage, error)

ReadDSLColFile 读取并解码 .dslcol 文件 ReadDSLColFile reads and decodes a .dslcol file

func (*DSLColService) WriteDSLColFile

func (s *DSLColService) WriteDSLColFile(path string, value *serializationKCES.ColliderPackage) error

WriteDSLColFile 编码并写入 .dslcol 文件 WriteDSLColFile encodes and writes a .dslcol file

type DSLConfService

type DSLConfService struct{}

DSLConfService 专门处理 .dslconf 文件 / DSLConfService handles .dslconf files

func (*DSLConfService) ConvertDSLConfToJson

func (s *DSLConfService) ConvertDSLConfToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertDSLConfToJson 将 .dslconf 文件转换为编辑 JSON ConvertDSLConfToJson converts a .dslconf file to editing JSON

func (*DSLConfService) ConvertJsonToDSLConf

func (s *DSLConfService) ConvertJsonToDSLConf(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToDSLConf 将编辑 JSON 转换为 .dslconf 文件 ConvertJsonToDSLConf converts editing JSON to a .dslconf file

func (*DSLConfService) ReadDSLConfFile

func (s *DSLConfService) ReadDSLConfFile(path string) (*serializationKCES.ClothParams, error)

ReadDSLConfFile 读取并解码 .dslconf 文件 ReadDSLConfFile reads and decodes a .dslconf file

func (*DSLConfService) WriteDSLConfFile

func (s *DSLConfService) WriteDSLConfFile(path string, value *serializationKCES.ClothParams) error

WriteDSLConfFile 编码并写入 .dslconf 文件 WriteDSLConfFile encodes and writes a .dslconf file

type DataService

type DataService struct{}

DataService 为旧调用方提供 KCES 与 COM3D2 共用格式的兼容分派入口 / DataService provides compatibility dispatch for formats shared by KCES and COM3D2

func (*DataService) ConvertCSVToNei

func (s *DataService) ConvertCSVToNei(inputPath string, outputPath string) error

ConvertCSVToNei 将 CSV 转换为 .nei 文件 ConvertCSVToNei converts CSV to a .nei file

func (*DataService) ConvertDataToJson

func (s *DataService) ConvertDataToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertDataToJson 将路径所指定的 KCES 共用数据文件转换为 JSON ConvertDataToJson converts the shared KCES data file selected by its path to JSON

func (*DataService) ConvertJsonToData

func (s *DataService) ConvertJsonToData(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToData 将 JSON 转换为路径所指定的 KCES 共用数据文件 ConvertJsonToData converts JSON to the shared KCES data file selected by its path

func (*DataService) ConvertNeiToCSV

func (s *DataService) ConvertNeiToCSV(inputPath string, outputPath string) error

ConvertNeiToCSV 将 .nei 文件转换为 CSV ConvertNeiToCSV converts a .nei file to CSV

func (*DataService) WriteDataFile

func (s *DataService) WriteDataFile(path string, value any) error

WriteDataFile 根据目标扩展名编码并写入 KCES 共用数据文件 WriteDataFile encodes and writes the shared KCES data file selected by the destination extension

func (*DataService) WriteNeiFile

func (s *DataService) WriteNeiFile(path string, value *serializationKCES.Nei) error

WriteNeiFile 为聚合 service 保留 .nei 直接写入 API WriteNeiFile preserves the direct .nei writer on the aggregate service

func (*DataService) WritePskFile

func (s *DataService) WritePskFile(path string, value *serializationCOM3D2.Psk) error

WritePskFile 为聚合 service 保留 .psk 直接写入 API WritePskFile preserves the direct .psk writer on the aggregate service

type ExportNameMapService

type ExportNameMapService struct{}

ExportNameMapService 在游戏的嵌套 JsonUtility 布局与确定性的条目式编辑 JSON 之间转换 / ExportNameMapService converts between the game's nested JsonUtility layout and the deterministic entry-based editing JSON representation

func (*ExportNameMapService) ConvertExportNameMapToJSON

func (s *ExportNameMapService) ConvertExportNameMapToJSON(ctx context.Context, inputPath, outputPath string, maxOutputBytes int64) error

ConvertExportNameMapToJSON 将 .enm 文件转换为编辑 JSON ConvertExportNameMapToJSON converts an .enm file to editing JSON

func (*ExportNameMapService) ConvertJSONToExportNameMap

func (s *ExportNameMapService) ConvertJSONToExportNameMap(ctx context.Context, inputPath, outputPath string, maxOutputBytes int64) error

ConvertJSONToExportNameMap 将编辑 JSON 转换为 .enm 文件 ConvertJSONToExportNameMap converts editing JSON to an .enm file

func (*ExportNameMapService) ReadExportNameMapFile

func (s *ExportNameMapService) ReadExportNameMapFile(path string) (*serializationKCES.KCESExportNameMap, error)

ReadExportNameMapFile 读取并解码 .enm 文件 ReadExportNameMapFile reads and decodes an .enm file

func (*ExportNameMapService) WriteExportNameMapFile

func (s *ExportNameMapService) WriteExportNameMapFile(path string, value *serializationKCES.KCESExportNameMap) error

WriteExportNameMapFile 将导出名称映射结构直接编码并写入原生 .enm 文件 WriteExportNameMapFile directly encodes an export name map value and writes it to a native .enm file

type FileTypeService

type FileTypeService struct{}

FileTypeService 探测 KCES 引入的文件格式,并通过真实解码或明确 wire 签名区分与 COM3D2 共用的扩展名 / FileTypeService probes formats introduced by KCES and distinguishes extensions shared with COM3D2 through real decoding or explicit wire signatures

func (*FileTypeService) TryFileTypeDetermine

func (s *FileTypeService) TryFileTypeDetermine(path string) (info COM3D2Service.FileInfo, matched bool, err error)

TryFileTypeDetermine 探测文件是否可证实为 KCES 格式,并用 matched 为 true 且 error 非空表示具有 KCES 特征但内容损坏的候选文件 TryFileTypeDetermine probes whether a file is proven to use a KCES format and uses a true match with a non-nil error for malformed candidates carrying KCES characteristics

type GP03BridgeEditing

type GP03BridgeEditing struct {
	Signature     string                                `json:"signature"`     // 文件签名 GP03_BRIDGE / File signature GP03_BRIDGE
	Version       int32                                 `json:"version"`       // 外层桥接版本 2000 或 2001 / Outer bridge version 2000 or 2001
	GUID          string                                `json:"guid"`          // 传输角色的 GUID / GUID of the transferred character
	LegacyPreset  *serializationCOM3D2.Preset           `json:"legacyPreset"`  // v2001 的 COM3D2 preset,v2000 必须为 null / COM3D2 preset for v2001, required to be null for v2000
	CurrentPreset *serializationKCES.ExpandedKCESPreset `json:"currentPreset"` // 可空 KCES preset / Nullable KCES preset
}

GP03BridgeEditing 表示 .brd 的完整 typed editing JSON,空长度块以 null 表示 / GP03BridgeEditing represents the fully typed editing JSON for .brd, with zero-length blocks represented as null

type GP03BridgeService

type GP03BridgeService struct{}

GP03BridgeService 在 .brd wire framing 与完整 typed editing JSON 之间转换 / GP03BridgeService converts between .brd wire framing and fully typed editing JSON

func (*GP03BridgeService) ConvertBridgeToJSON

func (s *GP03BridgeService) ConvertBridgeToJSON(ctx context.Context, inputPath, outputPath string, maxOutputBytes int64) error

ConvertBridgeToJSON 将 .brd 转换为只含 typed preset 的 editing JSON ConvertBridgeToJSON converts .brd into editing JSON containing only typed presets

func (*GP03BridgeService) ConvertJSONToBridge

func (s *GP03BridgeService) ConvertJSONToBridge(ctx context.Context, inputPath, outputPath string, maxOutputBytes int64) error

ConvertJSONToBridge 从 typed editing JSON 重建两个预设块和 .brd framing ConvertJSONToBridge rebuilds both preset blocks and .brd framing from typed editing JSON

func (*GP03BridgeService) ReadBridgeFile

func (s *GP03BridgeService) ReadBridgeFile(path string) (*GP03BridgeEditing, error)

ReadBridgeFile 读取 .brd 并完整解析两个已知预设块 ReadBridgeFile reads .brd and fully decodes both known preset blocks

func (*GP03BridgeService) WriteBridgeFile

func (s *GP03BridgeService) WriteBridgeFile(path string, value *GP03BridgeEditing) error

WriteBridgeFile 将完整的 GP03 bridge 编辑模型直接编码并写入 .brd 文件 WriteBridgeFile directly encodes a complete GP03 bridge editing model and writes it to a .brd file

type HitCheckService

type HitCheckService struct{}

HitCheckService 专门处理 .hitcheck 文件 / HitCheckService handles .hitcheck files

func (*HitCheckService) ConvertHitCheckToJson

func (s *HitCheckService) ConvertHitCheckToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertHitCheckToJson 将 .hitcheck 文件转换为编辑 JSON ConvertHitCheckToJson converts a .hitcheck file to editing JSON

func (*HitCheckService) ConvertJsonToHitCheck

func (s *HitCheckService) ConvertJsonToHitCheck(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToHitCheck 将编辑 JSON 转换为 .hitcheck 文件 ConvertJsonToHitCheck converts editing JSON to a .hitcheck file

func (*HitCheckService) ReadHitCheckFile

func (s *HitCheckService) ReadHitCheckFile(path string) (*serializationKCES.HitCheck, error)

ReadHitCheckFile 读取并解码 .hitcheck 文件 ReadHitCheckFile reads and decodes a .hitcheck file

func (*HitCheckService) WriteHitCheckFile

func (s *HitCheckService) WriteHitCheckFile(path string, value *serializationKCES.HitCheck) error

WriteHitCheckFile 编码并写入 .hitcheck 文件 WriteHitCheckFile encodes and writes a .hitcheck file

type IKColBytesService

type IKColBytesService struct{}

IKColBytesService 专门处理 .ikcol.bytes 文件 / IKColBytesService handles .ikcol.bytes files

func (*IKColBytesService) ConvertIKColBytesToJson

func (s *IKColBytesService) ConvertIKColBytesToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertIKColBytesToJson 将 .ikcol.bytes 文件转换为编辑 JSON ConvertIKColBytesToJson converts a .ikcol.bytes file to editing JSON

func (*IKColBytesService) ConvertJsonToIKColBytes

func (s *IKColBytesService) ConvertJsonToIKColBytes(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToIKColBytes 将编辑 JSON 转换为 .ikcol.bytes 文件 ConvertJsonToIKColBytes converts editing JSON to a .ikcol.bytes file

func (*IKColBytesService) ReadIKColBytesFile

func (s *IKColBytesService) ReadIKColBytesFile(path string) (*serializationKCES.IKColliderPackage, error)

ReadIKColBytesFile 读取并解码 .ikcol.bytes 文件 ReadIKColBytesFile reads and decodes a .ikcol.bytes file

func (*IKColBytesService) WriteIKColBytesFile

func (s *IKColBytesService) WriteIKColBytesFile(path string, value *serializationKCES.IKColliderPackage) error

WriteIKColBytesFile 编码并写入 .ikcol.bytes 文件 WriteIKColBytesFile encodes and writes a .ikcol.bytes file

type IKColService

type IKColService struct{}

IKColService 专门处理 .ikcol 文件 / IKColService handles .ikcol files

func (*IKColService) ConvertIKColToJson

func (s *IKColService) ConvertIKColToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertIKColToJson 将 .ikcol 文件转换为编辑 JSON ConvertIKColToJson converts a .ikcol file to editing JSON

func (*IKColService) ConvertJsonToIKCol

func (s *IKColService) ConvertJsonToIKCol(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToIKCol 将编辑 JSON 转换为 .ikcol 文件 ConvertJsonToIKCol converts editing JSON to a .ikcol file

func (*IKColService) ReadIKColFile

func (s *IKColService) ReadIKColFile(path string) (*serializationKCES.IKColliderPackage, error)

ReadIKColFile 读取并解码 .ikcol 文件 ReadIKColFile reads and decodes a .ikcol file

func (*IKColService) WriteIKColFile

func (s *IKColService) WriteIKColFile(path string, value *serializationKCES.IKColliderPackage) error

WriteIKColFile 编码并写入 .ikcol 文件 WriteIKColFile encodes and writes a .ikcol file

type KCMatService

type KCMatService struct{}

KCMatService 专门处理 KCES2 导出的单个 .kcmat 文件 / KCMatService handles individual .kcmat files exported by KCES2

func (*KCMatService) ConvertJsonToKCMat

func (s *KCMatService) ConvertJsonToKCMat(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToKCMat 将编辑 JSON 转换为 KCES2 单个 .kcmat 文件,并按目标文件名重算可确定的查找字段 ConvertJsonToKCMat converts editing JSON to an individual KCES2 .kcmat file and recalculates determinable lookup fields from the destination filename

func (*KCMatService) ConvertKCMatToJson

func (s *KCMatService) ConvertKCMatToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertKCMatToJson 将 KCES2 单个 .kcmat 文件转换为编辑 JSON ConvertKCMatToJson converts an individual KCES2 .kcmat file to editing JSON

func (*KCMatService) ReadKCMatFile

func (s *KCMatService) ReadKCMatFile(path string) (*serializationKCES.Material, error)

ReadKCMatFile 读取并解码 KCES2 单个 .kcmat 文件 ReadKCMatFile reads and decodes an individual KCES2 .kcmat file

func (*KCMatService) WriteKCMatFile

func (s *KCMatService) WriteKCMatFile(path string, value *serializationKCES.Material) error

WriteKCMatFile 编码并写入 KCES2 单个 .kcmat 文件,同时按目标文件名重算可确定的查找字段 WriteKCMatFile encodes and writes an individual KCES2 .kcmat file while recalculating determinable lookup fields from the destination filename

type KCMenuService

type KCMenuService struct{}

KCMenuService 专门处理 KCES2 导出的单个 .kcmenu 文件 / KCMenuService handles individual .kcmenu files exported by KCES2

func (*KCMenuService) ConvertJsonToKCMenu

func (s *KCMenuService) ConvertJsonToKCMenu(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToKCMenu 将编辑 JSON 转换为 KCES2 单个 .kcmenu 文件,并按目标文件名重算可确定的查找字段 ConvertJsonToKCMenu converts editing JSON to an individual KCES2 .kcmenu file and recalculates determinable lookup fields from the destination filename

func (*KCMenuService) ConvertKCMenuToJson

func (s *KCMenuService) ConvertKCMenuToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertKCMenuToJson 将 KCES2 单个 .kcmenu 文件转换为编辑 JSON ConvertKCMenuToJson converts an individual KCES2 .kcmenu file to editing JSON

func (*KCMenuService) ReadKCMenuFile

func (s *KCMenuService) ReadKCMenuFile(path string) (*serializationKCES.Menu, error)

ReadKCMenuFile 读取并解码 KCES2 单个 .kcmenu 文件 ReadKCMenuFile reads and decodes an individual KCES2 .kcmenu file

func (*KCMenuService) WriteKCMenuFile

func (s *KCMenuService) WriteKCMenuFile(path string, value *serializationKCES.Menu) error

WriteKCMenuFile 编码并写入 KCES2 单个 .kcmenu 文件,同时按目标文件名重算可确定的查找字段 WriteKCMenuFile encodes and writes an individual KCES2 .kcmenu file while recalculating determinable lookup fields from the destination filename

type KCModelService

type KCModelService struct{}

KCModelService 专门处理 KCES2 导出的单个 .kcmodel 文件 / KCModelService handles individual .kcmodel files exported by KCES2

func (*KCModelService) ConvertJsonToKCModel

func (s *KCModelService) ConvertJsonToKCModel(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToKCModel 将编辑 JSON 转换为 KCES2 单个 .kcmodel 文件,并按目标文件名重算可确定的查找字段 ConvertJsonToKCModel converts editing JSON to an individual KCES2 .kcmodel file and recalculates determinable lookup fields from the destination filename

func (*KCModelService) ConvertKCModelToJson

func (s *KCModelService) ConvertKCModelToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertKCModelToJson 将 KCES2 单个 .kcmodel 文件转换为编辑 JSON ConvertKCModelToJson converts an individual KCES2 .kcmodel file to editing JSON

func (*KCModelService) ReadKCModelFile

func (s *KCModelService) ReadKCModelFile(path string) (*serializationKCES.Model, error)

ReadKCModelFile 读取并解码 KCES2 单个 .kcmodel 文件 ReadKCModelFile reads and decodes an individual KCES2 .kcmodel file

func (*KCModelService) WriteKCModelFile

func (s *KCModelService) WriteKCModelFile(path string, value *serializationKCES.Model) error

WriteKCModelFile 编码并写入 KCES2 单个 .kcmodel 文件,同时按目标文件名重算可确定的查找字段 WriteKCModelFile encodes and writes an individual KCES2 .kcmodel file while recalculating determinable lookup fields from the destination filename

type LimbColService

type LimbColService struct{}

LimbColService 专门处理 .limbcol 文件 / LimbColService handles .limbcol files

func (*LimbColService) ConvertJsonToLimbCol

func (s *LimbColService) ConvertJsonToLimbCol(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToLimbCol 将编辑 JSON 转换为 .limbcol 文件 ConvertJsonToLimbCol converts editing JSON to a .limbcol file

func (*LimbColService) ConvertLimbColToJson

func (s *LimbColService) ConvertLimbColToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertLimbColToJson 将 .limbcol 文件转换为编辑 JSON ConvertLimbColToJson converts a .limbcol file to editing JSON

func (*LimbColService) ReadLimbColFile

func (s *LimbColService) ReadLimbColFile(path string) (*serializationKCES.LimbColliderPackage, error)

ReadLimbColFile 读取并解码 .limbcol 文件 ReadLimbColFile reads and decodes a .limbcol file

func (*LimbColService) WriteLimbColFile

func (s *LimbColService) WriteLimbColFile(path string, value *serializationKCES.LimbColliderPackage) error

WriteLimbColFile 编码并写入 .limbcol 文件 WriteLimbColFile encodes and writes a .limbcol file

type MaidColliderService

type MaidColliderService struct{}

MaidColliderService 专门处理 maid_collider.bytes 与 maid_collider_touch.bytes 文件 / MaidColliderService handles maid_collider.bytes and maid_collider_touch.bytes files

func (*MaidColliderService) ConvertJSONToMaidCollider

func (s *MaidColliderService) ConvertJSONToMaidCollider(ctx context.Context, inputPath, outputPath string, maxOutputBytes int64) error

ConvertJSONToMaidCollider 将编辑 JSON 转换为女仆碰撞体载荷 ConvertJSONToMaidCollider converts editing JSON to a maid-collider payload

func (*MaidColliderService) ConvertMaidColliderToJSON

func (s *MaidColliderService) ConvertMaidColliderToJSON(ctx context.Context, inputPath, outputPath string, maxOutputBytes int64) error

ConvertMaidColliderToJSON 将女仆碰撞体载荷转换为编辑 JSON ConvertMaidColliderToJSON converts a maid-collider payload to editing JSON

func (*MaidColliderService) ReadMaidColliderFile

func (s *MaidColliderService) ReadMaidColliderFile(path string) (*serializationKCES.MaidColliderFile, error)

ReadMaidColliderFile 读取并解码女仆碰撞体载荷 ReadMaidColliderFile reads and decodes a maid-collider payload

func (*MaidColliderService) WriteMaidColliderFile

func (s *MaidColliderService) WriteMaidColliderFile(path string, value *serializationKCES.MaidColliderFile) error

WriteMaidColliderFile 将女仆胶囊碰撞体结构直接编码并写入原生载荷文件 WriteMaidColliderFile directly encodes a maid capsule collider value and writes it to a native payload file

type MaterialAssetsService

type MaterialAssetsService struct{}

MaterialAssetsService 专门处理 .materialassets 文件 / MaterialAssetsService handles .materialassets files

func (*MaterialAssetsService) ConvertJsonToMaterialAssets

func (s *MaterialAssetsService) ConvertJsonToMaterialAssets(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToMaterialAssets 将编辑 JSON 转换为 .materialassets 文件 ConvertJsonToMaterialAssets converts editing JSON to a .materialassets file

func (*MaterialAssetsService) ConvertMaterialAssetsToJson

func (s *MaterialAssetsService) ConvertMaterialAssetsToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertMaterialAssetsToJson 将 .materialassets 文件转换为编辑 JSON ConvertMaterialAssetsToJson converts a .materialassets file to editing JSON

func (*MaterialAssetsService) ReadMaterialAssetsFile

func (s *MaterialAssetsService) ReadMaterialAssetsFile(path string) (*serializationKCES.MaterialAssets, error)

ReadMaterialAssetsFile 读取并解码 .materialassets 文件 ReadMaterialAssetsFile reads and decodes a .materialassets file

func (*MaterialAssetsService) WriteMaterialAssetsFile

func (s *MaterialAssetsService) WriteMaterialAssetsFile(path string, value *serializationKCES.MaterialAssets) error

WriteMaterialAssetsFile 编码并写入 .materialassets 文件 WriteMaterialAssetsFile encodes and writes a .materialassets file

type MenuAssetsService struct{}

MenuAssetsService 专门处理 .menuassets 文件 / MenuAssetsService handles .menuassets files

func (s *MenuAssetsService) ConvertJsonToMenuAssets(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToMenuAssets 将编辑 JSON 转换为 .menuassets 文件 ConvertJsonToMenuAssets converts editing JSON to a .menuassets file

func (s *MenuAssetsService) ConvertMenuAssetsToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertMenuAssetsToJson 将 .menuassets 文件转换为编辑 JSON ConvertMenuAssetsToJson converts a .menuassets file to editing JSON

func (s *MenuAssetsService) ReadMenuAssetsFile(path string) (*serializationKCES.MenuAssets, error)

ReadMenuAssetsFile 读取并解码 .menuassets 文件 ReadMenuAssetsFile reads and decodes a .menuassets file

func (s *MenuAssetsService) WriteMenuAssetsFile(path string, value *serializationKCES.MenuAssets) error

WriteMenuAssetsFile 编码并写入 .menuassets 文件 WriteMenuAssetsFile encodes and writes a .menuassets file

type MiscService

type MiscService struct{}

MiscService 为旧调用方提供所有 KCES 杂项格式的兼容分派入口 / MiscService provides compatibility dispatch for all KCES miscellaneous formats

func (*MiscService) ConvertJsonToMisc

func (s *MiscService) ConvertJsonToMisc(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToMisc 根据编辑 JSON 或输出路径的扩展名调用对应的独立杂项 service ConvertJsonToMisc dispatches to the independent miscellaneous service selected by the editing JSON or output extension

func (*MiscService) ConvertMiscToJson

func (s *MiscService) ConvertMiscToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertMiscToJson 根据输入扩展名调用对应的独立杂项 service ConvertMiscToJson dispatches to the independent miscellaneous service selected by the input extension

func (*MiscService) ReadMiscFile

func (s *MiscService) ReadMiscFile(path string) (any, error)

ReadMiscFile 根据路径扩展名调用对应的独立杂项 service ReadMiscFile dispatches to the independent miscellaneous service selected by the path extension

func (*MiscService) WriteHitCheckFile

func (s *MiscService) WriteHitCheckFile(path string, value *serializationKCES.HitCheck) error

WriteHitCheckFile 为聚合 service 保留 .hitcheck 直接写入 API WriteHitCheckFile preserves the direct .hitcheck writer on the aggregate service

func (*MiscService) WriteJSONTextFile

func (s *MiscService) WriteJSONTextFile(path string, value json.RawMessage) error

WriteJSONTextFile 为聚合 service 保留 KCES 明文 JSON 资源直接写入 API WriteJSONTextFile preserves the direct KCES plain-JSON resource writer on the aggregate service

func (*MiscService) WriteMiscFile

func (s *MiscService) WriteMiscFile(path string, value any) error

WriteMiscFile 根据目标扩展名调用对应的独立杂项 service WriteMiscFile dispatches to the independent miscellaneous service selected by the destination extension

func (*MiscService) WriteUndressDataFile

func (s *MiscService) WriteUndressDataFile(path string, value *serializationKCES.UndressArchiveTarget) error

WriteUndressDataFile 为聚合 service 保留 .undressdat 直接写入 API WriteUndressDataFile preserves the direct .undressdat writer on the aggregate service

func (*MiscService) WriteUndressPartsDataFile

func (s *MiscService) WriteUndressPartsDataFile(path string, value *serializationKCES.UndressPrecomputeTarget) error

WriteUndressPartsDataFile 为聚合 service 保留 .undresspdat 直接写入 API WriteUndressPartsDataFile preserves the direct .undresspdat writer on the aggregate service

type ModAsset

type ModAsset struct {
	Name string // 资源短名称,同时作为 m_Name、m_Container 键和 CT 名称 / Short resource name used as m_Name, the m_Container key, and the CT name
	Path string // 源文件路径,相对于扫描根目录 / Source file path relative to the scan root directory
	Kind string // 资源类型,如 textasset、texture2d、mesh、sprite / Asset kind such as textasset, texture2d, mesh, or sprite
	// contains filtered or unexported fields
}

Kind 决定资源在 .aba 中的 Unity 对象类型 / Kind controls the Unity object type written into .aba:

  • "textasset"(默认): TextAsset,适用于 .menuassets/.materialassets/.pmatassets/.model
  • "texture2d": Texture2D,适用于 .tex(源文件为 PNG/JPEG,自动解码为 RGBA32)
  • "rawtexture2d": Texture2D,适用于 .tex.bytes 原始对象数据透传
  • "mesh": Mesh,适用于 .mmesh(源文件为 raw mesh 数据透传)
  • "sprite": Sprite,适用于 .sprite.bytes 原始对象数据透传
  • "spriteatlas": SpriteAtlas,适用于 .partsatlas/.partsassets 原始对象数据透传
  • "animationclip": AnimationClip,适用于 .anm 原始对象数据透传
  • "cubemap": Cubemap 原始对象数据透传
  • 其他 Unity 原生类型可用小写 Class 名透传,如 "gameobject"、"transform"、"material"、 "meshrenderer"、"meshfilter"、"shader"、"audioclip"、"monobehaviour"、"monoscript"、"font"

ModAsset 描述 MOD 中的单个资源文件 / ModAsset describes one asset file in a MOD

type ModManifest

type ModManifest struct {
	Name        string     // MOD 名称,同时作为输出文件名 name.ct 和 name.aba / MOD name, also used for output file names name.ct and name.aba
	SubName     string     // PluginPatch/ExtraPatch 的依赖子名称 / Dependency sub-name for PluginPatch and ExtraPatch
	CatalogType string     // 资源分类,可用 | 组合 Flags,如 Parts|PartsMeta / Resource category flags, combinable with |
	PackageType string     // 包类型,如 Plugin=1 / Package type such as Plugin=1
	Priority    int32      // 加载优先级 / Load priority
	Assets      []ModAsset // 资源列表 / Asset list
}

ModManifest 描述一次 KCES MOD 打包的内部输入,由纯目录扫描自动构建 / ModManifest describes the internal input of one KCES MOD packing run and is built automatically by pure-directory scanning

type ModelService

type ModelService struct{}

ModelService 专门处理 KCES MessagePack .model 文件 / ModelService handles KCES MessagePack .model files

func (*ModelService) ConvertGLTFToModel

func (s *ModelService) ConvertGLTFToModel(ctx context.Context, inputPath string, outputDir string, maxOutputBytes int64) error

ConvertGLTFToModel 将 glTF 或 GLB 转换为 .model 与 .mmesh 文件并写入输出目录 文件名优先取自导出时保存的 kcesModel extras,否则从输入文件名小写派生 ConvertGLTFToModel converts glTF or GLB into .model and .mmesh files written to the output directory File names prefer the kcesModel extras saved during export and otherwise derive from the lowercased input file name

func (*ModelService) ConvertJsonToModel

func (s *ModelService) ConvertJsonToModel(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToModel 将编辑 JSON 转换为 KCES .model 文件 ConvertJsonToModel converts editing JSON to a KCES .model file

func (*ModelService) ConvertModelToGLTF

func (s *ModelService) ConvertModelToGLTF(ctx context.Context, inputPath string, outputPath string, format string, maxOutputBytes int64) error

ConvertModelToGLTF 将 .model 与其引用的 .mmesh 导出为带骨架、蒙皮、变形目标和材质名的完整 glTF 或 GLB KCES 专有字段保存在文档 extras 的 kcesModel 键下,供反向转换无损还原 ConvertModelToGLTF exports a .model and its referenced .mmesh to complete glTF or GLB with the skeleton, skin, morph targets, and material names KCES-specific fields are stored under the kcesModel key in document extras so the reverse conversion can restore them losslessly

func (*ModelService) ConvertModelToJson

func (s *ModelService) ConvertModelToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertModelToJson 将 KCES .model 文件转换为编辑 JSON ConvertModelToJson converts a KCES .model file to editing JSON

func (*ModelService) ReadModelFile

func (s *ModelService) ReadModelFile(path string) (*serializationKCES.Model, error)

ReadModelFile 读取并解码 KCES .model 文件 ReadModelFile reads and decodes a KCES .model file

func (*ModelService) WriteModelFile

func (s *ModelService) WriteModelFile(path string, value *serializationKCES.Model) error

WriteModelFile 编码并写入 KCES .model 文件 WriteModelFile encodes and writes a KCES .model file

type NSONService

type NSONService struct{}

NSONService 专门处理 .nson 文件 / NSONService handles .nson files

func (*NSONService) ConvertJsonToNSON

func (s *NSONService) ConvertJsonToNSON(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToNSON 将编辑 JSON 转换为 .nson 文件 ConvertJsonToNSON converts editing JSON to a .nson file

func (*NSONService) ConvertNSONToJson

func (s *NSONService) ConvertNSONToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertNSONToJson 将 .nson 文件转换为编辑 JSON ConvertNSONToJson converts a .nson file to editing JSON

func (*NSONService) ReadNSONFile

func (s *NSONService) ReadNSONFile(path string) (json.RawMessage, error)

ReadNSONFile 读取并解码 .nson 文件 ReadNSONFile reads and decodes a .nson file

func (*NSONService) WriteNSONFile

func (s *NSONService) WriteNSONFile(path string, value json.RawMessage) error

WriteNSONFile 编码并写入 .nson 文件 WriteNSONFile encodes and writes a .nson file

type NativeUnityMediaService

type NativeUnityMediaService struct{}

NativeUnityMediaService 提供独立 Unity 媒体对象到通用查看格式的转换 / NativeUnityMediaService converts standalone Unity media objects to common viewing formats

func (*NativeUnityMediaService) ConvertAnimationClipToGLTF

func (s *NativeUnityMediaService) ConvertAnimationClipToGLTF(ctx context.Context, inputPath string, outputPath string, format string, maxOutputBytes int64) error

ConvertAnimationClipToGLTF 将带显式 Transform 路径的独立 AnimationClip 导出为 glTF 或 GLB 动画 ConvertAnimationClipToGLTF exports a standalone AnimationClip with explicit Transform paths as a glTF or GLB animation

func (*NativeUnityMediaService) ConvertImageToTexture2D

func (s *NativeUnityMediaService) ConvertImageToTexture2D(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertImageToTexture2D 将 PNG 或 JPEG 图像重建为内联 RGBA32 单 mip 的独立 Texture2D 主文件,资源名按输出文件名推断并与纯目录打包规则一致 ConvertImageToTexture2D rebuilds a PNG or JPEG image into a standalone Texture2D primary file with inline single-mip RGBA32 data, and the resource name inferred from the output file name matches the pure-directory packing rules

func (*NativeUnityMediaService) ConvertMeshToGLB

func (s *NativeUnityMediaService) ConvertMeshToGLB(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertMeshToGLB 将独立 Mesh 主文件导出为包含全部 SubMesh 的 glTF Binary 文件 ConvertMeshToGLB exports a standalone Mesh primary file to a glTF Binary file containing every SubMesh

func (*NativeUnityMediaService) ConvertMeshToGLTF

func (s *NativeUnityMediaService) ConvertMeshToGLTF(ctx context.Context, inputPath string, outputPath string, format string, maxOutputBytes int64) error

ConvertMeshToGLTF 将独立 Mesh 主文件导出为包含全部 SubMesh 的 glTF 或 GLB 文件 ConvertMeshToGLTF exports a standalone Mesh primary file to a glTF or GLB file containing every SubMesh

func (*NativeUnityMediaService) ConvertSpriteToPNG

func (s *NativeUnityMediaService) ConvertSpriteToPNG(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertSpriteToPNG 从 Sprite 主文件所在纯目录解析 Texture2D 或 SpriteAtlas 引用并导出 PNG ConvertSpriteToPNG resolves Texture2D or SpriteAtlas references from the Sprite primary file's pure directory and exports PNG

func (*NativeUnityMediaService) ConvertTexture2DToImage

func (s *NativeUnityMediaService) ConvertTexture2DToImage(ctx context.Context, inputPath string, outputPath string, format string, maxOutputBytes int64) error

ConvertTexture2DToImage 将独立 Texture2D 主文件导出为 PNG 或 DDS,不修改主文件 ConvertTexture2DToImage exports a standalone Texture2D primary file as PNG or DDS without modifying the primary file

func (*NativeUnityMediaService) DetectAudioClipExtension

func (s *NativeUnityMediaService) DetectAudioClipExtension(ctx context.Context, inputPath string) (string, error)

DetectAudioClipExtension 读取独立 AudioClip 的内联载荷并返回建议扩展名 DetectAudioClipExtension reads a standalone AudioClip's inline payload and returns its suggested extension

func (*NativeUnityMediaService) ExtractAudioClip

func (s *NativeUnityMediaService) ExtractAudioClip(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ExtractAudioClip 将独立 AudioClip 中已内联的原始音频载荷写出,不进行有损转码 ExtractAudioClip writes the inline encoded payload from a standalone AudioClip without lossy transcoding

type NeiService

type NeiService struct{}

NeiService 专门处理 KCES 使用的 .nei 共用格式 / NeiService handles the shared .nei format used by KCES

func (*NeiService) ConvertCSVToNei

func (s *NeiService) ConvertCSVToNei(inputPath string, outputPath string) error

ConvertCSVToNei 将 CSV 转换为 .nei 文件 ConvertCSVToNei converts CSV to a .nei file

func (*NeiService) ConvertNeiToCSV

func (s *NeiService) ConvertNeiToCSV(inputPath string, outputPath string) error

ConvertNeiToCSV 将 .nei 文件转换为 CSV ConvertNeiToCSV converts a .nei file to CSV

func (*NeiService) ReadNeiFile

func (s *NeiService) ReadNeiFile(path string) (*serializationKCES.Nei, error)

ReadNeiFile 读取并解码 .nei 文件 ReadNeiFile reads and decodes a .nei file

func (*NeiService) WriteNeiFile

func (s *NeiService) WriteNeiFile(path string, value *serializationKCES.Nei) error

WriteNeiFile 编码并写入 .nei 文件 WriteNeiFile encodes and writes a .nei file

type PackService

type PackService struct{}

PackService 提供将纯资源目录打包为 KCES ABA 和 CT 的服务 / PackService packs a plain resource directory into KCES ABA and CT files

func (*PackService) PackToAbaAndCt

func (s *PackService) PackToAbaAndCt(dirPath string, outputBaseName string) error

PackToAbaAndCt 扫描纯资源目录并在其父目录生成固定 Unity 2022.3.35f1 的 ABA 和 CT PackToAbaAndCt scans a plain resource directory and emits fixed Unity 2022.3.35f1 ABA and CT files in its parent directory

type PartsService

type PartsService struct{}

PartsService 为旧调用方提供所有 KCES 部件载荷的兼容分派入口 / PartsService provides compatibility dispatch for all KCES parts payloads

func (*PartsService) ConvertJsonToParts

func (s *PartsService) ConvertJsonToParts(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToParts 根据编辑 JSON 或输出路径的扩展名调用对应的独立部件 service ConvertJsonToParts dispatches to the independent parts service selected by the editing JSON or output extension

func (*PartsService) ConvertPartsToJson

func (s *PartsService) ConvertPartsToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertPartsToJson 根据输入扩展名调用对应的独立部件 service ConvertPartsToJson dispatches to the independent parts service selected by the input extension

func (*PartsService) ReadPartsFile

func (s *PartsService) ReadPartsFile(path string) (any, error)

ReadPartsFile 根据路径扩展名调用对应的独立部件 service ReadPartsFile dispatches to the independent parts service selected by the path extension

func (*PartsService) WriteMaterialAssetsFile

func (s *PartsService) WriteMaterialAssetsFile(path string, value *serializationKCES.MaterialAssets) error

WriteMaterialAssetsFile 为聚合 service 保留 .materialassets 直接写入 API WriteMaterialAssetsFile preserves the direct .materialassets writer on the aggregate service

func (*PartsService) WriteMenuAssetsFile

func (s *PartsService) WriteMenuAssetsFile(path string, value *serializationKCES.MenuAssets) error

WriteMenuAssetsFile 为聚合 service 保留 .menuassets 直接写入 API WriteMenuAssetsFile preserves the direct .menuassets writer on the aggregate service

func (*PartsService) WriteModelFile

func (s *PartsService) WriteModelFile(path string, value *serializationKCES.Model) error

WriteModelFile 为聚合 service 保留 KCES .model 直接写入 API WriteModelFile preserves the direct KCES .model writer on the aggregate service

func (*PartsService) WritePartsFile

func (s *PartsService) WritePartsFile(path string, value any) error

WritePartsFile 根据目标扩展名调用对应的独立部件 service WritePartsFile dispatches to the independent parts service selected by the destination extension

func (*PartsService) WritePriorityMaterialAssetsFile

func (s *PartsService) WritePriorityMaterialAssetsFile(path string, value *serializationKCES.PriorityMaterialAssets) error

WritePriorityMaterialAssetsFile 为聚合 service 保留 .pmatassets 直接写入 API WritePriorityMaterialAssetsFile preserves the direct .pmatassets writer on the aggregate service

type PathsService

type PathsService struct{}

PathsService 专门处理 paths.dat 文件 / PathsService handles paths.dat files

func (*PathsService) ConvertJSONToPaths

func (s *PathsService) ConvertJSONToPaths(ctx context.Context, inputPath, outputPath string, maxOutputBytes int64) error

ConvertJSONToPaths 将编辑 JSON 转换为 paths.dat 文件 ConvertJSONToPaths converts editing JSON to a paths.dat file

func (*PathsService) ConvertPathsToJSON

func (s *PathsService) ConvertPathsToJSON(ctx context.Context, inputPath, outputPath string, maxOutputBytes int64) error

ConvertPathsToJSON 将 paths.dat 文件转换为编辑 JSON ConvertPathsToJSON converts a paths.dat file to editing JSON

func (*PathsService) ReadPathsFile

func (s *PathsService) ReadPathsFile(path string) (*serializationKCES.KCESPathsFile, error)

ReadPathsFile 读取并解码 paths.dat 文件 ReadPathsFile reads and decodes a paths.dat file

func (*PathsService) WritePathsFile

func (s *PathsService) WritePathsFile(path string, value *serializationKCES.KCESPathsFile) error

WritePathsFile 将资源搜索路径结构直接编码并写入 paths.dat 文件 WritePathsFile directly encodes a resource search path value and writes it to a paths.dat file

type PayloadService

type PayloadService struct{}

PayloadService 为旧调用方提供所有 KCES 物理与碰撞载荷的兼容分派入口 / PayloadService provides compatibility dispatch for all KCES physics and collider payloads

func (*PayloadService) ConvertJsonToPayload

func (s *PayloadService) ConvertJsonToPayload(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToPayload 根据编辑 JSON 或输出路径的扩展名调用对应的独立载荷 service ConvertJsonToPayload dispatches to the independent payload service selected by the editing JSON or output extension

func (*PayloadService) ConvertPayloadToJson

func (s *PayloadService) ConvertPayloadToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertPayloadToJson 根据输入扩展名调用对应的独立载荷 service ConvertPayloadToJson dispatches to the independent payload service selected by the input extension

func (*PayloadService) WritePayloadFile

func (s *PayloadService) WritePayloadFile(path string, value any) error

WritePayloadFile 根据目标扩展名调用对应的独立载荷 service WritePayloadFile dispatches to the independent payload service selected by the destination extension

type PersetService

type PersetService struct{}

PersetService 专门处理 KCES 早期使用且 wire 布局与 .preset 完全相同的 .perset 文件 / PersetService handles the historical KCES .perset files whose wire layout is identical to .preset

func (*PersetService) ConvertJsonToPerset

func (s *PersetService) ConvertJsonToPerset(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToPerset 将完整展开的编辑 JSON 转换为 KCES .perset 文件 ConvertJsonToPerset converts fully expanded editing JSON to a KCES .perset file

func (*PersetService) ConvertPersetToJson

func (s *PersetService) ConvertPersetToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertPersetToJson 将 KCES .perset 文件转换为完整展开的编辑 JSON ConvertPersetToJson converts a KCES .perset file to fully expanded editing JSON

func (*PersetService) ReadPersetFile

func (s *PersetService) ReadPersetFile(path string) (*serializationKCES.ExpandedKCESPreset, error)

ReadPersetFile 直接读取并完整展开 KCES .perset 文件中的已知内部块 ReadPersetFile directly reads a KCES .perset file and fully expands its known inner blocks

func (*PersetService) WritePersetFile

func (s *PersetService) WritePersetFile(path string, value *serializationKCES.ExpandedKCESPreset) error

WritePersetFile 直接编码完整展开的 KCES 预设并写入 .perset 文件 WritePersetFile directly encodes a fully expanded KCES preset and writes it to a .perset file

type PresetService

type PresetService struct{}

PresetService 专门处理 KCES 引入的 .preset VirtualDirectory 格式,旧 CM3D2_PRESET 继续由 service/COM3D2 处理 / PresetService handles the KCES .preset VirtualDirectory format while legacy CM3D2_PRESET files remain in service/COM3D2

func (*PresetService) ConvertJsonToPreset

func (s *PresetService) ConvertJsonToPreset(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToPreset 将完整展开的编辑 JSON 转换为 KCES 预设文件 ConvertJsonToPreset converts fully expanded editing JSON to a KCES preset file

func (*PresetService) ConvertPresetToJson

func (s *PresetService) ConvertPresetToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertPresetToJson 将 KCES 预设文件转换为完整展开的编辑 JSON ConvertPresetToJson converts a KCES preset file to fully expanded editing JSON

func (*PresetService) ReadPresetFile

func (s *PresetService) ReadPresetFile(path string) (*serializationKCES.ExpandedKCESPreset, error)

ReadPresetFile 读取并完整展开 KCES 预设中的三个已知内部块 ReadPresetFile reads a KCES preset and fully expands its three known inner blocks

func (*PresetService) WritePresetFile

func (s *PresetService) WritePresetFile(path string, value *serializationKCES.ExpandedKCESPreset) error

WritePresetFile 将完整展开的 KCES 预设直接编码并写入 .preset 文件,并为旧调用方分派 .perset 输出 WritePresetFile directly encodes a fully expanded KCES preset to .preset while dispatching .perset output for legacy callers

type PriorityMaterialAssetsService

type PriorityMaterialAssetsService struct{}

PriorityMaterialAssetsService 专门处理 .pmatassets 文件 / PriorityMaterialAssetsService handles .pmatassets files

func (*PriorityMaterialAssetsService) ConvertJsonToPriorityMaterialAssets

func (s *PriorityMaterialAssetsService) ConvertJsonToPriorityMaterialAssets(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToPriorityMaterialAssets 将编辑 JSON 转换为 .pmatassets 文件 ConvertJsonToPriorityMaterialAssets converts editing JSON to a .pmatassets file

func (*PriorityMaterialAssetsService) ConvertPriorityMaterialAssetsToJson

func (s *PriorityMaterialAssetsService) ConvertPriorityMaterialAssetsToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertPriorityMaterialAssetsToJson 将 .pmatassets 文件转换为编辑 JSON ConvertPriorityMaterialAssetsToJson converts a .pmatassets file to editing JSON

func (*PriorityMaterialAssetsService) ReadPriorityMaterialAssetsFile

func (s *PriorityMaterialAssetsService) ReadPriorityMaterialAssetsFile(path string) (*serializationKCES.PriorityMaterialAssets, error)

ReadPriorityMaterialAssetsFile 读取并解码 .pmatassets 文件 ReadPriorityMaterialAssetsFile reads and decodes a .pmatassets file

func (*PriorityMaterialAssetsService) WritePriorityMaterialAssetsFile

func (s *PriorityMaterialAssetsService) WritePriorityMaterialAssetsFile(path string, value *serializationKCES.PriorityMaterialAssets) error

WritePriorityMaterialAssetsFile 编码并写入 .pmatassets 文件 WritePriorityMaterialAssetsFile encodes and writes a .pmatassets file

type PskService

type PskService struct{}

PskService 专门处理 KCES 使用的 .psk 共用格式 / PskService handles the shared .psk format used by KCES

func (*PskService) ConvertJsonToPsk

func (s *PskService) ConvertJsonToPsk(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToPsk 将编辑 JSON 转换为 .psk 文件 ConvertJsonToPsk converts editing JSON to a .psk file

func (*PskService) ConvertPskToJson

func (s *PskService) ConvertPskToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertPskToJson 将 .psk 文件转换为编辑 JSON ConvertPskToJson converts a .psk file to editing JSON

func (*PskService) ReadPskFile

func (s *PskService) ReadPskFile(path string) (*serializationCOM3D2.Psk, error)

ReadPskFile 读取 .psk 或 .psk.json 文件 ReadPskFile reads a .psk or .psk.json file

func (*PskService) WritePskFile

func (s *PskService) WritePskFile(path string, value *serializationCOM3D2.Psk) error

WritePskFile 编码并写入 .psk 文件 WritePskFile encodes and writes a .psk file

type RawUnityObjectEnvelope

type RawUnityObjectEnvelope struct {
	Format                string                    `json:"format"`                          // 封套格式标识,固定为 kces-unity-raw-object / Envelope format marker, fixed to kces-unity-raw-object
	ClassID               int32                     `json:"classId"`                         // Unity ClassID / Unity ClassID
	TypeName              string                    `json:"typeName,omitempty"`              // Unity 类型名 / Unity type name
	Kind                  string                    `json:"kind,omitempty"`                  // 打包时使用的资源 kind / Asset kind used during packing
	Name                  string                    `json:"name,omitempty"`                  // 对象内部名称 / Internal object name
	PathID                int64                     `json:"pathId,omitempty"`                // Unity PathID / Unity PathID
	LoadName              string                    `json:"loadName,omitempty"`              // AssetBundle 加载名 / AssetBundle load name
	UnityVersion          string                    `json:"unityVersion,omitempty"`          // SerializedFile Unity 版本 / SerializedFile Unity version
	EngineVersion         string                    `json:"engineVersion,omitempty"`         // UnityFS header 引擎版本 / UnityFS header engine version
	TargetPlatform        *uint32                   `json:"targetPlatform,omitempty"`        // SerializedFile 目标平台 / SerializedFile target platform
	AbaVersion            uint32                    `json:"abaVersion,omitempty"`            // UnityFS 格式版本 / UnityFS format version
	GenerationVersion     string                    `json:"generationVersion,omitempty"`     // UnityFS generation version / UnityFS generation version
	SerializedFileVersion uint32                    `json:"serializedFileVersion,omitempty"` // SerializedFile 格式版本 / SerializedFile format version
	ReadOnly              bool                      `json:"readOnly,omitempty"`              // TypeTree 值是否仅供查看 / Whether the TypeTree value is read-only
	SchemaBase64          string                    `json:"schemaBase64,omitempty"`          // 不含正文的独立对象头与完整 TypeTree / Standalone object header and complete TypeTree without payload data
	ResourceDataBase64    string                    `json:"resourceDataBase64,omitempty"`    // AudioClip 内联音频载荷 / Inline AudioClip payload data
	DataBase64            string                    `json:"dataBase64,omitempty"`            // 旧格式原始序列化对象数据 base64 / Base64 of legacy raw serialized object data
	TypeTree              *RawUnityTypeTreeEnvelope `json:"typeTree,omitempty"`              // 可选 TypeTree 只读视图 / Optional read-only TypeTree view
}

RawUnityObjectEnvelope 是从 ABA 提取的原始 Unity 序列化对象字节的 JSON 可编辑封套 / RawUnityObjectEnvelope is the JSON-editable wrapper for raw Unity serialized object bytes extracted from an ABA

type RawUnityObjectService

type RawUnityObjectService struct{}

RawUnityObjectService 提供原始 Unity 对象字节与 JSON 封套之间的转换服务 / RawUnityObjectService converts raw Unity object bytes to and from JSON envelopes

func (*RawUnityObjectService) ConvertJsonToRawUnityObject

func (s *RawUnityObjectService) ConvertJsonToRawUnityObject(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToRawUnityObject 将可编辑 JSON 封套转换回 KCES 原始 Unity 对象字节 ConvertJsonToRawUnityObject converts an editable JSON envelope back into KCES raw Unity object bytes

func (*RawUnityObjectService) ConvertRawUnityObjectToJson

func (s *RawUnityObjectService) ConvertRawUnityObjectToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertRawUnityObjectToJson 将 KCES 原始 Unity 对象字节转换为可编辑 JSON 封套 ConvertRawUnityObjectToJson converts KCES raw Unity object bytes into an editable JSON envelope

func (*RawUnityObjectService) ReadRawUnityObjectFile

func (s *RawUnityObjectService) ReadRawUnityObjectFile(path string) (*RawUnityObjectEnvelope, error)

ReadRawUnityObjectFile 读取原始 Unity 对象字节文件并构建 JSON 封套 ReadRawUnityObjectFile reads a raw Unity object byte file and builds its JSON envelope

func (*RawUnityObjectService) WriteRawUnityObjectFile

func (s *RawUnityObjectService) WriteRawUnityObjectFile(path string, value *RawUnityObjectEnvelope) error

WriteRawUnityObjectFile 将原始 Unity 对象封套及其可选旁车直接写入对应文件 WriteRawUnityObjectFile directly writes a raw Unity object envelope and its optional sidecars to their corresponding files

type RawUnityTypeTreeEnvelope

type RawUnityTypeTreeEnvelope struct {
	Format   string             `json:"format"`             // 封套格式标识,固定为 kces-unity-typetree / Envelope format marker, fixed to kces-unity-typetree
	ClassID  int32              `json:"classId"`            // Unity ClassID / Unity ClassID
	TypeName string             `json:"typeName,omitempty"` // Unity 类型名 / Unity type name
	Name     string             `json:"name,omitempty"`     // 对象名称 / Object name
	PathID   int64              `json:"pathId,omitempty"`   // Unity PathID / Unity PathID
	LoadName string             `json:"loadName,omitempty"` // AssetBundle 加载名 / AssetBundle load name
	Value    *TypeTreeJSONValue `json:"value"`              // TypeTree 解码后的根值 / Root value decoded from TypeTree
}

RawUnityTypeTreeEnvelope 是仅在源 .aba 上下文可用时生成且不替代相邻 raw .bytes 重打包来源的 Unity TypeTree JSON 视图 / RawUnityTypeTreeEnvelope is a Unity TypeTree JSON view generated only while the source .aba context is available and does not replace the adjacent raw .bytes source used for repacking

type SavedAttachService

type SavedAttachService struct{}

SavedAttachService 在 KCES GP03 SAVED_ATTACH_DATA .sad 文件与带格式标记的编辑 JSON 之间转换 / SavedAttachService converts between KCES GP03 SAVED_ATTACH_DATA .sad files and marker-based editing JSON

func (*SavedAttachService) ConvertJSONToSavedAttach

func (s *SavedAttachService) ConvertJSONToSavedAttach(ctx context.Context, inputPath, outputPath string, maxOutputBytes int64) error

ConvertJSONToSavedAttach 将编辑 JSON 转换为原生 .sad 文件 ConvertJSONToSavedAttach converts editing JSON to a native .sad file

func (*SavedAttachService) ConvertSavedAttachToJSON

func (s *SavedAttachService) ConvertSavedAttachToJSON(ctx context.Context, inputPath, outputPath string, maxOutputBytes int64) error

ConvertSavedAttachToJSON 将原生 .sad 文件转换为编辑 JSON ConvertSavedAttachToJSON converts a native .sad file to editing JSON

func (*SavedAttachService) ReadSavedAttachFile

func (s *SavedAttachService) ReadSavedAttachFile(path string) (*serializationKCES.SavedAttachFile, error)

ReadSavedAttachFile 读取并解码原生 .sad 文件 ReadSavedAttachFile reads and decodes a native .sad file

func (*SavedAttachService) WriteSavedAttachFile

func (s *SavedAttachService) WriteSavedAttachFile(path string, value *serializationKCES.SavedAttachFile) error

WriteSavedAttachFile 将保存的附着物结构直接编码并写入 .sad 文件 WriteSavedAttachFile directly encodes a saved-attach value and writes it to a .sad file

type SystemDataService

type SystemDataService struct{}

SystemDataService 转换基于 VirtualDirectory 的 system.dat,并以 typed JSON 展开已知 EditData 且以 base64 保留未知文件 / SystemDataService converts VirtualDirectory-based system.dat files while exposing known EditData as typed JSON and preserving unknown files as base64

func (*SystemDataService) ConvertJSONToSystemData

func (s *SystemDataService) ConvertJSONToSystemData(ctx context.Context, inputPath, outputPath string, maxOutputBytes int64) error

ConvertJSONToSystemData 将编辑 JSON 转换为 KCES system.dat ConvertJSONToSystemData converts editing JSON to KCES system.dat

func (*SystemDataService) ConvertSystemDataToJSON

func (s *SystemDataService) ConvertSystemDataToJSON(ctx context.Context, inputPath, outputPath string, maxOutputBytes int64) error

ConvertSystemDataToJSON 将 KCES system.dat 转换为编辑 JSON ConvertSystemDataToJSON converts KCES system.dat to editing JSON

func (*SystemDataService) ReadSystemDataFile

func (s *SystemDataService) ReadSystemDataFile(path string) (*serializationKCES.KCESSystemData, error)

ReadSystemDataFile 读取并解码 KCES system.dat 文件 ReadSystemDataFile reads and decodes a KCES system.dat file

func (*SystemDataService) WriteSystemDataFile

func (s *SystemDataService) WriteSystemDataFile(path string, value *serializationKCES.KCESSystemData) error

WriteSystemDataFile 将 KCES 系统数据结构直接编码并写入 system.dat 文件 WriteSystemDataFile directly encodes a KCES system data value and writes it to a system.dat file

type TypeTreeJSONBytes

type TypeTreeJSONBytes struct {
	Length        int64  `json:"length"`                  // 字节长度 / Byte length
	SHA256        string `json:"sha256"`                  // 原始字节 SHA256 / SHA256 of raw bytes
	DataBase64    string `json:"dataBase64,omitempty"`    // 小字节数组的完整 base64 / Full base64 for small byte arrays
	PreviewBase64 string `json:"previewBase64,omitempty"` // 大字节数组的预览 base64 / Preview base64 for large byte arrays
	Truncated     bool   `json:"truncated,omitempty"`     // 是否截断预览 / Whether the preview is truncated
}

TypeTreeJSONBytes 表示 TypeTree 字节数组的 JSON 摘要 / TypeTreeJSONBytes represents a JSON summary of TypeTree byte arrays

type TypeTreeJSONValue

type TypeTreeJSONValue struct {
	TypeName string               `json:"typeName,omitempty"` // Unity 类型名 / Unity type name
	Name     string               `json:"name,omitempty"`     // 字段名或节点名 / Field or node name
	Value    interface{}          `json:"value,omitempty"`    // 标量值 / Scalar value
	Bytes    *TypeTreeJSONBytes   `json:"bytes,omitempty"`    // 字节数组摘要或内联数据 / Byte-array summary or inline data
	Children []*TypeTreeJSONValue `json:"children,omitempty"` // 子节点列表 / Child node list
}

TypeTreeJSONValue 表示 TypeTreeValue 的 JSON 形态 / TypeTreeJSONValue represents the JSON form of TypeTreeValue

type UndressDataService

type UndressDataService struct{}

UndressDataService 专门处理 .undressdat 文件 / UndressDataService handles .undressdat files

func (*UndressDataService) ConvertJsonToUndressData

func (s *UndressDataService) ConvertJsonToUndressData(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToUndressData 将编辑 JSON 转换为 .undressdat 文件 ConvertJsonToUndressData converts editing JSON to a .undressdat file

func (*UndressDataService) ConvertUndressDataToJson

func (s *UndressDataService) ConvertUndressDataToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertUndressDataToJson 将 .undressdat 文件转换为编辑 JSON ConvertUndressDataToJson converts a .undressdat file to editing JSON

func (*UndressDataService) ReadUndressDataFile

func (s *UndressDataService) ReadUndressDataFile(path string) (*serializationKCES.UndressArchiveTarget, error)

ReadUndressDataFile 读取并解码 .undressdat 文件 ReadUndressDataFile reads and decodes a .undressdat file

func (*UndressDataService) WriteUndressDataFile

func (s *UndressDataService) WriteUndressDataFile(path string, value *serializationKCES.UndressArchiveTarget) error

WriteUndressDataFile 编码并写入 .undressdat 文件 WriteUndressDataFile encodes and writes a .undressdat file

type UndressPartsDataService

type UndressPartsDataService struct{}

UndressPartsDataService 专门处理 .undresspdat 文件 / UndressPartsDataService handles .undresspdat files

func (*UndressPartsDataService) ConvertJsonToUndressPartsData

func (s *UndressPartsDataService) ConvertJsonToUndressPartsData(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertJsonToUndressPartsData 将编辑 JSON 转换为 .undresspdat 文件 ConvertJsonToUndressPartsData converts editing JSON to a .undresspdat file

func (*UndressPartsDataService) ConvertUndressPartsDataToJson

func (s *UndressPartsDataService) ConvertUndressPartsDataToJson(ctx context.Context, inputPath string, outputPath string, maxOutputBytes int64) error

ConvertUndressPartsDataToJson 将 .undresspdat 文件转换为编辑 JSON ConvertUndressPartsDataToJson converts a .undresspdat file to editing JSON

func (*UndressPartsDataService) ReadUndressPartsDataFile

func (s *UndressPartsDataService) ReadUndressPartsDataFile(path string) (*serializationKCES.UndressPrecomputeTarget, error)

ReadUndressPartsDataFile 读取并解码 .undresspdat 文件 ReadUndressPartsDataFile reads and decodes a .undresspdat file

func (*UndressPartsDataService) WriteUndressPartsDataFile

func (s *UndressPartsDataService) WriteUndressPartsDataFile(path string, value *serializationKCES.UndressPrecomputeTarget) error

WriteUndressPartsDataFile 编码并写入 .undresspdat 文件 WriteUndressPartsDataFile encodes and writes a .undresspdat file

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL