Skip to content

matyalatte/Texconv-Custom-DLL

Repository files navigation

Texconv-Custom-DLL v0.6.0

Cross-platform implementation for Texconv and Texassemble. 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.

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 built binaries from the release page.
Each zip file has a DLL and executables. The executables don't refer the DLL.

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

Note

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

Building

Wrapper script

We provide a CMake wrapper ./build.cmd to build texconv with a single command. See the following pages for the details.

Docker

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

CMake

Of course, you can run CMake commands yourself. See CMake-Options.md for available options.

Licenses

The original source code of this repository is licensed under the MIT License (see LICENSE).

This project includes third-party software, which is licensed under its own respective licenses. When redistributing binaries, you must retain THIRD_PARTY_LICENSES.txt to comply with those licenses.

See THIRD_PARTY_LICENSES.txt for full license texts and copyright notices.

Third-party components

Project License Included in Purpose
DirectXTex MIT All platforms
DirectX-Headers MIT All platforms
DirectXMath MIT All platforms
safestringlib MIT Linux / macOS
libjpeg-turbo zlib/libpng, IJG Linux / macOS JPEG support
libpng zlib/libpng Linux / macOS PNG support
zlib zlib/libpng Linux PNG support
OpenEXR BSD-3 All platforms EXR support
Imath BSD-3 All platforms EXR support
libdeflate MIT All platforms EXR support
OpenJPH BSD-2 All platforms EXR support

About

Cross-platform implementation for Texconv and Texassemble.

Topics

Resources

License

Stars

Watchers

Forks

Contributors