diff options
| author | 2020-04-19 01:25:52 -0300 | |
|---|---|---|
| committer | 2020-04-21 19:55:44 -0300 | |
| commit | 0bbae63300fc83505d34f5ca3f9a5be10e42d7c7 (patch) | |
| tree | a7a1b11034b64ca73adea93260efe0d98bc30707 /src/video_core/engines | |
| parent | Merge pull request #3718 from ReinUsesLisp/better-pipeline-state (diff) | |
| download | yuzu-0bbae63300fc83505d34f5ca3f9a5be10e42d7c7.tar.gz yuzu-0bbae63300fc83505d34f5ca3f9a5be10e42d7c7.tar.xz yuzu-0bbae63300fc83505d34f5ca3f9a5be10e42d7c7.zip | |
gl_rasterizer: Fix buffers without size
On NVN buffers can be enabled but have no size. According to deko3d and
the behavior we see in Animal Crossing: New Horizons these buffers get
the special address of 0x1000 and limit themselves to 0xfff.
Implement buffers without a size by binding a null buffer to OpenGL
without a side.
https://github.com/devkitPro/deko3d/blob/1d1930beea093b5a663419e93b0649719a3ca5da/source/maxwell/gpu_3d_vbo.cpp#L62-L63
Diffstat (limited to 'src/video_core/engines')
| -rw-r--r-- | src/video_core/engines/maxwell_3d.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/video_core/engines/maxwell_3d.h b/src/video_core/engines/maxwell_3d.h index 59d5752d2..7bbc6600b 100644 --- a/src/video_core/engines/maxwell_3d.h +++ b/src/video_core/engines/maxwell_3d.h | |||
| @@ -1259,7 +1259,8 @@ public: | |||
| 1259 | 1259 | ||
| 1260 | GPUVAddr LimitAddress() const { | 1260 | GPUVAddr LimitAddress() const { |
| 1261 | return static_cast<GPUVAddr>((static_cast<GPUVAddr>(limit_high) << 32) | | 1261 | return static_cast<GPUVAddr>((static_cast<GPUVAddr>(limit_high) << 32) | |
| 1262 | limit_low); | 1262 | limit_low) + |
| 1263 | 1; | ||
| 1263 | } | 1264 | } |
| 1264 | } vertex_array_limit[NumVertexArrays]; | 1265 | } vertex_array_limit[NumVertexArrays]; |
| 1265 | 1266 | ||