-
Notifications
You must be signed in to change notification settings - Fork 426
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
question RXGB dtx5 support? #358
Comments
never mind just read no other formats are supported |
if I understand correctly, you'd like built-in support in Essentially it's just the BC3 compression scheme with the channels swizzled a bit. |
Quick follow-up: Why not just use BC5 which is supported by all Direct3D Hardware Feature Level 10.0 or better hardware? |
I know bc3 will work for quake4 not sure about bc5, id tech 4 games support RXGB dtx5 not sure about the nm version |
DXT5nm/RXGB would this work for diffuse maps also? |
"The RXGB formal on the other hand, is a DXT5 image with x in the alpha channel, the red channel empty, and the original green and blue channels left in tact. This improves the compression quality for the x component and doesn't require any reconstruction." |
tried bc 5 didnt work |
What do you mean by "didn't work"? I'm guessing the shader in question is not reconstructing the third channel? |
bc5 would not load in quake 4 probably to old a engine, bc3 work thats about it except rxgb dtx5 |
It appears from some old toolsets that this is specific to Doom 3 and requires a special FourCC value 'R', 'X', 'G', 'B'. I could consider it for legacy loading, but I don't think it makes sense to implement it for writing as such specifically for this engine. Writing it as FourCC 'D', 'X', 'T', '5' with swizzling is simple to implement, so I can add those to the tool. |
I've added support for both reading and writing RXGB, but by default it will write RXGB as 'DXT5' legacy format for general usage when using This also adds support for |
great thanks a lot |
another question this gui for Texconv |
"q: Uses minimal compression"- will this work with rxgb? |
The options If you need a 'real-time' solution for BC3 compression, you should look at this sample which has a SIMD implementation of a Fast Block Compress scheme. |
trying to get the best quality rxgb possible without getting to uncompressed size |
thought minimal compression might have been a way to do that bummer it only works on bc7 |
should add minimal compression for everything, and probably max |
I guess "minimal compression" for BC1-BC5 could be a form of Fast Block Compress, although the sample only has SSE/SSE2 intrinsics implementations and not ARM intrinsics, so that's a bit of work that would need done. Also, the quality of this is really poor, so it doesn't really make a lot of sense to do it for an offline compression tool. I had this idea in it's own issue and decided it made more sense as a sample than a library feature. #18
For "maximal compression" for BC1-BC5, this would require some new algorithm implementation. DirectXTex uses the original D3DX9 compression algorithm. There were some experiments with using alternative algorithms, but none of them did much to improve quality.
The BC1-BC3 improvement I am consideration adding here is the 'optimal solid color block' algorithm used in libsquish and NVTT. See #223. This doesn't apply to BC4/BC5 since those don't use color encoding at all, just alpha. |
ok just thought it was a good suggestion, guess not |
if so what settings are for that format ?
The text was updated successfully, but these errors were encountered: