Commit Graph

40 Commits

Author SHA1 Message Date
Pavel Krajcevski
dcf389d346 Merge PVRTC compressor into split library. 2013-09-27 17:30:16 -04:00
Pavel Krajcevski
ed12d53cd4 Merge in a few changes from master 2013-09-25 15:05:56 -04:00
Pavel Krajcevski
f19b324d28 Make sure to use the proper directory when running RUN_TESTS from MSVC. Note, this doesn't work in Release. 2013-09-25 14:42:35 -04:00
Pavel Krajcevski
79d2ad79ac Fix some snafus on windows 2013-09-25 14:30:48 -04:00
Pavel Krajcevski
8f4dcca4d7 Add some utility functions for manipulating the block data, including packing colors back into the 64-bit word. 2013-09-24 20:33:48 -04:00
Pavel Krajcevski
340f4f3141 Add pixel packing routines 2013-09-24 19:29:03 -04:00
Pavel Krajcevski
75e570ed16 Fix some compiler snafus 2013-09-24 17:46:09 -04:00
Pavel Krajcevski
1636232717 Make sure that when changing from higher to lower bit depth (i.e. perform a division) that we round to the nearest value 2013-09-24 17:45:19 -04:00
Pavel Krajcevski
995c237e5e Add downscale test and fix a few bugs and formatting. 2013-09-19 17:47:36 -04:00
Pavel Krajcevski
1d58ea2385 Add RGBA pixel constructor 2013-09-19 15:11:27 -04:00
Pavel Krajcevski
4135e38f22 Set the default wrap behavior to wrap for image upscale, too 2013-09-18 18:00:59 -04:00
Pavel Krajcevski
d4ca50f8ed Fix the directories in the PVRTC compressor 2013-09-17 18:35:56 -04:00
Pavel Krajcevski
29bd1368e6 Fix a few compiler warnings and add the BPTCEncoder license. 2013-09-15 14:56:09 -04:00
Pavel Krajcevski
28cf254fe5 Initial decoupling of base library from core library. Includes a few formatting changes as well. 2013-09-13 19:36:37 -04:00
Pavel Krajcevski
b3de3f2c01 If our compile flag is set to output debug images with tests, then actually do it. 2013-09-12 14:45:42 -04:00
Pavel Krajcevski
b3f8fcd454 Decouple upscale directions so that we can non-uniformly scale images. 2013-09-12 14:44:54 -04:00
Pavel Krajcevski
7184d49ccd Add unpack RGBA for our pixels 2013-09-12 14:41:00 -04:00
Pavel Krajcevski
1115c2f9e4 Add 2BPP helper functions for our blocks.
Namely, there are two things that we need to do:
1. Figure out the sub-mode based on the mode bit and the structure of the modulation data. The comments in Block.h describe how we do this.
2. For a given texel index, return 2BPP texel modulation bits.
2013-09-12 14:30:08 -04:00
Pavel Krajcevski
08cad3ba86 Add 2BPP tests 2013-09-12 14:04:20 -04:00
Pavel Krajcevski
0172df4e60 Add final opaque to transparent gradient test. 2013-09-10 13:34:13 -04:00
Pavel Krajcevski
f5e0aa4f9f Make sure to clear the MSBs of channels that have zero depth that get converted to higher depth values 2013-09-10 13:21:48 -04:00
Pavel Krajcevski
77bb7488cc Fix typo 2013-09-10 11:58:53 -04:00
Pavel Krajcevski
5020f81f00 Add a transparent pvr image test 2013-09-09 10:33:04 -05:00
Pavel Krajcevski
09b5680245 Some small code style fixes 2013-09-06 13:37:50 -04:00
Pavel Krajcevski
5ac6872dc7 Add a test to make sure that after a bilerp the pixels that should remain unaffected do in fact remain unaffected. 2013-09-06 02:02:34 -04:00
Pavel Krajcevski
3806efe6fc Add some more hacky includes to be able to output debug images from our tests. 2013-09-06 02:02:02 -04:00
Pavel Krajcevski
b8e155e11c Switch red and blue channels in our decompressor test. 2013-09-05 14:49:08 -04:00
Pavel Krajcevski
7b72a84d87 Add a working directory for PVR lib tests
Unfortunately, the WORKING_DIRECTORY directive for ADD_TEST seems to be broken as of CMake 2.8.10, fortunately there was a mail thread about this issue in 2.6 so I was able to implement the workaround.
2013-09-04 20:43:49 -04:00
Pavel Krajcevski
6149c0af3a Add PVR tests
If cmake was able to find Imagination's PVR library, then it'd be nice to make sure that our decompressor matches theirs. We incur a bit of overhead by adding .pvr files into git, but hopefully this cost will be beneficial to actually figuring out how things are working...
2013-09-04 20:21:56 -04:00
Pavel Krajcevski
052157ea49 Rename our tests to start with the prefix 'Test' 2013-09-04 20:21:28 -04:00
Pavel Krajcevski
abd4ba8b54 Abstract away some utilities that we can use across all of our tests, and add a test for a gray image. The test currently seems to be failing, which is likely due to a bug in our bit depth manipulation code. 2013-09-04 20:20:37 -04:00
Pavel Krajcevski
bb525ae9dc If all of the PVR blocks are the same then we don't need so much code. 2013-09-04 15:28:51 -04:00
Pavel Krajcevski
9273625eeb Add initial decompressor test 2013-09-02 19:14:50 -04:00
Pavel Krajcevski
4bbd80aab2 Make sure to preserve bit depth when bilinearly upscaling 2013-09-02 19:14:31 -04:00
Pavel Krajcevski
3f4ffa61b5 Reverse byte order (and interpret the data as a 64 bit word) for PVRTC blocks 2013-09-02 19:13:53 -04:00
Pavel Krajcevski
5cde88d3b7 Add Image tests 2013-08-31 18:31:38 -04:00
Pavel Krajcevski
26005bfd27 Disambiguate the Image.h from PVRTCEncoder and Core 2013-08-31 16:36:10 -04:00
Pavel Krajcevski
21199bc264 Add Pixel tests 2013-08-31 16:06:00 -04:00
Pavel Krajcevski
012d9e3ce0 Add preliminary tests for PVRTC pixels 2013-08-30 19:08:20 -04:00
Pavel Krajcevski
1cc8f57538 Add block tests 2013-08-30 18:44:50 -04:00