mayingzhen / nvidia-texture-tools

Automatically exported from code.google.com/p/nvidia-texture-tools
Other
0 stars 0 forks source link

BC6H and BC7 support #122

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
These provide improved quality and floating point support.  It would be a
great addition.

Original issue reported on code.google.com by Drawk...@gmail.com on 25 Mar 2010 at 5:21

GoogleCodeExporter commented 8 years ago
Writing a BC6H-BC7 compressor from scratch is a lot of work. I'm hoping that 
NVIDIA
will release their internal compressor at which point I'll integrate it into 
NVTT.

Original comment by cast...@gmail.com on 25 Mar 2010 at 7:51

GoogleCodeExporter commented 8 years ago
By internal compressor, do you mean the driver's real-time compression that runs
when, say glTexImage2D is used to create a texture of the new formats (ref.
GL_ARB_texture_compression_bptc)?  I thought driver texture compression in 
general is
optimized for speed, not PSNR, so it's not the best choice for offline 
applications
where quality is concerned.
In the DX11 SDK there's a BC6HBC7EncoderDecoder11 tool which uses HLSL compute
shaders to do GPU compression; perhaps that could be used.

Original comment by Drawk...@gmail.com on 25 Mar 2010 at 10:49

GoogleCodeExporter commented 8 years ago
No, I just mean the compressor that was developed internally during the design
process of the format.

I haven't looked at the SDK compressor closely, but I'm under the impression 
that
it's not very high quality.

I'll do a comparison as soon as I have the opportunity.

Original comment by cast...@gmail.com on 25 Mar 2010 at 11:06

GoogleCodeExporter commented 8 years ago
I've added the NVIDIA compressors to the trunk branch already and have started 
integrating 
them. I expect them to be functional in a couple of weeks or so.

For your reference, you can also download the original code from:

http://code.google.com/p/nvidia-texture-tools/downloads/detail?name=bc6h_export.
zip
http://code.google.com/p/nvidia-texture-tools/downloads/detail?name=bc7_export.z
ip

Original comment by cast...@gmail.com on 1 Jun 2010 at 6:00

GoogleCodeExporter commented 8 years ago
Do you know if there's any work done on a CUDA implementation of the BC7/BC6H ?

Original comment by renam...@gmail.com on 18 Aug 2010 at 2:41

GoogleCodeExporter commented 8 years ago
Not as far as I know, but Microsoft has an implementation using DX11 Compute in 
their SDK. I don't know what quality it provides, though.

Original comment by cast...@gmail.com on 18 Aug 2010 at 2:51

GoogleCodeExporter commented 8 years ago
There's now a GPU compressor (CUDA & OpenCL) at:

https://github.com/volition-inc/bc7_gpu

Original comment by cast...@gmail.com on 27 Sep 2012 at 5:51

GoogleCodeExporter commented 8 years ago
And another CPU BC7 compressor is available here:

http://software.intel.com/en-us/vcsource/samples/fast-texture-compression

Original comment by cast...@gmail.com on 27 Sep 2012 at 6:45

GoogleCodeExporter commented 8 years ago
bc7_gpu is way better than the MS provided GPU encoder; as a matter of fact, 
the MS encoder produces a lot of undesirable artifacts especially for the alpha 
channel of BC7 textures.
I haven't found a decent bc6h compressor yet; the one provided in DiretxTex is 
slow as hell!

Original comment by abezr...@gmail.com on 3 Jan 2013 at 1:20

GoogleCodeExporter commented 8 years ago
From the same authors of the previous one:

http://gamma.cs.unc.edu/FasTC/

Not as high quality as the nvidia provided encoder, but much faster.

Original comment by cast...@gmail.com on 5 Jan 2013 at 11:07

GoogleCodeExporter commented 8 years ago
Ignacio, is there any chance to have an official release of nvtt with BC7 
support? I see that some code is present since 2010.

I tried bc7_gpu yesterday and the quality BC7 reaches is astounding.
Unreal is using nvtt for its image compression so I think they wont include BC7 
support until there is a release of the tool that officially supports it.

That would be great!

Original comment by Jerome.B...@gmail.com on 23 Aug 2013 at 8:41