Skip to content
squish texture compression - now concurrently (AMP & DirectCompute)
C++ Other
  1. C++ 99.7%
  2. Other 0.3%
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
extra - Fixed VS11 project files Feb 5, 2015
files alpha 2: Sep 20, 2012
squish.xcodeproj 2.0 alpha Jun 6, 2012
vs10 - Fixed VS11 project files Feb 5, 2015
vs11 - Fixed VS11 project files Feb 5, 2015
vs12 - Fixed VS11 project files Feb 5, 2015
vs7 Visual Studio project-file updates Sep 20, 2012
vs8 Visual Studio project-file updates Sep 20, 2012
vs9 Visual Studio project-file updates Sep 20, 2012
.gitattributes GIT setup Jun 6, 2012
.gitignore GIT setup Jun 6, 2012
ChangeLog alpha 2: Sep 20, 2012
Doxyfile 2.0 alpha Jun 6, 2012
Makefile alpha 2: Sep 20, 2012
OPTIONS alpha 2: Sep 20, 2012
README Update README Sep 20, 2012
alpha.cpp - Round end-points away from mid-point when using iterative alpha-fit Feb 5, 2015
alpha.h - added variable precision BTC3&4, fixed masking in bitone set Jul 28, 2013
alphanormalfit.cpp - Round end-points away from mid-point when using iterative alpha-fit Feb 5, 2015
alphanormalfit.h - support for SNORM codings, fixed codebook-multiplier May 23, 2013
bitoneblock.cpp - fixed signed BC4/BC5 paths Feb 10, 2014
bitoneblock.h - added CTX1-case to IO, fixed BC7 normal-fit Jun 11, 2013
bitoneclusterfit.cpp replaced frequencies by weights (huge quality difference), replaced c… Apr 13, 2013
bitoneclusterfit.h - optimizations, HQ BC5 compression for normal-maps, initial CTX1 code Mar 27, 2013
bitoneclusterfit.inl - optimizations, HQ BC5 compression for normal-maps, initial CTX1 code Mar 27, 2013
bitonefit.cpp - optimizations, HQ BC5 compression for normal-maps, initial CTX1 code Mar 27, 2013
bitonefit.h - optimizations, HQ BC5 compression for normal-maps, initial CTX1 code Mar 27, 2013
bitonenormalfit.cpp - added CTX1-case to IO, fixed BC7 normal-fit Jun 11, 2013
bitonenormalfit.h - inclusion of CTX1, refined normal-map algorithms Apr 10, 2013
bitonerangefit.cpp - fixed unsigned codebook generation, added linear perceptual metrics… May 26, 2013
bitonerangefit.h
bitoneset.cpp - fixed signed BC4/BC5 paths Feb 10, 2014
bitoneset.h replaced frequencies by weights (huge quality difference), replaced c… Apr 13, 2013
colourblock.cpp
colourblock.h - added signed format support for BC4/BC5, function names adjustment,… May 12, 2013
colourclusterfit.cpp - Settable error metrics Feb 5, 2015
colourclusterfit.h - Settable error metrics Feb 5, 2015
colourclusterfit.inl - Settable error metrics Feb 5, 2015
colourfit.cpp - minor bugfixes Dec 20, 2017
colourfit.h
colournormalfit.cpp - Settable error metrics Feb 5, 2015
colournormalfit.h - Settable error metrics Feb 5, 2015
colourrangefit.cpp - Settable error metrics Feb 5, 2015
colourrangefit.h
colourset.cpp - Settable error metrics Feb 5, 2015
colourset.h - added black alpha-less BC1, tuned metrics for maximum quality, fixe… Jun 6, 2013
coloursinglefit.cpp
coloursinglefit.h - Settable error metrics Feb 5, 2015
coloursinglefit_ccr_flat.cpp more coherent file-naming convention Nov 16, 2012
coloursinglefit_ccr_packed.cpp more coherent file-naming convention Nov 16, 2012
coloursinglefit_ccr_packed_copy.cpp
coloursinglefit_ccr_vector.cpp more coherent file-naming convention Nov 16, 2012
coloursinglelookup.inl more coherent file-naming convention Nov 16, 2012
coloursinglelookup_ccr.inl more coherent file-naming convention Nov 16, 2012
coloursinglelookup_ccr_flat.inl more coherent file-naming convention Nov 16, 2012
coloursinglelookup_ccr_packed.inl more coherent file-naming convention Nov 16, 2012
coloursinglelookup_ccr_vector.inl more coherent file-naming convention Nov 16, 2012
coloursinglesnap.cpp - Settable error metrics Feb 5, 2015
coloursinglesnap.h - Settable error metrics Feb 5, 2015
compressed_3dc_texture.txt little code fixes Oct 6, 2012
compressed_atc_texture.txt optimizations, normal-fit type, channel-fit type, power-method, bug-f… Sep 24, 2012
compressed_etc1_rgb8_texture.txt optimizations, normal-fit type, channel-fit type, power-method, bug-f… Sep 24, 2012
compressed_paletted_texture.txt optimizations, normal-fit type, channel-fit type, power-method, bug-f… Sep 24, 2012
config alpha 2: Sep 20, 2012
config.h - Settable error metrics Feb 5, 2015
degeneracy_ccr.inl 2.0 alpha Jun 6, 2012
hdrblock.cpp - added BC6 coder Nov 27, 2015
hdrblock.h - Settable error metrics Feb 5, 2015
hdrfit.cpp - added BC6 coder Nov 27, 2015
hdrfit.h
hdrindexfit.cpp - added BC6 coder Nov 27, 2015
hdrindexfit.h - added BC6 coder Nov 27, 2015
hdrrangefit.cpp - added BC6 coder Nov 27, 2015
hdrrangefit.h - added BC6 coder Nov 27, 2015
hdrset.cpp - added BC6 coder Nov 27, 2015
hdrset.h - added BC6 coder Nov 27, 2015
hdrsinglefit.cpp - added BC6 coder Nov 27, 2015
hdrsinglefit.h - added BC6 coder Nov 27, 2015
hdrsinglesnap.cpp - added BC6 coder Nov 27, 2015
hdrsinglesnap.h - added BC6 coder Nov 27, 2015
helpers.h - joined duplicated code, made normal-fit error-calculation configurable May 12, 2013
inlineables.cpp - Settable error metrics Feb 5, 2015
maths.cpp
maths.h - enabled BC6 compressor Nov 27, 2015
maths_packed.cpp adjusted preprocessor defines, fixed cluster-fit weights outside loop, Oct 9, 2012
maths_sse.h - Settable error metrics Feb 5, 2015
maths_std.h added reciprocal square root Oct 30, 2012
maths_vector.cpp adjusted preprocessor defines, fixed cluster-fit weights outside loop, Oct 9, 2012
paletteblock.cpp - Settable error metrics Feb 5, 2015
paletteblock.h - fixed unsigned codebook generation, added linear perceptual metrics… May 26, 2013
palettechannelfit.cpp - fixed unsigned codebook generation, added linear perceptual metrics… May 26, 2013
palettechannelfit.h made channel-fit utilizable for any single-channel Nov 17, 2012
paletteclusterfit.cpp fixed BC7b algorithm but still too slow Apr 15, 2013
paletteclusterfit.h
paletteclusterfit.inl - Settable error metrics Feb 5, 2015
palettefit.cpp - Settable error metrics Feb 5, 2015
palettefit.h
paletteindexfit.cpp - Settable error metrics Feb 5, 2015
paletteindexfit.h replaced frequencies by weights (huge quality difference), replaced c… Apr 13, 2013
palettenormalfit.cpp - fixed signed BC4 endpoints Feb 18, 2014
palettenormalfit.h - fixed unsigned codebook generation, added linear perceptual metrics… May 26, 2013
paletterangefit.cpp - Settable error metrics Feb 5, 2015
paletterangefit.h - added black alpha-less BC1, tuned metrics for maximum quality, fixe… Jun 6, 2013
paletteset.cpp - minor bugfixes Dec 20, 2017
paletteset.h - fixed unsigned codebook generation, added linear perceptual metrics… May 26, 2013
palettesinglefit.cpp - fixed signed BC4 endpoints Feb 18, 2014
palettesinglefit.h more coherent file-naming convention Nov 16, 2012
palettesinglelookup.inl more coherent file-naming convention Nov 16, 2012
palettesinglesnap.cpp - fixed unsigned codebook generation, added linear perceptual metrics… May 26, 2013
palettesinglesnap.h
simd.cpp - added BC6 coder Nov 27, 2015
simd.h - minor bugfixes Dec 20, 2017
simd_float.h - optimizations, HQ BC5 compression for normal-maps, initial CTX1 code Mar 27, 2013
simd_sse.h - minor bugfixes Dec 20, 2017
simd_ve.h 2.0 alpha Jun 6, 2012
squish-Info.plist 2.0 alpha Jun 6, 2012
squish.cpp - minor bugfixes Dec 20, 2017
squish.h - Settable error metrics Feb 5, 2015
squish.hlsl adjusted preprocessor defines, fixed cluster-fit weights outside loop, Oct 9, 2012
squish.inl
texture_compression_astc_hdr.txt - added BC6 coder Nov 27, 2015
texture_compression_astc_ldr.txt - formats galore Sep 22, 2012
texture_compression_bptc.txt - formats galore Sep 22, 2012
texture_compression_dxt1.txt - formats galore Sep 22, 2012
texture_compression_fxt1.txt alpha 2: Sep 20, 2012
texture_compression_latc.txt - formats galore Sep 22, 2012
texture_compression_pvrtc.txt optimizations, normal-fit type, channel-fit type, power-method, bug-f… Sep 24, 2012
texture_compression_rgtc.txt - formats galore Sep 22, 2012
texture_compression_s3tc.txt - formats galore Sep 22, 2012
texture_compression_vtc.txt - formats galore Sep 22, 2012

