Browse Source
Merge pull request #2928 from ReinUsesLisp/dirty-depth-bounds
maxwell_3d: Add dirty flags for depth bounds values
pull/15/merge
bunnei
6 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with
10 additions and
1 deletions
-
src/video_core/engines/maxwell_3d.cpp
-
src/video_core/engines/maxwell_3d.h
|
|
|
@ -249,6 +249,11 @@ void Maxwell3D::InitDirtySettings() { |
|
|
|
dirty_pointers[MAXWELL3D_REG_INDEX(polygon_offset_units)] = polygon_offset_dirty_reg; |
|
|
|
dirty_pointers[MAXWELL3D_REG_INDEX(polygon_offset_factor)] = polygon_offset_dirty_reg; |
|
|
|
dirty_pointers[MAXWELL3D_REG_INDEX(polygon_offset_clamp)] = polygon_offset_dirty_reg; |
|
|
|
|
|
|
|
// Depth bounds
|
|
|
|
constexpr u32 depth_bounds_values_dirty_reg = DIRTY_REGS_POS(depth_bounds_values); |
|
|
|
dirty_pointers[MAXWELL3D_REG_INDEX(depth_bounds[0])] = depth_bounds_values_dirty_reg; |
|
|
|
dirty_pointers[MAXWELL3D_REG_INDEX(depth_bounds[1])] = depth_bounds_values_dirty_reg; |
|
|
|
} |
|
|
|
|
|
|
|
void Maxwell3D::CallMacroMethod(u32 method, std::size_t num_parameters, const u32* parameters) { |
|
|
|
|
|
|
|
@ -687,7 +687,9 @@ public: |
|
|
|
|
|
|
|
u32 rt_separate_frag_data; |
|
|
|
|
|
|
|
INSERT_PADDING_WORDS(0xC); |
|
|
|
f32 depth_bounds[2]; |
|
|
|
|
|
|
|
INSERT_PADDING_WORDS(0xA); |
|
|
|
|
|
|
|
struct { |
|
|
|
u32 address_high; |
|
|
|
@ -1201,6 +1203,7 @@ public: |
|
|
|
bool transform_feedback; |
|
|
|
bool color_mask; |
|
|
|
bool polygon_offset; |
|
|
|
bool depth_bounds_values; |
|
|
|
|
|
|
|
// Complementary |
|
|
|
bool viewport_transform; |
|
|
|
@ -1400,6 +1403,7 @@ ASSERT_REG_POSITION(stencil_back_mask, 0x3D6); |
|
|
|
ASSERT_REG_POSITION(stencil_back_func_mask, 0x3D7); |
|
|
|
ASSERT_REG_POSITION(color_mask_common, 0x3E4); |
|
|
|
ASSERT_REG_POSITION(rt_separate_frag_data, 0x3EB); |
|
|
|
ASSERT_REG_POSITION(depth_bounds, 0x3EC); |
|
|
|
ASSERT_REG_POSITION(zeta, 0x3F8); |
|
|
|
ASSERT_REG_POSITION(clear_flags, 0x43E); |
|
|
|
ASSERT_REG_POSITION(vertex_attrib_format, 0x458); |
|
|
|
|