one more dumb question what in the drop down list is standard dtx5?
tried bc3 did not work in quake 4
Hi @y2keeth! I looked around a bit (thank you to the Dhewm3 Mod Wiki), and I think Quake 4 mainly uses two formats: BC3 RGBA (aka DXT5) for textures with a smooth alpha channel:
and BC1a RGBA (aka DXT1) for textures with either no alpha or with a binary alpha channel (i.e. every pixel is either fully opaque or fully transparent):
It looks like it can also load BC3 RXGB, but this is trickier - RXGB can’t be used for general images, since idTech 4 zeros out the alpha channel after swapping it with the red channel (https://github.com/TTimo/doom3.gpl/blob/master/neo/renderer/Image_load.cpp#L656), and I think the image needs to be specially tagged elsewhere as an normal map (there’s a reference to TD_BUMP
in the textureDepth_t
type that I think is set outside of the DDS file – this is where my generalist knowledge ends, unfortunately).
One really useful thing is that the standalone version of the Texture Tools Exporter can tell you a bit about how an image was compressed! If you load an image in the standalone version and then open the “Input Information” pane, you’ll see information like this – showing that this is a BC1 (DXT1) file:
So, you could read an image, see how it was compressed in the base game, and then save a modified version of that image using the same compression format.
Hope this helps!
–Neil
ok thanks will try and check that out
BC3 RXGB is what i wanted to use but the alphas don’t work
also tried bc3 but not loading at all probably something i am doing wrong
q4 dds texture with alpha came up this
DDS file, no DXT10 extension.
Extent: 128 x 256 x 1 px
DXGI format: BC3_UNORM_SRGB (78)
Mips: 9
Array elements: 1
Cubemap: false
Alpha mode: Straight
so how do i mimic this in the plugin?
Ah, that’s regular BC3 RGBA! Choosing the BC3 RGBA 8 bpp | DXT5: interpolated alpha
format and leaving all the other settings at their defaults should work.
Here’s a line-by-line breakdown of what this means:
DDS file, no DXT10 extension.
DirectX 10 DDS files can have a 16-byte header extension. This means that “DDS: Use DXT10 Header” should be unchecked (this option only appears for formats that can be stored in both the old-style and new-style DDS formats
Extent: 128 x 256 x 1 px
The size of the image.
DXGI format: BC3_UNORM_SRGB (78)
This is the DXGI format of the DDS file, as the Exporter interpreted it. DXT5 reads as “BC3_UNORM_SRGB” - i.e. it’s compressed using BC3; the values are 0, 1/255, 2/255, …, 254/255, 255/255; and each pixel stores an sRGB-encoded color.
RXGB textures would read as BC3_UNORM (without _SRGB, to indicate there’s no color space), but this isn’t very clear and could be better.
Mips: 9
There are 9 mips: mip 0, 1, 2, 3, 4, 5, 6, 7, and 8. That’s a full mip chain, because 2^8 = 256, which is the largest extent of the image.
Array elements: 1
This means it isn’t an array texture. (DDS files can store multiple images, kind of like an animation, in the same file).
Cubemap: false
This DDS file is not a cubemap.
Alpha mode: Straight
This file was saved using “straight” alpha - i.e. (r, g, b, a), instead of “premultiplied” alpha, (ra, ga, b*a, a). This means that “Export Premultiplied Alpha” should be unchecked.
Hope this helps,
–Neil
“This is the DXGI format of the DDS file, as the Exporter interpreted it. DXT5 reads as “BC3_UNORM_SRGB” - i.e. it’s compressed using BC3; the values are 0, 1/255, 2/255, …, 254/255, 255/255; and each pixel stores an sRGB-encoded color.”
does this mean i have to change the color settings?
Hi @y2keeth! No; I believe Quake 4’s color textures are also sRGB (or rather, they don’t have a color space, but if they were, they would be sRGB). So, the default settings should work OK. If Quake’s giving any specific error messages, I might be able to help out.
ok i’ll try it out here soon thanks
just did the decals with bc3 and i get this they are not loading white boxes on the left
more info on new dds
DDS file, no DXT10 extension.
Extent: 512 x 1024 x 1 px
DXGI format: BC3_UNORM_SRGB (78)
Mips: 11
Array elements: 1
Cubemap: false
Alpha mode: Straight
Written by the NVIDIA Texture Tools Exporter 2023.1.1+.
dds diff.7z (174.2 KB)
same texture one stock, one mine nivdia not working in game
Nvidia rxgb not working either
Hi y2keeth! I think the issue is that the source texture here is regular BC3, not BC3 RXGB. So, you’ll want to save it using BC3 RGBA instead of BC3n AGBR:
Here’s some files I’ve recompressed using the correct format. Do these work for you?
fixed_drophose.7z (106.6 KB)
I also personally bought a copy of Quake 4 to test against, but I couldn’t find offhand where drophose_d appears – do you happen to have instructions for where (which map, and where in the map) I should look? I managed to modify the graphics in the main menu without much issue - those were also BC3 RGBA (not RXGB).
Thanks,
–Neil
I was just using drophose as a example , dont know where it is seen it once i think. i just used it because it has alpha
it was done just bc3, not rxgb so what’s wrong with my bc3
have you tried rxgb on anything?
thats great you bought it, I was going to offer to buy it for you for your help
just did a test looks like the nvidia rxgb also is working on world textures but not models
guess I could use bc3 if i can figure out what i am doing wrong for models
just tried bc3 with these settings on decals
got this again
need to figure out what decals these are
textures/decals/wallbullets3 is one of those decals
decals.7z (226.4 KB)
I found out drop hose is somewhere on the first level
hello?
Hi @y2keeth !
If you can believe it, it looks like wallbullets3.dds and wallbullets3_add.dds are BC1! That might be why BC3 doesn’t work for their replacements.
For drophose, could you point me to where in the first level it is (to save some time)?
Thanks,
–Neil