Commit graph

45 commits

Author SHA1 Message Date
Pavel Krajcevski 3e35fb2c0d Merge SplitCoreLibrary 2013-10-10 11:04:40 -04:00
Pavel Krajcevski 4baf2ce311 Combine image functionality from PVRTCEncoder into Base library. 2013-10-04 18:35:18 -04:00
Pavel Krajcevski ab598c9ef7 Move Pixel class from PVRTCEncoder to FasTCBase. 2013-10-03 17:25:15 -04:00
Pavel Krajcevski 160fbb5e39 Add method for downscaling by averaging nearby pixel values. 2013-10-03 14:12:41 -04:00
Pavel Krajcevski 03f693f104 Add a hook into the PVRTexLib compressor if it's been found via cmake. 2013-09-30 12:38:09 -04:00
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