载入中...
搜索中...
未找到
UnityCollection.cpp
浏览该文件的文档.
11Result<void> mergeImport(PreparedAssetImport& output, PreparedAssetImport input, const UnitySourceAsset& source,
16 DiagnosticCode::InvalidArgument, "Unity imported asset count exceeds budget", {}, {}, "asset.import"));
18 for (auto& dependency : input.manifest.dependencies) output.manifest.dependencies.push_back(std::move(dependency));
34Result<PreparedAssetImport> importSource(const UnityProjectImportRequest& request, const UnitySourceAsset& source) {
37 DiagnosticCode::Unsupported, "a .meta GUID is required for stable collection asset identity", source.path,
44 if (text.find("\nTexture2D:") != std::string_view::npos) return prepareUnityNativeTexture(request, source);
55 if (ext == "png" || ext == "jpg" || ext == "jpeg" || ext == "tif" || ext == "tiff" || ext == "tga") {
62 auto result = prepareImageImport({identity, "unity:" + source.guid, request.files.at(source.path),
67 result.value().findings.push_back({source.path, "TextureImporter.sprite", ImportDisposition::Unsupported,
79 const auto prefix = slash == std::string::npos ? std::string{} : source.path.substr(0, slash + 1);
84 {identity, "unity:" + source.guid, request.files.at(source.path), std::move(external), request.limits});
88 "mesh primitives imported; materials, skinning, animation and scene binding are not converted"});
116 out.findings.insert(out.findings.end(), expanded.value().findings.begin(), expanded.value().findings.end());
120 DiagnosticCode::InvalidArgument, "aggregate Prefab expansion budget exceeded", {}, {}, "asset.import"));
145 "Unity collection has no convertible assets; use asset scan to inspect all resource types", {}, {},
158 out.manifest.provenance["sourceCoordinateSystem"] = Value("left-handed-x-right-y-up-z-forward");
164 DiagnosticCode::InvalidArgument, "Unity prepared output exceeds byte budget", {}, {}, "asset.import"));
173 Diagnostic::error(DiagnosticCode::InvalidArgument, "Unity import report exceeds prepared output budget", {},
Direct Unity text-serialization adapter for TerrainData and Prefab assets.
static Diagnostic error(DiagnosticCode code, std::string message, std::string path={}, DiagnosticDetails details={}, std::string source={})
Construct an error diagnostic with the standard error severity.
Definition Diagnostic.h:125
static Result failure(Status status)
Construct a failed result from a structured status.
Definition Result.h:175
Id128 child(std::string_view role) const noexcept
Derives a deterministic child UUID for a hierarchical identity.
Definition Identity.h:192
EVENGINE_API_PLATFORM Result< void > finalizeImportReport(PreparedAssetImport &prepared, const ImportPackageIdentity &package, std::string_view sourceEngine, std::string_view sourceVersion, Value::Object options={})
Append the deterministic mandatory import report and bind it from provenance.
Definition ImportReport.cpp:21
Result< asset::EvaManifest > baseManifest(const ImportPackageIdentity &package, std::string_view importer)
Base manifest.
Definition ImportCommon.h:31
Definition AssetImporter.h:14
Result< PreparedAssetImport > prepareUnityPrefab(const UnityProjectImportRequest &request, const std::string &path)
Prepare one prefab without copying or re-indexing the source collection.
Definition UnityImporter.cpp:758
Result< PreparedAssetImport > prepareUnityMaterial(const UnityProjectImportRequest &request, const UnitySourceAsset &source)
Dispatch built-in Standard and admitted vegetation materials to canonical PBR data.
Definition UnityRenderBindings.cpp:49
Result< PreparedAssetImport > prepareUnityCollection(const UnityProjectImportRequest &request, const UnitySourceIndex &index)
Prepare an owning collection candidate using a validated source index.
Definition UnityCollection.cpp:101
Result< PreparedAssetImport > prepareUnityVegetationScene(const UnityProjectImportRequest &request, const UnitySourceAsset &source)
Convert a complete TVE manager component set from one Unity scene.
Definition UnityVegetationScene.cpp:677
Result< PreparedAssetImport > prepareUnityNativeVolumeTexture(const UnityProjectImportRequest &request, const UnitySourceAsset &source)
Convert embedded linear R8 Unity Texture3D to an owning canonical volume candidate.
Definition UnityNativeVolumeTexture.cpp:46
EVENGINE_API_PLATFORM Result< PreparedAssetImport > prepareUnityVegetationPreset(const UnityProjectImportRequest &request, const UnitySourceAsset &source)
Parse one TVE conversion preset into a bounded versioned command tree.
Definition UnityVegetationPreset.cpp:106
@ PreservedSource
@ Unsupported
ImageColorSpace
Explicit source color semantics; importers never infer platform defaults.
Definition AssetImporter.h:27
Result< PreparedAssetImport > prepareUnityNativeTexture(const UnityProjectImportRequest &request, const UnitySourceAsset &source)
Convert embedded BC3 text Texture2D to an owning image candidate.
Definition UnityNativeTexture.cpp:45
Result< PreparedAssetImport > prepareUnitySpriteAnimation(const UnityProjectImportRequest &request, const UnitySourceAsset &source)
Convert an explicit SpriteRenderer timeline and referenced metadata into an owning canonical candidat...
Definition UnitySpriteAnimation.cpp:79
Result< PreparedAssetImport > prepareUnityFbx(const UnityProjectImportRequest &request, const UnitySourceAsset &source)
Convert a static FBX with explicit Unity importer settings and hashed subasset identities.
Definition UnityFbx.cpp:210
Result< UnityExpandedPrefab > expandUnityPrefab(const UnityProjectImportRequest &request, const UnitySourceIndex &index, const UnitySourceAsset &source)
Resolve bounded nested prefab references into an unpublished owning text candidate.
Definition UnityPrefabExpansion.cpp:163
Result< void > bindUnityRenderers(const UnityProjectImportRequest &request, const UnitySourceIndex &index, PreparedAssetImport &out)
Resolve renderer references after all collection assets are prepared; unpublished candidate only.
Definition UnityRenderBindings.cpp:138
EVENGINE_API_PLATFORM Result< PreparedAssetImport > prepareImageImport(const ImageImportRequest &request)
Decode image metadata and prepare one canonical eve.image source asset.
Definition ImageImporter.cpp:80
Result< PreparedAssetImport > prepareUnityNativeMesh(const UnityProjectImportRequest &request, const UnitySourceAsset &source)
Decode a bounded static Unity text Mesh into owning canonical submesh candidates.
Definition UnityNativeMesh.cpp:46
EVENGINE_API_PLATFORM Result< PreparedAssetImport > prepareGltfImport(const GltfImportRequest &request)
Decode triangle primitives from glTF 2.0 into canonical typed mesh blobs.
Definition GltfImporter.cpp:205
@ InvalidArgument
@ NotFound
@ Unsupported
Definition Container.h:602
std::uint32_t maximumAssets
Definition AssetImporter.h:20
std::uint64_t maximumDecodedBytes
Definition AssetImporter.h:19
ImportPackageIdentity package
Definition AssetImporter.h:55
PersistentId packageId
Definition AssetImporter.h:34
Owning, validated source archive candidate not yet published to disk/database.
Definition AssetImporter.h:90
std::vector< ImportFinding > findings
Definition AssetImporter.h:93
std::vector< asset::EvaArchiveEntry > entries
Definition AssetImporter.h:92
asset::EvaManifest manifest
Definition AssetImporter.h:91
In-memory Unity project slice; keys are normalized project-relative paths.
Definition UnityImporter.h:15
std::map< std::string, std::vector< std::uint8_t > > files
Definition UnityImporter.h:17
Owning deterministic index sorted by path, plus missing-reference diagnostics.
Definition UnitySource.h:47