59class ExtraMaterialPassClass;
67#define MESH_RENDER_SNAPSHOT_ENABLED
68#define SNAPSHOT_SAY(x) if (WW3D::Is_Snapshot_Activated()) { WWDEBUG_SAY(x); }
118 static WW3DErrorType Set_Render_Device(
int dev=-1,
int resx=-1,
int resy=-1,
int bits=-1,
int windowed=-1,
bool resize_window =
false,
bool reset_device=
false,
bool restore_assets=
true);
119 static WW3DErrorType Set_Render_Device(
const char *dev_name,
int resx=-1,
int resy=-1,
int bits=-1,
int windowed=-1,
bool resize_window =
false );
139 static bool Registry_Load_Render_Device(
const char * sub_key,
char *device,
int device_len,
int &width,
int &height,
int &depth,
int &windowed,
int& texture_depth);
171 static void Sync(
unsigned int sync_time );
183 static void Start_Movie_Capture(
const char * filename_base =
"Movie",
float frame_rate = 15);
308 static void Set_Gamma(
float gamma,
float bright,
float contrast,
bool calibrate=
true);
314 DEFAULT_RESOLUTION_WIDTH = 640,
315 DEFAULT_RESOLUTION_HEIGHT = 480,
316 DEFAULT_BIT_DEPTH = 16
320 static void Update_Pixel_Center(
void);
321 static void Allocate_Debug_Resources(
void);
322 static void Release_Debug_Resources(
void);
328 static unsigned int SyncTime;
334 static unsigned int PreviousSyncTime;
336 static float PixelCenterX;
337 static float PixelCenterY;
339 static bool IsInitted;
340 static bool IsRendering;
341 static bool IsCapturing;
342 static bool IsSortingEnabled;
343 static bool IsScreenUVBiased;
344 static bool IsBackfaceDebugEnabled;
346 static bool AreDecalsEnabled;
347 static float DecalRejectionDistance;
349 static bool AreStaticSortListsEnabled;
350 static bool MungeSortOnLoad;
352 static bool OverbrightModifyOnLoad;
355 static bool PauseRecord;
356 static bool RecordNextFrame;
357 static int FrameCount;
365 static bool ExposePrelit;
367 static int TextureFilter;
369 static bool SnapshotActivated;
370 static bool ThumbnailEnabled;
374 static unsigned NPatchesLevel;
375 static bool IsTexturingEnabled;
376 static bool IsColoringEnabled;
386 static float DefaultNativeScreenSize;
396 static int LastFrameMemoryAllocations;
397 static int LastFrameMemoryFrees;
static WW3DErrorType On_Activate_App(void)
static WW3DErrorType Render(const LayerListClass &layerlist)
static bool Is_Recording_Next_Frame()
static unsigned int Get_Sync_Time(void)
static ShaderClass Peek_Lightmap_Debug_Shader(void)
static bool Is_Snapshot_Activated()
static WW3DErrorType Registry_Save_Render_Device(const char *sub_key)
static void Set_Mesh_Draw_Mode(MeshDrawModeEnum mode)
static void Set_Ext_Swap_Interval(long swap)
static unsigned int Get_Frame_Count(void)
static bool Is_Movie_Paused()
static void Render_And_Clear_Static_Sort_Lists(RenderInfoClass &rinfo)
static bool Is_Overbright_Modify_On_Load_Enabled(void)
static int Get_Texture_Reduction(void)
static NPatchesGapFillingModeEnum Get_NPatches_Gap_Filling_Mode()
static unsigned int Get_Frame_Time(void)
static VertexMaterialClass * Peek_Default_Debug_Material(void)
static WW3DErrorType Set_Render_Device(int dev=-1, int resx=-1, int resy=-1, int bits=-1, int windowed=-1, bool resize_window=false, bool reset_device=false, bool restore_assets=true)
static MeshDrawModeEnum Get_Mesh_Draw_Mode()
static WW3DErrorType Init(void *hwnd, char *defaultpal=NULL, bool lite=false)
static WW3DErrorType Set_Device_Resolution(int w=-1, int h=-1, int bits=-1, int windowed=-1, bool resize_window=false)
static void Add_To_Static_Sort_List(RenderObjClass *robj, unsigned int sort_level)
static void Enable_Texturing(bool b)
static void Activate_Snapshot(bool b)
static WW3DErrorType Toggle_Windowed(void)
static PrelitModeEnum Get_Prelit_Mode()
static void * Get_Window(void)
static WW3DErrorType Begin_Render(bool clear=false, bool clearz=true, const Vector3 &color=Vector3(0, 0, 0), float dest_alpha=0.0f, void(*network_callback)(void)=NULL)
static void Pause_Movie(bool mode)
static void Set_Default_Native_Screen_Size(float dnss)
static unsigned Get_NPatches_Level()
static int Get_Texture_Filter()
static bool Is_Windowed(void)
@ MESH_DRAW_MODE_DEBUG_BOX
@ MESH_DRAW_MODE_DX8_ONLY
@ MESH_DRAW_MODE_DEBUG_CLIP
@ MESH_DRAW_MODE_DEBUG_DRAW
static bool Are_Static_Sort_Lists_Enabled(void)
static WW3DErrorType On_Deactivate_App(void)
static void Set_Gamma(float gamma, float bright, float contrast, bool calibrate=true)
static bool Expose_Prelit()
static WW3DErrorType Shutdown(void)
static int Get_Texture_Bitdepth()
static void Flip_To_Primary(void)
static void Update_Movie_Capture(void)
static void Enable_Coloring(unsigned int color)
when non-zero color is passed, it will override vertex colors
static void Set_Thumbnail_Enabled(bool b)
static void Enable_Large_Texture_Extra_Reduction(bool onoff)
static void Toggle_Movie_Capture(const char *filename_base="Movie", float frame_rate=15)
static bool Is_Rendering(void)
static void Normalize_Coordinates(int x, int y, float &fx, float &fy)
static ShaderClass Peek_Backface_Debug_Shader(void)
static bool Is_Texturing_Enabled()
static const RenderDeviceDescClass & Get_Render_Device_Desc(int device=-1)
static bool Is_Large_Texture_Extra_Reduction_Enabled(void)
static void Start_Single_Frame_Movie_Capture(const char *filename_base="Frames")
static void Get_Device_Resolution(int &set_w, int &set_h, int &get_bits, bool &get_windowed)
static void Enable_Munge_Sort_On_Load(bool onoff)
static void _Invalidate_Textures()
static const char * Get_Render_Device_Name(int device_index)
static void Set_Texture_Filter(int filter)
static float Get_Movie_Capture_Frame_Rate(void)
@ PRELIT_MODE_LIGHTMAP_MULTI_PASS
@ PRELIT_MODE_LIGHTMAP_MULTI_TEXTURE
static bool Is_Movie_Ready()
static bool Is_Screen_UV_Biased(void)
static const int Get_Render_Device_Count(void)
static WW3DErrorType Set_Any_Render_Device(void)
static WW3DErrorType Registry_Load_Render_Device(const char *sub_key, bool resize_window=false)
static void Set_Decal_Rejection_Distance(float d)
static void Sync(unsigned int sync_time)
static int Get_Texture_Min_Dimension(void)
static bool Is_Initted(void)
static bool Get_Thumbnail_Enabled()
static float Get_Default_Native_Screen_Size(void)
static void Flush(RenderInfoClass &rinfo)
static WW3DErrorType End_Render(bool flip_frame=true)
static int Get_Last_Frame_Memory_Allocation_Count()
static void Set_Texture_Bitdepth(int bitdepth)
static float Get_Decal_Rejection_Distance(void)
static void Set_Texture_Reduction(int value, int min_dim=1)
static void Set_Screen_UV_Bias(bool onoff)
static void Enable_Static_Sort_Lists(bool onoff)
static int Get_Render_Device(void)
static int Get_Collision_Box_Display_Mask(void)
static void Enable_Decals(bool onoff)
static void Enable_Sorting(bool onoff)
static void Start_Movie_Capture(const char *filename_base="Movie", float frame_rate=15)
static void Set_Window(void *hwnd)
static void _Invalidate_Mesh_Cache()
static void Capture_Next_Movie_Frame()
static void Make_Screen_Shot(const char *filename="ScreenShot", const float gamma=1.3f, const ScreenShotFormatEnum format=TGA)
static void Reset_Current_Static_Sort_Lists_To_Default(void)
static void Enable_Overbright_Modify_On_Load(bool onoff)
static bool Are_Decals_Enabled(void)
static long Get_Ext_Swap_Interval(void)
static void Expose_Prelit(bool onoff)
static unsigned int Get_Last_Frame_Vertex_Count(void)
static bool Is_Munge_Sort_On_Load_Enabled(void)
static int Get_Last_Frame_Memory_Free_Count()
NPatchesGapFillingModeEnum
@ NPATCHES_GAP_FILLING_ENABLED
@ NPATCHES_GAP_FILLING_DISABLED
@ NPATCHES_GAP_FILLING_FORCE
static void Set_NPatches_Gap_Filling_Mode(NPatchesGapFillingModeEnum mode)
static void Set_NPatches_Level(unsigned level)
static void Stop_Movie_Capture(void)
static unsigned int Get_Last_Frame_Poly_Count(void)
static bool Is_Sorting_Enabled(void)
static void Override_Current_Static_Sort_Lists(StaticSortListClass *sort_list)
static ShaderClass Peek_Default_Debug_Shader(void)
static bool Is_Coloring_Enabled()
static void Get_Pixel_Center(float &x, float &y)
static void Set_Collision_Box_Display_Mask(int mask)
static void Get_Render_Target_Resolution(int &set_w, int &set_h, int &get_bits, bool &get_windowed)
static bool Supports_Prelit_Mode(PrelitModeEnum mode)
static WW3DErrorType Set_Next_Render_Device(void)
static void Set_Prelit_Mode(PrelitModeEnum mode)
List< LayerClass * > LayerListClass
double TrianglesSubmitted
double TextureParameterChanges
double TrianglesClipCreated
double TrianglesClipRemoved