mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-24 06:39:46 -06:00
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.
This commit is contained in:
@ -6,7 +6,6 @@
|
||||
#include "Common/Assert.h"
|
||||
#include "Common/CommonTypes.h"
|
||||
|
||||
#include "VideoCommon/DataReader.h"
|
||||
#include "VideoCommon/VertexLoaderManager.h"
|
||||
#include "VideoCommon/VertexLoaderUtils.h"
|
||||
#include "VideoCommon/VertexLoader_Color.h"
|
||||
@ -16,7 +15,7 @@
|
||||
#include "VideoCommon/VideoCommon.h"
|
||||
|
||||
// This pointer is used as the source/dst for all fixed function loader calls
|
||||
u8* g_video_buffer_read_ptr;
|
||||
const u8* g_video_buffer_read_ptr;
|
||||
u8* g_vertex_manager_write_ptr;
|
||||
|
||||
static void PosMtx_ReadDirect_UByte(VertexLoader* loader)
|
||||
@ -249,10 +248,10 @@ void VertexLoader::WriteCall(TPipelineFunction func)
|
||||
m_PipelineStages[m_numPipelineStages++] = func;
|
||||
}
|
||||
|
||||
int VertexLoader::RunVertices(DataReader src, DataReader dst, int count)
|
||||
int VertexLoader::RunVertices(const u8* src, u8* dst, int count)
|
||||
{
|
||||
g_vertex_manager_write_ptr = dst.GetPointer();
|
||||
g_video_buffer_read_ptr = src.GetPointer();
|
||||
g_vertex_manager_write_ptr = dst;
|
||||
g_video_buffer_read_ptr = src;
|
||||
|
||||
m_numLoadedVertices += count;
|
||||
m_skippedVertices = 0;
|
||||
|
Reference in New Issue
Block a user