mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-07-09 00:11:24 +12:00
rsx: Pass vertex attributes streamed via register write in PS3-correct format
- TODO: Optimize this, we can avoid the double bswap in FIFO and then in attribute push Not very important since nobody is doing register push in high-performance path.
This commit is contained in:
parent
6f874be41b
commit
d3ff67ffb5
3 changed files with 10 additions and 29 deletions
|
@ -263,16 +263,8 @@ namespace rsx
|
|||
const auto vtype = vertex_data_type_from_element_type<type>::type;
|
||||
ensure(vtype != rsx::vertex_base_type::cmp);
|
||||
|
||||
switch (vtype)
|
||||
{
|
||||
case rsx::vertex_base_type::ub:
|
||||
case rsx::vertex_base_type::ub256:
|
||||
// Get BE data
|
||||
arg = std::bit_cast<u32, be_t<u32>>(arg);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
// Get BE data
|
||||
arg = std::bit_cast<u32, be_t<u32>>(arg);
|
||||
|
||||
if (rsx->in_begin_end)
|
||||
{
|
||||
|
@ -398,6 +390,7 @@ namespace rsx
|
|||
|
||||
void draw_inline_array(thread* /*rsx*/, u32 /*reg*/, u32 arg)
|
||||
{
|
||||
arg = std::bit_cast<u32, be_t<u32>>(arg);
|
||||
rsx::method_registers.current_draw_clause.command = rsx::draw_command::inlined_array;
|
||||
rsx::method_registers.current_draw_clause.inline_vertex_array.push_back(arg);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue