rsx: Copy state in capture frame call

This commit is contained in:
Vincent Lejeune 2016-07-17 19:16:21 +02:00
parent e297984e59
commit ac771f951d
8 changed files with 67 additions and 42 deletions

View file

@ -770,6 +770,22 @@ namespace rsx
return{ T(N, std::forward<Args>(arg))... };
}
rsx_state & rsx_state::operator=(const rsx_state & in)
{
registers = in.registers;
transform_program = in.transform_program;
transform_constants = in.transform_constants;
register_vertex_info = in.register_vertex_info;
for (int i = 0; i < 16; i++)
{
vertex_arrays_info[i].size = in.vertex_arrays_info[i].size;
vertex_arrays_info[i].stride = in.vertex_arrays_info[i].stride;
vertex_arrays_info[i].frequency = in.vertex_arrays_info[i].frequency;
vertex_arrays_info[i].type = in.vertex_arrays_info[i].type;
}
return *this;
}
rsx_state::rsx_state() :
fragment_textures(fill_array<texture>(registers, std::make_index_sequence<16>())),
vertex_textures(fill_array<vertex_texture>(registers, std::make_index_sequence<4>())),