Commit Graph
81 Commits
Author SHA1 Message Date
Valathil bca5096e9a Fix OpenGL errors caused by animated shaders when not rendering to a fbo 2012-01-14 19:24:29 +00:00
The_E 41d68f3aca From m|m: Fix for Mantis 2400 (RTT rendering broken in current builds). Also changes GL_rendering_to_framebuffer to the more aptly named GL_rendering_to_texture. 2011-12-23 13:09:39 +00:00
The_E 17a420c92a Reverting the texture cache stuff due to issues with some models 2011-11-07 09:26:37 +00:00
The_E e004154986 Eep, missed a "!" 2011-11-05 19:52:02 +00:00
The_E 593d3c00c1 Changing opengl_render_pipeline_program to avoid unnecessary texture uploads. 2011-11-05 19:23:39 +00:00
Echelon9 8543045b15 STL types again. Some of these are just inefficient, like reserving one extra slot for each additional element, and then pushing that element onto the STL type 2011-10-17 13:07:24 +00:00
IssMneur 0717ad3d13 PVS-Studio fix: V512 A call of the 'memcpy' function will lead to overflow of the buffer '& x'. (pstypes.h:131) 2011-09-08 05:39:53 +00:00
Swifty fe605149c4 Soft sphere sprite rendering for particles, explosions, shockwaves, and thrusters. 2011-08-20 22:14:52 +00:00
The_E ebf412d9f4 From Valathil: Allow shader effects to be less wrong if the Post-processing framebuffer is not active 2011-07-31 20:37:42 +00:00
The_E 2dc34f3e1f This is the correct version now. 2011-07-30 22:39:49 +00:00
The_E 7f219cad2c Reverting due to bugs 2011-07-30 22:32:09 +00:00
The_E 32c5491d83 Adding support for the new cloaking effect. 2011-07-30 21:13:02 +00:00
The_E 8fb2085a9d Adding the realtime ship/weapon select effects by Valathil. 2011-07-26 22:02:12 +00:00
The_E 7b2c8f7086 From Valathil: Do light sorting only once per object 2011-07-13 09:03:03 +00:00
The_E a46de9340f Fix for Mantis 2395: Introduces troubleshooting flag to switch between using glDrawElements and glDrawRangeElements 2011-06-28 20:20:25 +00:00
Zacam 75043ff5b1 go_faster from Antipodes 6. Everybody, say "Thank you, taylor!" 2010-10-18 18:32:37 +00:00
Swifty b9baca78ed Fix frame buffer objects from rendering upside down after calling gr_opengl_set_clip and gr_opengl_set_projection_matrix. 2010-03-03 12:47:08 +00:00
portej05 cf3a4975da Antipodes #4 - Post Processing from Hery 2009-12-14 13:57:33 +00:00
portej05 6a8d45c93d Replace most instances of std::vector with SCP_vector. Memory is now all run through vm_malloc and vm_free.
Watch it go up AND down in mission.
2009-07-11 07:07:57 +00:00
portej05 719825f80d The big CVS comment removal. This chops approx. 3.5mb off a full checkout.
I've tested this through compiling and through hand checking. 
Normalises line endings in ALL files to \n.
2009-06-20 08:08:20 +00:00
Wanderer cabc75bfe5 merge from wanderer branch. 2d and 3d radar images support 2009-05-18 22:08:13 +00:00
chief1983 51a6901dae OpenGL tweaks from Taylor's 3610 patch and a big fix for OS X graphics - Thanks Echelon9! 2009-01-03 02:39:11 +00:00
taylor 9231692e48 basic commit of a few Xt tree changes
- updated OpenGL code (basic shader support, etc.)
 - new ships lab code
 - scripting RTT fixes
 - don't let FRED hog CPU time
