public readonly record struct SubAssetIdIdentity of one object inside an imported asset — a mesh in an FBX, a clip in an animation set — stable across re-imports of the source file.
No guide page documents this yet — the page shows what the code says about itself.
Remarks
Thirty-two bits, written as eight lowercase hex digits, derived from what the sub-asset is rather than from where it landed. That is the one part of Unity's behaviour worth keeping while discarding its representation: Unity's fileID values are internal magic numbers, so re-exporting an FBX whose mesh order changed silently breaks every reference to it. "My prefab lost its mesh after an artist re-exported" is one of the most common failures in real projects, and it is avoidable by construction.
It carries no hash function, the same way ObjectId does not. Vixen.Core is BCL-only; the code that derives one has the importer type, the kind and the name in front of it and lives where hashing is allowed. This type is identity, formatting and parsing.
Fields and properties (4)
public uint ValueThe raw thirty-two bits.
public const int TextLengthNumber of characters ToString writes.
public static SubAssetId MainNo sub-asset: the asset's main object.
public bool IsMainWhether this names the asset's main object rather than a sub-asset.
Methods (15)
public SubAssetId(uint Value)Identity of one object inside an imported asset — a mesh in an FBX, a clip in an animation set — stable across re-imports of the source file.
public int CompareTo(SubAssetId other)Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object.
public static bool operator <(SubAssetId left, SubAssetId right)Whether sorts before .
public static bool operator <=(SubAssetId left, SubAssetId right)Whether sorts before or equal to .
public static bool operator >(SubAssetId left, SubAssetId right)Whether sorts after .
public static bool operator >=(SubAssetId left, SubAssetId right)Whether sorts after or equal to .
public override string ToString()Renders the id as eight lowercase hex digits.
public string ToString(string? format, IFormatProvider? formatProvider)Formats the value of the current instance using the specified format.
public bool TryFormat(Span<char> destination, out int charsWritten, ReadOnlySpan<char> format = default(ReadOnlySpan<char>), IFormatProvider? provider = null)Tries to format the value of the current instance into the provided span of characters.
public static SubAssetId Parse(string s, IFormatProvider? provider = null)Parses a string into a value.
public static SubAssetId Parse(ReadOnlySpan<char> s, IFormatProvider? provider = null)Parses a span of characters into a value.
public static bool TryParse(string? s, IFormatProvider? provider, out SubAssetId result)Tries to parse a string into a value.
public static bool TryParse(ReadOnlySpan<char> s, IFormatProvider? provider, out SubAssetId result)Tries to parse a span of characters into a value.
public static bool TryParse(string? s, out SubAssetId result)Parses eight hex digits.
public static bool TryParse(ReadOnlySpan<char> s, out SubAssetId result)Parses eight hex digits.
Used by (62, showing 40)
- AssetMaterialSourceTestsVixen.Engine.Renderer.Tests
- AssetReferenceVixen.Core
- AssetReferenceSerializerVixen.Core.Serialization
- AssetTextureSourceTestsVixen.Engine.Renderer.Tests
- CatalogFormatVixen.Assets
- CatalogReferenceTestsVixen.Assets.Tests
- MetaTestsVixen.Core.Yaml.Tests
- SubAssetCollisionExceptionVixen.Core.Yaml
- SubAssetEntryVixen.Core.Yaml
- SubAssetIdSerializerVixen.Core.Serialization
- SubAssetsVixen.Core.Yaml
- TypeRegistrationVixen.Core.Yaml
- WorldRendererTestsVixen.Engine.Renderer.Tests
- YamlScalarConvertersVixen.Core.Yaml
- AnimationClipImporterVixen.Editor.Assets
- AnimationClipImporterTestsVixen.Editor.Assets.Tests
- AssetDrawerVixen.Editor.Inspector
- AudioImporterVixen.Editor.Assets
- BuildPlannerVixen.Editor.Assets
- CompilerPoolVixen.AssetCompiler
- CompositorImporterVixen.Editor.Assets
- ConstraintTemplateImporterVixen.Editor.Assets
- ContentPipelineVixen.Editor.Assets
- CubeLutImporterVixen.Editor.Assets
- DropIntoFieldTestsVixen.Editor.App.Tests
- HarnessPlanImporterVixen.Editor.Assets
- HeightmapImporterVixen.Editor.Assets
- ImportCacheVixen.Editor.Assets
- ImportContextVixen.Editor.Assets
- ImportPipelineVixen.Editor.Assets
- ImportPipelineTestsVixen.Editor.Assets.Tests
- ImportedArtifactVixen.Editor.Assets
- ImportedGeometryLoadsTestsVixen.Editor.Assets.Tests
- MaterialImporterVixen.Editor.Assets
- MaterialImporterTestsVixen.Editor.Assets.Tests
- MaterialTestsVixen.Editor.AssetEditors.Tests
- ModelImporterVixen.Editor.Assets
- ModelImporterTestsVixen.Editor.Assets.Tests
- MoveSetImporterVixen.Editor.Assets
- NativeFormatImporterVixen.Editor.Assets