FS2_Open
Open source remastering of the Freespace 2 engine
|
#include "bmpman/bmpman.h"
#include "cfile/cfile.h"
#include "globalincs/pstypes.h"
#include "graphics/tmapper.h"
Go to the source code of this file.
Classes | |
struct | shader |
struct | color |
struct | team_color |
struct | tsb_t |
class | poly_list |
class | colored_vector |
struct | line_list |
class | buffer_data |
class | vertex_buffer |
struct | screen |
struct | vertex_format_data |
class | vertex_layout |
Macros | |
#define | SDR_FLAG_MODEL_LIGHT (1<<0) |
#define | SDR_FLAG_MODEL_FOG (1<<1) |
#define | SDR_FLAG_MODEL_DIFFUSE_MAP (1<<2) |
#define | SDR_FLAG_MODEL_GLOW_MAP (1<<3) |
#define | SDR_FLAG_MODEL_SPEC_MAP (1<<4) |
#define | SDR_FLAG_MODEL_NORMAL_MAP (1<<5) |
#define | SDR_FLAG_MODEL_HEIGHT_MAP (1<<6) |
#define | SDR_FLAG_MODEL_ENV_MAP (1<<7) |
#define | SDR_FLAG_MODEL_ANIMATED (1<<8) |
#define | SDR_FLAG_MODEL_MISC_MAP (1<<9) |
#define | SDR_FLAG_MODEL_TEAMCOLOR (1<<10) |
#define | SDR_FLAG_MODEL_TRANSFORM (1<<11) |
#define | SDR_FLAG_MODEL_DEFERRED (1<<12) |
#define | SDR_FLAG_MODEL_SHADOW_MAP (1<<13) |
#define | SDR_FLAG_MODEL_GEOMETRY (1<<14) |
#define | SDR_FLAG_MODEL_SHADOWS (1<<15) |
#define | SDR_FLAG_MODEL_THRUSTER (1<<16) |
#define | SDR_FLAG_MODEL_CLIP (1<<17) |
#define | SDR_FLAG_PARTICLE_POINT_GEN (1<<0) |
#define | SDR_FLAG_BLUR_HORIZONTAL (1<<0) |
#define | SDR_FLAG_BLUR_VERTICAL (1<<1) |
#define | AC_TYPE_NONE 0 |
#define | AC_TYPE_HUD 1 |
#define | AC_TYPE_BLEND 2 |
#define | GR_ALPHABLEND_NONE 0 |
#define | GR_ALPHABLEND_FILTER 1 |
#define | GR_BITBLT_MODE_NORMAL 0 |
#define | GR_BITBLT_MODE_RLE 1 |
#define | GR_FOGMODE_NONE 0 |
#define | GR_FOGMODE_FOG 1 |
#define | GR_MAYBE_CLEAR_RES(bmap) do { int bmw = -1; int bmh = -1; if(bmap != -1){ bm_get_info( bmap, &bmw, &bmh, NULL, NULL, NULL); if((bmw != gr_screen.max_w) || (bmh != gr_screen.max_h)){gr_clear();} } else {gr_clear();} } while(0); |
#define | GR_DEFAULT (-1) |
#define | GR_STUB (100) |
#define | GR_OPENGL (104) |
#define | GR_NUM_RESOLUTIONS 2 |
#define | GR_640 0 |
#define | GR_1024 1 |
#define | GR_1024_THRESHOLD_WIDTH 1024 |
#define | GR_1024_THRESHOLD_HEIGHT 600 |
#define | GR_FILL_MODE_WIRE 1 |
#define | GR_FILL_MODE_SOLID 2 |
#define | GR_ZBUFF_NONE 0 |
#define | GR_ZBUFF_WRITE (1<<0) |
#define | GR_ZBUFF_READ (1<<1) |
#define | GR_ZBUFF_FULL (GR_ZBUFF_WRITE|GR_ZBUFF_READ) |
#define | GR_STENCIL_NONE 0 |
#define | GR_STENCIL_READ 1 |
#define | GR_STENCIL_WRITE 2 |
#define | GR_RESIZE_NONE 0 |
#define | GR_RESIZE_FULL 1 |
#define | GR_RESIZE_FULL_CENTER 2 |
#define | GR_RESIZE_MENU 3 |
#define | GR_RESIZE_MENU_ZOOMED 4 |
#define | GR_RESIZE_MENU_NO_OFFSET 5 |
#define | GR_CURSOR_LOCK 1 |
#define | GR_CURSOR_UNLOCK 2 |
#define | GR_CALL(x) (*x) |
#define | gr_print_screen GR_CALL(gr_screen.gf_print_screen) |
#define | gr_reset_clip GR_CALL(gr_screen.gf_reset_clip) |
#define | gr_clear GR_CALL(gr_screen.gf_clear) |
#define | gr_curve GR_CALL(gr_screen.gf_curve) |
#define | gr_aaline GR_CALL(gr_screen.gf_aaline) |
#define | gr_scaler GR_CALL(gr_screen.gf_scaler) |
#define | gr_aascaler GR_CALL(gr_screen.gf_aascaler) |
#define | gr_tmapper GR_CALL(gr_screen.gf_tmapper) |
#define | gr_render GR_CALL(gr_screen.gf_render) |
#define | gr_render_effect GR_CALL(gr_screen.gf_render_effect) |
#define | gr_flash GR_CALL(gr_screen.gf_flash) |
#define | gr_flash_alpha GR_CALL(gr_screen.gf_flash_alpha) |
#define | gr_zbuffer_get GR_CALL(gr_screen.gf_zbuffer_get) |
#define | gr_zbuffer_set GR_CALL(gr_screen.gf_zbuffer_set) |
#define | gr_zbuffer_clear GR_CALL(gr_screen.gf_zbuffer_clear) |
#define | gr_stencil_set GR_CALL(gr_screen.gf_stencil_set) |
#define | gr_stencil_clear GR_CALL(gr_screen.gf_stencil_clear) |
#define | gr_alpha_mask_set GR_CALL(gr_screen.gf_alpha_mask_set) |
#define | gr_save_screen GR_CALL(gr_screen.gf_save_screen) |
#define | gr_restore_screen GR_CALL(gr_screen.gf_restore_screen) |
#define | gr_free_screen GR_CALL(gr_screen.gf_free_screen) |
#define | gr_set_gamma GR_CALL(gr_screen.gf_set_gamma) |
#define | gr_get_region GR_CALL(gr_screen.gf_get_region) |
#define | gr_set_cull GR_CALL(gr_screen.gf_set_cull) |
#define | gr_set_color_buffer GR_CALL(gr_screen.gf_set_color_buffer) |
#define | gr_cross_fade GR_CALL(gr_screen.gf_cross_fade) |
#define | gr_preload GR_CALL(gr_screen.gf_preload) |
#define | gr_set_clear_color GR_CALL(gr_screen.gf_set_clear_color) |
#define | gr_translate_texture_matrix GR_CALL(gr_screen.gf_translate_texture_matrix) |
#define | gr_push_texture_matrix GR_CALL(gr_screen.gf_push_texture_matrix) |
#define | gr_pop_texture_matrix GR_CALL(gr_screen.gf_pop_texture_matrix) |
#define | gr_bm_free_data GR_CALL(*gr_screen.gf_bm_free_data) |
#define | gr_bm_create GR_CALL(*gr_screen.gf_bm_create) |
#define | gr_bm_init GR_CALL(*gr_screen.gf_bm_init) |
#define | gr_bm_page_in_start GR_CALL(*gr_screen.gf_bm_page_in_start) |
#define | gr_bm_data GR_CALL(*gr_screen.gf_bm_data) |
#define | gr_bm_make_render_target GR_CALL(*gr_screen.gf_bm_make_render_target) |
#define | gr_set_texture_addressing GR_CALL(*gr_screen.gf_set_texture_addressing) |
#define | gr_create_buffer GR_CALL(*gr_screen.gf_create_buffer) |
#define | gr_pack_buffer GR_CALL(*gr_screen.gf_pack_buffer) |
#define | gr_config_buffer GR_CALL(*gr_screen.gf_config_buffer) |
#define | gr_destroy_buffer GR_CALL(*gr_screen.gf_destroy_buffer) |
#define | gr_update_buffer_object GR_CALL(*gr_screen.gf_update_buffer_object) |
#define | gr_update_transform_buffer GR_CALL(*gr_screen.gf_update_transform_buffer) |
#define | gr_set_transform_buffer_offset GR_CALL(*gr_screen.gf_set_transform_buffer_offset) |
#define | gr_create_stream_buffer GR_CALL(*gr_screen.gf_create_stream_buffer) |
#define | gr_render_stream_buffer GR_CALL(*gr_screen.gf_render_stream_buffer) |
#define | gr_render_stream_buffer_start GR_CALL(*gr_screen.gf_render_stream_buffer_start) |
#define | gr_render_stream_buffer_end GR_CALL(*gr_screen.gf_render_stream_buffer_end) |
#define | gr_set_buffer GR_CALL(*gr_screen.gf_set_buffer) |
#define | gr_set_proj_matrix GR_CALL(*gr_screen.gf_set_proj_matrix) |
#define | gr_end_proj_matrix GR_CALL(*gr_screen.gf_end_proj_matrix) |
#define | gr_set_view_matrix GR_CALL(*gr_screen.gf_set_view_matrix) |
#define | gr_end_view_matrix GR_CALL(*gr_screen.gf_end_view_matrix) |
#define | gr_push_scale_matrix GR_CALL(*gr_screen.gf_push_scale_matrix) |
#define | gr_pop_scale_matrix GR_CALL(*gr_screen.gf_pop_scale_matrix) |
#define | gr_start_instance_matrix GR_CALL(*gr_screen.gf_start_instance_matrix) |
#define | gr_start_angles_instance_matrix GR_CALL(*gr_screen.gf_start_angles_instance_matrix) |
#define | gr_end_instance_matrix GR_CALL(*gr_screen.gf_end_instance_matrix) |
#define | gr_make_light GR_CALL(*gr_screen.gf_make_light) |
#define | gr_modify_light GR_CALL(*gr_screen.gf_modify_light) |
#define | gr_destroy_light GR_CALL(*gr_screen.gf_destroy_light) |
#define | gr_set_light GR_CALL(*gr_screen.gf_set_light) |
#define | gr_reset_lighting GR_CALL(*gr_screen.gf_reset_lighting) |
#define | gr_set_ambient_light GR_CALL(*gr_screen.gf_set_ambient_light) |
#define | gr_scene_texture_begin GR_CALL(*gr_screen.gf_scene_texture_begin) |
#define | gr_scene_texture_end GR_CALL(*gr_screen.gf_scene_texture_end) |
#define | gr_copy_effect_texture GR_CALL(*gr_screen.gf_copy_effect_texture) |
#define | gr_post_process_set_effect GR_CALL(*gr_screen.gf_post_process_set_effect) |
#define | gr_post_process_set_defaults GR_CALL(*gr_screen.gf_post_process_set_defaults) |
#define | gr_post_process_begin GR_CALL(*gr_screen.gf_post_process_begin) |
#define | gr_post_process_end GR_CALL(*gr_screen.gf_post_process_end) |
#define | gr_post_process_save_zbuffer GR_CALL(*gr_screen.gf_post_process_save_zbuffer) |
#define | gr_deferred_lighting_begin GR_CALL(*gr_screen.gf_deferred_lighting_begin) |
#define | gr_deferred_lighting_end GR_CALL(*gr_screen.gf_deferred_lighting_end) |
#define | gr_deferred_lighting_finish GR_CALL(*gr_screen.gf_deferred_lighting_finish) |
#define | gr_set_lighting GR_CALL(*gr_screen.gf_lighting) |
#define | gr_set_light_factor GR_CALL(*gr_screen.gf_set_light_factor) |
#define | gr_center_alpha GR_CALL(*gr_screen.gf_center_alpha) |
#define | gr_set_thrust_scale GR_CALL(*gr_screen.gf_set_thrust_scale) |
#define | gr_start_clip GR_CALL(*gr_screen.gf_start_clip_plane) |
#define | gr_end_clip GR_CALL(*gr_screen.gf_end_clip_plane) |
#define | gr_zbias GR_CALL(*gr_screen.gf_zbias) |
#define | gr_set_fill_mode GR_CALL(*gr_screen.gf_set_fill_mode) |
#define | gr_set_texture_panning GR_CALL(*gr_screen.gf_set_texture_panning) |
#define | gr_draw_line_list GR_CALL(*gr_screen.gf_draw_line_list) |
#define | gr_set_line_width GR_CALL(*gr_screen.gf_set_line_width) |
#define | gr_line_htl GR_CALL(*gr_screen.gf_line_htl) |
#define | gr_sphere_htl GR_CALL(*gr_screen.gf_sphere_htl) |
#define | gr_maybe_create_shader GR_CALL(*gr_screen.gf_maybe_create_shader) |
#define | gr_set_animated_effect GR_CALL(*gr_screen.gf_set_animated_effect) |
#define | gr_clear_states GR_CALL(*gr_screen.gf_clear_states) |
#define | gr_set_team_color GR_CALL(*gr_screen.gf_set_team_color) |
#define | gr_update_texture GR_CALL(*gr_screen.gf_update_texture) |
#define | gr_get_bitmap_from_texture GR_CALL(*gr_screen.gf_get_bitmap_from_texture) |
#define | gr_shadow_map_start GR_CALL(*gr_screen.gf_shadow_map_start) |
#define | gr_shadow_map_end GR_CALL(*gr_screen.gf_shadow_map_end) |
#define | VB_FLAG_POSITION (1<<0) |
#define | VB_FLAG_RHW (1<<1) |
#define | VB_FLAG_NORMAL (1<<2) |
#define | VB_FLAG_DIFUSE (1<<3) |
#define | VB_FLAG_SPECULAR (1<<4) |
#define | VB_FLAG_UV1 (1<<5) |
#define | VB_FLAG_UV2 (1<<6) |
#define | VB_FLAG_UV3 (1<<7) |
#define | VB_FLAG_UV4 (1<<8) |
#define | VB_FLAG_TANGENT (1<<9) |
#define | VB_FLAG_LARGE_INDEX (1<<10) |
#define | VB_FLAG_MODEL_ID (1<<11) |
#define | VB_FLAG_TRANS (1<<12) |
Typedefs | |
typedef struct shader | shader |
typedef struct color | color |
typedef struct team_color | team_color |
typedef struct tsb_t | tsb_t |
typedef struct screen | screen |
#define gr_bm_make_render_target GR_CALL(*gr_screen.gf_bm_make_render_target) |
#define gr_bm_page_in_start GR_CALL(*gr_screen.gf_bm_page_in_start) |
#define gr_copy_effect_texture GR_CALL(*gr_screen.gf_copy_effect_texture) |
#define gr_create_stream_buffer GR_CALL(*gr_screen.gf_create_stream_buffer) |
#define gr_deferred_lighting_begin GR_CALL(*gr_screen.gf_deferred_lighting_begin) |
#define gr_deferred_lighting_end GR_CALL(*gr_screen.gf_deferred_lighting_end) |
#define gr_deferred_lighting_finish GR_CALL(*gr_screen.gf_deferred_lighting_finish) |
#define gr_destroy_buffer GR_CALL(*gr_screen.gf_destroy_buffer) |
#define gr_draw_line_list GR_CALL(*gr_screen.gf_draw_line_list) |
#define gr_end_instance_matrix GR_CALL(*gr_screen.gf_end_instance_matrix) |
#define gr_end_proj_matrix GR_CALL(*gr_screen.gf_end_proj_matrix) |
#define gr_end_view_matrix GR_CALL(*gr_screen.gf_end_view_matrix) |
#define gr_get_bitmap_from_texture GR_CALL(*gr_screen.gf_get_bitmap_from_texture) |
#define gr_maybe_create_shader GR_CALL(*gr_screen.gf_maybe_create_shader) |
#define gr_pop_scale_matrix GR_CALL(*gr_screen.gf_pop_scale_matrix) |
#define gr_pop_texture_matrix GR_CALL(gr_screen.gf_pop_texture_matrix) |
#define gr_post_process_begin GR_CALL(*gr_screen.gf_post_process_begin) |
#define gr_post_process_end GR_CALL(*gr_screen.gf_post_process_end) |
#define gr_post_process_save_zbuffer GR_CALL(*gr_screen.gf_post_process_save_zbuffer) |
#define gr_post_process_set_defaults GR_CALL(*gr_screen.gf_post_process_set_defaults) |
#define gr_post_process_set_effect GR_CALL(*gr_screen.gf_post_process_set_effect) |
#define gr_push_scale_matrix GR_CALL(*gr_screen.gf_push_scale_matrix) |
#define gr_push_texture_matrix GR_CALL(gr_screen.gf_push_texture_matrix) |
#define gr_render_stream_buffer GR_CALL(*gr_screen.gf_render_stream_buffer) |
#define gr_render_stream_buffer_end GR_CALL(*gr_screen.gf_render_stream_buffer_end) |
#define gr_render_stream_buffer_start GR_CALL(*gr_screen.gf_render_stream_buffer_start) |
#define gr_reset_clip GR_CALL(gr_screen.gf_reset_clip) |
#define gr_reset_lighting GR_CALL(*gr_screen.gf_reset_lighting) |
#define gr_scene_texture_begin GR_CALL(*gr_screen.gf_scene_texture_begin) |
#define gr_scene_texture_end GR_CALL(*gr_screen.gf_scene_texture_end) |
#define gr_set_ambient_light GR_CALL(*gr_screen.gf_set_ambient_light) |
#define gr_set_animated_effect GR_CALL(*gr_screen.gf_set_animated_effect) |
#define gr_set_clear_color GR_CALL(gr_screen.gf_set_clear_color) |
#define gr_set_color_buffer GR_CALL(gr_screen.gf_set_color_buffer) |
#define gr_set_light_factor GR_CALL(*gr_screen.gf_set_light_factor) |
#define gr_set_line_width GR_CALL(*gr_screen.gf_set_line_width) |
#define gr_set_proj_matrix GR_CALL(*gr_screen.gf_set_proj_matrix) |
#define gr_set_team_color GR_CALL(*gr_screen.gf_set_team_color) |
#define gr_set_texture_addressing GR_CALL(*gr_screen.gf_set_texture_addressing) |
#define gr_set_texture_panning GR_CALL(*gr_screen.gf_set_texture_panning) |
#define gr_set_thrust_scale GR_CALL(*gr_screen.gf_set_thrust_scale) |
#define gr_set_transform_buffer_offset GR_CALL(*gr_screen.gf_set_transform_buffer_offset) |
#define gr_set_view_matrix GR_CALL(*gr_screen.gf_set_view_matrix) |
#define gr_shadow_map_end GR_CALL(*gr_screen.gf_shadow_map_end) |
#define gr_shadow_map_start GR_CALL(*gr_screen.gf_shadow_map_start) |
#define gr_start_angles_instance_matrix GR_CALL(*gr_screen.gf_start_angles_instance_matrix) |
#define gr_start_instance_matrix GR_CALL(*gr_screen.gf_start_instance_matrix) |
#define gr_translate_texture_matrix GR_CALL(gr_screen.gf_translate_texture_matrix) |
#define gr_update_buffer_object GR_CALL(*gr_screen.gf_update_buffer_object) |
#define gr_update_texture GR_CALL(*gr_screen.gf_update_texture) |
#define gr_update_transform_buffer GR_CALL(*gr_screen.gf_update_transform_buffer) |
#define GR_ZBUFF_FULL (GR_ZBUFF_WRITE|GR_ZBUFF_READ) |
typedef struct team_color team_color |
enum shader_type |
void gr_bitmap | ( | int | x, |
int | y, | ||
int | resize_mode = GR_RESIZE_FULL |
||
) |
void gr_bitmap_list | ( | bitmap_2d_list * | list, |
int | n_bm, | ||
int | resize_mode | ||
) |
void gr_bitmap_list | ( | bitmap_rect_list * | list, |
int | n_bm, | ||
int | resize_mode | ||
) |
int gr_get_cursor_bitmap | ( | ) |
bool gr_init | ( | int | d_mode = GR_DEFAULT , |
int | d_width = GR_DEFAULT , |
||
int | d_height = GR_DEFAULT , |
||
int | d_depth = GR_DEFAULT |
||
) |
void gr_opengl_update_texture | ( | int | bitmap_handle, |
int | bpp, | ||
const ubyte * | data, | ||
int | width, | ||
int | height | ||
) |
Definition at line 1322 of file gropengltexture.cpp.
__inline void gr_pixel | ( | int | x, |
int | y, | ||
int | resize_mode = GR_RESIZE_FULL |
||
) |
void gr_pline_special | ( | SCP_vector< vec3d > * | pts, |
int | thickness, | ||
int | resize_mode | ||
) |
__inline void gr_render_buffer | ( | int | start, |
const vertex_buffer * | bufferp, | ||
int | texi, | ||
int | flags = TMAP_FLAG_TEXTURED |
||
) |
This function is to be called if you wish to scale GR_1024 or GR_640 x and y positions or lengths in order to keep the correctly scaled to nonstandard resolutions
x | X value, can be NULL |
y | Y value, can be NULL |
w | width, can be NULL |
h | height, can be NULL |
resize_mode |
This function is to be called if you wish to scale GR_1024 or GR_640 x and y positions or lengths in order to keep the correctly scaled to nonstandard resolutions
x | X value, can be NULL |
y | Y value, can be NULL |
w | width, can be NULL |
h | height, can be NULL |
resize_mode |
void gr_set_bitmap | ( | int | bitmap_num, |
int | alphablend = GR_ALPHABLEND_NONE , |
||
int | bitbltmode = GR_BITBLT_MODE_NORMAL , |
||
float | alpha = 1.0f |
||
) |
Set the bitmap for the mouse pointer. This is called by the animating mouse pointer code.
The lock parameter just locks basically disables the next call of this function that doesn't have an unlock feature. If adding in more cursor-changing situations, be aware of unexpected results. You have been warned.
void gr_shield_icon | ( | coord2d | coords[6], |
const int | resize_mode = GR_RESIZE_FULL |
||
) |
__inline void gr_string | ( | int | x, |
int | y, | ||
const char * | string, | ||
int | resize_mode = GR_RESIZE_FULL |
||
) |
const char* Resolution_prefixes[GR_NUM_RESOLUTIONS] |