12#ifndef RETRO3D_TRACE_LVL
13# define RETRO3D_TRACE_LVL 0
43#define RETRO3D_TEX_FLAG_GENERATE 0x01
49#define RETRO3D_TEX_FLAG_DESTROY 0x02
55#define RETRO3D_TEX_FLAG_DEACTIVATE 0x04
64#define RETRO3D_PROJ_ORTHO 0
71#define RETRO3D_PROJ_FRUSTUM 1
89void retro3d_platform_shutdown();
131void retro3d_scene_translate( mfix_t x, mfix_t y, mfix_t z );
133void retro3d_scene_scale( mfix_t x, mfix_t y, mfix_t z );
153void retro3d_vx( mfix_t x, mfix_t y, mfix_t z, mfix_t s, mfix_t t );
204 retroflat_blit_t* tex, uint8_t flags );
210#define RETRO3D_TRI_FLAG_NORMAL_X 0x03
212#define RETRO3D_TRI_FLAG_NORMAL_Y 0x02
214#define RETRO3D_TRI_FLAG_NORMAL_Z 0x01
216#define RETRO3D_TRI_FLAG_NORMAL_NEG 0x04
int MERROR_RETVAL
Return type indicating function returns a value from this list.
Definition merror.h:19
void retro3d_tri_begin_rgb(float r, float g, float b, uint8_t flags)
Begins drawing a polygon/triangle with the given custom RGB color. Follow with three calls to retro3d...
void retro3d_tri_begin(RETROFLAT_COLOR color, uint8_t flags)
Begins drawing a polygon/triangle using predefined Maug_retroflt_color. Follow with three calls to re...
void retro3d_vx(mfix_t x, mfix_t y, mfix_t z, mfix_t s, mfix_t t)
Create a vertex at the designated location. Must be called inside of retro3d_tri_begin() and retro3d_...
void retro3d_tri_end()
Complete a triangle opened with retro3d_tri_begin(). This MUST be called after drawing three vertices...
void retro3d_scene_init()
Commence drawing a new scene/frame.
void retro3d_scene_open_node()
Denote the beginning of a new scene node, or group of polygons inside the current scene/frame.
size_t retro3d_scene_complete()
Finish drawing the current scene/frame and display it on-screen.
void retro3d_scene_close_node()
Denote the end of the current scene node opened with retro3d_scene_open_node().
MERROR_RETVAL retro3d_texture_platform_refresh(retroflat_blit_t *tex, uint8_t flags)
Perform engine-specific refresh actions on the texture.
MERROR_RETVAL retro3d_texture_activate(retroflat_blit_t *tex, uint8_t flags)
Activates the given texture so the next polygon will be drawn with it.
MERROR_RETVAL retro3d_draw_window(retroflat_blit_t *win, retroflat_pxxy_t x, retroflat_pxxy_t y)
Draw a bitmap 2D "window" in ortho view proportionally on screen. (e.g. for displaying a UI....
void retro3d_scene_rotate(mfix_t x, mfix_t y, mfix_t z)
Rotate the current scene node the given number of degrees on the X, Y, or Z axis.
void retro3d_init_projection(struct RETRO3D_PROJ_ARGS *args)
Setup projection properties to subsequently drawn scenes/frames.
void retro3d_init_bg(RETROFLAT_COLOR color, mfix_t fog_draw_dist, mfix_t fog_density)
Setup background and fog (when supported) for subsequently drawn scenes.
int8_t RETROFLAT_COLOR
Defines an index in the platform-specific color-table.
Definition retroflt.h:325
size_t retroflat_pxxy_t
Type used for surface pixel coordinates.
Definition retroflt.h:870
uint8_t proj
The desired projection method. Can be RETRO3D_PROJ_ORTHO or RETRO3D_PROJ_FRUSTUM.
Definition retro3d.h:26