Improve texture editing pipeline and add DDS file format
Open, Needs TriagePublic

Description

Must have

  • import/export DDS
  • automatic mipmap generation
  • basic texture compression (S3TC aka DXT1/3/5 aka BC1/2/3, maybe libsquish (MIT)?)
  • there is an official Microsoft's library for DDS support DirectXTex (MIT)

Should have

  • authoring/import/export of cubemaps (6 separate sides)
  • authoring/import/export of 3D textures (essentially 2D layers with interpolation, 3rd dimension is often space or time)
  • authoring/import/export of array textures (array of independent same-sized 2D textures)
  • better texture compression
    • mobile compression formats:
      • ETC2 (not sure if suitable open implementations are available)
    • desktop compression formats:
      • BC4/5 (aka , 1- and 2-channel images, using the alpha encoding from BC3)
      • BC7 (aka BPTC, much better quality RGB compression, suggested bc7enc16.c (MIT))

Could have

  • mobile compression formats:
    • PVRTC2 (PoverVR-specific so less common, implementations ???)
    • ASTC (best compression ratio, legal and technical accessibility ???)
  • desktop compression formats:
    • BC6h (HDR! half-float format)
  • cubemap filtering (for image-based shading, see github.com/dariomanesku/cmft)
  • conversion between environment map representations (see image in cmft readme)

Stretch goals

dkazakov created this task.Mar 2 2020, 8:08 AM