cl_clientfuncs_s, cl_enginefuncs_s, engine_studio_api_t, StudioModelRenderer_t
HLSDK download address Index of /files/sdk
foreword
When writing auxiliary tools, we need to have a good understanding of some common game structures, some may come from the official SDK, and some need to be reversed by ourselves, which will be of great help to subsequent development.
1. Basic data types
1.cl_clientfuncs_s
These functions are exported by the client client.dll, and the structure is declared as follows:
typedef struct cl_clientfuncs_s
{
int(*Initialize) (cl_enginefunc_t *pEnginefuncs, int iVersion);
int(*HUD_Init) (void);
int(*HUD_VidInit) (void);
void(*HUD_Redraw) (float time, int intermission);
int(*HUD_UpdateClientData) (client_data_t *pcldata, float flTime);
int(*HUD_Reset) (void);
void(*HUD_PlayerMove) (struct playermove_s *ppmove, int server);
void(*HUD_PlayerMoveInit) (struct playermove_s *ppmove);
char(*HUD_PlayerMoveTex