ImageViewer icon indicating copy to clipboard operation
ImageViewer copied to clipboard

Port to macOS or Linux

Open MarkCallow opened this issue 4 years ago • 1 comments

Is your feature request related to a problem? Please describe. I need a tool for viewing & editing .ktx2 textures including comparing images compressed with varying compression parameters. I need it to run on macOS.

Describe the solution you'd like I'd like ImageViewer ported to macOS and Linux.

Describe alternatives you've considered Add ktc2 support to Compressonator but I've been reliably informed the code base is not of sufficient quality for basing a professional product on it.

Additional context Do you any plan to or interest in porting ImageViewer?

MarkCallow avatar Apr 22 '20 23:04 MarkCallow

I have considered writing a platform independent version in the past but the codebase is mostly C# and relies heavily on .Net feature which are not platform independent as far as I know. Rewriting it in C++ would be nice for several reasons but:

  • The GUI was written in WPF and I haven't found any good platform independent libraries that provides similar ease of use and features. I know of Qt, but its not quite the same.
  • The project uses DirectX right now. Older Versions were using OpenGL but I would avoid using OpenGL again for several reasons: First of all, the shader compiler works different on each GPU which resulted in Code compiling on my Machine but not working on others. Working with computational intesive shaders is also easier in DirectX since the TDR can simply be disabled (starting with DirectX 11.1). I also prefer the HLSL syntax over GLSL. Finally, OpenGL support is deprecated on macOS anyways if I remeber correctly? So rewriting it in Vulkan would be the only option I guess, but its also a pain (but possible).
  • I don't have much experience in writing platform independent code
  • Right now im starting with my master thesis, so I don't have that much time.

So basically, if someone would set up a platform independent project, write the GUI and does most of the Vulkan stuff I would gladly help to port the existing underlying framework. But its not something I would do on my own.

kopaka1822 avatar Apr 23 '20 10:04 kopaka1822