Commit Graph

610 Commits

Author SHA1 Message Date
Pavel Krajcevski
a303bd4844 Some small aesthetic fixes 2014-11-05 17:24:28 -05:00
Pavel Krajcevski
dbde06edf1 Fix bug caused by typo. 2014-11-05 12:17:34 -05:00
Pavel Krajcevski
19b5d478a0 Fix small bug:
Set the bits that aren't being used in the texel data to zero so that
the integer decoding sequence recreates the proper texel values for
trits and quints that don't have as many bits as there are expected
values.
2014-11-04 18:22:05 -05:00
Pavel Krajcevski
168c6a0071 Merge branch 'master' into DecompressASTC 2014-11-03 18:28:44 -05:00
Pavel Krajcevski
ff1181e12a Lots of QOL fixes:
1. Avoid the need for multiple-of-four input textures. If you don't pass
a multiple of four then we'll do our best to pad the image.

2. Fix a bunch of bugs where we didn't accurately report why we couldn't
compress a texture and just crashed instead.

3. Some code refactoring to make certain if statements more readable.
2014-11-03 18:24:19 -05:00
Pavel Krajcevski
facdbe9d1c Fix another small bug 2014-11-03 17:14:29 -05:00
Pavel Krajcevski
610d2d611d Silence some warnings 2014-11-03 17:14:23 -05:00
Pavel Krajcevski
da6d6e5106 Merge branch 'master' into DecompressASTC 2014-11-03 15:57:50 -05:00
Pavel Krajcevski
6f82ab8941 Don't crash when you can't open a file that doesn't exist 2014-11-03 15:57:34 -05:00
Pavel Krajcevski
4c03336a43 Fix how we compute compressed size 2014-11-03 15:07:56 -05:00
Pavel Krajcevski
0c25135555 Merge branch 'master' of git://ahi.cs.unc.edu/pavel/FasTC 2014-10-31 17:39:07 -04:00
Pavel Krajcevski
e4919e75e6 Add bracket guards around ifs 2014-10-31 17:38:22 -04:00
Pavel Krajcevski
fd2699302d Update to support VS2013 2014-10-24 10:27:01 -04:00
Pavel Krajcevski
a74b4e6862 Add proper include to support min and max 2014-10-24 09:10:29 -04:00
Pavel Krajcevski
1f45a49102 Caught small bug 2014-09-25 19:10:30 -04:00
Pavel Krajcevski
c0d7607998 Merge branch 'master' into DecompressASTC 2014-09-25 16:50:43 -04:00
Pavel Krajcevski
502c15ee29 Respect the new flag in tests. Fixes #12 2014-09-02 16:52:31 -04:00
Pavel Krajcevski
e59541e30a Add #define guard to including IO with PVRTC 2014-09-02 16:39:11 -04:00
Pavel Krajcevski
995eacd5b6 Fix small crash bug 2014-08-26 13:44:09 -04:00
Pavel Krajcevski
edfc6bde78 Be a little more defensive about calculating SSIM 2014-08-26 13:34:35 -04:00
Pavel Krajcevski
13df3c72c6 Apparently the block layout is different for ASTC... 2014-05-15 22:02:16 -04:00
Pavel Krajcevski
374f5375d5 Fix the way we quantize 16-bit pixel channels 2014-05-15 22:02:03 -04:00
Pavel Krajcevski
2d52f1eabb Actually advance the color values ptr 2014-05-15 22:01:21 -04:00
Pavel Krajcevski
31e01b7b10 Partition index does not include the number of partitons. 2014-05-14 13:29:12 +02:00
Pavel Krajcevski
a8514ba9b3 Reverse the bits of the ASTC block in order to read the texel weight data... 2014-05-08 00:45:23 +02:00
Pavel Krajcevski
1269ab1314 Fix a few bugs dealing with color blending 2014-05-07 23:00:42 +02:00
Pavel Krajcevski
a58501f56f Fast track zero partition selection 2014-05-07 22:59:49 +02:00
Pavel Krajcevski
d13cca3362 The basename default should be the filename itself 2014-05-07 22:58:32 +02:00
Pavel Krajcevski
c8e19252e3 Fix another bug that I thought I fixed... I should really make integration tests 2014-04-22 19:52:59 -04:00
Pavel Krajcevski
f47c880198 Make sure to use the proper delete 2014-04-22 19:28:49 -04:00
Pavel Krajcevski
c40829a3b7 Fix some compiler warnings 2014-04-15 14:18:12 -04:00
Pavel Krajcevski
03b9e7f413 Merge branch 'ModularizeBPTC', remote-tracking branch 'origin' 2014-04-10 13:50:58 -04:00
Pavel Krajcevski
8660b24ffe Fix multithreaded npot bug.
There was a bug where certain blocks were not being written due to
improper iterating over non power-of-two textures depending on the
thread that got split across a newline of blocks. This should now
be fixed.

The offending command line arguments looked something like:

CLTool/tc -q 0 -t 32 -j 32 /path/to/npot-texture.png
2014-04-10 13:39:04 -04:00
Pavel Krajcevski
127c825337 Actually clamp the initial value 2014-04-09 13:55:27 -04:00
Pavel Krajcevski
ea1c61913a Small patch to fix loading of non-multiple-of-four images 2014-04-02 13:59:08 -04:00
Pavel Krajcevski
640b098af7 Small formatting change 2014-04-02 13:57:17 -04:00
Pavel Krajcevski
ed2bcc3838 Fix some small bugs to hook into NVTT 2014-03-28 11:40:52 -04:00
Pavel Krajcevski
fabf6830ee Fix bug so that we at least generate *some* endpoints 2014-03-28 11:40:38 -04:00
Pavel Krajcevski
2141d71dd0 More perf fixes 2014-03-26 18:11:12 -04:00
Pavel Krajcevski
1bfda210c0 Merge from origin 2014-03-25 18:28:05 -04:00
Pavel Krajcevski
7fa561f67f Formatting. 2014-03-25 18:27:26 -04:00
Pavel Krajcevski
6505944f57 Cache the pixel computation for the cluster upon creation 2014-03-25 16:24:30 -04:00
Pavel Krajcevski
4128bcf073 Template the number of buckets during error calc so the compiler can unroll... 2014-03-25 16:24:08 -04:00
Pavel Krajcevski
6012b53cdb Formatting 2014-03-25 16:23:04 -04:00
Pavel Krajcevski
7af6cca4d5 Get rid of float conversion lookup table 2014-03-25 16:21:17 -04:00
Pavel Krajcevski
663caada50 Generalize BPTC compression.
1. Split compression parameter generation and compression parameter
packing. This gives a good performance boost, since we don't pack every
single time we compress. The error is computed each time, and only the
best parameters are packed.

2. Allow the shape selection function to specify up to ten shapes to
try for compression. We were already doing this kind of hackily where
we allowed both a three and two partition shape. This makes it a little
cleaner and exposes it to the user.
2014-03-25 11:40:06 -04:00
Pavel Krajcevski
f951dda449 Fix bug caught by clang 2014-03-23 19:52:51 -04:00
Pavel Krajcevski
aba347778e Fix a few compiler warnings 2014-03-23 17:48:17 -04:00
Pavel Krajcevski
5725220ba6 Merge branch 'master' into ModularizeBPTC 2014-03-23 17:41:46 -04:00
Pavel Krajcevski
d03732fc09 Move BPTC shapes header to include folder 2014-03-22 21:17:46 -04:00