Commit Graph

21 Commits

Author SHA1 Message Date
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
125809d721 Add return type to function 2014-03-20 18:33:11 -04:00
Pavel Krajcevski
83588a0c97 Fix a bunch of bugs in the decoder 2014-03-18 19:37:03 -04:00
Pavel Krajcevski
c6364cc2a7 Made utils functions static inline and removed block size from compression specification
I'm not completely sure what the best strategy is in this case. Ultimately, it's good
that the format itself carries the block dimensions. It makes a lot of the code somewhat
uglier though, but really the only thing that we're sullying is the succinct ability to
determine what large-scale format it's in (PVRTC vs ASTC instead of 2bpp PVRTC vs 4bpp).
2014-03-12 19:38:35 -04:00
Pavel Krajcevski
dd41fc6ba1 Finish first pass of ASTC decompressor
Added color unquantization, the partition selection function, and the
actual lerping of colors once the texels have been decoded.
2014-03-11 16:52:41 -04:00
Pavel Krajcevski
f0110360c4 Add texel unquantization 2014-03-10 18:56:39 -04:00
Pavel Krajcevski
4e45988caa Refactor to FasTC::Replicate where appropriate 2014-03-10 18:56:28 -04:00
Pavel Krajcevski
1f5cb9294c Add ASTCEncoder tests
Start with small tests to make sure that integer sequence encoding is working the way
that it needs to. Ideally there will be many more tests here, but for now we are trying
to get ASTC decompression working and testing is not a priority.
2014-03-10 15:00:30 -04:00
Pavel Krajcevski
fb7d80b385 Break out the integer sequence encoding into its own module. 2014-03-10 14:59:45 -04:00
Pavel Krajcevski
56c199fc5d Add bit counter to utils 2014-03-10 14:58:36 -04:00
Pavel Krajcevski
5a68febdda More work on ASTC decode.
Fixed the notion that the CEM data was right after the first six bits
after the partition mode. It's actually right before the texel weight
data. Still not sure whether or not the texel weights are read in
the opposite order from the color data...

Also, added some preliminary integer sequence decoding. This will need
to be tested before we actually figure out if we did it correctly or not...
2014-03-07 19:32:15 -05:00
Pavel Krajcevski
8b9849182a Add additional error check. 2014-02-28 19:04:25 -05:00
Pavel Krajcevski
be24a67bfc Add color endpoint mode decoding 2014-02-27 17:02:38 -05:00
Pavel Krajcevski
90448df333 Add initial block mode decoding 2014-02-27 16:19:34 -05:00
Pavel Krajcevski
b75a66fdbf Initial ASTC decoder commit 2014-02-27 12:10:51 -05:00