diff --git a/src/r_defs.h b/src/r_defs.h
index 964956503b9e1503128b2c4ba549af5226de0e7c..2791ac8b069edf9d4e2579704fa948998fd328d9 100644
--- a/src/r_defs.h
+++ b/src/r_defs.h
@@ -740,9 +740,11 @@ typedef struct
 {
 	patch_t *patch[8][ROTANGLES];
 	boolean cached[8];
+#ifdef HWRENDER
 	aatree_t *hardware_patch[8];
+#endif/*HWRENDER*/
 } rotsprite_t;
-#endif
+#endif/*ROTSPRITE*/
 
 typedef enum
 {
diff --git a/src/r_things.c b/src/r_things.c
index bbe62d88ae6639e886f8c5f7ae5bd01485de724a..a328da03a42ae7a969a48ebc258f451528153eb9 100644
--- a/src/r_things.c
+++ b/src/r_things.c
@@ -125,9 +125,11 @@ static void R_InstallSpriteLump(UINT16 wad,            // graphics patch
 		sprtemp[frame].rotsprite.cached[r] = false;
 		for (ang = 0; ang < ROTANGLES; ang++)
 			sprtemp[frame].rotsprite.patch[r][ang] = NULL;
+#ifdef HWRENDER
 		sprtemp[frame].rotsprite.hardware_patch[r] = M_AATreeAlloc(AATREE_ZUSER);
+#endif/*HWRENDER*/
 	}
-#endif
+#endif/*ROTSPRITE*/
 
 	if (rotation == 0)
 	{