From ioquake3 wiki
Jump to navigation Jump to search

CL_Frame() performs all of the client-side processing required for a single frame of gameplay. The basic flow of CL_Frame() is as follows:

  • If not yet connected to a server, call {{#ifexist:VM_Call|VM_Call(UI_SET_ACTIVE_MENU)|VM_Call(UI_SET_ACTIVE_MENU)}} to navigate menus.
  • call {{#ifexist:CL_CheckTimeout|CL_CheckTimeout()|CL_CheckTimeout()}} to see if we've lost our connection to the server.
  • call {{#ifexist:CL_SendCmd|CL_SendCmd()|CL_SendCmd()}} to send user's intentions to the server.
  • call {{#ifexist:CL_CheckForResend|CL_CheckForResend()|CL_CheckForResend()}}, which will connect to the server if we haven't connected to it yet (or if we lost our connection).
  • call {{#ifexist:CL_SetCGameTime|CL_SetCGameTime()|CL_SetCGameTime()}} to recalculate client's guesstimate of the server's current time.
  • call {{#ifexist:SCR_UpdateScreen|SCR_UpdateScreen()|SCR_UpdateScreen()}} and {{#ifexist:S_Update|S_Update()|S_Update()}} to update the video and audio.