2008-07-16 02:49:19 +00:00
phreak 43407479d5 Alpha blending and line widths for radar orb rings when in HTL mode. 2008-06-03 00:18:58 +00:00
taylor 32c5fa6d1d remove multi_elements thingy since it caused problems for some ATI users, and it was kinda crazy anyway 2008-04-01 22:06:17 +00:00
taylor 73fb0897a8 IBX version 2 support (includes Bobboau's earlier D3D fixes for it) 2007-02-12 00:19:48 +00:00
taylor 71acc9a7a3 obsolete gluLookAt() in favor of doing it manually, should be slight faster and more precise 2007-02-10 00:05:48 +00:00
taylor 534724a06e fix OpenGL envmap "issues" (ie, stupid taylor stuff)
get rid of that RCS_Name thing, CVS kept changing it automatically and it was getting /really/ annoying
2006-12-27 09:26:21 +00:00
taylor 5a4332c3a8 lots of little cleanup, stale code removal, and small performance adjustments
get rid of the default combine texture state, we don't need it in general, and it can screw up fonts
get rid of the secondary color support, it doesn't do much in non-HTL mode, screws up various things, and has long since been obsolete but material setup
get rid of the old gamma setup, it actually conflicts with newer gamma support
default texture wrapping to edge clamp
do second gr_clear() on init to be sure and catch double-buffer
make sure that our active texture will always get reset to 0, rather than leaving it at whatever was used last
fixed that damn FBO bug from it hanging on textures and causing some rendering errors for various people
only lock verts once in HTL model rendering
2006-12-26 05:25:18 +00:00
taylor 56b572b4fa minor cleanups and speedups
when using lighting falloff, be sure to drop emissive light when falloff gets low enough (otherwise we still se everything fine)
2006-12-07 18:16:11 +00:00
taylor 7978379a54 rename set_warp_globals() to model_set_warp_globals()
remove two old/unused MR flags (MR_ALWAYS_REDRAW, used for caching that doesn't work; MR_SHOW_DAMAGE, didn't do anything)
add MR_FULL_DETAIL to render an object regardless of render/detail box setting
change "model_current_LOD" to a global "Interp_detail_level" and the static "Interp_detail_level" to "Interp_detail_level_locked", a bit more descriptive
minor bits of cleanup
change a couple of vm_vec_scale_add2() calls to just vm_vec_add2() calls in ship.cpp, since that was the final result anyway
2006-10-27 06:42:30 +00:00
taylor ea85618c60 fix the envmap-getting-rotated-by-turrets bug (though it did make me chuckle a bit when I first saw it ;))
try to reuse old view setup info, if we are using the same settings again (for speed up purposes, will be a bigger deal when bumpmapping gets here)
2006-10-24 13:38:23 +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 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 5612c6c462 don't render extra lighting passes when fog is enabled, prevents fog fragment from getting added for each pass
wobble wobble no more!!
2006-07-28 02:45:10 +00:00
taylor 9f4c28bd1d minor cleanup/optimization to beam warmup glow rendering function
various lighting code cleanups
 - try to always make sure beam origin lights occur outside of model
 - make Static_lights[] dynamic
 - be sure to reset to first 8 lights when moving on to render spec related texture passes
 - add ambient color to point lights (helps warp effects)
 - sort lights to try and get more important and/or visible lights to always happen in initial render pass
2006-07-24 07:38:00 +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 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
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
Goober5000 b52b6b1e00 spelling 2006-02-25 21:47:19 +00:00
wmcoolmon c4755fb10f Debug warning; compiler warning fix. 2006-01-31 06:43:21 +00:00
taylor 26b25d548a better lighting for OpenGL
remove some extra stuff that was from sectional bitmaps since we don't need it anymore
2006-01-30 06:52:15 +00:00
phreak f36a0b2355 htl_lines should follow zbuffering rules 2006-01-25 03:11:52 +00:00
taylor fa811c3915 allow gr_render_buffer() to take TMAP flags
let gr_render_buffer() render untextured polys (OGL only until some D3D people fix it on their side)
add MR_SHOW_OUTLINE_HTL flag so we easily render using HTL mode for wireframe views
make Interp_verts/Interp_norms/etc. dynamic and get rid of the extra htl_* versions
2006-01-18 16:14:04 +00:00
wmcoolmon 246cfcfa65 Codebase commit, most notably including objecttypes.tbl 2005-12-29 08:08:42 +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 30bd180186 remove GL_NO_HTL define since it's basically useless at this point and can produced non-functioning builds
minor cleanup and readability changes
get Apple GL version change in CVS finally, the capabilities of an Apple GL version don't neccessarily correspond to it's features
2005-12-08 15:07:57 +00:00
taylor c1f4db610f partial spec fix, can't mass kill the pointers when they are still needed for the second pass (still something else wrong though)
forgot that the extra rangeelement optimization check isn't needed anymore, just look at indices since that's all we're using
2005-12-07 05:42:50 +00:00