diff --git a/src/r_main.c b/src/r_main.c
index d1952994c8e07da1add0ddc55844f3d24561619f..63641a25aa8a012171989bcedf928ab1be52148f 100644
--- a/src/r_main.c
+++ b/src/r_main.c
@@ -1155,7 +1155,7 @@ void R_RenderPlayerView(player_t *player)
 void R_InitHardwareMode(void)
 {
 	HWR_AddCommands();
-	if (gamestate == GS_LEVEL)
+	if (gamestate == GS_LEVEL || gamestate == GS_TITLESCREEN)
 	{
 		HWR_SetupLevel();
 		HWR_PrepLevelCache(numtextures);