public sealed class EditorOnlyImporterClaims a document the editor authors and nothing at run time reads, writes no artefact, and says what ships instead (#1491).
As a importer
- Extensions
- .vxtexgraph .vxlayers
Remarks
A texture graph and a layer stack are recipes, not assets. Nothing under Core/ opens a .vxtexgraph or a .vxlayers: the Texturing panel and vixen texture bake evaluate one, and what a game loads is what the bake writes — a folder of maps and the .vxmat beside them, which TextureImporter and MaterialImporter already claim. Before this, the fallback took both and shipped the recipe as a chunk called Blob that no reader resolves, in every build of every project that had ever pressed Create ▸.
⚠ Here in the pipeline, and not beside the features that own the formats, because neither feature can be linked by every host. Vixen.Editor.TextureGraph's csproj refuses Vixen.Editor.Assets on a closure measurement, and Vixen.Cli's refuses Vixen.Editor.Texturing as an editor shell inside a command-line tool. An answer only the editor gave would be the editor and vixen disagreeing about what a project ships — the one thing HostImporterMap exists to prevent — so the answer lives where all three hosts read it.
⚠ No artefact, so it is in no bundle, which is BuildPlanner's ordinary handling of an importer that produces nothing — and an author who marked the recipe addressable on purpose gets that planner's error, "its importer produced nothing", rather than a blob.
⚠ Never honoured by name over the extension's own importer. ImportPipeline disregards a sidecar naming this the way it disregards one naming RawImporter: the day one of these formats grows a real importer, every .meta written today says !EditorOnlyImporter, and honouring it would keep those files unimported for ever — the trap UnimportedFormats describes for a placeholder importer.
Fields and properties (1)
public override int VersionIts own version. Bumping it invalidates every artefact it has ever produced, which is the whole mechanism for "I fixed the mip filter, re-import everything".
Methods (1)
protected override ValueTask<ImportResult> ImportAsync(ImportContext context, EditorOnlyImportSettings settings, CancellationToken cancellationToken)Imports one asset.
Used by (4)
- BuiltInImportersVixen.Editor.Assets
- EditorOnlyImporterTestsVixen.Editor.Assets.Tests
- ImportPipelineVixen.Editor.Assets
- ImportPipelineTestsVixen.Editor.Assets.Tests