diff options
| author | Pokechu22 <Pokechu022@gmail.com> | 2022-11-22 16:54:05 -0800 |
|---|---|---|
| committer | Pokechu22 <Pokechu022@gmail.com> | 2022-11-22 17:17:11 -0800 |
| commit | 0bcd3c79bb4bbd90fb1f8d02adb26198690709fb (patch) | |
| tree | 22ec9e15aca405a0b4621ff51d1ff51f9c179f3e /Source/Core/VideoCommon/VertexLoader_TextCoord.cpp | |
| parent | 8ac8d5afb63f65a1bed1a5d089d9fbbd5b8553b4 (diff) | |
VertexLoader: Eliminate use of DataReader
DataReader is generally jank - it has a start and end pointer, but the end pointer is generally not used, and all of the vertex loaders mostly bypassed it anyways.
Wrapper code (the vertex loaer test, as well as Fifo.cpp and OpcodeDecoding.cpp) still uses it, as does the software vertex loader (which is not a subclass of VertexLoader). These can probably be eliminated later.
Diffstat (limited to 'Source/Core/VideoCommon/VertexLoader_TextCoord.cpp')
| -rw-r--r-- | Source/Core/VideoCommon/VertexLoader_TextCoord.cpp | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/Source/Core/VideoCommon/VertexLoader_TextCoord.cpp b/Source/Core/VideoCommon/VertexLoader_TextCoord.cpp index abe8d36fc4..fcb2982e6f 100644 --- a/Source/Core/VideoCommon/VertexLoader_TextCoord.cpp +++ b/Source/Core/VideoCommon/VertexLoader_TextCoord.cpp @@ -8,7 +8,6 @@ #include "Common/CommonTypes.h" #include "Common/Swap.h" -#include "VideoCommon/DataReader.h" #include "VideoCommon/VertexLoader.h" #include "VideoCommon/VertexLoaderManager.h" #include "VideoCommon/VertexLoaderUtils.h" @@ -36,14 +35,9 @@ template <typename T, int N> void TexCoord_ReadDirect(VertexLoader* loader) { const auto scale = loader->m_tcScale[loader->m_tcIndex]; - DataReader dst(g_vertex_manager_write_ptr, nullptr); - DataReader src(g_video_buffer_read_ptr, nullptr); for (int i = 0; i != N; ++i) - dst.Write(TCScale(src.Read<T>(), scale)); - - g_vertex_manager_write_ptr = dst.GetPointer(); - g_video_buffer_read_ptr = src.GetPointer(); + DataWrite(TCScale(DataRead<T>(), scale)); ++loader->m_tcIndex; } @@ -58,12 +52,10 @@ void TexCoord_ReadIndex(VertexLoader* loader) VertexLoaderManager::cached_arraybases[CPArray::TexCoord0 + loader->m_tcIndex] + (index * g_main_cp_state.array_strides[CPArray::TexCoord0 + loader->m_tcIndex])); const auto scale = loader->m_tcScale[loader->m_tcIndex]; - DataReader dst(g_vertex_manager_write_ptr, nullptr); for (int i = 0; i != N; ++i) - dst.Write(TCScale(Common::FromBigEndian(data[i]), scale)); + DataWrite(TCScale(Common::FromBigEndian(data[i]), scale)); - g_vertex_manager_write_ptr = dst.GetPointer(); ++loader->m_tcIndex; } |
