FTEQW
Documentation of the FTE engine source tree.
vk_backend.c File Reference

Typedefs

typedef vec3_t mat3_t[3]
 

Enumerations

enum  {
  VK_BUFF_POS , VK_BUFF_TC , VK_BUFF_COL , VK_BUFF_LMTC ,
  VK_BUFF_NORM , VK_BUFF_SDIR , VK_BUFF_TDIR , VK_BUFF_MAX
}
 

Functions

void VKBE_BeginShadowmapFace (void)
 
qboolean VK_LoadBlob (program_t *prog, void *blobdata, const char *name)
 
void VKBE_DeleteProg (program_t *prog)
 
void VKBE_Init (void)
 
void VKBE_InitFramePools (struct vkframe *frame)
 
void VKBE_FlushDynamicBuffers (void)
 
void VKBE_Set2D (qboolean twodee)
 
void VKBE_RestartFrame (void)
 
void VKBE_ShutdownFramePools (struct vkframe *frame)
 
void VKBE_Shutdown (void)
 
void VKBE_SelectMode (backendmode_t mode)
 
qboolean VKBE_GenerateRTLightShader (unsigned int lmode)
 
qboolean VKBE_SelectDLight (dlight_t *dl, vec3_t colour, vec3_t axis[3], unsigned int lmode)
 
void VKBE_SelectEntity (entity_t *ent)
 
voidVKBE_CreateStagingBuffer (struct stagingbuf *n, size_t size, VkBufferUsageFlags usage)
 
VkBuffer VKBE_FinishStaging (struct stagingbuf *n, vk_poolmem_t *mem)
 
void VKBE_GenBatchVBOs (vbo_t **vbochain, batch_t *firstbatch, batch_t *stopbatch)
 
void VKBE_GenBrushModelVBO (model_t *mod)
 
void VKBE_ClearVBO (vbo_t *vbo, qboolean dataonly)
 
void VK_UploadLightmap (lightmapinfo_t *lm)
 
void VKBE_UploadAllLightmaps (void)
 
qboolean VKBE_LightCullModel (vec3_t org, model_t *model)
 
batch_tVKBE_GetTempBatch (void)
 
void VKBE_SubmitBatch (batch_t *batch)
 
void VKBE_DrawMesh_List (shader_t *shader, int nummeshes, mesh_t **meshlist, vbo_t *vbo, texnums_t *texnums, unsigned int beflags)
 
void VKBE_DrawMesh_Single (shader_t *shader, mesh_t *meshchain, vbo_t *vbo, unsigned int beflags)
 
void VKBE_RT_Destroy (struct vk_rendertarg *targ)
 
void VKBE_RT_Gen (struct vk_rendertarg *targ, vk_image_t *colour, uint32_t width, uint32_t height, qboolean clear, unsigned int flags)
 
void VKBE_RT_Gen_Cube (struct vk_rendertarg_cube *targ, uint32_t size, qboolean clear)
 
void VKBE_RT_Begin (struct vk_rendertarg *targ)
 
void VKBE_RT_End (struct vk_rendertarg *targ)
 
void R_ObliqueNearClip (float *viewmat, mplane_t *wplane)
 
void CL_DrawDebugPlane (float *normal, float dist, float r, float g, float b, qboolean enqueue)
 
void VKBE_SubmitMeshes (batch_t **worldbatches, batch_t **blist, int first, int stop)
 
void VKBE_BaseEntTextures (const qbyte *scenepvs, const int *sceneareas)
 
struct vk_shadowbuffer * VKBE_GenerateShadowBuffer (vecV_t *verts, int numverts, index_t *indicies, int numindicies, qboolean istemp)
 
void VKBE_DestroyShadowBuffer (struct vk_shadowbuffer *buf)
 
void VKBE_RenderShadowBuffer (struct vk_shadowbuffer *buf)
 
qboolean VKBE_BeginShadowmap (qboolean isspot, uint32_t width, uint32_t height)
 
void VKBE_DoneShadows (void)
 
void VKBE_SetupForShadowMap (dlight_t *dl, int texwidth, int texheight, float shadowscale)
 
void VKBE_DrawWorld (batch_t **worldbatches)
 
void VKBE_VBO_Begin (vbobctx_t *ctx, size_t maxsize)
 
void VKBE_VBO_Data (vbobctx_t *ctx, void *data, size_t size, vboarray_t *varray)
 
