Pavel Krajcevski
ce99d79bab
Add some static casts
2014-03-12 02:41:23 -04:00
Pavel Krajcevski
ebfd8f8f81
Override LoadImage for ktx files
2014-03-11 18:27:37 -04:00
Pavel Krajcevski
41a7abcdbb
Let the image loader return the actual image pointer instead of having the data be constructed
2014-03-11 18:04:26 -04:00
Pavel Krajcevski
625b202b46
Add travis-ci yml file
2014-03-11 17:27:52 -04:00
Pavel Krajcevski
8acd89cbc5
Add virtual destructor
2014-03-11 17:26:55 -04:00
Pavel Krajcevski
272e753006
Add OpenGL defines for ASTC
2014-03-11 17:26:32 -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
cebce26be1
Change our pixel component type to be signed
2014-03-11 16:52:02 -04:00
Pavel Krajcevski
3dd1444ff6
Add clamping to our pixels
2014-03-11 16:48:25 -04:00
Pavel Krajcevski
86678c0cfe
Add 4-value pixel constructor
2014-03-11 16:40:31 -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
ed61bcfee4
Add generatl bit replication function
2014-03-10 18:30:27 -04:00
Pavel Krajcevski
0ca2917caa
Fix some small compiler warnings.
2014-03-10 15:02:43 -04:00
Pavel Krajcevski
267a959f75
Add some extra PVRTC debugging
2014-03-10 15:02: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
94db169582
Add a utility Bits class to help work with bit ranges in integers. Ideally we should add a bunch of other classical bitwise operations here
2014-03-07 19:31:22 -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
9eb6eb8692
Merge branch 'ModularizeBPTC' into DecompressASTC
2014-02-27 14:21:15 -05:00
Pavel Krajcevski
c6948e8421
Merge branch 'master' into ModularizeBPTC
2014-02-27 14:20:50 -05:00
Pavel Krajcevski
b75a66fdbf
Initial ASTC decoder commit
2014-02-27 12:10:51 -05:00
Pavel Krajcevski
a7a389b41c
Remove this folder since I don't think that this tool is gonna happen
2014-02-27 11:55:00 -05:00
Pavel Krajcevski
ba0b5df59e
Finish matrix unit tests
2014-02-21 17:45:07 -05:00
Pavel Krajcevski
8b9e8cd9b5
Add matrix multiplication infrastructure
2014-02-21 16:18:00 -05:00
Pavel Krajcevski
05eeb09f36
Constify
2014-02-21 16:11:49 -05:00
Pavel Krajcevski
0c4b226c78
Add matrix transpose
2014-02-20 16:15:13 -05:00
Pavel Krajcevski
98bc157e00
Add matrix multiplication test
2014-02-20 16:11:25 -05:00
Pavel Krajcevski
d4ec0a3b3b
Stub out remaining tests
2014-02-20 15:48:08 -05:00
Pavel Krajcevski
4ca6141be6
Add simple 4x4 matrix file
2014-02-20 15:47:48 -05:00
Pavel Krajcevski
2af172e5e5
Add power method iteration for square matrices
2014-02-20 15:47:14 -05:00
Pavel Krajcevski
7ed5c13405
Allow additional indexable types
...
Instead of using operator() to index into the second operand of the
VectorAddition function, use operator[]. This way we can add to pointers
and std::vector types as well.
2014-02-20 15:36:59 -05:00
Pavel Krajcevski
1b7691993d
Add initial matrix tests
2014-02-20 15:34:12 -05:00
Pavel Krajcevski
62cce58c2f
Fix some of the vector multiplication and divide routines.
...
In general, we want the scalar division of vectors and matrices to
have the matrix come first and the scalar come second. It doesn't make
sense to divide a scalar by a vector or to divide a matrix by a vector,
so these should now produce errors at compile time.
Also, make sure to add additional types that can be multiplied together
using the * operator. If we multiply two vectors together, that's a dot
product. The size restrictions should be enforced at compile time by the
template parameters for VectorBase<T, N>::Dot
In this way, we can support vector/matrix multiplication by retaining the
* operator as well.
2014-02-20 14:49:35 -05:00
Pavel Krajcevski
2d7ee21fb7
Let the compiler choose what precision we want to do the vector-scalar multiplication/division in.
2014-02-19 19:36:28 -05:00
Pavel Krajcevski
366a7cdfe4
Add some YCoCg tests
2014-02-19 19:35:29 -05:00
Pavel Krajcevski
9dc23db287
Add YCoCg pixel type
2014-02-18 13:25:29 -05:00
Pavel Krajcevski
4fc75f22dc
Fix vector operators to avoid needing overloads
2014-02-17 13:02:43 -05:00
Pavel Krajcevski
0875ee0ddb
Constify
2014-02-16 18:29:08 -05:00
Pavel Krajcevski
2213e1b7d6
Add tests for special vector cases
2014-02-16 18:28:37 -05:00
Pavel Krajcevski
45b739a44a
Add some tests for VectorBase
2014-02-16 17:17:25 -05:00
Pavel Krajcevski
92f5893650
Add first vector tests
2014-02-16 13:20:43 -05:00
Pavel Krajcevski
9f0603aaa8
Add scaling tests to make sure that bit depths are preserved.
2014-02-16 12:33:05 -05:00
Pavel Krajcevski
543185fe2a
Add normalization function to vectors
2014-02-16 12:30:37 -05:00
Pavel Krajcevski
e20d84b1ee
Fix gross bug in VectorBase
2014-02-16 12:30:09 -05:00
Pavel Krajcevski
a530ae937e
Fix a few bugs.
2014-02-04 12:55:47 -05:00