FS2_Open
Open source remastering of the Freespace 2 engine
modelrender.cpp File Reference
#include <algorithm>
#include "asteroid/asteroid.h"
#include "cmdline/cmdline.h"
#include "gamesequence/gamesequence.h"
#include "graphics/gropengldraw.h"
#include "graphics/gropenglextension.h"
#include "graphics/gropenglshader.h"
#include "graphics/tmapper.h"
#include "io/timer.h"
#include "math/staticrand.h"
#include "model/modelrender.h"
#include "nebula/neb.h"
#include "particle/particle.h"
#include "render/3dinternal.h"
#include "ship/ship.h"
#include "ship/shipfx.h"
#include "weapon/weapon.h"

Go to the source code of this file.

Macros

#define NOISE_SCALE   0.5f
 
#define MIN_SCALE   3.4f
 
#define MAX_SCALE   4.7f
 

Functions

void interp_render_arc_segment (vec3d *v1, vec3d *v2, int depth)
 
void model_render_add_lightning (draw_list *scene, model_render_params *interp, polymodel *pm, bsp_info *sm)
 
float model_render_determine_depth (int obj_num, int model_num, matrix *orient, vec3d *pos, int detail_level_locked)
 
int model_render_determine_detail (float depth, int obj_num, int model_num, matrix *orient, vec3d *pos, int flags, int detail_level_locked)
 
void model_render_buffers (draw_list *scene, model_render_params *interp, vertex_buffer *buffer, polymodel *pm, int mn, int detail_level, uint tmap_flags)
 
void model_render_children_buffers (draw_list *scene, model_render_params *interp, polymodel *pm, polymodel_instance *pmi, int mn, int detail_level, uint tmap_flags, bool trans_buffer)
 
float model_render_determine_light_factor (model_render_params *interp, vec3d *pos, uint flags)
 
float model_render_determine_box_scale ()
 
fix model_render_determine_base_frametime (int objnum, uint flags)
 
bool model_render_determine_autocenter (vec3d *auto_back, polymodel *pm, int detail_level, uint flags)
 
bool model_render_check_detail_box (vec3d *view_pos, polymodel *pm, int submodel_num, uint flags)
 
void submodel_render_immediate (model_render_params *render_info, int model_num, int submodel_num, matrix *orient, vec3d *pos)
 
void submodel_render_queue (model_render_params *render_info, draw_list *scene, int model_num, int submodel_num, matrix *orient, vec3d *pos)
 
void model_render_glowpoint (int point_num, vec3d *pos, matrix *orient, glow_point_bank *bank, glow_point_bank_override *gpo, polymodel *pm, ship *shipp, bool use_depth_buffer)
 
void model_render_set_glow_points (polymodel *pm, int objnum)
 
void model_render_glow_points (polymodel *pm, ship *shipp, matrix *orient, vec3d *pos, bool use_depth_buffer=true)
 
void model_queue_render_thrusters (model_render_params *interp, polymodel *pm, int objnum, ship *shipp, matrix *orient, vec3d *pos)
 
void model_render_debug_children (polymodel *pm, int mn, int detail_level, uint debug_flags)
 
void model_render_debug (int model_num, matrix *orient, vec3d *pos, uint flags, uint debug_flags, int objnum, int detail_level_locked)
 
void model_render_immediate (model_render_params *render_info, int model_num, matrix *orient, vec3d *pos, int render, bool sort)
 
void model_render_queue (model_render_params *interp, draw_list *scene, int model_num, matrix *orient, vec3d *pos)
 

Variables

int Model_texturing
 
int Model_polys
 
int tiling
 
float model_radius
 
const int MAX_ARC_SEGMENT_POINTS
 
int Num_arc_segment_points
 
vec3d Arc_segment_points []
 
bool Scene_framebuffer_in_frame
 
int Interp_thrust_scale_subobj
 
float Interp_thrust_scale
 
model_batch_buffer TransformBufferHandler
 

Macro Definition Documentation

#define MAX_SCALE   4.7f
#define MIN_SCALE   3.4f
#define NOISE_SCALE   0.5f

Function Documentation

void interp_render_arc_segment ( vec3d v1,
vec3d v2,
int  depth 
)

Definition at line 1477 of file modelinterp.cpp.

void model_queue_render_thrusters ( model_render_params interp,
polymodel pm,
int  objnum,
ship shipp,
matrix orient,
vec3d pos 
)

Definition at line 2179 of file modelrender.cpp.