void VKBE_VBO_Finish (vbobctx_t *ctx, void *edata, size_t esize, vboarray_t *earray, void **vbomem, void **ebomem)
 
void VKBE_VBO_Destroy (vboarray_t *vearray, void *mem)
 
void VKBE_Scissor (srect_t *rect)
 

Variables

cvar_t r_shadow_realtime_world_lightmaps
 
cvar_t gl_overbright
 
cvar_t r_portalrecursion
 
cvar_t r_polygonoffset_shadowmap_offset
 
cvar_t r_polygonoffset_shadowmap_factor
 
cvar_t r_wireframe
 
cvar_t vk_stagingbuffers
 
texid_t r_whiteimage
 
texid_t missing_texture_gloss
 
texid_t missing_texture_normal
 
texid_t r_blackimage
 
texid_t r_blackcubeimage
 
texid_t r_whitecubeimage
 
int be_maxpasses
 

Typedef Documentation

◆ mat3_t

typedef vec3_t mat3_t[3]

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
VK_BUFF_POS 
VK_BUFF_TC 
VK_BUFF_COL 
VK_BUFF_LMTC 
VK_BUFF_NORM 
VK_BUFF_SDIR 
VK_BUFF_TDIR 
VK_BUFF_MAX 

Function Documentation

◆ CL_DrawDebugPlane()

void CL_DrawDebugPlane ( float *  normal,
float  dist,
float  r,
float  g,
float  b,
qboolean  enqueue 
)

◆ R_ObliqueNearClip()

void R_ObliqueNearClip ( float *  viewmat,
mplane_t wplane 
)

◆ VK_LoadBlob()

qboolean VK_LoadBlob ( program_t prog,
void blobdata,
const char *  name 
)

◆ VK_UploadLightmap()

void VK_UploadLightmap ( lightmapinfo_t lm)

◆ VKBE_BaseEntTextures()

void VKBE_BaseEntTextures ( const qbyte scenepvs,
const int sceneareas 
)

◆ VKBE_BeginShadowmap()

qboolean VKBE_BeginShadowmap ( qboolean  isspot,
uint32_t  width,
uint32_t  height 
)

◆ VKBE_BeginShadowmapFace()

void VKBE_BeginShadowmapFace ( void  )

◆ VKBE_ClearVBO()

void VKBE_ClearVBO ( vbo_t vbo,
qboolean  dataonly 
)

◆ VKBE_CreateStagingBuffer()

void * VKBE_CreateStagingBuffer ( struct stagingbuf n,
size_t  size,
VkBufferUsageFlags  usage 
)

◆ VKBE_DeleteProg()

void VKBE_DeleteProg ( program_t prog)

◆ VKBE_DestroyShadowBuffer()

void VKBE_DestroyShadowBuffer ( struct vk_shadowbuffer *  buf)

◆ VKBE_DoneShadows()

void VKBE_DoneShadows ( void  )

◆ VKBE_DrawMesh_List()

void VKBE_DrawMesh_List ( shader_t shader,
int  nummeshes,
mesh_t **  meshlist,
vbo_t vbo,
texnums_t texnums,
unsigned int  beflags 
)

◆ VKBE_DrawMesh_Single()

void VKBE_DrawMesh_Single ( shader_t shader,
mesh_t meshchain,
vbo_t vbo,
unsigned int  beflags 
)

◆ VKBE_DrawWorld()

void VKBE_DrawWorld ( batch_t **  worldbatches)

◆ VKBE_FinishStaging()

VkBuffer VKBE_FinishStaging ( struct stagingbuf n,
vk_poolmem_t mem 
)

◆ VKBE_FlushDynamicBuffers()

void VKBE_FlushDynamicBuffers ( void  )

◆ VKBE_GenBatchVBOs()

void VKBE_GenBatchVBOs ( vbo_t **  vbochain,
batch_t firstbatch,
batch_t stopbatch 
)

◆ VKBE_GenBrushModelVBO()

void VKBE_GenBrushModelVBO ( model_t mod)

◆ VKBE_GenerateRTLightShader()

qboolean VKBE_GenerateRTLightShader ( unsigned int  lmode)

◆ VKBE_GenerateShadowBuffer()

struct vk_shadowbuffer * VKBE_GenerateShadowBuffer ( vecV_t *  verts,
int  numverts,
index_t indicies,
int  numindicies,
qboolean  istemp 
)

◆ VKBE_GetTempBatch()

