0
\$\begingroup\$

Is there a 'standard' for OpenGL game creation intended for both Windows and Linux? I understand DDS is the DirectX standard (or, at least, it appears to be). Is there one that does not have potential patent/license issue or does it really not matter?

I am asking as I would like to avoid focusing on DDS as the format to use, only to have that kick me in the teeth later when some license/patent/??? issue requires me to remove and replace DDS with [texture format here]. This is not about what is better or an opinion post, but what is (relatively) safe from the constraints mentioned earlier?

\$\endgroup\$
9
  • 2
    \$\begingroup\$ Usually you'll target your texture format in your built game to the types that your target rendering hardware supports (eg. The various S3TC modes and BPTC modes, for which DDS is just a container). So, do you have a minimum hardware spec you're targeting? \$\endgroup\$
    – DMGregory
    Sep 19, 2018 at 16:02
  • 2
    \$\begingroup\$ As I reflect on this, it might be useful to clarify whether you're referring to the file format or the texture data format. In many cases they're equivalent (ie. a .png image file will have the layout and headers of a Portable Network Graphics file format and contain image data in the PNG predicted & compressed pixel format). But for GPU formats used in games these can differ: we may use different texture data formats depending on the texture's needs and GPU support, but put them all into a standard file format, or even pack them straight into combined "asset blobs" instead of their own file \$\endgroup\$
    – DMGregory
    Sep 19, 2018 at 16:18
  • 1
    \$\begingroup\$ The patent on S3 compression expired earlier this year; there are no other licensing or patent issues you need concern yourself with regarding the DDS format. \$\endgroup\$ Sep 19, 2018 at 19:51
  • 2
    \$\begingroup\$ @JackAidley that looks like it could be fleshed out into an answer. \$\endgroup\$
    – DMGregory
    Sep 19, 2018 at 21:42
  • 1
    \$\begingroup\$ Sometimes the title isn't the best guide. Here, we might be able to edit the title to ask "Can I use DDS files in my OpenGL game?" With the body asking "...or is there a standard alternative?" Does that accurately represent what you needed answered, @BeauB.? \$\endgroup\$
    – DMGregory
    Sep 20, 2018 at 9:09

1 Answer 1

1
\$\begingroup\$

There is no disk texture format that is standard for OpenGL, but the DDS data format is relatively easy to read in and use in OpenGL since DDS is essentially a wrapper for compressed textures and the compression format used is supported by OpenGL. Thus you may find DDS suitable for cross-platform development.

The only patent related issue with DDS was with the S3 compression technology used, however the patent on that expired earlier this year so there is no possibility of further problems.

\$\endgroup\$
2
  • \$\begingroup\$ If I understand correctly, the patents on the compression tech needed to be licensed by software/hardware that implemented the decompressor (ie. the graphics cards / drivers that wanted to support displaying textures in that format), not for simply storing texture data in that format. So even while the patent was active I don't think game makers needed to licence the patent for each game. But I am not a lawyer or patent expert so I may have misunderstood. \$\endgroup\$
    – DMGregory
    Sep 20, 2018 at 9:52
  • \$\begingroup\$ @DMGregory: I am also not a lawyer but my understanding is that there can be an issue if you either statically link a library or include it with your distribution. \$\endgroup\$ Sep 20, 2018 at 11:21

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .