Commit Graph
197 Commits
Author SHA1 Message Date
taylor 33780d9f26 get rid of GL_activate and GL_deactivate, it was just Glide ported stuff that we never used and never needed
handle window/fullscreen/minimize changes better, fixes cursor handling mostly (Mantis bug #1146)
don't flush on gamma change, we don't really need to any more
2006-12-07 18:07:51 +00:00
taylor 03834fd5a0 properly support the updated window create code (all told: should take of of Mantis bugs #542, #624, #1140, and possibly #962 and #1124) 2006-11-15 00:47:57 +00:00
taylor 723e5d97f4 enable/disable alpha test based on blend mode (found this hidden in an old tree, may help with blending the newer alphablend mode) 2006-11-06 05:21:32 +00:00
taylor e53cf0b18d grrr ... fix dos EOL chars 2006-10-27 06:44:35 +00:00
taylor 4e3b4a4d72 don't require hardware GL if running FRED (this is mainly for my benefit since I always forget to add that locally) 2006-10-24 13:39:26 +00:00
taylor ca9e6d1cb8 bit of cleanup (technically the vertex buffer stuff is part of a much larger change slated for post-3.6.9, but this should be a little faster) 2006-10-01 19:24:46 +00:00
taylor 396fdf6e36 clean up the function ptrs so that it's a bit easier to read 2006-09-24 22:54:24 +00:00
taylor 7846d6f8c8 minor clean and code optimizations
clean up view/proj matrix fubar that made us need far more matrix levels that actually needed (partial fix for Mantis #563)
add debug safety check to make sure that we don't use more than 2 proj matrices (all that GL is required to support)
set up a texture matrix for the env map to that it doesn't move/look funky
2006-09-24 13:26:01 +00:00
taylor 42d9e22380 some gamma ramp fixage, still hasn't gotten a steller review from DaBrain but it does work much better than before, so I'll tweak it later if need be 2006-09-20 04:58:13 +00:00
taylor 698686748d allow W32 init fallback if desktop depth is less than requested game depth (it may look like crap, but at least it will work) 2006-08-29 07:27:43 +00:00
taylor 534995aa38 clean up the grstub mess (for work on standalone server, and just for sanity sake)
move color and shader functions to 2d.cpp since they are exactly the same everywhere
don't bother with the function pointer for gr_set_font(), it's the same everywhere anyway
2006-08-22 05:41:36 +00:00
taylor f47fde1eda OMG! MEMLEAK!!!! (maybe no one will notice that it was my fault ;)) 2006-08-19 04:23:56 +00:00
taylor 8887b83f53 very small math optimization 2006-08-09 14:41:44 +00:00
taylor 8088a2c1f1 only do i2fl() on the font bitmap once per string rather than doing it per-letter (basically unnoticable performance boost)
before doing alpha channel check, make sure the bitmap is valid, since it doesn't actually catch that until later in the texture code
2006-07-17 01:10:45 +00:00
taylor a7282eca38 handle non-MVE movies a bit better in OpenGL (don't get freaky with the window, don't lose input, etc.)
some cleanup to OpenGL window handling, to fix min/max/full issues, and try to make shutdown a little nicer
2006-07-13 22:06:38 +00:00
Goober5000 ab19abcb21 cvs comment tweaks 2006-07-05 23:37:13 +00:00
taylor 825e394523 be sure to properly reset fullscreen/minimized state vars as we switch between them 2006-06-23 09:01:07 +00:00
taylor fc765d5e29 fix various things that Valgrind has been complaining about 2006-06-22 14:59:45 +00:00
taylor 19829284fe fix screenshots on big endian 2006-06-18 20:09:03 +00:00
taylor ca5b63540d sync current OGL changes:
- go back to using minimize mode which non-active, but doin't minimize when Fred_running
 - remove temporary cmdline options (-spec_scale, -env_scale, -alpha_alpha_blend)
 - change FBO renderbuffer link around a little to maybe avoid freaky drivers (or freaky code)
2006-06-12 03:37:24 +00:00
taylor 44f9b71191 this should hopefully fix cursor drift on multi-display configs 2006-06-05 23:59:11 +00:00
taylor b7c87f6047 flip color/depth values, appears some are initting software GL again and this was the problem previously 2006-06-01 07:33:59 +00:00
taylor e3f7b75542 render strings a string at a time rather than a letter at the time (should be at least 3 times faster from state changes alone) 2006-05-31 04:02:05 +00:00
taylor 646e844eb2 z-range for 2D ortho is -1.0 to 1.0, may help avoid some strangeness if we actually get that right. :)
minor cleanup of old code and default settings
try not to bother with depth test unless we are actually going to need it (small performance boost in some cases)
don't clear depth bit in flip(), while technically correct it's also a bit redundant (and comes with a slight performance hit)
2006-05-30 03:53:52 +00:00
taylor 72e567a7b9 remove grd3dparticle.* and grd3dbatch.*, they are obsolete
allow us to build without D3D support under Windows (just define NO_DIRECT3D)
clean up TMAP flags
fix a couple of minor OpenGL state change issues with spec and env map rendering
make sure we build again for OS X (OGL extension functions work a little different there)
render targets always need to be power-of-2 to avoid incomplete buffer issues in the code
when we disable culling in opengl_3dunlit be sure that we re-enable it on exit of function
re-fix screenshots
add true alpha blending support (with cmdline for now since the artwork has the catch up)
draw lines with float positioning, to be more accurate with resizing on non-standard resolutions
don't load cubemaps from file for D3D, not sure how to do it anyway
update geometry batcher code, memory fixes, dynamic stuff, basic fixage, etc.
2006-05-27 17:07:48 +00:00
taylor 7a8789e334 OpenGL envmap support
newer OpenGL extension support
add GL_ARB_texture_rectangle support for non-power-of-2 textures as interface graphics
add cubemap reading and writing support to DDS loader
fix bug in DDS loader that made compressed images with mipmaps use more memory than they really required
add support for a default envmap named "cubemap.dds"
new mission flag "$Environment Map:" to use a pre-existing envmap
minor cleanup of compiler warning messages
get rid of wasteful math from gr_set_proj_matrix()
remove extra gr_set_*_matrix() calls from starfield.cpp as there was no longer a reason for them to be there
clean up bmpman flags in reguards to cubemaps and render targets
disable D3D envmap code until it can be upgraded to current level of code
remove bumpmap code from OpenGL stuff (sorry but it was getting in the way, if it was more than copy-paste it would be worth keeping)
replace gluPerspective() call with glFrustum() call, it's a lot less math this way and saves the extra function call
2006-05-13 07:29:52 +00:00
phreak 0972de3462 gr_flash_alpha(), much like gr_flash(), but allows an alpha value to be passed 2006-04-15 00:13:22 +00:00
taylor 2ba79e102e deal with font rendering issue from float precision on non-standard resolutions. this is only about a 97% fix/hack
but I don't want people complaining about the bad issue until I can figure out a more appropriate solution with
  gr_set_clip(), which is the real source of the problem
2006-04-13 12:15:58 +00:00
taylor 2ee9d66423 some cleanup and slight reorg
- remove special uv offsets for non-standard res, they were stupid anyway and don't actually fix the problem (which should actually be fixed now)
 - avoid some costly math where possible in the drawing functions
 - add opengl_error_string(), this is part of a later update but there wasn't a reason to not go ahead and commit this peice now
 - minor cleanup to Win32 extension defines
 - make opengl_lights[] allocate only when using OGL
 - cleanup some costly per-frame lighting stuff
 - clamp textures for interface and aabitmap (font) graphics since they shouldn't normally repeat anyway (the default)
   (doing this for D3D, if it doesn't already, may fix the blue-lines problem since a similar issue was seen with OGL)
2006-04-12 01:10:35 +00:00
taylor 6c54f20ef5 make sure to only allow on screen save at the time (I don't like having it restricted but since it's not used for anything else there is little point) 2006-03-26 08:26:45 +00:00
taylor 2205a9e660 minor cleanup 2006-03-22 18:12:50 +00:00
taylor 476ab31130 add v-sync support for OGL (I skimmped on this a bit but will go back to do something better, "special" extension wise, at a later date) 2006-02-24 07:35:48 +00:00
taylor 6884c57e2e start of some of the newer GL stuff
- initial support for dropping from fullscreen to windowed mode (will get more changes in another day or so, mainly because of FRED2)
 - a little cleanup
 - init change for WGL to be a little safer and to help report what it tried to use and what it got in the way of pixelformat
 - don't use global OGL_enabled to decide if GL is initialized or not (also getting more changes shortly)
 - make sure opengl_close() will always execute properly through atexit() (also getting changed later to not run through atexit())
2006-02-20 07:23:29 +00:00
taylor 7e7a881354 better lighting for OpenGL
remove some extra stuff that was from sectional bitmaps since we don't need it anymore
some basic lighting code cleanup
2006-01-30 06:40:49 +00:00
taylor 8c46901b47 break out of error check loop after the first check in FRED since it doesn't like this for some reason 2006-01-24 13:38:30 +00:00
taylor 3da6678877 clear depth buffer on each page flip (may give a slight speed increase)
change error check handling again, FRED may like this better but if it starts hanging again I have another fix
little safety checks for opengl_close()
fix atexit() call for OGL closeout
2006-01-22 01:30:33 +00:00
wmcoolmon 24d8f7973f Scripting updates; Special scripting image list; Better operator meta; Orientation type; Wing type; Texture type. Fix for MSVC7 compiling. 2006-01-21 02:22:05 +00:00
taylor ab81c738db don't forcefully disable multisample still (part of an old ATI fix that didn't actually fix anything) 2006-01-21 00:14:25 +00:00
taylor 74e33659ab gr_*_bitmap_ex() stuff, D3D side is 100% untested to even compile
several other very minor changes as well
2006-01-20 17:15:16 +00:00
wmcoolmon a657ad4cad Lua debugging stuff; gr_bitmap_ex stuff for taylor 2006-01-19 16:00:04 +00:00
taylor 3e1c3c6ff4 don't specify a read buffer, something with this is screwing up ATI cards, a debug string should satisfy a hunch
ifdef out the bumpmap stuff, it's very wrong anyway :)
2006-01-02 07:25:11 +00:00
taylor 1b2a6031e2 we are using gouraud lighting here so be sure to set the proper tmap flag (fixes D3D, corrects OGL) 2005-12-29 20:12:51 +00:00
wmcoolmon 246cfcfa65 Codebase commit, most notably including objecttypes.tbl 2005-12-29 08:08:42 +00:00
taylor 150e297236 put texture filter debug message back (was commented out for some reason in phreak's commit) 2005-12-29 04:33:15 +00:00
phreak 78e2ce963c changed around aabitmap calls to accept a "mirror" parameter. defaults to false, and is only true for mirrored briefing icons.
If the mirror param is true, then the picture is mirrored about the y-axis so left becomes right and vice versa.
2005-12-29 00:52:57 +00:00
taylor 0762e9f864 save screenshots into <gamedir>/screenshots/
another attempt at fixing popups with single colors (saves memory too, hope it doesn't blow up)
add a debug msg about mipmap filter in use
2005-12-28 22:24:48 +00:00
taylor 90d6bce698 one more attempt to fix screenshots on Radeons. 2005-12-22 19:15:20 +00:00
taylor 83eeeb3a35 ehh, didn't ever fix that to my satisfaction, bastardize it until more work can be done (so people don't start filing bug reports) 2005-12-16 16:34:35 +00:00
taylor 9ac1accce9 "House Keeping!!"
- minor cleanup of things that have bothered me at one time or another
  - slight speedup from state switching
  - slightly better specmap handling, fixes a couple of (not frequent) strange and sorta random issues
  - make sure to only disable HTL arb stuff when in HTL mode
  - handle any extra lighting pass before spec pass so the light can be applied properly
2005-12-16 06:48:28 +00:00
taylor 4c42eb6fcc didn't mean for that to hit CVS, it makes neb missions work a little strange 2005-12-15 16:26:35 +00:00