Commit Graph

31 Commits

Author SHA1 Message Date
Erik Abair c83b53e09d nv2a: Handles depth borders in 3D bordered textures
3D textures with texture borders have 4 layers of border on either side of the
content layers in addition to the normal 4 pixel border per layer. This change
handles those extra depth layers in roughly the same way that the per-layer
border texels are handled.

Fixes #1171

[Test](https://github.com/abaire/nxdk_pgraph_tests/blob/main/src/tests/texture_border_tests.cpp)
[HW results](https://github.com/abaire/nxdk_pgraph_tests_golden_results/wiki/Results-Texture_border)
2022-07-25 10:02:15 -07:00
Erik Abair 8d274e5f9a nv2a: Match inv_w qualifier to attribute qualifier
Calculates both interpolated and flat shaded inv_w so that the appropriate
value may be used when undoing the perspective divide in the pixel shader.
2022-07-13 16:16:38 -07:00
Lynne 6a8a967438 nv2a/psh: fix shader compilation errors
dotSTR had an extra bracket at the end, and an incorrect
variable type.
2022-07-02 10:39:44 -07:00
Matt Borgerson 83e16c996d nv2a: Store shading mode in CONTROL_3 2022-06-25 21:11:30 -07:00
Erik Abair 4132845336 nv2a: Implement SET_SHADE_MODEL 2022-06-25 20:39:55 -07:00
Erik Abair 0d84befb82 nv2a: Implement support for border textures 2022-06-25 18:08:55 -07:00
Erik Abair 30d3bb53b5 nv2a: Fix clip region at renderscales > 1
Fixes #1054
2022-06-09 20:41:38 -07:00
Erik Abair 8a97cec99f nv2a: Implement z16 float shadow comparison 2022-06-03 13:50:36 -07:00
Erik Abair 7d6da227ba nv2a: Fix combiner single stage color+alpha interdependence 2022-05-30 16:04:12 -07:00
Erik Abair 7c5d8b6546 nv2a: Implement shadow comparison for PROJECT2D mode 2022-05-25 14:38:32 -07:00
Erik Abair c33d96127c nv2a: Implement shadow samplers 2022-05-17 17:45:16 -07:00
Erik Abair 989dbcc76d nv2a: Match HW behavior when setting window clip 2022-05-10 13:15:30 -07:00
Erik Abair 6d7f329880 nv2a: Fix glsl ambiguous overload to prevent renderdoc failure 2022-04-26 22:08:51 -07:00
Erik Abair 4c8342725e nv2a: Make combiner assignment independent 2022-04-24 15:11:47 -07:00
Matt Borgerson 6e1969001e nv2a: Rename sum to muxsum, simplify mux string build 2022-03-18 18:28:09 -07:00
Erik Abair cb0a92b46c nv2a: Handle LSB mux flag 2022-03-18 17:35:32 -07:00
Erik Abair 2ff5f23235 nv2a: Implement v1r0_sum flags 2022-03-16 21:22:16 -07:00
Matt Borgerson 47b1487a71 nv2a: Move bump mat into pgraph register file 2021-10-12 01:32:08 -07:00
Matt Borgerson 5562a484e1 nv2a: Support integer scaling of surface dimensions 2021-07-20 10:37:07 -07:00
Matt Borgerson 203c76f89c nv2a: Handle point sprites, scaling 2021-07-10 02:42:15 -07:00
Matt Borgerson 6f477f02a6 nv2a: Enable exclusive clip 2021-06-02 18:08:06 -07:00
Matt Borgerson ebcc77c6c8 nv2a: Fix window clip coordinate transform 2021-06-02 15:42:13 -07:00
Matt Borgerson ee18e7bf35 nv2a: Add custom mutable string object (QString is now immutable) 2021-04-18 23:41:28 -07:00
Matt Borgerson 6e564854fc xemu: Update copyright 2021-03-03 03:48:11 -07:00
Matt Borgerson e431cbff82 nv2a: Fix compiler nits 2020-12-30 03:51:47 -07:00
Matt Borgerson 0bec22318a nv2a: Add Gaussian convolution filter for AA 2020-12-02 16:49:58 -07:00
Matt Borgerson 59980ba1c7 nv2a: Refactor BUMPENVMAP[_LUM] 2020-11-14 16:30:59 -07:00
Wilhelm Kovatch ff3deacae6 nv2a: Fix BUMPENVMAP[_LUM] texture modes 2020-11-14 16:27:12 -07:00
Matt Borgerson 0c2368f37d nv2a: Fix broken dot texture modes 2020-10-28 22:03:56 -07:00
Matt Borgerson 3c6596975d nv2a: Implement dot texture modes and dotmapping 2020-10-28 15:59:20 -07:00
Matt Borgerson a3fc742bbe nv2a: Remove nv2a_ prefix on files in nv2a dir 2020-10-18 00:55:08 -07:00