Skip to content

Apple Silicon support for texture compression#284

Open
rromanchuk wants to merge 2 commits intooscarpilote:masterfrom
rromanchuk:apple-silicon
Open

Apple Silicon support for texture compression#284
rromanchuk wants to merge 2 commits intooscarpilote:masterfrom
rromanchuk:apple-silicon

Conversation

@rromanchuk
Copy link
Contributor

Remove dependency because:

  • It has been end of life for a long time
  • Including an intel build on modern day Darwin, or requiring dynamic translation, doesn't make sense in this context

Usage:

magick -define dds:compression=dxt3 in.jpg out.dds

Flags:

DDS RW Microsoft Direct Draw Surface Use -define to specify the compression (e.g. -define dds:compression={dxt1, dxt5, none}). Other defines include dds:cluster-fit={true,false}, dds:weight-by-alpha={true,false}, dds:fast-mipmaps={true,false}, and use dds:mipmaps to set the number of mipmaps (use fromlist to use the image list).

@shred86
Copy link

shred86 commented Oct 12, 2025

Curious about pulling this PR into my forked version of Ortho4XP. Does anyone happen to know why nvcompress is used instead of DDSTool? I suspect there was a reason since it's been around since 2019.

@d41k4n
Copy link
Collaborator

d41k4n commented Oct 12, 2025

Curious about pulling this PR into my forked version of Ortho4XP. Does anyone happen to know why nvcompress is used instead of DDSTool? I suspect there was a reason since it's been around since 2019.

Maybe because it used to be faster back in the days (due to CUDA support) and accepts JPG as an input format? But that's just a guess.

@shred86
Copy link

shred86 commented Oct 12, 2025

Curious about pulling this PR into my forked version of Ortho4XP. Does anyone happen to know why nvcompress is used instead of DDSTool? I suspect there was a reason since it's been around since 2019.

Maybe because it used to be faster back in the days (due to CUDA support) and accepts JPG as an input format? But that's just a guess.

Ah, good point - looking at the readme for DDSTool, I see a note with the latest version 1.4 from 5/07/24 mentioning it can accept any format (png, tif, jpg, bmp). I wonder if prior to that it didn't accept jpg which would make sense.

As for CUDA support, also makes sense. However, someone just made a PR in my forked version to add a newer version of nvcompress for CUDA support so I'm wondering if it's broken in this older version.

Anyways, I think I may just switch to DDSTool for macOS since CUDA support is not applicable and use the newer version of nvcompress for Windows. I need to figure out if there's a way to get an updated version of nvcompress for Linux users to take advantage of CUDA.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants