<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
    <title></title>
  </head>
  <body text="#000000" bgcolor="#ffffff">
    On 20.3.2011 1:40, Henri Verbeet wrote:
    <blockquote
      cite="mid:AANLkTinw1VLaPqd+viAR2yQKpHgPx9hDEiDckcV1nPX9@mail.gmail.com"
      type="cite">
      <pre wrap="">On 20 March 2011 00:42, Petr Sebor <a class="moz-txt-link-rfc2396E" href="mailto:petr@scssoft.com">&lt;petr@scssoft.com&gt;</a> wrote:
</pre>
      <blockquote type="cite">
        <pre wrap="">And this is not an undocumented hack. ARB_texture_compression explicitly
defines mechanisms to work with 'unknown' formats providing a safe
passthrough.
Thats what glCompressedTexImage actually is for.

</pre>
      </blockquote>
      <pre wrap="">Sure, the CompressedTexImage* calls are in principle agnostic to the
specific format. But without the s3tc extension there's nothing that
defines e.g. GL_COMPRESSED_RGBA_S3TC_DXT5_EXT. So you can't use those
tokens, unless you have another extension that defines them.
</pre>
    </blockquote>
    There is a slight difference between unknown and 'unknown'. You
    would enumerate the 'unknown'<br>
    formats first via <br>
    <br>
    glGetIntegerv(GL_NUM_COMPRESSED_TEXTURE_FORMATS, &amp;num_formats)<br>
    glGetIntegerv(GL_COMPRESSED_TEXTURE_FORMATS<span
      class="Apple-style-span" style="border-collapse: separate; color:
      rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal;
      font-variant: normal; font-weight: normal; letter-spacing: normal;
      line-height: normal; orphans: 2; text-indent: 0px; text-transform:
      none; white-space: normal; widows: 2; word-spacing: 0px;
      font-size: medium;"></span>, &amp;format_table)<br>
    <br>
    compare the values returned with the format values you have and if
    there is a match, you're done.<br>
    Sure it is convenient to know GL_COMPRESSED_RGBA_S3TC_DXT5_EXT is
    0x83f3.<br>
    <br>
    I don't want to pretend that S3TC extension doesn't exist. Of
    course, there is a negligible<br>
    overlap with the EXT_tc_s3tc extension specification in the sense
    that is is convenient to know<br>
    the value of the format tokens. I assume that by defining and using
    such tokens isn't illegal.<br>
    <br>
    To sum this up, ARB_tc offers a way to pass through precompressed
    data, yet the Mesa code<br>
    blocks anything S3TC related unless the compressing library is not
    present. I was asking for<br>
    relaxing this requirement, at least on hardware where we're sure to
    not enter the legal grounds<br>
    (apparently at least NV). So take it or leave it. The world isn't
    going to collapse if this opportunity<br>
    is ignored.<br>
    <br>
    Petr<br>
    <br>
    --<br>
    Petr Sebor / SCS Software [ <a class="moz-txt-link-freetext" href="http://www.scssoft.com">http://www.scssoft.com</a> ]<br>
    <br>
  </body>
</html>