README

LICENSE
-------

The squish library is distributed under the terms and conditions of the MIT
license. This license is specified at the top of each source file and must be
preserved in its entirety.

BUILDING AND INSTALLING THE LIBRARY
-----------------------------------

If you are using Visual Studio 2003 or above under Windows then load the Visual
Studio 2003 project in the vs7 folder. By default, the library is built using
SSE2 optimisations. To change this either change or remove the SQUISH_USE_SSE=2
from the preprocessor symbols.

If you are using a Mac then load the Xcode 2.2 project in the distribution. By
default, the library is built using Altivec optimisations. To change this
either change or remove SQUISH_USE_ALTIVEC=1 from the preprocessor symbols. I
guess I'll have to think about changing this for the new Intel Macs that are
rolling out...

If you are using unix then first edit the config file in the base directory of
the distribution, enabling Altivec or SSE with the USE_ALTIVEC or USE_SSE
variables, and editing the optimisation flags passed to the C++ compiler if
necessary. Then make can be used to build the library, and make install (from
the superuser account) can be used to install (into /usr/local by default).

REPORTING BUGS OR FEATURE REQUESTS
----------------------------------

Feedback can be sent to Simon Brown (the developer) at si@sjbrown.co.uk
Feedback can be sent to Niels Fröhling (the other developer) at niels@paradice-insight.us

New releases are announced on the squish library homepage at
http://sjbrown.co.uk/?code=squish

You can’t perform that action at this time.