-
Notifications
You must be signed in to change notification settings - Fork 37
Roadmap
These are the improvemnts being considered.
- PVR support. There is a seperate page for this.
- Compression of BC and ASTC formats so ktx, ktx2, astc, pvr, and dds files can be written, not just read.
- Fast rotation using 3-shear method.
- Create a generic superclass for storing images.
- Support an internal floating-point representation R32fG32fB32fA32f in addition to R8G8B8A8 for HDR operations.
- Support texture arrays, faces (including cubemaps), mipmaps, and 3D textures in a consistent way.
Regarding the super-class image task, it should be part of Tacent rather than the viewer-proper. Let's call is tUberImage for now. tUberImage should know how to load, save, and cache itself. It should not have bindings to any particular rendering API (Vulcan, OpenGL, etc). It should not have pixel manipulation functions other than allowing R/W access to the pixels. The image manipulation functions should be implemented in another Tacent sub-class, perhaps tManipImage. The final layer that has specific functionality the viewer needs (namely binding to graphics APIs etc), belongs in Tacent View itself... perhaps called tViewerImage. tViewerImage would subclass tManipImage.
To support texture arrays, slices etc, the following structure could be used for the pixels.
for each MIP-Map Level in MIP-Map Count
for each Surface in Num. Surfaces
for each Face in Num. Faces
for each Slice in Depth
for each Row in Height
for each Column in Width
PixelData (Size depends on 32 or 128 pxel format)
These are completed.
- Copy/paste images from clipboard.
- Command-line operations for image processing so TacentView can be integrated into build pipelines.
- Extract single or all frames from any multi-frame image.
Tacent View is a fast immediate-mode GUI texture and image viewer.