deal with a index_buffer memory leak that Valgrind has always complained about
make HTL model buffers dynamic (get rid of MAX_BUFFERS_PER_SUBMODEL)
get rid of MAX_BUFFERS
make D3D vertex buffers dynamic, like OGL has already done
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
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.
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
use floats for gr_bitmap() size and positions, mainly for non-standard resolutions since this allows proper resizing and positioning
(the cast to float was happening later anyway so there should be not additional slowdown from that with standard resolutions)
change g3_draw_2d_poly_bitmap() to use floats instead of ints, gets rid of the extra cast and allows better resize values
always use bm_set_render_target() rather than the gr_ version so that the graphics state is set properly
save the original gamma ramp on OGL init so that it can be restored on exit
more non-standard res fixing
- I think everything should default to resize now (much easier than having to figure that crap out)
- new mouse_get_pos_unscaled() function to return 1024x768/640x480 relative values so we don't have to do it later
- lots of little cleanups which fix several strange offset/size problems
- fix gr_resize/unsize_screen_pos() so that it won't wrap on int (took too long to track this down)
- remove all bitmap section support and fix problems with previous attempt
( code/bmpman/bmpman.cpp, code/bmpman/bmpman.h, code/globalincs/pstypes.h,
code/graphics/2d.cpp, code/graphics/2d.h code/graphics/grd3dbmpman.cpp,
code/graphics/grd3dinternal.h, code/graphics/grd3drender.cpp, code/graphics/grd3dtexture.cpp,
code/graphics/grinternal.h, code/graphics/gropengl.cpp, code/graphics/gropengl.h,
code/graphics/gropengllight.cpp, code/graphics/gropengltexture.cpp, code/graphics/gropengltexture.h,
code/graphics/tmapper.h, code/network/multi_pinfo.cpp, code/radar/radarorb.cpp
code/render/3ddraw.cpp )
- use CLAMP() define in gropengl.h for gropengllight instead of single clamp() function
- remove some old/outdated code from gropengl.cpp and gropengltexture.cpp