diff options
| author | 2020-02-24 21:02:32 -0300 | |
|---|---|---|
| committer | 2020-04-13 01:30:34 -0300 | |
| commit | 76615b9f34efe72dd8f5dcae0d192aa4dc29e970 (patch) | |
| tree | 0ce8326404380a1eeb257d4c24ca2dcc0ac9f0ad /src/video_core/engines | |
| parent | Merge pull request #3606 from ReinUsesLisp/nvflinger (diff) | |
| download | yuzu-76615b9f34efe72dd8f5dcae0d192aa4dc29e970.tar.gz yuzu-76615b9f34efe72dd8f5dcae0d192aa4dc29e970.tar.xz yuzu-76615b9f34efe72dd8f5dcae0d192aa4dc29e970.zip | |
gl_rasterizer: Implement line widths and smooth lines
Implements "legacy" features from OpenGL present on hardware such as
smooth lines and line width.
Diffstat (limited to 'src/video_core/engines')
| -rw-r--r-- | src/video_core/engines/maxwell_3d.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/video_core/engines/maxwell_3d.h b/src/video_core/engines/maxwell_3d.h index 4637ddabd..2977a7d81 100644 --- a/src/video_core/engines/maxwell_3d.h +++ b/src/video_core/engines/maxwell_3d.h | |||
| @@ -966,7 +966,10 @@ public: | |||
| 966 | BitField<4, 1, u32> triangle_rast_flip; | 966 | BitField<4, 1, u32> triangle_rast_flip; |
| 967 | } screen_y_control; | 967 | } screen_y_control; |
| 968 | 968 | ||
| 969 | INSERT_UNION_PADDING_WORDS(0x21); | 969 | float line_width_smooth; |
| 970 | float line_width_aliased; | ||
| 971 | |||
| 972 | INSERT_UNION_PADDING_WORDS(0x1F); | ||
| 970 | 973 | ||
| 971 | u32 vb_element_base; | 974 | u32 vb_element_base; |
| 972 | u32 vb_base_instance; | 975 | u32 vb_base_instance; |
| @@ -1024,7 +1027,7 @@ public: | |||
| 1024 | 1027 | ||
| 1025 | float polygon_offset_factor; | 1028 | float polygon_offset_factor; |
| 1026 | 1029 | ||
| 1027 | INSERT_UNION_PADDING_WORDS(0x1); | 1030 | u32 line_smooth_enable; |
| 1028 | 1031 | ||
| 1029 | struct { | 1032 | struct { |
| 1030 | u32 tic_address_high; | 1033 | u32 tic_address_high; |
| @@ -1591,6 +1594,8 @@ ASSERT_REG_POSITION(stencil_front_func_mask, 0x4E6); | |||
| 1591 | ASSERT_REG_POSITION(stencil_front_mask, 0x4E7); | 1594 | ASSERT_REG_POSITION(stencil_front_mask, 0x4E7); |
| 1592 | ASSERT_REG_POSITION(frag_color_clamp, 0x4EA); | 1595 | ASSERT_REG_POSITION(frag_color_clamp, 0x4EA); |
| 1593 | ASSERT_REG_POSITION(screen_y_control, 0x4EB); | 1596 | ASSERT_REG_POSITION(screen_y_control, 0x4EB); |
| 1597 | ASSERT_REG_POSITION(line_width_smooth, 0x4EC); | ||
| 1598 | ASSERT_REG_POSITION(line_width_aliased, 0x4ED); | ||
| 1594 | ASSERT_REG_POSITION(vb_element_base, 0x50D); | 1599 | ASSERT_REG_POSITION(vb_element_base, 0x50D); |
| 1595 | ASSERT_REG_POSITION(vb_base_instance, 0x50E); | 1600 | ASSERT_REG_POSITION(vb_base_instance, 0x50E); |
| 1596 | ASSERT_REG_POSITION(clip_distance_enabled, 0x544); | 1601 | ASSERT_REG_POSITION(clip_distance_enabled, 0x544); |
| @@ -1604,6 +1609,7 @@ ASSERT_REG_POSITION(multisample_control, 0x54F); | |||
| 1604 | ASSERT_REG_POSITION(condition, 0x554); | 1609 | ASSERT_REG_POSITION(condition, 0x554); |
| 1605 | ASSERT_REG_POSITION(tsc, 0x557); | 1610 | ASSERT_REG_POSITION(tsc, 0x557); |
| 1606 | ASSERT_REG_POSITION(polygon_offset_factor, 0x55B); | 1611 | ASSERT_REG_POSITION(polygon_offset_factor, 0x55B); |
| 1612 | ASSERT_REG_POSITION(line_smooth_enable, 0x55C); | ||
| 1607 | ASSERT_REG_POSITION(tic, 0x55D); | 1613 | ASSERT_REG_POSITION(tic, 0x55D); |
| 1608 | ASSERT_REG_POSITION(stencil_two_side_enable, 0x565); | 1614 | ASSERT_REG_POSITION(stencil_two_side_enable, 0x565); |
| 1609 | ASSERT_REG_POSITION(stencil_back_op_fail, 0x566); | 1615 | ASSERT_REG_POSITION(stencil_back_op_fail, 0x566); |