rsx/common/d3d12: Separate int type buffer from float type buffer.

This commit is contained in:
Vincent Lejeune 2016-02-24 18:45:43 +01:00
parent a6ba47265f
commit 35db227af4
3 changed files with 26 additions and 4 deletions

View file

@ -568,6 +568,25 @@ namespace rsx
}
}
namespace
{
bool is_int_type(rsx::vertex_base_type type)
{
switch (type)
{
case rsx::vertex_base_type::s32k:
case rsx::vertex_base_type::ub256:
return true;
case rsx::vertex_base_type::f:
case rsx::vertex_base_type::cmp:
case rsx::vertex_base_type::sf:
case rsx::vertex_base_type::s1:
case rsx::vertex_base_type::ub:
return false;
}
}
}
std::array<u32, 4> thread::get_color_surface_addresses() const
{
u32 offset_color[] =
@ -636,7 +655,8 @@ namespace rsx
vertex_arrays_info[index].size,
vertex_arrays_info[index].frequency,
!!((modulo_mask >> index) & 0x1),
true
true,
is_int_type(vertex_arrays_info[index].type)
}
);
}
@ -648,7 +668,8 @@ namespace rsx
register_vertex_info[index].size,
register_vertex_info[index].frequency,
!!((modulo_mask >> index) & 0x1),
false
false,
is_int_type(vertex_arrays_info[index].type)
}
);
}