#include <windows.h>
#include <stdio.h>
#include <vulkan/vulkan.h>
#include <math.h>
#include "../client/ref.h"
#include "qvk.h"
#include "vk_model.h"
Go to the source code of this file.
Classes | |
struct | viddef_t |
struct | image_s |
struct | vkconfig_t |
struct | vkstate_t |
Macros | |
#define | VK_USE_PLATFORM_WIN32_KHR |
#define | REF_VERSION "Vulkan (vkQuake2 v"VKQUAKE2_VERSION")" |
#define | VKQUAKE2_VERSION "1.4.3" |
#define | VK_VERIFY(x) (void)(x) |
#define | PITCH 0 |
#define | YAW 1 |
#define | ROLL 2 |
#define | min(a, b) (((a) < (b)) ? (a) : (b)) |
#define | max(a, b) (((a) > (b)) ? (a) : (b)) |
#define | MAX_VKTEXTURES 1024 |
#define | MAX_LBM_HEIGHT 480 |
#define | BACKFACE_EPSILON 0.01 |
#define | MAX_LIGHTMAPS 128 |
#define | DYNLIGHTMAP_OFFSET MAX_LIGHTMAPS |
Typedefs | |
typedef struct image_s | image_t |
Enumerations | |
enum | imagetype_t { it_skin, it_sprite, it_wall, it_pic, it_sky, it_skin, it_sprite, it_wall, it_pic, it_sky, it_skin, it_sprite, it_wall, it_pic, it_sky } |
enum | rserr_t { rserr_ok, rserr_invalid_fullscreen, rserr_invalid_mode, rserr_unknown, rserr_ok, rserr_invalid_fullscreen, rserr_invalid_mode, rserr_unknown, rserr_ok, rserr_invalid_fullscreen, rserr_invalid_mode, rserr_unknown } |
#define BACKFACE_EPSILON 0.01 |
Definition at line 140 of file vk_local.h.
#define DYNLIGHTMAP_OFFSET MAX_LIGHTMAPS |
Definition at line 328 of file vk_local.h.
#define max | ( | a, | |
b | |||
) | (((a) > (b)) ? (a) : (b)) |
Definition at line 75 of file vk_local.h.
#define MAX_LBM_HEIGHT 480 |
Definition at line 138 of file vk_local.h.
#define MAX_LIGHTMAPS 128 |
Definition at line 327 of file vk_local.h.
#define MAX_VKTEXTURES 1024 |
Definition at line 122 of file vk_local.h.
#define min | ( | a, | |
b | |||
) | (((a) < (b)) ? (a) : (b)) |
Definition at line 72 of file vk_local.h.
#define PITCH 0 |
Definition at line 63 of file vk_local.h.
#define REF_VERSION "Vulkan (vkQuake2 v"VKQUAKE2_VERSION")" |
Definition at line 46 of file vk_local.h.
#define ROLL 2 |
Definition at line 69 of file vk_local.h.
#define VK_USE_PLATFORM_WIN32_KHR |
Definition at line 26 of file vk_local.h.
Definition at line 59 of file vk_local.h.
#define VKQUAKE2_VERSION "1.4.3" |
Definition at line 47 of file vk_local.h.
#define YAW 1 |
Definition at line 66 of file vk_local.h.
enum imagetype_t |
Enumerator | |
---|---|
it_skin | |
it_sprite | |
it_wall | |
it_pic | |
it_sky | |
it_skin | |
it_sprite | |
it_wall | |
it_pic | |
it_sky | |
it_skin | |
it_sprite | |
it_wall | |
it_pic | |
it_sky |
Definition at line 99 of file vk_local.h.
enum rserr_t |
Definition at line 126 of file vk_local.h.
void COM_StripExtension | ( | char * | in, |
char * | out | ||
) |
Definition at line 826 of file q_shared.c.
Referenced by CL_CheckOrDownloadFile(), and CL_Download_f().
Definition at line 1423 of file r_main.c.
Referenced by GL_InitImages(), R_Init(), and Vk_InitImages().
void EmitWaterPolys | ( | msurface_t * | fa, |
image_t * | texture, | ||
float * | modelMatrix, | ||
float * | color | ||
) |
Definition at line 202 of file vk_warp.c.
Definition at line 87 of file r_image.c.
Referenced by Draw_GetPalette(), GL_FindImage(), R_FindImage(), and Vk_FindImage().
void Mat_Identity | ( | float * | matrix | ) |
Definition at line 675 of file vk_rmain.c.
Referenced by EmitWaterPolys(), R_DrawAliasModel(), R_DrawBrushModel(), R_DrawNullModel(), R_DrawSkyBox(), R_SetupVulkan(), and Vk_RenderLightmappedPoly().
void Mat_Mul | ( | float * | m1, |
float * | m2, | ||
float * | res | ||
) |
Definition at line 695 of file vk_rmain.c.
Referenced by Mat_Ortho(), Mat_Perspective(), Mat_Rotate(), Mat_Scale(), Mat_Translate(), R_DrawAliasModel(), and R_SetupVulkan().
void Mat_Ortho | ( | float * | matrix, |
float | left, | ||
float | right, | ||
float | bottom, | ||
float | top, | ||
float | zNear, | ||
float | zFar | ||
) |
Definition at line 784 of file vk_rmain.c.
void Mat_Perspective | ( | float * | matrix, |
float * | correction_matrix, | ||
float | fovy, | ||
float | aspect, | ||
float | zNear, | ||
float | zFar | ||
) |
Definition at line 756 of file vk_rmain.c.
Referenced by R_DrawAliasModel(), and R_SetupVulkan().
void Mat_Rotate | ( | float * | matrix, |
float | deg, | ||
float | x, | ||
float | y, | ||
float | z | ||
) |
Definition at line 728 of file vk_rmain.c.
Referenced by R_DrawSkyBox(), R_RotateForEntity(), and R_SetupVulkan().
void Mat_Scale | ( | float * | matrix, |
float | x, | ||
float | y, | ||
float | z | ||
) |
void Mat_Translate | ( | float * | matrix, |
float | x, | ||
float | y, | ||
float | z | ||
) |
Definition at line 718 of file vk_rmain.c.
Referenced by R_DrawSkyBox(), R_RotateForEntity(), and R_SetupVulkan().
void R_AddSkySurface | ( | msurface_t * | fa | ) |
void R_BeginFrame | ( | float | camera_separation | ) |
Definition at line 1177 of file r_main.c.
Referenced by GetRefAPI(), and R_Init().
Definition at line 519 of file gl_mesh.c.
Definition at line 1342 of file r_main.c.
Referenced by R_DrawEntitiesOnList().
Definition at line 957 of file gl_rsurf.c.
Definition at line 1197 of file gl_rsurf.c.
Definition at line 1285 of file vk_rmain.c.
Referenced by GetRefAPI().
Definition at line 41 of file gl_rmisc.c.
Definition at line 226 of file r_light.c.
Referenced by R_DrawAliasModel(), R_DrawNullModel(), and R_SetLightLevel().
Definition at line 40 of file r_light.c.
Referenced by R_DrawInlineBModel(), R_MarkLights(), and R_PushDlights().
Definition at line 164 of file gl_light.c.
struct image_s* R_RegisterSkin | ( | char * | name | ) |
void R_RenderBrushPoly | ( | msurface_t * | fa, |
float * | modelMatrix, | ||
float | alpha | ||
) |
Definition at line 271 of file vk_rsurf.c.
Referenced by DrawTextureChains(), and R_DrawInlineBModel().
void R_SetPalette | ( | const unsigned char * | palette | ) |
void Vk_DrawParticles | ( | int | n, |
const particle_t | particles[], | ||
const unsigned | colortable[768] | ||
) |
Definition at line 394 of file vk_rmain.c.
Referenced by R_DrawParticles().
image_t* Vk_FindImage | ( | char * | name, |
imagetype_t | type, | ||
qvksampler_t * | samplerType | ||
) |
Definition at line 1508 of file vk_image.c.
Referenced by Draw_FindPic(), Draw_InitLocal(), Mod_LoadAliasModel(), Mod_LoadSpriteModel(), Mod_LoadTexinfo(), R_RegisterModel(), R_RegisterSkin(), and R_SetSky().
void Vk_LmapTextureMode | ( | char * | string | ) |
Definition at line 705 of file vk_image.c.
Referenced by R_BeginFrame().
image_t* Vk_LoadPic | ( | char * | name, |
byte * | pic, | ||
int | width, | ||
int | height, | ||
imagetype_t | type, | ||
int | bits, | ||
qvksampler_t * | samplerType | ||
) |
Definition at line 1369 of file vk_image.c.
Referenced by R_InitParticleTexture(), Vk_FindImage(), and Vk_LoadWal().
void Vk_ResampleTexture | ( | unsigned * | in, |
int | inwidth, | ||
int | inheight, | ||
unsigned * | out, | ||
int | outwidth, | ||
int | outheight | ||
) |
Definition at line 101 of file vk_rmisc.c.
Referenced by R_Register().
void Vk_SubdivideSurface | ( | msurface_t * | fa | ) |
void Vk_TextureMode | ( | char * | string | ) |
Definition at line 657 of file vk_image.c.
Referenced by R_BeginFrame().
void Vkimp_BeginFrame | ( | float | camera_separation | ) |
VkResult Vkimp_CreateSurface | ( | void | ) |
void Vkimp_GetSurfaceExtensions | ( | char ** | extensions, |
uint32_t * | extCount | ||
) |
Definition at line 2356 of file vk_common.c.
Referenced by R_BeginFrame().
int c_alias_polys |
Definition at line 155 of file vk_local.h.
int c_brush_polys |
Definition at line 55 of file gl_rmain.c.
Referenced by R_RenderView(), and R_SetupFrame().
int c_visible_lightmaps |
Definition at line 40 of file gl_rsurf.c.
Referenced by R_BlendLightmaps().
int c_visible_textures |
Definition at line 41 of file gl_rsurf.c.
Referenced by DrawTextureChains().
entity_t* currententity |
Definition at line 28 of file r_bsp.c.
Referenced by D_DrawSurfaces(), D_SolidSurf(), D_TurbulentSurf(), GL_DrawAliasFrameLerp(), GL_DrawAliasShadow(), GL_LerpVerts(), R_AliasCheckBBox(), R_AliasDrawModel(), R_AliasPreparePoints(), R_AliasSetupFrames(), R_AliasSetUpLerpData(), R_AliasSetupLighting(), R_AliasSetupSkin(), R_AliasSetUpTransform(), R_AliasTransformFinalVerts(), R_DrawAliasModel(), R_DrawBEntitiesOnList(), R_DrawBrushModel(), R_DrawEntitiesOnList(), R_DrawInlineBModel(), R_DrawNullModel(), R_DrawSprite(), R_DrawSpriteModel(), R_DrawWorld(), R_LightPoint(), R_LightPointColor(), R_PolysetDrawSpans8_Opaque_Coloured(), R_RenderBmodelFace(), R_RenderFace(), R_RenderWorld(), R_RotateBmodel(), R_SetLightLevel(), R_TextureAnimation(), Vk_DrawAliasFrameLerp(), Vk_DrawAliasShadow(), and Vk_LerpVerts().
model_t* currentmodel |
Definition at line 39 of file r_main.c.
Referenced by R_DrawBEntitiesOnList(), R_DrawEntitiesOnList(), and R_DrawSpriteModel().
unsigned d_8to24table[256] |
Definition at line 27 of file r_main.c.
Referenced by Draw_GetPalette(), GL_Upload8(), R_BeginFrame(), R_CalcPalette(), R_CinematicSetPalette(), R_FloodFillSkin(), R_InitGraphics(), and Vk_Upload8().
cplane_t frustum[4] |
Definition at line 50 of file gl_rmain.c.
Referenced by R_CullBox(), and R_SetFrustum().
cvar_t* intensity |
Definition at line 31 of file gl_image.c.
Referenced by CL_AddPacketEntities(), CL_ColorFlash(), GL_InitImages(), R_MarkLights(), V_AddLight(), and Vk_InitImages().
int numvktextures |
Definition at line 25 of file vk_image.c.
Referenced by DrawTextureChains(), Vk_FindImage(), Vk_FreeUnusedImages(), Vk_ImageList_f(), Vk_LoadPic(), Vk_ShutdownImages(), and Vk_TextureMode().
cvar_t* r_drawentities |
Definition at line 135 of file r_main.c.
Referenced by R_DrawBEntitiesOnList(), R_DrawEntitiesOnList(), R_Register(), and R_SetLightLevel().
cvar_t* r_drawworld |
Definition at line 134 of file r_main.c.
Referenced by R_Register().
int r_framecount |
Definition at line 97 of file r_main.c.
Referenced by R_DrawBEntitiesOnList(), and R_SetupFrame().
cvar_t* r_fullbright |
Definition at line 137 of file r_main.c.
Referenced by R_Register().
cvar_t* r_lefthand |
Definition at line 117 of file r_main.c.
Referenced by R_Register().
cvar_t* r_lerpmodels |
Definition at line 138 of file r_main.c.
Referenced by R_Register().
cvar_t* r_lightlevel |
Definition at line 142 of file r_main.c.
Referenced by R_Register(), and R_SetLightLevel().
refdef_t r_newrefdef |
Definition at line 38 of file r_main.c.
Referenced by R_CalcPalette(), R_DrawBEntitiesOnList(), R_DrawEntitiesOnList(), R_DrawParticles(), R_EdgeDrawing(), R_EndWorldRenderpass(), R_RenderFrame(), R_RenderView(), R_SetFrustum(), R_SetLightLevel(), R_SetupFrame(), R_SetupGL(), R_SetupVulkan(), and R_SetVulkan2D().
cvar_t* r_nocull |
Definition at line 85 of file gl_rmain.c.
Referenced by R_CullBox(), and R_Register().
cvar_t* r_norefresh |
Definition at line 79 of file gl_rmain.c.
Referenced by R_Register(), and R_RenderView().
image_t* r_notexture |
Definition at line 44 of file gl_rmain.c.
cvar_t* r_novis |
Definition at line 139 of file r_main.c.
Referenced by R_MarkLeaves(), and R_Register().
int r_oldviewcluster |
Definition at line 169 of file vk_local.h.
int r_oldviewcluster2 |
Definition at line 169 of file vk_local.h.
vec3_t r_origin |
Definition at line 75 of file r_main.c.
Referenced by GL_DrawParticles(), R_DrawBEntitiesOnList(), R_DrawEntitiesOnList(), R_SetFrustum(), R_SetupFrame(), and Vk_DrawParticles().
image_t* r_particletexture |
Definition at line 45 of file gl_rmain.c.
Referenced by GL_DrawParticles(), and Vk_DrawParticles().
cvar_t* r_speeds |
Definition at line 141 of file r_main.c.
Referenced by R_Register(), R_RenderFrame(), and R_RenderView().
int r_viewcluster |
Definition at line 108 of file r_main.c.
Referenced by R_MarkLeaves(), R_NewMap(), and R_SetupFrame().
int r_viewcluster2 |
Definition at line 169 of file vk_local.h.
float r_viewproj_matrix[16] |
Definition at line 64 of file vk_rmain.c.
Referenced by R_DrawTriangleOutlines(), and R_RenderDlight().
int r_visframecount |
Definition at line 98 of file r_main.c.
Referenced by R_FindTopnode(), and R_MarkLeaves().
model_t* r_worldmodel |
Definition at line 41 of file r_main.c.
Referenced by R_FindTopnode(), R_MarkLeaves(), R_RenderFrame(), R_RenderView(), and R_SetupFrame().
int registration_sequence |
Definition at line 44 of file r_model.c.
Referenced by GL_FindImage(), GL_FreeUnusedImages(), GL_InitImages(), GL_LoadPic(), R_BeginRegistration(), R_EndRegistration(), R_FindImage(), R_FreeUnusedImages(), R_InitImages(), R_LoadWal(), R_RegisterModel(), Vk_FindImage(), Vk_FreeUnusedImages(), Vk_InitImages(), and Vk_LoadPic().
refimport_t ri |
Definition at line 25 of file r_main.c.
Referenced by Com_Printf(), Draw_GetPalette(), GetRefAPI(), R_BeginFrame(), R_DrawEntitiesOnList(), R_DrawParticles(), R_DrawSpriteModel(), R_Init(), R_Register(), R_RenderFrame(), R_RenderView(), R_SetMode(), R_Shutdown(), R_UnRegister(), and Sys_Error().
viddef_t vid |
Definition at line 24 of file r_main.c.
Referenced by Draw_GetPalette(), GL_DrawColoredStereoLinePair(), R_BeginFrame(), R_CinematicSetPalette(), R_DrawParticles(), R_EndWorldRenderpass(), R_InitGraphics(), R_PolyBlend(), R_SetGL2D(), R_SetMode(), R_SetupFrame(), R_SetupGL(), R_SetupVulkan(), and R_Shutdown().
cvar_t* vid_fullscreen |
Definition at line 47 of file vid_dll.c.
Referenced by MainWndProc(), R_BeginFrame(), R_Register(), R_SetMode(), VID_CheckChanges(), and VID_Init().
cvar_t* vid_gamma |
Definition at line 43 of file vid_dll.c.
Referenced by Draw_BuildGammaTable(), GL_InitImages(), QGL_Init(), R_BeginFrame(), R_Register(), R_SetMode(), R_SetVulkan2D(), VID_Init(), and Vk_InitImages().
cvar_t* vk_aniso |
Definition at line 118 of file vk_rmain.c.
Referenced by R_BeginFrame(), and R_Register().
cvar_t* vk_bitdepth |
Definition at line 92 of file vk_rmain.c.
Referenced by R_Register(), VID_CreateWindow(), Vkimp_BeginFrame(), and Vkimp_SetMode().
cvar_t* vk_clear |
Definition at line 99 of file vk_rmain.c.
Referenced by QVk_Init(), R_BeginFrame(), R_Register(), and R_SetMode().
vkconfig_t vk_config |
Definition at line 30 of file vk_rmain.c.
Referenced by CreateDynamicBuffers(), getSwapPresentMode(), QVk_BeginFrame(), QVk_CreateDevice(), QVk_CreateSwapchain(), QVk_GetIndexBuffer(), QVk_GetTriangleFanIbo(), QVk_GetUniformBuffer(), QVk_GetVertexBuffer(), QVk_Init(), RebuildTriangleFanIndexBuffer(), Vk_Mem_f(), and Vk_Strings_f().
qvksampler_t vk_current_lmap_sampler |
Definition at line 43 of file vk_image.c.
Referenced by LM_UploadBlock(), Vk_BeginBuildingLightmaps(), and Vk_LmapTextureMode().
qvksampler_t vk_current_sampler |
Definition at line 42 of file vk_image.c.
Referenced by Draw_StretchRaw(), Vk_LoadPic(), and Vk_TextureMode().
cvar_t* vk_device_idx |
Definition at line 122 of file vk_rmain.c.
Referenced by QVk_Init(), R_BeginFrame(), R_Register(), R_SetMode(), and Vk_Strings_f().
cvar_t* vk_dynamic |
Definition at line 112 of file vk_rmain.c.
Referenced by R_Register(), R_RenderBrushPoly(), and Vk_RenderLightmappedPoly().
cvar_t* vk_finish |
Definition at line 98 of file vk_rmain.c.
Referenced by R_Register(), and R_RenderView().
cvar_t* vk_flashblend |
Definition at line 97 of file vk_rmain.c.
Referenced by R_DrawInlineBModel(), R_PushDlights(), R_Register(), and R_RenderDlights().
cvar_t* vk_lightmap |
Definition at line 115 of file vk_rmain.c.
Referenced by R_Register(), and Vk_RenderLightmappedPoly().
cvar_t* vk_lmaptexturemode |
Definition at line 117 of file vk_rmain.c.
Referenced by R_BeginFrame(), R_Register(), and R_SetMode().
cvar_t* vk_lockpvs |
Definition at line 100 of file vk_rmain.c.
Referenced by R_MarkLeaves(), and R_Register().
cvar_t* vk_log |
Definition at line 93 of file vk_rmain.c.
Referenced by R_BeginFrame(), and R_Register().
cvar_t* vk_mode |
Definition at line 91 of file vk_rmain.c.
Referenced by R_BeginFrame(), R_Register(), and R_SetMode().
cvar_t* vk_modulate |
Definition at line 102 of file vk_rmain.c.
Referenced by R_BuildLightMap(), R_LightPoint(), R_Register(), and RecursiveLightPoint().
cvar_t* vk_particle_att_a |
Definition at line 105 of file vk_rmain.c.
Referenced by R_DrawParticles(), and R_Register().
cvar_t* vk_particle_att_b |
Definition at line 106 of file vk_rmain.c.
Referenced by R_DrawParticles(), and R_Register().
cvar_t* vk_particle_att_c |
Definition at line 107 of file vk_rmain.c.
Referenced by R_DrawParticles(), and R_Register().
cvar_t* vk_particle_max_size |
Definition at line 109 of file vk_rmain.c.
Referenced by R_DrawParticles(), and R_Register().
cvar_t* vk_particle_min_size |
Definition at line 108 of file vk_rmain.c.
Referenced by R_DrawParticles(), and R_Register().
cvar_t* vk_particle_size |
Definition at line 104 of file vk_rmain.c.
Referenced by R_DrawParticles(), and R_Register().
cvar_t* vk_picmip |
Definition at line 94 of file vk_rmain.c.
Referenced by R_BeginFrame(), R_Register(), and R_SetMode().
cvar_t* vk_point_particles |
Definition at line 110 of file vk_rmain.c.
Referenced by R_DrawParticles(), and R_Register().
cvar_t* vk_polyblend |
Definition at line 101 of file vk_rmain.c.
Referenced by R_PolyBlend(), and R_Register().
cvar_t* vk_round_down |
Definition at line 96 of file vk_rmain.c.
Referenced by R_Register(), and Vk_Upload32().
cvar_t* vk_sampleshading |
Definition at line 120 of file vk_rmain.c.
Referenced by R_BeginFrame(), R_Register(), and R_SetMode().
cvar_t* vk_shadows |
Definition at line 103 of file vk_rmain.c.
Referenced by R_DrawAliasModel(), and R_Register().
cvar_t* vk_showtris |
Definition at line 114 of file vk_rmain.c.
Referenced by R_DrawInlineBModel(), R_DrawTriangleOutlines(), R_RecursiveWorldNode(), and R_Register().
cvar_t* vk_skymip |
Definition at line 95 of file vk_rmain.c.
Referenced by R_Register(), and R_SetSky().
vkstate_t vk_state |
Definition at line 31 of file vk_rmain.c.
Referenced by LM_UploadBlock(), Mat_Perspective(), QVk_BeginFrame(), QVk_BindPipeline(), R_DrawAlphaSurfaces(), R_Init(), R_RenderBrushPoly(), R_SetMode(), Vk_BeginBuildingLightmaps(), Vk_InitImages(), Vk_LmapTextureMode(), Vk_RenderLightmappedPoly(), Vk_ShutdownImages(), Vkimp_SetMode(), and Vkimp_Shutdown().
cvar_t* vk_texturemode |
Definition at line 116 of file vk_rmain.c.
Referenced by R_BeginFrame(), R_Register(), and R_SetMode().
cvar_t* vk_validation |
Definition at line 90 of file vk_rmain.c.
Referenced by createLogicalDevice(), QVk_CreateValidationLayers(), QVk_Init(), R_BeginFrame(), R_Register(), and R_SetMode().
cvar_t* vk_vsync |
Definition at line 121 of file vk_rmain.c.
Referenced by R_BeginFrame(), R_Register(), and R_SetMode().
image_t vktextures[MAX_VKTEXTURES] |
Definition at line 24 of file vk_image.c.
Referenced by DrawTextureChains(), Vk_FindImage(), Vk_FreeUnusedImages(), Vk_ImageList_f(), Vk_LoadPic(), Vk_ShutdownImages(), and Vk_TextureMode().
vec3_t vpn |
Definition at line 73 of file r_main.c.
Referenced by GL_DrawParticles(), R_DrawBEntitiesOnList(), R_SetFrustum(), R_SetupFrame(), and Vk_DrawParticles().
vec3_t vright |
Definition at line 74 of file r_main.c.
Referenced by GL_DrawParticles(), R_DrawBEntitiesOnList(), R_DrawSpriteModel(), R_SetFrustum(), R_SetupFrame(), and Vk_DrawParticles().
vec3_t vup |
Definition at line 72 of file r_main.c.
Referenced by GL_DrawParticles(), R_DrawBEntitiesOnList(), R_DrawSpriteModel(), R_SetFrustum(), R_SetupFrame(), and Vk_DrawParticles().