Currently the formats seem to be directly tied to the DXGI_FORMAT enum from dxgi.h. Is this a conscious design decision or will it change? Ideally, I am planning to use this library for texture loading for both DirectX and Vulkan, and so a more platform agnostic system would be more useful, as well as allowing support for formats that aren't supported by DXGI_FORMAT (such as double precision pixels)