Commit Graph

356 Commits

Author SHA1 Message Date
castano
70267fda15 Add support for input floating point images. Patch provided by Jim Tilander. See issue 27. 2008-05-15 06:18:24 +00:00
castano
aebcea412c Search for freeimage. 2008-05-15 06:17:46 +00:00
castano
bccdcd49da Use standard gram schmidt 2008-05-15 06:04:17 +00:00
castano
0f186e688f Remove 'virtual' from non virtual methods. 2008-05-08 21:15:05 +00:00
castano
38e9652d64 Remove executable flag. 2008-05-08 18:20:55 +00:00
castano
f08114c1b5 Whops, check fix for vc9. 2008-05-08 18:18:53 +00:00
castano
70331a37fd Refactor compression functions, group them into class methods. 2008-05-06 23:55:19 +00:00
castano
2ffc4cd7ad Ups, checked in the file before saving it. 2008-05-06 23:34:46 +00:00
castano
4ba8e87a38 Ups, checked in file before saving it. 2008-05-06 23:34:13 +00:00
castano
48f61dbfc0 Add support for linear and swizzle transforms. Fixes issue 4. 2008-05-06 23:21:39 +00:00
castano
94c3fa75a8 Add comments indicating where to perform linear color transforms. 2008-05-06 22:01:23 +00:00
castano
c562af6d9b Integrate YCoCg color space conversion by Jim Tilander. 2008-05-06 21:49:10 +00:00
castano
a889f2fda6 Add support for alpha modes in the CUDA compressors. 2008-05-06 20:04:05 +00:00
castano
d855d0461b Add single color checks to CUDA compressors.
Use optimized bitmap table for CTX compressor.
2008-05-06 19:52:27 +00:00
castano
6a6b3edce1 factorial optimization suggested by pponywong. 2008-05-06 06:37:06 +00:00
castano
ce3a65c03e Fix operator= in String class. 2008-04-29 22:32:12 +00:00
castano
8d9bf5c0b3 Fix after refactoring CPU compressors. Changes were not tested with CUDA enabled. 2008-04-29 22:31:55 +00:00
castano
ab5265e642 Remove declaration of method that was removed. 2008-04-28 08:39:24 +00:00
castano
fd1d5e41c7 Add missing files! 2008-04-28 06:22:26 +00:00
castano
15e7125b4b Check for single color blocks in all compressors. 2008-04-26 09:16:56 +00:00
castano
921ee354c0 Remove legacy compressors.
Add iteration count parameter to iterative alpha compressor.
Add optimal compressors.
2008-04-26 08:02:30 +00:00
castano
e3f7e303e4 Use FLT_MAX instead of INFINITE. The latter not supported in msvc. 2008-04-20 06:01:50 +00:00
castano
1df69495fc Precompute fast cluster fit factors, and store as static const.
nvtt is completely reentrant now. Fixes issue 37.
cleanup interface of cuda compressors.
2008-04-18 08:49:32 +00:00
castano
91eb30667f Add TLS class wrapper.
Fix AutoPtr operator=.
Fix typo.
2008-04-17 18:39:01 +00:00
castano
34ae5bcb6f Merge 2.0 branch fixes. 2008-04-17 07:17:46 +00:00
castano
bade8e5e09 Merge private branch. 2008-04-17 07:00:19 +00:00
castano
141a05edf4 Merge private branch. 2008-04-17 06:59:29 +00:00
castano
7d3facd81a Merge private branch. 2008-04-17 06:59:13 +00:00
castano
17a4f765fb Merge private branch. 2008-04-17 06:58:43 +00:00
castano
cb91740591 Merge private branch. 2008-04-17 06:58:18 +00:00
castano
d10295fbf6 Use DXT1a single color compressor. 2008-04-17 06:55:26 +00:00
castano
fa5e1f5a07 Add single color DXT1a compressor. 2008-04-17 06:54:29 +00:00
castano
9d47e100f1 Add better support for the DX10 DDS formats. 2008-04-11 23:58:41 +00:00
castano
4c759f999c Integrate decompressor tool improvements submitted by Amorilia. 2008-04-11 22:03:42 +00:00
castano
299ad176fc Add experimental image based interface. 2008-04-11 08:06:15 +00:00
castano
5070cc98d3 Do not use constructor that initializes POD types. 2008-04-11 06:50:36 +00:00
castano
133ebfb282 Remove unused parameter warnings.
Do not compile tokenizer; it's not being used, and does not work on win64 yet.
2008-04-09 09:06:19 +00:00
castano
ebe8054728 Cache HAVE_* variables so that they can be edited through the cmake gui. 2008-04-06 05:59:13 +00:00
castano
bd3314f4af Add inputOptions argument to compressors, so that they can access alpha mode. 2008-03-27 04:28:17 +00:00
castano
065c5f0689 Cleanup simple compressors. Move code from FastCompress to QuickCompress. 2008-03-20 01:39:02 +00:00
castano
d2384cf47f Remove unused methods. 2008-03-14 08:40:48 +00:00
castano
aff59c22b8 remove unused compressors 2008-03-14 08:40:11 +00:00
castano
59be16d40a Remove unused fitting code. 2008-03-14 08:39:03 +00:00
castano
b7a724448b Remove unnecesary dependency. 2008-03-14 07:32:59 +00:00
castano
259e7c58fd Merge Viktor Linder patch into 2.0 and trunk.
Fixes RGB modes with less than 32 bpp.
2008-03-11 21:22:54 +00:00
castano
307c8b99ee Add support for premultiplied alpha. Patch by Charles Nicholson. 2008-03-07 00:41:03 +00:00
castano
65aa7e1eaa Add interface for swizzle color xform. 2008-03-05 22:35:16 +00:00
castano
f5ae4c1a9a Fix indexMirror error reported by Chris Lambert. 2008-03-05 19:42:45 +00:00
castano
75c09220c8 Fix Image copy ctor bug reported by Richard Sim. 2008-03-05 19:11:41 +00:00
castano
9f4b4bd532 Update comments about hole filling algorithms. 2008-03-04 00:13:44 +00:00
castano
ff93ad41cb Fix end of lines. 2008-02-28 21:45:46 +00:00
castano
56c7771100 Fix end of lines. 2008-02-28 21:45:26 +00:00
castano
ccced843e3 Use smaller allocations to prevent errors.
Check for allocation errors.
2008-02-28 21:45:04 +00:00
castano
dafe2b8841 Hide copy ctor and operator to prevent compiler warnings.
Wrap pimpl using NVTT_DECLARE_PIMPL macro.
2008-02-28 21:14:40 +00:00
castano
e3e7fcb226 Check cuda errors to find out whether the cuda context initialization succeeded. 2008-02-28 17:52:32 +00:00
castano
970395fba8 Fix osx build. 2008-02-28 17:02:29 +00:00
castano
8a24a93e2f Disable CUDA when memory allocations fail. 2008-02-28 16:06:27 +00:00
castano
d0c21cecfb Update stress test.
Fix errors in single color compressor.
2008-02-28 03:09:51 +00:00
castano
b41752aa84 Apply singlecolorpatch.diff from Amir Ebrahimi.
Add single color compressor to CUDA implementation.
2008-02-16 09:53:07 +00:00
castano
eb36ef86a7 Fix single color compressor. 2008-02-16 02:48:28 +00:00
castano
5dbfb20b60 Add DXT1n and CTX1 CUDA compressors. 2008-02-15 08:58:02 +00:00
castano
c7fcc3ef4b Improve stress test to detect errors in the output. 2008-02-14 09:21:57 +00:00
castano
14ae88bb06 Fix leaks. Allocate CUDA memory only once. Free allocations when Compressor is destroyed. 2008-02-14 05:08:26 +00:00
castano
c3749f48cd Bug fix. Only use tonormal conversion for top of the mipmap chain. 2008-02-11 08:35:32 +00:00
castano
9d13742314 Fix errors in DDS loading code. 2008-02-11 07:01:11 +00:00
castano
a9bd20270b Fix DDS reading code. 2008-02-11 07:00:45 +00:00
castano
90eae7a480 Fix compilation error when SIMD is not supported. 2008-02-11 07:00:14 +00:00
castano
525aa5b40b Remove duplicate. 2008-02-06 07:15:13 +00:00
castano
7569ca136b Add missing file. 2008-02-06 07:15:00 +00:00
castano
e1d5bda3e9 prevent overflow when compressing large images. 2008-02-05 22:41:58 +00:00
castano
3c90686e00 Final API changes.
Rename OutputHandler::mipmap method to beginImage.
Add NVTT_VERSION.
Add nvtt::version function.
2008-02-05 00:28:13 +00:00
castano
91ff256adf Do precomputation only when needed. 2008-02-04 10:12:32 +00:00
castano
7b433f08f3 Minor optimizations.
Fix DXT1a support.
2008-02-04 10:01:43 +00:00
castano
357f18c162 Cleanup interface. Provide mipmap filter using a separate method. 2008-02-03 09:30:32 +00:00
castano
3fcf9c9773 Remove commented out code. 2008-02-03 08:27:02 +00:00
castano
039035ae25 Cleanup public header. 2008-02-03 08:24:58 +00:00
castano
79d305008a Add copy constructor and operator=. 2008-02-03 07:34:32 +00:00
castano
3b24951e93 Finish Compressor class.
Move all the image processing to Compressor.cpp.
Finish rescale support, close issue 12.
2008-02-03 07:31:09 +00:00
castano
6f28642282 Set useCuda if CUDA enabled in Compression class. 2008-02-01 19:51:54 +00:00
castano
90a0dc505b Fix typo.
Add bc1n option.
2008-02-01 19:50:55 +00:00
castano
2b291f7871 Fix typos. 2008-02-01 19:50:19 +00:00
castano
67e8ec376d Do not use small keyword. 2008-02-01 19:49:50 +00:00
castano
65842ac7e8 Fix typo.
Do not use small keyword.
2008-02-01 19:49:22 +00:00
castano
1d1dcfe922 Update compressor to new squish interface. 2008-02-01 19:48:51 +00:00
castano
b7f3ce664f Fix weighted cluster fit.
Set metric before color sets.
2008-02-01 19:48:12 +00:00
castano
d44b8e9358 Reenable QuickCompress for DXT5n.
Fix end of lines.
2008-02-01 02:33:51 +00:00
castano
05a760b2f6 Normalize inputs correctly. 2008-01-31 21:48:02 +00:00
castano
6fadaebae5 Disable quick green compressor, until I figure out what's the problem with it. 2008-01-31 21:07:18 +00:00
castano
5475f35262 Some cleanup. 2008-01-31 09:17:32 +00:00
castano
ddc79f69f4 Refactor internals.
Move compression functions to Compressor.cpp.
Implementing rescaling support in a cleaner way.
2008-01-30 08:21:55 +00:00
castano
9ebd736e98 Sync with vc8 file. 2008-01-26 05:37:19 +00:00
castano
ad6597b75e Add create minimal set option. 2008-01-26 05:32:23 +00:00
castano
ebf8234dc6 Update tools to new interface. 2008-01-26 02:47:43 +00:00
castano
d2105f922c More interface changes, update bindings.
Move globals to Compress class, to do CUDA initialization only once.
enableCUDA is broken, will be fixed later tonight.
2008-01-26 02:46:12 +00:00
castano
493f1b6604 Rename C# wrapper. 2008-01-24 04:26:13 +00:00
castano
196a77fdde Fix interface errors.
Complete C wrapper.
Complete C# wrapper.
2008-01-24 04:25:24 +00:00
castano
db380be946 Fix typo. 2008-01-19 08:56:03 +00:00
castano
2b23d97d1d Add missing method. 2008-01-19 08:54:57 +00:00
castano
32d694798a Some progress with .net bindings. 2008-01-19 08:52:50 +00:00
castano
92c3dd3f75 remove error threshold. 2008-01-18 23:51:47 +00:00
castano
64020a4cb7 Use tabs instead of spaces. 2008-01-18 23:51:20 +00:00
castano
c8ac20ee0f Remove errorThreshold. 2008-01-18 23:50:22 +00:00
castano
3383851e44 Add C# wrapper. 2008-01-18 23:47:05 +00:00
castano
05d14e97bb Some progress with C wrapper. 2008-01-18 08:49:57 +00:00
castano
d89c26889c Add alpha component to color weights. It may be needed in the future. 2008-01-18 06:11:58 +00:00
castano
ac0cb61927 Eliminate W4 warning. Add assert. 2008-01-17 20:40:40 +00:00
castano
593cce308a Disable copy constructors. Eliminates some W4 warnings. 2008-01-17 20:39:59 +00:00
castano
204d6381f3 Add warnings about functionllity not fully implemented. 2008-01-17 05:44:21 +00:00
castano
963b8e1541 Export more classes. 2008-01-17 05:34:58 +00:00
castano
f76e76cbe6 Export basic classes instead of exporting only their methods. 2008-01-17 05:32:50 +00:00
castano
7bf3927635 Fix red initialization for Capcon's trip. 2008-01-16 08:34:26 +00:00
castano
3e702e563b Add support for win64.
Disable PFM.
Disable Tokenizer.
2008-01-16 08:01:24 +00:00
castano
30f8ef09b5 use tabs 2008-01-16 01:31:24 +00:00
castano
a46a788760 Fix end of lines 2008-01-16 01:30:40 +00:00
castano
9c963172f3 Add support for Capcon's DXT trick by setting the red channel to 1 in the DXT5n mode. 2008-01-15 19:38:13 +00:00
castano
6587d05d72 Do not install nvconfig.h 2008-01-09 08:13:08 +00:00
castano
9d96f449bf Remove nvcore.h from nvtt.h 2008-01-07 19:08:17 +00:00
castano
33c09ae591 Fix DXT1a support. 2008-01-07 07:45:27 +00:00
castano
c02a5bb51f Incomplete DXT1a support. 2008-01-07 07:35:43 +00:00
castano
2903886498 Some progress with full DXT1a support.
Move quantization settings to compression options.
2008-01-07 07:28:00 +00:00
castano
f3a73e3de5 Small progress with ui. 2008-01-07 07:27:09 +00:00
castano
2b716b62da Add comments. 2008-01-07 07:26:40 +00:00
castano
4bd07aad38 Include right header files for sse only. 2008-01-06 02:32:18 +00:00
castano
e36287c607 some more experiments. 2008-01-06 01:57:43 +00:00
castano
5a33fedab5 experiment with the old 3dnow instruction set. 2008-01-06 01:31:49 +00:00
castano
49ee4eee93 ui fixes. 2007-12-17 09:09:08 +00:00
castano
5a27795621 Move DXT1G compressor to QuickCompress. 2007-12-17 08:12:11 +00:00
castano
a69589429e Do not build Qt tools if compiling with msvc. 2007-12-17 06:29:10 +00:00
castano
6861c7f681 Fix msvc warnings. 2007-12-17 06:28:43 +00:00
castano
f3dba01757 fix vc7 errors. 2007-12-17 06:28:18 +00:00
castano
26db14696a Fix cuda constant initialization. 2007-12-17 06:27:53 +00:00
castano
3f30093d02 Fix warnings. 2007-12-17 06:27:17 +00:00
castano
364663c49d Fix error. Wrong return value. 2007-12-17 06:27:03 +00:00
castano
eb96117989 Add ui tool temporarily called main... 2007-12-17 05:26:14 +00:00
castano
f78c32a383 Add filter test. 2007-12-17 05:24:32 +00:00
castano
df19be3a5d Do not set mipmap generation filter. 2007-12-17 05:21:49 +00:00
castano
6fa15f4e5b Output correct number of mipmaps.
Fix nvtt, remove deprecated attributes.
2007-12-17 05:19:55 +00:00
castano
9cfbb22d73 Update for API changes. 2007-12-17 04:10:58 +00:00
castano
cfa4913ae6 Add support for input rescaling:
- round extents to power of two.
- clamp max extents.
Add output options pimpl.
Other misc API changes.
2007-12-17 03:51:34 +00:00
castano
207bfe5336 Only compile the files from squish that are really needed. 2007-12-16 02:02:38 +00:00
castano
2307416b07 Fix build error. 2007-12-15 08:11:02 +00:00
castano
743599eb1d Fix fast box downsampling filter. 2007-12-15 06:52:17 +00:00
castano
a76e89d0d7 Fix more errors in the use of the color metric.
Remove debug code from compress.cpp
2007-12-13 06:36:23 +00:00
castano
6b016dae96 Fix color weighting metric. 2007-12-13 06:29:03 +00:00
castano
5946514408 Do not use CUDA on emulation devices. 2007-12-12 21:55:28 +00:00
castano
670310e558 Add benchmark, in progress. 2007-12-07 03:07:59 +00:00
castano
d3240ff992 Add triangle filter sampling. 2007-12-06 10:13:01 +00:00
castano
2b1d842c8d eliminate vc8 warnings. 2007-12-05 09:15:10 +00:00
castano
ebc0ff52fa Remove vc8 warnings. 2007-12-03 23:28:29 +00:00
castano
aefe11a5b4 Fix warnings. 2007-12-03 23:28:03 +00:00