void model_render_add_lightning ( draw_list scene,
model_render_params interp,
polymodel pm,
bsp_info sm 
)

Definition at line 1029 of file modelrender.cpp.

void model_render_buffers ( draw_list scene,
model_render_params interp,
vertex_buffer buffer,
polymodel pm,
int  mn,
int  detail_level,
uint  tmap_flags 
)

Definition at line 1174 of file modelrender.cpp.

bool model_render_check_detail_box ( vec3d view_pos,
polymodel pm,
int  submodel_num,
uint  flags 
)

Definition at line 1593 of file modelrender.cpp.

void model_render_children_buffers ( draw_list scene,
model_render_params interp,
polymodel pm,
polymodel_instance pmi,
int  mn,
int  detail_level,
uint  tmap_flags,
bool  trans_buffer 
)

Definition at line 1400 of file modelrender.cpp.

void model_render_debug ( int  model_num,
matrix orient,
vec3d pos,
uint  flags,
uint  debug_flags,
int  objnum,
int  detail_level_locked 
)

Definition at line 2571 of file modelrender.cpp.

void model_render_debug_children ( polymodel pm,
int  mn,
int  detail_level,
uint  debug_flags 
)

Definition at line 2509 of file modelrender.cpp.

bool model_render_determine_autocenter ( vec3d auto_back,
polymodel pm,
int  detail_level,
uint  flags 
)

Definition at line 1573 of file modelrender.cpp.

fix model_render_determine_base_frametime ( int  objnum,
uint  flags 
)

Definition at line 1555 of file modelrender.cpp.

float model_render_determine_box_scale ( )

Definition at line 1528 of file modelrender.cpp.

float model_render_determine_depth ( int  obj_num,
int  model_num,
matrix orient,
vec3d pos,
int  detail_level_locked 
)

Definition at line 1096 of file modelrender.cpp.

int model_render_determine_detail ( float  depth,
int  obj_num,
int  model_num,
matrix orient,
vec3d pos,
int  flags,
int  detail_level_locked 
)

Definition at line 1130 of file modelrender.cpp.

float model_render_determine_light_factor ( model_render_params interp,
vec3d pos,
uint  flags 
)

Definition at line 1509 of file modelrender.cpp.

void model_render_glow_points ( polymodel pm,
ship shipp,
matrix orient,
vec3d pos,
bool  use_depth_buffer = true 
)

Definition at line 2111 of file modelrender.cpp.

void model_render_glowpoint ( int  point_num,
vec3d pos,
matrix orient,
glow_point_bank bank,
glow_point_bank_override gpo,
polymodel pm,
ship shipp,
bool  use_depth_buffer 
)

Definition at line 1792 of file modelrender.cpp.

void model_render_immediate ( model_render_params render_info,
int  model_num,
matrix orient,
vec3d pos,
int  render,
bool  sort 
)

Definition at line 2636 of file modelrender.cpp.

void model_render_queue ( model_render_params interp,
draw_list scene,
int  model_num,
matrix orient,
vec3d pos 
)

Definition at line 2681 of file modelrender.cpp.

void model_render_set_glow_points ( polymodel pm,
int  objnum 
)

Definition at line 2050 of file modelrender.cpp.

void submodel_render_immediate ( model_render_params render_info,
int  model_num,
int  submodel_num,
matrix orient,
vec3d pos 
)

Definition at line 1638 of file modelrender.cpp.

void submodel_render_queue ( model_render_params render_info,
draw_list scene,
int  model_num,
int  submodel_num,
matrix orient,
vec3d pos 
)

Definition at line 1660 of file modelrender.cpp.

Variable Documentation

vec3d Arc_segment_points[]

Definition at line 1473 of file modelinterp.cpp.

float Interp_thrust_scale

Definition at line 161 of file modelinterp.cpp.

int Interp_thrust_scale_subobj

Definition at line 160 of file modelinterp.cpp.

const int MAX_ARC_SEGMENT_POINTS
int Model_polys

Definition at line 1909 of file modelinterp.cpp.

float model_radius

Definition at line 41 of file modelinterp.cpp.

int Model_texturing

Definition at line 1908 of file modelinterp.cpp.

int Num_arc_segment_points

Definition at line 1472 of file modelinterp.cpp.

bool Scene_framebuffer_in_frame

Definition at line 50 of file gropengldraw.cpp.

int tiling

Definition at line 2214 of file modelinterp.cpp.

model_batch_buffer TransformBufferHandler

Definition at line 47 of file modelrender.cpp.