diff options
| author | 2018-10-09 22:28:19 -0400 | |
|---|---|---|
| committer | 2018-10-09 22:28:19 -0400 | |
| commit | 5f4ee6f0c8c7b2532bc5be841fcee4670495d7f7 (patch) | |
| tree | c0ed6314f69fa573549604cf52087f31b58c3405 /src/video_core/engines | |
| parent | Fixed block height settings for RenderTargets and Depth Buffers, and added bl... (diff) | |
| download | yuzu-5f4ee6f0c8c7b2532bc5be841fcee4670495d7f7.tar.gz yuzu-5f4ee6f0c8c7b2532bc5be841fcee4670495d7f7.tar.xz yuzu-5f4ee6f0c8c7b2532bc5be841fcee4670495d7f7.zip | |
Add memory Layout to Render Targets and Depth Buffers
Diffstat (limited to 'src/video_core/engines')
| -rw-r--r-- | src/video_core/engines/maxwell_3d.h | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/video_core/engines/maxwell_3d.h b/src/video_core/engines/maxwell_3d.h index 896498b89..68831a1ac 100644 --- a/src/video_core/engines/maxwell_3d.h +++ b/src/video_core/engines/maxwell_3d.h | |||
| @@ -347,6 +347,16 @@ public: | |||
| 347 | DecrWrap = 8, | 347 | DecrWrap = 8, |
| 348 | }; | 348 | }; |
| 349 | 349 | ||
| 350 | enum class MemoryLayout : u32 { | ||
| 351 | Linear = 0, | ||
| 352 | BlockLinear = 1, | ||
| 353 | }; | ||
| 354 | |||
| 355 | enum class InvMemoryLayout : u32 { | ||
| 356 | BlockLinear = 0, | ||
| 357 | Linear = 1, | ||
| 358 | }; | ||
| 359 | |||
| 350 | struct Cull { | 360 | struct Cull { |
| 351 | enum class FrontFace : u32 { | 361 | enum class FrontFace : u32 { |
| 352 | ClockWise = 0x0900, | 362 | ClockWise = 0x0900, |
| @@ -436,7 +446,8 @@ public: | |||
| 436 | BitField<0, 3, u32> block_width; | 446 | BitField<0, 3, u32> block_width; |
| 437 | BitField<4, 3, u32> block_height; | 447 | BitField<4, 3, u32> block_height; |
| 438 | BitField<8, 3, u32> block_depth; | 448 | BitField<8, 3, u32> block_depth; |
| 439 | } block_dimensions; | 449 | BitField<12, 1, InvMemoryLayout> type; |
| 450 | } memory_layout; | ||
| 440 | u32 array_mode; | 451 | u32 array_mode; |
| 441 | u32 layer_stride; | 452 | u32 layer_stride; |
| 442 | u32 base_layer; | 453 | u32 base_layer; |
| @@ -556,7 +567,8 @@ public: | |||
| 556 | BitField<0, 4, u32> block_width; | 567 | BitField<0, 4, u32> block_width; |
| 557 | BitField<4, 4, u32> block_height; | 568 | BitField<4, 4, u32> block_height; |
| 558 | BitField<8, 4, u32> block_depth; | 569 | BitField<8, 4, u32> block_depth; |
| 559 | } block_dimensions; | 570 | BitField<20, 1, InvMemoryLayout> type; |
| 571 | } memory_layout; | ||
| 560 | u32 layer_stride; | 572 | u32 layer_stride; |
| 561 | 573 | ||
| 562 | GPUVAddr Address() const { | 574 | GPUVAddr Address() const { |