Stop doing nastly shit to OpenGL stream buffers.

Instead we keep the loaded vertices in CPU memory.
This commit is contained in:
Scott Mansell 2015-01-24 14:37:20 +13:00
parent 5510c86b81
commit 14baf038e7
6 changed files with 79 additions and 54 deletions

View file

@ -157,8 +157,12 @@ int RunVertices(int vtx_attr_group, int primitive, int count, DataReader src, bo
VertexManager::Flush();
s_current_vtx_fmt = loader->m_native_vertex_format;
// if cull mode is CULL_ALL, tell VertexManager to skip triangles and quads.
// They still need to go through vertex loading, because we need to calculate a zfreeze refrence slope.
bool cullall = (bpmem.genMode.cullmode == GenMode::CULL_ALL && primitive < 5);
DataReader dst = VertexManager::PrepareForAdditionalData(primitive, count,
loader->m_native_vtx_decl.stride);
loader->m_native_vtx_decl.stride, cullall);
count = loader->RunVertices(primitive, count, src, dst);