载入中...
搜索中...
未找到
MeshVfxPackage.cpp
浏览该文件的文档.
15 if (effect.layers.size() > 32 || effect.trail || effect.trailBinding || !effect.animationTriggers.play.empty() ||
18 DiagnosticCode::Unsupported, "Package supports up to 32 mesh layers without gameplay attachments", {}, {},
24 Diagnostic::error(DiagnosticCode::InvalidArgument, "Invalid playback cycle", {}, {}, "asset.import"));
44 Diagnostic::error(DiagnosticCode::InvalidArgument, "Invalid shader identity", {}, {}, "asset.import"));
const PersistentId & id() const noexcept
Return the stable asset identity.
Definition ResourceRef.h:65
static Result< AssetRef > fromId(PersistentId id)
Build an asset reference from a non-nil persistent identity.
Definition ResourceRef.cpp:26
static Result< AssetRef > parse(std::string_view text)
Parse an asset://<canonical UUID> reference.
Definition ResourceRef.cpp:20
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
std::string format() const
Formats the ID in lower-case canonical UUID text.
Definition Identity.h:173
constexpr bool isNil() const noexcept
Returns whether this value is the all-zero nil ID.
Definition Identity.h:176
Id128 child(std::string_view role) const noexcept
Derives a deterministic child UUID for a hierarchical identity.
Definition Identity.h:192
static eve::Result< std::unique_ptr< MeshVfxAssetInstance > > create(const MeshVfxAsset &asset)
Build independent runtime state for every asset layer.
Definition MeshVfxAsset.cpp:510
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 EvpackMeshVfx.cpp:11
Result< asset_import::PreparedAssetImport > prepareMeshVfxPackage(const asset_import::ImportPackageIdentity &package, const stylize::MeshVfxAsset &effect, const std::vector< std::pair< AssetRef, Value > > &shaders)
Prepare a self-contained native effect package using canonical shader and MeshVfx definitions.
Definition MeshVfxPackage.cpp:9
Result< std::vector< std::uint8_t > > buildEvaArchive(const EvaManifest &manifest, std::vector< EvaArchiveEntry > entries, const EvaArchiveLimits &limits)
Build a deterministic ZIP64 .eva, selecting raw Deflate only when smaller than Store.
Definition EvaArchive.cpp:408
@ RuntimeRequired
Result< ShaderAsset > decodeShaderAsset(const Value &definition, const ShaderAssetLimits &limits)
Decode strict eve.shader/1 metadata with SPIR-V 1.0 through 1.6 stages.
Definition ShaderAsset.cpp:54
@ InvalidArgument
@ TypeMismatch
A stable reference resolved to a different canonical domain type.
@ NotFound
@ Unsupported
detail::StrongUint64< detail::SchemaVersionTag > SchemaVersion
Persistent data-format version; not a runtime replacement generation.
Definition SchemaVersion.h:13
Common stable package metadata supplied by an import transaction.
Definition AssetImporter.h:33
PersistentId packageId
Definition AssetImporter.h:34
Versioned, backend-neutral description of a real-time mesh effect.
Definition MeshVfxAsset.h:73