batch_t * VKBE_GetTempBatch ( void  )

◆ VKBE_Init()

void VKBE_Init ( void  )

◆ VKBE_InitFramePools()

void VKBE_InitFramePools ( struct vkframe *  frame)

◆ VKBE_LightCullModel()

qboolean VKBE_LightCullModel ( vec3_t  org,
model_t model 
)

◆ VKBE_RenderShadowBuffer()

void VKBE_RenderShadowBuffer ( struct vk_shadowbuffer *  buf)

◆ VKBE_RestartFrame()

void VKBE_RestartFrame ( void  )

◆ VKBE_RT_Begin()

void VKBE_RT_Begin ( struct vk_rendertarg targ)

◆ VKBE_RT_Destroy()

void VKBE_RT_Destroy ( struct vk_rendertarg targ)

◆ VKBE_RT_End()

void VKBE_RT_End ( struct vk_rendertarg targ)

◆ VKBE_RT_Gen()

void VKBE_RT_Gen ( struct vk_rendertarg targ,
vk_image_t colour,
uint32_t  width,
uint32_t  height,
qboolean  clear,
unsigned int  flags 
)

◆ VKBE_RT_Gen_Cube()

void VKBE_RT_Gen_Cube ( struct vk_rendertarg_cube targ,
uint32_t  size,
qboolean  clear 
)

◆ VKBE_Scissor()

void VKBE_Scissor ( srect_t rect)

◆ VKBE_SelectDLight()

qboolean VKBE_SelectDLight ( dlight_t dl,
vec3_t  colour,
vec3_t  axis[3],
unsigned int  lmode 
)

◆ VKBE_SelectEntity()

void VKBE_SelectEntity ( entity_t ent)

◆ VKBE_SelectMode()

void VKBE_SelectMode ( backendmode_t  mode)

◆ VKBE_Set2D()

void VKBE_Set2D ( qboolean  twodee)

◆ VKBE_SetupForShadowMap()

void VKBE_SetupForShadowMap ( dlight_t dl,
int  texwidth,
int  texheight,
float  shadowscale 
)

◆ VKBE_Shutdown()

void VKBE_Shutdown ( void  )

◆ VKBE_ShutdownFramePools()

void VKBE_ShutdownFramePools ( struct vkframe *  frame)

◆ VKBE_SubmitBatch()

void VKBE_SubmitBatch ( batch_t batch)

◆ VKBE_SubmitMeshes()

void VKBE_SubmitMeshes ( batch_t **  worldbatches,
batch_t **  blist,
int  first,
int  stop 
)

◆ VKBE_UploadAllLightmaps()

void VKBE_UploadAllLightmaps ( void  )

◆ VKBE_VBO_Begin()

void VKBE_VBO_Begin ( vbobctx_t ctx,
size_t  maxsize 
)

◆ VKBE_VBO_Data()

void VKBE_VBO_Data ( vbobctx_t ctx,
void data,
size_t  size,
vboarray_t varray 
)

◆ VKBE_VBO_Destroy()

void VKBE_VBO_Destroy ( vboarray_t vearray,
void mem 
)

◆ VKBE_VBO_Finish()

void VKBE_VBO_Finish ( vbobctx_t ctx,
void edata,
size_t  esize,
vboarray_t earray,
void **  vbomem,
void **  ebomem 
)

Variable Documentation

◆ be_maxpasses

int be_maxpasses
extern

◆ gl_overbright

cvar_t gl_overbright
extern

◆ missing_texture_gloss

texid_t missing_texture_gloss

◆ missing_texture_normal

texid_t missing_texture_normal

◆ r_blackcubeimage

texid_t r_blackcubeimage

◆ r_blackimage

texid_t r_blackimage
extern

◆ r_polygonoffset_shadowmap_factor

cvar_t r_polygonoffset_shadowmap_factor

◆ r_polygonoffset_shadowmap_offset

cvar_t r_polygonoffset_shadowmap_offset
extern

◆ r_portalrecursion

cvar_t r_portalrecursion
extern

◆ r_shadow_realtime_world_lightmaps

cvar_t r_shadow_realtime_world_lightmaps
extern

◆ r_whitecubeimage

texid_t r_whitecubeimage

◆ r_whiteimage

texid_t r_whiteimage
extern

◆ r_wireframe

cvar_t r_wireframe
extern

◆ vk_stagingbuffers

cvar_t vk_stagingbuffers
extern