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\$
  • 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 '18 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 '18 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\$ – Jack Aidley Sep 19 '18 at 19:51
  • 2
    \$\begingroup\$ @JackAidley that looks like it could be fleshed out into an answer. \$\endgroup\$ – DMGregory Sep 19 '18 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 '18 at 9:09
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\$
  • \$\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 '18 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\$ – Jack Aidley Sep 20 '18 at 11:21

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.