From d05caf59632e039c64f1421a514026d5825cc242 Mon Sep 17 00:00:00 2001
From: Digiku <mar.marcoz@gmail.com>
Date: Tue, 8 Jan 2019 11:26:39 -0500
Subject: [PATCH 1/2] Update hw_md2.c -- add comment about anglef
 player->frameangle from Kart

---
 src/hardware/hw_md2.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/hardware/hw_md2.c b/src/hardware/hw_md2.c
index 0cd4e97e2..8bc33ea0f 100644
--- a/src/hardware/hw_md2.c
+++ b/src/hardware/hw_md2.c
@@ -1075,7 +1075,14 @@ void HWR_DrawMD2(gr_vissprite_t *spr)
 
 		if (sprframe->rotate)
 		{
-			const fixed_t anglef = AngleFixed(spr->mobj->angle);
+			fixed_t anglef = AngleFixed(spr->mobj->angle);
+			// \todo adapt for 2.2 directionchar? The below code is from Kart
+#if 0
+			if (spr->mobj->player)
+				anglef = AngleFixed(spr->mobj->player->frameangle);
+			else
+				anglef = AngleFixed(spr->mobj->angle);
+#endif
 			p.angley = FIXED_TO_FLOAT(anglef);
 		}
 		else

From 79fed1e954ce77fabb2f09573e2fcd00d6326cef Mon Sep 17 00:00:00 2001
From: Jaime Passos <lazymyuutsu@gmail.com>
Date: Thu, 2 May 2019 17:49:10 -0400
Subject: [PATCH 2/2] Unbind VBO from model during mid-frame

---
 src/hardware/r_opengl/r_opengl.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/src/hardware/r_opengl/r_opengl.c b/src/hardware/r_opengl/r_opengl.c
index 2dba9980a..5caa31e29 100644
--- a/src/hardware/r_opengl/r_opengl.c
+++ b/src/hardware/r_opengl/r_opengl.c
@@ -1632,6 +1632,10 @@ static void CreateModelVBO(mesh_t *mesh, mdlframe_t *frame)
 	pglBindBuffer(GL_ARRAY_BUFFER, frame->vboID);
 	pglBufferData(GL_ARRAY_BUFFER, bufferSize, buffer, GL_STATIC_DRAW);
 	free(buffer);
+
+	// Don't leave the array buffer bound to the model,
+	// since this is called mid-frame
+	pglBindBuffer(GL_ARRAY_BUFFER, 0);
 }
 
 static void CreateModelVBOTiny(mesh_t *mesh, tinyframe_t *frame)
@@ -1673,6 +1677,11 @@ static void CreateModelVBOTiny(mesh_t *mesh, tinyframe_t *frame)
 	pglBindBuffer(GL_ARRAY_BUFFER, frame->vboID);
 	pglBufferData(GL_ARRAY_BUFFER, bufferSize, buffer, GL_STATIC_DRAW);
 	free(buffer);
+
+	// Don't leave the array buffer bound to the model,
+	// since this is called mid-frame
+	pglBindBuffer(GL_ARRAY_BUFFER, 0);
+}
 }
 
 EXPORT void HWRAPI(CreateModelVBOs) (model_t *model)