View Issue Details

IDProjectCategoryView StatusLast Update
0005275DarkRadiantShader Systempublic21.07.2020 19:43
Reporterorbweaver Assigned Toorbweaver  
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
Product Version2.8.1 
Target Version2.8.1Fixed in Version2.8.1 
Summary0005275: DarkRadiant will not show DDS textures that are stored uncompressed (non-DXT)
DescriptionThe DDS format supports uncompressed images in ARGB8888 format. Although the DDS library supports and recognises this format, we have no handling of uncompressed images in the DDSImage class (which assumes every image can be sent directly to the GPU with glCompressedTexImage2D), resulting in such images appearing as Shader Not Found.

Examples of such uncompressed DDS textures can be found in the attached vertexcolors_break_shading test map.
TagsNo tags attached.

Activities

orbweaver

orbweaver

23.06.2020 19:51

developer  

orbweaver

orbweaver

15.07.2020 20:01

developer   ~0012655

Further research indicates that DDS supports a wide variety of uncompressed formats including RGB8 and RGBA8, and the problematic texture in vertexcolors_break_shading_2 is actually RGB8 (24 bits per pixel).
orbweaver

orbweaver

21.07.2020 19:43

developer   ~0012667

Support for uncompressed 8 bit RGB and RGBA DDS files implemented in f1ad0314a0a33c7d588ae6d23e2c410e4c20a6ae.

I'm not going to bother with the more obscure formats (A8, L8 etc) until/unless someone complains about it; using uncompressed DDS is rare enough as it is.

Issue History

Date Modified Username Field Change
23.06.2020 19:51 orbweaver New Issue
23.06.2020 19:51 orbweaver Status new => assigned
23.06.2020 19:51 orbweaver Assigned To => orbweaver
23.06.2020 19:51 orbweaver File Added: vertexcolors_break_shading_2.zip
15.07.2020 20:01 orbweaver Note Added: 0012655
21.07.2020 19:43 orbweaver Status assigned => resolved
21.07.2020 19:43 orbweaver Resolution open => fixed
21.07.2020 19:43 orbweaver Fixed in Version => 2.8.1
21.07.2020 19:43 orbweaver Note Added: 0012667