From 3ddf82a318eef8091d58255c712965e3271bb296 Mon Sep 17 00:00:00 2001 From: Fiora Date: Tue, 11 Nov 2014 01:48:38 -0800 Subject: Vertex Loader: SSE implementations of more position/texcoord/normal formats ~35-45% faster NFS:HP2, possibly other vertex-bound games. --- Source/Core/VideoCommon/VertexManagerBase.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'Source/Core/VideoCommon/VertexManagerBase.cpp') diff --git a/Source/Core/VideoCommon/VertexManagerBase.cpp b/Source/Core/VideoCommon/VertexManagerBase.cpp index 7a18ba435b..dcd8780ede 100644 --- a/Source/Core/VideoCommon/VertexManagerBase.cpp +++ b/Source/Core/VideoCommon/VertexManagerBase.cpp @@ -53,7 +53,8 @@ u32 VertexManager::GetRemainingSize() void VertexManager::PrepareForAdditionalData(int primitive, u32 count, u32 stride) { - u32 const needed_vertex_bytes = count * stride; + // The SSE vertex loader can write up to 4 bytes past the end + u32 const needed_vertex_bytes = count * stride + 4; // We can't merge different kinds of primitives, so we have to flush here if (current_primitive_type != primitive_from_gx[primitive]) -- cgit v1.2.3