Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DDS Format Support #1169

Open
karai17 opened this issue Jan 5, 2016 · 7 comments
Open

DDS Format Support #1169

karai17 opened this issue Jan 5, 2016 · 7 comments
Labels
feature It's a feature, not a bug.

Comments

@karai17
Copy link

karai17 commented Jan 5, 2016

It would be really awesome if Tiled could support GPU-direct formats such as DDS which allow compressed textures to be sent directly to the GPU instead of expanding them out to raw bitmap data, eating up lots of RAM and VRAM.

https://en.wikipedia.org/wiki/DirectDraw_Surface

@bjorn
Copy link
Member

bjorn commented Jan 5, 2016

I have a gist where I experimented with loading a DDS file, but it requires an OpenGL context and it won't support all formats:

https://gist.github.com/bjorn/4635382

Maybe this kind of thing will be easier when Tiled is based on QtQuick...

@bjorn bjorn added the feature It's a feature, not a bug. label Jan 5, 2016
@bjorn
Copy link
Member

bjorn commented Aug 19, 2016

I noticed Qt ships with a DDS image plugin, so this will be a matter of simply shipping that DLL. I don't know what formats it all supports, but it worked for the DDS files available here.

While I'm at it I could also add the TGA image plugin.

@bjorn bjorn closed this as completed in b65a529 Aug 19, 2016
@bjorn
Copy link
Member

bjorn commented Jun 12, 2017

Issue reopened because as of Qt 5.8, the DDS image plugin is not built by default due to lack of maintenance. This means there is no DDS support as of Tiled 1.0.

@bjorn bjorn reopened this Jun 12, 2017
@coz-eduardo-hernandez
Copy link

I know it's been a while, but even in 2022, DDS support would be great. My DDS files take 1/4 of my PNG files in VRAM, and also load about twice as fast, though they are 10 times larger on my hard drive, but even with DDS I'm having to juggle VRAM before those two concerns.

@bjorn
Copy link
Member

bjorn commented Nov 4, 2022

@coz-eduardo-hernandez Unfortunately the issue is still that the Qt DDS image plugin is unmaintained and disabled in the qtimageformats repository. Since using DDS is only relevant for your game and not for Tiled, I would suggest you store your textures as both PNG and DDS, referring to the PNG files in your Tiled tileset files, but modifying your game to load the DDS files instead.

@coz-eduardo-hernandez
Copy link

I think a lot of people would benefit, not just me, but it really depend on the amount and size of images they are using in their game.

That being said, for the time being I'm just gonna create a script or something that replaces .png extensions with .dds extensions in the map file, so, I know how to work around it. However I don't think the Qt route is the best approach.

@karai17
Copy link
Author

karai17 commented Nov 4, 2022 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature It's a feature, not a bug.
Projects
None yet
Development

No branches or pull requests

3 participants