#include "stdafx.h" #include "Utilities/Log.h" #include "Emu/Memory/Memory.h" #include "GLProgramBuffer.h" int GLProgramBuffer::SearchFp(const RSXShaderProgram& rsx_fp, GLShaderProgram& gl_fp) { for(u32 i=0; i(rsx_fp.addr), m_buf[i].fp_data.size()) != 0) continue; gl_fp.SetId(m_buf[i].fp_id); gl_fp.SetShaderText(m_buf[i].fp_shader); return i; } return -1; } int GLProgramBuffer::SearchVp(const RSXVertexProgram& rsx_vp, GLVertexProgram& gl_vp) { for(u32 i=0; i(rsx_fp.addr), vm::get_ptr(rsx_fp.addr + rsx_fp.size)); new_buf.vp_data = rsx_vp.data; new_buf.vp_shader = gl_vp.shader; new_buf.fp_shader = gl_fp.GetShaderText(); m_buf.push_back(new_buf); } void GLProgramBuffer::Clear() { for(u32 i=0; i