[gimp-dds] / tags / release-2.0 / dxt.c Repository:
ViewVC logotype

Log of /tags/release-2.0/dxt.c

Parent Directory Parent Directory


Links to HEAD: (view) (download) (as text) (annotate)
Sticky Revision:

Revision 80 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Nov 2 23:28:56 2007 UTC (2 years ago) by cocidius
File length: 25782 byte(s)
Copied from: trunk/dxt.c revision 74
Diff to previous 74
I think i got it this time... Create release 2.0 tag.

Revision 74 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Nov 2 22:47:39 2007 UTC (2 years ago) by cocidius
Original Path: trunk/dxt.c
File length: 25782 byte(s)
Diff to previous 73
Some cleanup, and minor change to DXT compressor to be compliant with S3TC
standards.

Revision 73 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Nov 2 20:30:23 2007 UTC (2 years ago) by cocidius
Original Path: trunk/dxt.c
File length: 25543 byte(s)
Diff to previous 72
* Added advanced options to save dialog to allow choice of the color
selection algorithm used in the DXT compressor, as well as whether or not to
operate on dithered blocks.
* Added distance, luminance and inset bounding box color selection
algorithms to DXT compressor.
* Updated non-interactive interface to allow use of new advanced options

Revision 72 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Nov 2 07:59:23 2007 UTC (2 years ago) by cocidius
Original Path: trunk/dxt.c
File length: 22013 byte(s)
Diff to previous 71
New DXT compressor, using public domain code found here:
https://mollyrocket.com/forums/viewtopic.php?t=392

Revision 71 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Nov 2 01:06:43 2007 UTC (2 years ago) by cocidius
Original Path: trunk/dxt.c
File length: 20217 byte(s)
Diff to previous 70
Some cleanups

Revision 70 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Nov 1 04:56:41 2007 UTC (2 years ago) by cocidius
Original Path: trunk/dxt.c
File length: 20223 byte(s)
Diff to previous 69
* Added PUTL16 macro to endian.h
* Use macros in endian.h when writing to memory buffers

Revision 69 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Nov 1 04:06:28 2007 UTC (2 years ago) by cocidius
Original Path: trunk/dxt.c
File length: 20579 byte(s)
Diff to previous 68
Added Alpha multiply compression format

Revision 68 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Nov 1 01:08:52 2007 UTC (2 years ago) by cocidius
Original Path: trunk/dxt.c
File length: 20546 byte(s)
Diff to previous 67
Completely removed dependence on OpenGL and GLEW.  Now 100% software.

Revision 67 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Nov 1 00:55:16 2007 UTC (2 years ago) by cocidius
Original Path: trunk/dxt.c
File length: 20558 byte(s)
Diff to previous 66
Fixed a bug in the DXTn compressor.  All pixels sent to dxt_compress with a
bpp >= 3 are assumed to be in BGR[A] order.

Revision 66 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Nov 1 00:42:49 2007 UTC (2 years ago) by cocidius
Original Path: trunk/dxt.c
File length: 20752 byte(s)
Diff to previous 65
* Moved OpenGL specific code to opengl.c
* Finished new compression backend.  Now fully in portable ANSI C code, no
longer needs OpenGL to do compression/decompression, removes requirement for
the external DXTn compression library for software compression.

Revision 65 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Oct 31 20:26:48 2007 UTC (2 years ago) by cocidius
Original Path: trunk/dxt.c
File length: 27069 byte(s)
Diff to previous 64
Laying ground-work for new compression backend

Revision 64 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Oct 31 19:27:19 2007 UTC (2 years ago) by cocidius
Original Path: trunk/dxt.c
File length: 19889 byte(s)
Diff to previous 63
Finished YCoCg compression

Revision 63 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Oct 26 23:59:37 2007 UTC (2 years ago) by cocidius
Original Path: trunk/dxt.c
File length: 20228 byte(s)
Diff to previous 58
More work on YCoCg compression

