<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic glCopyImageSubData incorrectly rejects source dimensions smaller than compressed format block size in Graphics</title>
    <link>https://community.intel.com/t5/Graphics/glCopyImageSubData-incorrectly-rejects-source-dimensions-smaller/m-p/1186130#M87885</link>
    <description>&lt;P&gt;System Setup Information:&lt;BR /&gt;-----------------------------------------&lt;/P&gt;&lt;P&gt;System Used: ASUS Zenbook UX305CA&lt;BR /&gt;CPU SKU: Intel Core m3-6Y30&lt;BR /&gt;GPU SKU: Intel HD Graphics 515&lt;BR /&gt;Processor Line:&lt;BR /&gt;System BIOS Version: UX305CA.201&lt;BR /&gt;CMOS settings:&lt;BR /&gt;Graphics Driver Version: 26.20.100.7262, 27.20.100.8280&lt;BR /&gt;GOP/VBIOS Version:&lt;BR /&gt;Operating System: Windows 10 Home 64-bit&lt;BR /&gt;OS Version: 1903 (OS Build 18362.900)&lt;BR /&gt;API: OpenGL&lt;BR /&gt;Occurs on non-Intel GPUs?:&amp;nbsp;No&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Steps to Reproduce:&lt;BR /&gt;-------------------------------&lt;BR /&gt;1. Create two textures using GL_COMPRESSED_RGB_S3TC_DXT1_EXT with full mip chain&lt;BR /&gt;2. Call glCopyImageSubData for each mip level, using max(1, width &amp;gt;&amp;gt; level) for srcWidth parameter (same for&amp;nbsp;height/depth)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Expected Results:&lt;BR /&gt;-------------------------------&lt;/P&gt;&lt;P&gt;glCopyImageSubData succeeds for all mip levels.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Actual Results:&lt;BR /&gt;-------------------------------&lt;/P&gt;&lt;P&gt;glCopyImageSubData fails when max(1, width &amp;gt;&amp;gt; level) is less than 4 (block size) with the following debug message:&lt;/P&gt;&lt;P&gt;"Error has been generated. GL error GL_INVALID_VALUE in CopyImageSubData: (ID:1655108141) Generic error"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Additional Information:&lt;BR /&gt;-------------------------------&lt;/P&gt;&lt;P&gt;NVIDIA drivers generate an error if the dimensions exceed the image dimensions at that level, i.e. if srcWidth &amp;gt; min(1, (width &amp;gt;&amp;gt; level)):&lt;/P&gt;&lt;P&gt;"GL_INVALID_VALUE error generated. The x values exceeds the boundaries of the corresponding image object."&lt;/P&gt;&lt;P&gt;In other words, an implementation that works on NVIDIA does not work on Intel and vice versa. glCompressedTexSubImage2D takes width/height arguments similar to glCopySubImageData, however both Intel and NVIDIA expect dimensions that match the image level, regardless of the block size, which makes me suspect that Intel is non-conforming in their implementation of glCopySubImageData. This post on Reddit discusses some ambiguities in the function specification:&amp;nbsp;https://www.reddit.com/r/opengl/comments/gyie7h/glcopyimagesubdata_behavior_differences_on_intel/&lt;/P&gt;&lt;P&gt;Would be great if the debug messages could be improved as well, the message from the Intel driver in this case provides no more information than glGetError would which is a shame.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Wed, 10 Jun 2020 23:07:52 GMT</pubDate>
    <dc:creator>Carter</dc:creator>
    <dc:date>2020-06-10T23:07:52Z</dc:date>
    <item>
      <title>glCopyImageSubData incorrectly rejects source dimensions smaller than compressed format block size</title>
      <link>https://community.intel.com/t5/Graphics/glCopyImageSubData-incorrectly-rejects-source-dimensions-smaller/m-p/1186130#M87885</link>
      <description>&lt;P&gt;System Setup Information:&lt;BR /&gt;-----------------------------------------&lt;/P&gt;&lt;P&gt;System Used: ASUS Zenbook UX305CA&lt;BR /&gt;CPU SKU: Intel Core m3-6Y30&lt;BR /&gt;GPU SKU: Intel HD Graphics 515&lt;BR /&gt;Processor Line:&lt;BR /&gt;System BIOS Version: UX305CA.201&lt;BR /&gt;CMOS settings:&lt;BR /&gt;Graphics Driver Version: 26.20.100.7262, 27.20.100.8280&lt;BR /&gt;GOP/VBIOS Version:&lt;BR /&gt;Operating System: Windows 10 Home 64-bit&lt;BR /&gt;OS Version: 1903 (OS Build 18362.900)&lt;BR /&gt;API: OpenGL&lt;BR /&gt;Occurs on non-Intel GPUs?:&amp;nbsp;No&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Steps to Reproduce:&lt;BR /&gt;-------------------------------&lt;BR /&gt;1. Create two textures using GL_COMPRESSED_RGB_S3TC_DXT1_EXT with full mip chain&lt;BR /&gt;2. Call glCopyImageSubData for each mip level, using max(1, width &amp;gt;&amp;gt; level) for srcWidth parameter (same for&amp;nbsp;height/depth)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Expected Results:&lt;BR /&gt;-------------------------------&lt;/P&gt;&lt;P&gt;glCopyImageSubData succeeds for all mip levels.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Actual Results:&lt;BR /&gt;-------------------------------&lt;/P&gt;&lt;P&gt;glCopyImageSubData fails when max(1, width &amp;gt;&amp;gt; level) is less than 4 (block size) with the following debug message:&lt;/P&gt;&lt;P&gt;"Error has been generated. GL error GL_INVALID_VALUE in CopyImageSubData: (ID:1655108141) Generic error"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Additional Information:&lt;BR /&gt;-------------------------------&lt;/P&gt;&lt;P&gt;NVIDIA drivers generate an error if the dimensions exceed the image dimensions at that level, i.e. if srcWidth &amp;gt; min(1, (width &amp;gt;&amp;gt; level)):&lt;/P&gt;&lt;P&gt;"GL_INVALID_VALUE error generated. The x values exceeds the boundaries of the corresponding image object."&lt;/P&gt;&lt;P&gt;In other words, an implementation that works on NVIDIA does not work on Intel and vice versa. glCompressedTexSubImage2D takes width/height arguments similar to glCopySubImageData, however both Intel and NVIDIA expect dimensions that match the image level, regardless of the block size, which makes me suspect that Intel is non-conforming in their implementation of glCopySubImageData. This post on Reddit discusses some ambiguities in the function specification:&amp;nbsp;https://www.reddit.com/r/opengl/comments/gyie7h/glcopyimagesubdata_behavior_differences_on_intel/&lt;/P&gt;&lt;P&gt;Would be great if the debug messages could be improved as well, the message from the Intel driver in this case provides no more information than glGetError would which is a shame.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 10 Jun 2020 23:07:52 GMT</pubDate>
      <guid>https://community.intel.com/t5/Graphics/glCopyImageSubData-incorrectly-rejects-source-dimensions-smaller/m-p/1186130#M87885</guid>
      <dc:creator>Carter</dc:creator>
      <dc:date>2020-06-10T23:07:52Z</dc:date>
    </item>
  </channel>
</rss>

