Commit Graph

82 Commits

Author SHA1 Message Date
Glenn Maynard 609531c1a7 Automatically figure out if we can use 0alpha or 1alpha. I'll remove the
old code once the new code is stable.
2003-03-27 06:01:43 +00:00
Glenn Maynard 92c44716f8 Implement textures that only have an alpha channel.
The most immediate use of this is for the company screen shadow;
it's horribly banded in 16-bit, and this lets us load it as an 8-bit texture,
using half the memory and giving full precision.

This could be automatically used, if all non-transparent pixels in a texture
are #FFFFFF.  (todo)

This can also allow us to have extremely large, memory-compact fonts.
A 1024x1024 layer in ALPHA4 is just 512k, and can store several thousand
16x16 glyphs.  (The only trouble is actually constructing such a font;
doing it by hand in Photoshop isn't a nice option.)
2003-03-24 22:38:34 +00:00
Glenn Maynard 35bf217063 oops; fix hack 2003-03-11 21:05:53 +00:00
Glenn Maynard 3936f52035 fix garbage value when glGetTexLevelParameteriv returns
error
2003-03-11 19:06:11 +00:00
Glenn Maynard b14c6cf846 experiment to try to fix danger background thrashing 2003-03-11 18:52:50 +00:00
Glenn Maynard ed64f269ef Work around GLDirect bug. 2003-03-06 09:26:07 +00:00
Glenn Maynard 719d8f6b4e use GL_COLOR_TABLE_FORMAT instead of
GL_COLOR_TABLE_FORMAT_EXT; it's defined in glext.h

(we could enable this if the imaging subset is defined, too, but checking
for the extension version is probably good enough)
2003-02-20 02:25:10 +00:00
Glenn Maynard 42cfd6f98c stdafx -> global 2003-02-16 04:01:45 +00:00
Glenn Maynard 6b27cd5b58 er, no, this one 2003-02-15 00:15:26 +00:00
Glenn Maynard 3f2c342b26 and another annoying cast 2003-02-15 00:14:28 +00:00
Glenn Maynard f4a14f801e scope GLExt stuff explicitly 2003-02-14 23:29:30 +00:00
Glenn Maynard 2bfe7254fd fix a really obscure artifact 2003-01-26 02:35:55 +00:00
Glenn Maynard 22272aecb0 Fix an indirect movie texture crash (reset PixelStore)
Simplify texture handling: m_ID is const (can't be changed after
load at all); preference overrides are handled in RageTexture;
reloads no longer need a parameter
2003-01-26 00:56:13 +00:00
Glenn Maynard 7344ddf371 add a hack to fix annoying borders 2003-01-23 05:35:21 +00:00
Glenn Maynard f44f8d818c rudimentary paletted texture support and some other optimizations 2003-01-23 04:45:45 +00:00
Glenn Maynard 0fcf0b8ab1 reduce conversions 2003-01-22 04:18:02 +00:00
Glenn Maynard 83062aee55 fix crash 2003-01-01 21:21:44 +00:00
Glenn Maynard 3d8c4d9fc7 fmtTexture associated with format type 2003-01-01 09:07:34 +00:00
Glenn Maynard 773bad00ac use packed pixels (like we were with d3d) 2002-12-30 04:46:56 +00:00
Glenn Maynard 77e647d7a0 move image creation into a function 2002-12-30 04:03:49 +00:00
Glenn Maynard b97d3f8513 fix up bit depth stuff 2002-12-30 03:35:58 +00:00
Glenn Maynard e0b472f33e Textures are now fully ID'd by a single struct. 2002-12-30 02:43:52 +00:00
Glenn Maynard 49f05c9ab8 s/throw RageException/RageException::Throw/ 2002-12-21 19:34:02 +00:00
Glenn Maynard b3508e02cf move power_of_two
unset pixelstore settings when we're done
2002-12-20 06:28:22 +00:00
Glenn Maynard 628b0a36a0 fix stretch 2002-11-21 22:34:37 +00:00
Glenn Maynard 0812be2332 for now, throw on failed image load 2002-11-21 00:54:28 +00:00
Glenn Maynard 48eee90ab2 Reenable and move iterative filtering into the zoom proper. 2002-11-21 00:48:15 +00:00
Glenn Maynard dbb6f0416c fix not dithering in 32bpp 2002-11-20 01:25:40 +00:00
Glenn Maynard 197addc73f use texture prefs for bit depth directly 2002-11-15 23:45:48 +00:00
Chris Danford 487b4e9527 Readded texture stretch, texture dither, and 16 bit textures. 2002-11-14 01:26:19 +00:00
Glenn Maynard 892fcb47dc impement Invalidate() 2002-11-12 09:23:15 +00:00
Chris Danford 628dea9da7 OpenGL checkin. Movie textures, texture stretch, texture dither, and 16 bit textures are broken. 2002-11-11 04:53:31 +00:00
Glenn Maynard af8b074f16 cleanup 2002-10-30 23:43:35 +00:00
Glenn Maynard f2856485aa Arg. This is ugly and slow, but at least it's a real linear filter.
Handle extreme resizing iteratively, which gives us something like
a triangle filter--slower and probably not quite as good, but much
better than it was.
2002-10-30 23:36:16 +00:00
Chris Danford ec202633e9 Added .GetString() to all CStrings passed in vargs 2002-10-29 07:58:44 +00:00
Glenn Maynard 98470966a8 Remove comment. It's out-of-date and probably misleading to anyone
reading it.  Easier to keep inline comments updated than a large prefixed
description.
2002-10-28 09:38:06 +00:00
Glenn Maynard 5c2dbf9426 remove boring timings 2002-10-28 09:35:03 +00:00
Glenn Maynard 3d0379f5a9 Figure out the texture format by starting at the input alpha depth and
and pruning it down, instead of starting at the hint.
2002-10-28 09:33:13 +00:00
Glenn Maynard cc68e1d3a9 convert to RGBA for resizing (worry about making it work on other
formats after it's correct for this)
2002-10-28 09:02:53 +00:00
Glenn Maynard 195772c720 Fix VC7 project. Make rotozoom C++, updated, junk removed, single
zoom function, remove hack that causes image misalignment.
2002-10-28 06:19:23 +00:00
Glenn Maynard 66392109c7 remove timing cruft 2002-10-24 06:35:10 +00:00
Glenn Maynard 4c50a27275 New texture loader. 2002-10-24 04:16:15 +00:00
Chris Danford d0412d9a03 Changed toggle resolution from 400 to 320 because 320 looks better. 2002-10-20 18:03:11 +00:00
Chris Danford 1c75f1b095 More efficient texture memory usage. Fixes hickups on BGAnimation change. 2002-10-20 17:18:05 +00:00
Glenn Maynard f15a46f431 Don't set RageTexture::m_TextureFormat. (Nothing ever reads it beyond
texture creation, so it can be removed.)
2002-10-20 05:13:34 +00:00
Glenn Maynard 22b95f922f Change DWORD to int in *Texture*. (Maybe it should be unsigned, but
we don't use unsigned much anyway.)
2002-10-19 19:30:34 +00:00
Chris Danford 1a2cc7dfdf Switched texture stretch filter to linear instead of triangle for faster loading (I can't see the difference) 2002-10-18 19:10:37 +00:00
Chris Danford 05cb828e81 Yet more theme cleanup. This should be the job of the artists! 2002-09-24 03:12:04 +00:00
Glenn Maynard e3c59f9b0a put in a value for assert 2002-09-13 18:32:39 +00:00
Chris Danford 144a7339f2 re-enabled alpha override and dithering for song BGs 2002-09-11 06:49:30 +00:00