Revision 58 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Apr 18 22:51:41 2007 UTC (2 years, 7 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 19829 byte(s)
Diff to previous 57
* Removed 'Swap red and alpha' option, added BC3n (DXT5n) compression type


Revision 57 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Apr 18 18:18:07 2007 UTC (2 years, 7 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 19629 byte(s)
Diff to previous 50
* Various cleanups
* Renamed all compression types to new DirectX 10 standards

Revision 50 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Sep 8 22:27:04 2006 UTC (3 years, 2 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 36333 byte(s)
Diff to previous 49
Some more cleanup

Revision 49 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Sep 8 07:24:20 2006 UTC (3 years, 2 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 36353 byte(s)
Diff to previous 48
* When reading compressed images, zero out destination buffer and fill alpha
channel with full opacity before decompressing.  This is mainly for 3Dc
compressed images, as the blue channel should be zero and the alpha channel
fully opaque.
* Some more cleanup for 3Dc compression

Revision 48 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Sep 8 02:21:01 2006 UTC (3 years, 2 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 36290 byte(s)
Diff to previous 47
* Refactored the 3Dc compression code
* Fixed missing mipmaps when using hardware compression and a 3Dc format

Revision 47 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Sep 8 00:41:05 2006 UTC (3 years, 2 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 33513 byte(s)
Diff to previous 46
Meant 'unsigned char' not 'unsigned'

Revision 46 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Sep 4 05:29:35 2006 UTC (3 years, 2 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 33498 byte(s)
Diff to previous 45
A little code cleanup

Revision 45 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Sep 4 03:03:32 2006 UTC (3 years, 2 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 33377 byte(s)
Diff to previous 44
Fixed saving hardware compressed ATI2N textures

Revision 44 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Aug 25 01:36:16 2006 UTC (3 years, 2 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 33236 byte(s)
Diff to previous 43
* Added missing code for 3Dc decompression when using hardware compression

Revision 43 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Aug 25 00:10:36 2006 UTC (3 years, 2 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 32517 byte(s)
Diff to previous 42
* Added support for ATI's 3Dc compression format for both reading and writing, as well as both hardware and software compression.

Revision 42 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Aug 24 03:37:14 2006 UTC (3 years, 2 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 28599 byte(s)
Diff to previous 41
Fixed a bug where mipmaps were written at the wrong location when software
compressing an image

Revision 41 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Aug 24 03:08:57 2006 UTC (3 years, 2 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 28599 byte(s)
Diff to previous 40
Resolved revision conflicts

Revision 40 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Aug 24 01:24:55 2006 UTC (3 years, 2 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 28565 byte(s)
Diff to previous 39
* Added software compression support via external library "libtxc_dxtn".  Too many ugly IP issues involved to add compression routines directly to the source code and still be able to supply binary distributions of the plugin.  Software patents suck. :(

Revision 39 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Aug 22 01:08:38 2006 UTC (3 years, 3 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 25250 byte(s)
Diff to previous 37
* Moved the endian-safe memory to integer casting macros out of ddsplugin.h and into newly created file endian.h
* Added optional software decompression routines to dxt.c.  Compression routines to follow shortly...
* Various code cleanups and Makefile modifications

Revision 37 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Aug 9 01:07:38 2006 UTC (3 years, 3 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 21813 byte(s)
Diff to previous 36
Ooops.

Revision 36 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Aug 9 00:57:00 2006 UTC (3 years, 3 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 21813 byte(s)
Diff to previous 35
* Removed dependence on the SGIS_generate_mipmap extension.  It will only be used if it is available.
* Cleaned up mipmap generation code

Revision 35 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Aug 3 07:12:31 2006 UTC (3 years, 3 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 20543 byte(s)
Diff to previous 33
* Added support for non-power-of-two volume maps with mipmap generation
* Fixed mipmap generation for indexed volume maps

Revision 33 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Aug 3 01:23:31 2006 UTC (3 years, 3 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 12983 byte(s)
Diff to previous 31
* Added support for writing volume map mipmap chains for indexed images (not very good ATM)
* Pre-convert indexed images to RGB for better quality mipmaps if a pixel format conversion is requested

Revision 31 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Aug 1 10:49:21 2006 UTC (3 years, 3 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 11416 byte(s)
Diff to previous 29
* Fixed indexed image writing.  It was not writing the proper amount of
palette entries when the number of entries was less than 256.
* Fixed indexed image mipmap generation.

Revision 29 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jul 28 22:42:02 2006 UTC (3 years, 3 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 11576 byte(s)
Diff to previous 23
Added proper mipmap chain generation for indexed images

Revision 23 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Oct 13 20:45:49 2005 UTC (4 years, 1 month ago) by cocidius
Original Path: trunk/dxt.c
File length: 9928 byte(s)
Diff to previous 22
* Added L8 and L8A8 pixel formats
* Fixed all pixel formats when writing images.  All images saved with the
plugin should be compatible with various DDS tools out there (tested with
the DirectX DDS viewer, and nVidia's image converter)

Revision 22 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Oct 7 22:07:43 2005 UTC (4 years, 1 month ago) by cocidius
Original Path: trunk/dxt.c
File length: 9793 byte(s)
Diff to previous 21
* Faster cubic interpolation for scaling and filtering

Revision 21 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Oct 6 22:49:16 2005 UTC (4 years, 1 month ago) by cocidius
Original Path: trunk/dxt.c
File length: 9812 byte(s)
Diff to previous 20
dxt.c: scale_image() now uses cubic filtering rather than linear.  Should
help produce higher quality mipmaps for hardware that doesn't support
ARB_texture_non_power_of_two with auto-mipmap gen.

Revision 20 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Sep 16 06:10:00 2005 UTC (4 years, 2 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 8512 byte(s)
Diff to previous 14
* Switched to the GLEW library to handle extension loading and checking
* Added build support for Windows with a MinGW environment
* Updated dependencies in INSTALL
* Added Windows MinGW build instructions to INSTALL
* Added Windows MinGW build rules to Makefile

Revision 14 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Sep 14 23:05:20 2005 UTC (4 years, 2 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 9031 byte(s)
Diff to previous 11
Fixed grayscale and gray-alpha compression/decompression

Revision 11 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Sep 14 20:31:02 2005 UTC (4 years, 2 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 8617 byte(s)
Diff to previous 10
Gearing up for the next release with a slug of new features:

* Added support for writing grayscale and gray-alpha images
* Added support for writing cube maps (Image must have 6 layers,
  all the same size and pixel format. Cube faces controlled by layer name
  contents, see documentation.)
* Added support for writing volume maps (Image must have > 1 layer,
  all the same size and pixel format).  Volume map compression is currently
  not supported.  Mipmap support is scetchy ATM.  If your image's layer count
  is a power of two and the image dimensions are a power of two, everything
  should work fine using SGIS_generate_mipmap. If your layer count or image
  dimensions are not a power of two, then mipmap generation will likely fail
  unless your video card supports ARB_texture_non_power_of_two.  A fix for
  this will soon follow.
* Fixed volume map loading
* Cleaned up layer naming convention when loading images with mipmaps or
  multiple layers (cube and volume maps)

Revision 10 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Apr 13 07:13:06 2005 UTC (4 years, 7 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 7156 byte(s)
Diff to previous 8
Removed GdkPixbuf image scaling for non power-of-2 mipmap generation (too
slow, buggy), and substituted with a hand-rolled image scaling routine.

Revision 8 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Apr 13 05:44:14 2005 UTC (4 years, 7 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 6529 byte(s)
Diff to previous 7
Oops. :)

Revision 7 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Apr 13 05:36:28 2005 UTC (4 years, 7 months ago) by cocidius
Original Path: trunk/dxt.c
File length: 6530 byte(s)
Diff to previous 2
- Disabled compression when saving an image with non power-of-2 dimensions
(not compatible with S3TC compression)
- Added mipmap generation for images with non power-of-2 dimensions using
GdkPixbuf

Revision 2 - (view) (download) (as text) (annotate) - [select for diffs]
Added Wed Oct 13 23:08:29 2004 UTC (5 years, 1 month ago) by cocidius
Original Path: trunk/dxt.c
File length: 5244 byte(s)
Initial revision

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.

  Diffs between and
  Type of Diff should be a

Sort log by:

ViewVC Help
Powered by ViewVC 1.0.4