Clean up cached_arraybases. Update VideoSW to new scheme.

Move ownership of cached_arraybases from CPMemory to VertexLoaderManager
to better match it usage.
This commit is contained in:
Scott Mansell
2015-05-30 00:42:45 +12:00
parent 6d916762fb
commit f57517f1a0
13 changed files with 48 additions and 35 deletions

View File

@ -8,6 +8,7 @@
#include "Common/CommonTypes.h"
#include "VideoCommon/VertexLoader.h"
#include "VideoCommon/VertexLoader_Normal.h"
#include "VideoCommon/VertexLoaderManager.h"
#include "VideoCommon/VertexManagerBase.h"
#include "VideoCommon/VideoCommon.h"
@ -71,7 +72,7 @@ __forceinline void Normal_Index_Offset()
static_assert(std::is_unsigned<I>::value, "Only unsigned I is sane!");
auto const index = DataRead<I>();
auto const data = reinterpret_cast<const T*>(cached_arraybases[ARRAY_NORMAL]
auto const data = reinterpret_cast<const T*>(VertexLoaderManager::cached_arraybases[ARRAY_NORMAL]
+ (index * g_main_cp_state.array_strides[ARRAY_NORMAL]) + sizeof(T) * 3 * Offset);
ReadIndirect<T, N * 3>(data);
}