Skip to content

Assets: KTX2 container replaces .amtex (managed reader and writer) #31

Closed

Description

@brmassa

Current State

Cooked textures are .amtex (TextureBlobWriter.cs, TextureBlob.cs). The Android plan makes KTX2 the texture container on every platform: BCn/RGBA8 payloads on desktop, ASTC on Android, one vkFormat per per-target file, no Basis transcoding at runtime. The MIT ktx2 Zig library (a reader) is the porting reference; existing .NET packages are native libktx bindings and are not used.

Tasks

  • Port the reader to C#: header, level index, DFD, key/value data; supercompressionScheme = 0 only in cooked files (OAP handles compression)
  • C# writer for the formats Turian bakes; Turian data goes in namespaced key/value entries, import settings stay in .meta
  • Importer writes primary.<target>.ktx2; bump the importer version so caches rebuild; no permanent .amtex read path
  • Runtime loads KTX2 through IContentSource
  • Basis-bearing KTX2 as an import source is deferred

Acceptance Criteria

  • Round-trip tests per format
  • Cooked files pass ktx validate (KTX-Software) in CI
  • Existing projects re-import transparently

Related

Activity

  1. added
    c:assetsAssets: importers, database, catalog, formats (glTF, KTX2)
    c:graphicsGraphics pipeline: Vulkan, RHI, shaders, rendering
    p:mediumMedium priority — fix in next sprint
    size:L~1-2 weeks — significant feature
    t:featureNew feature implementation
    on Sep 24, 2026
  2. removed this from the milestone on Sep 25, 2026
  3. added
    p:highHigh priority — fix in current sprint
    on Oct 12, 2026
  4. changed the title [-]KTX2 as the image format[/-] [+]Assets: KTX2 container replaces .amtex (managed reader and writer)[/+] on Oct 12, 2026
  5. moved this to Backlog in ROADMAPon Oct 12, 2026
  6. moved this from Backlog to Done in ROADMAPon Oct 12, 2026
  7. added a commit that references this issue on Oct 12, 2026
    1a6fb63
  8. moved this from In progress to Done in ROADMAPon Oct 13, 2026
  9. moved this from Done to In progress in ROADMAPon Oct 13, 2026
  10. moved this from In progress to Ready in ROADMAPon Oct 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    c:assetsAssets: importers, database, catalog, formats (glTF, KTX2)c:graphicsGraphics pipeline: Vulkan, RHI, shaders, renderingp:highHigh priority — fix in current sprintp:mediumMedium priority — fix in next sprintsize:L~1-2 weeks — significant featuret:featureNew feature implementation

    Type

    No type

    Projects

    • Status
      Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions