matyalatte / Texconv-Custom-DLL

Cross-platform implementation for Texconv and Texassemble.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Texconv-Custom-DLL v0.2.3

Cross-platform implementation for Texconv and Texassemble.
And you can use it as a DLL (or a shared library).

What's Texconv?

Texconv is a DDS converter developed by Microsoft.
It supports all dds formats.
There are some dds formats common tools can't handle properly, but Texconv can.
It's the best DDS converter as far as I know.

Removable features

You can remove many features from the original build to support unix systems and to reduce the file size.

  • WIC support (.bmp, .jpg, .png, etc.)
  • 3D textures support
  • Little-used dds formats support (B5G6R5, B5G5R5A1, etc.)
  • ppm support (.ppm and .pfm)
  • Print functions
  • Mutilple files processing
  • Many optional arguments

If you want to restore them, you need to use cmake options.

Extra features

You can add some features by cmake options.

  • Disable GPU codec (TEXCONV_NO_GPU_CODEC)
  • Enable to use texassemble as a DLL function (TEXCONV_USE_TEXASSEMBLE)
  • Enable to build texassemble as an executable (TEXCONV_USE_TEXASSEMBLE and TEXCONV_BUILD_AS_EXE)

Platform

The official texconv only supports Windows.
But the custom build supports the following platforms and compilers.

  • Windows 10 (or later) + MSVC
  • MacOS 10.15 (or later) + AppleClang
  • Linux + GCC 9.1 (or later)

Download

You can download the built binary from the release page.

  • TexconvCustomDLL*-Windows.zip is for Windows.
  • TexconvCustomDLL*-macOS.tar.bz2 is for macOS (10.15 or later).
  • TexconvCustomDLL*-Linux.tar.bz2 is for Linux with GLIBC 2.27+ and GLIBCXX 3.4.26+.

Each zip file has a DLL and executables.
You can copy whichever you want to use to your project.
(The execuatbles won't refer the DLL.)

The linux build only supports distributions using GLIBC.
Build the executable by yourself if you want to use it on unsupported distros.

Usage

See here if you want to know how to use texconv.
Usage

How to Build

Windows

There is a document for Windows users.
Building Workflow for Windows

It only supports Visual Studio 2022, but you can see the batch files to find a way to build it with your environment.

Ubuntu and Mac

There is a document for Mac and Ubuntu users.
Building Workflow for Ubuntu and MacOS
And you can see the shell scripts to understand the workflow.

Docker

Linux users can use docker files to build the binary.
See the files for the details.

License

Files in this repository (including all submodules) are licensed under MIT license.

About

Cross-platform implementation for Texconv and Texassemble.

License:MIT License


Languages

Language:C++ 96.4%Language:CMake 3.0%Language:Batchfile 0.3%Language:Shell 0.2%