Commit Graph

81 Commits

Author SHA1 Message Date
GhostlyDark
1812bc03c3
Expand GBI database - Part 2 (#66)
* Add F3DLX 1.2x, F3DTEX/A 1.23, F3DLX.NoN 1.2x

* Add F3DEX.Rej 2.xx, S2DEX 1.xx, ZSORTP 0.33

* Add S2DEX 2.06, S2DEX 2.08, L3DEX 2.05, L3DEX 2.08

* Add F3DLX 1.23.Rej, F3DLP Rej, F3DLX2 xbus Rej, L3DEX 1.xx

* Add F3D, L3D (Blast Corps)

* Add F3DLP 0.96.Rej, F3DFLX, F3DAM, S2D, S2DEX 2.xx

* Add F3D.NoN (2.0D) and F3DLX.NoN 1.00
2024-08-08 18:23:01 -03:00
Dario
6f7987b539 Remove unused method. 2024-08-08 00:10:22 -03:00
Darío
8e8588df56
Pipeline strategy (#72)
* Attempt to aid the driver when creating ubershader pipelines.

* Second attempt.

* Missing include.

* Change the index in the condition.
2024-08-08 00:06:14 -03:00
Darío
b91d6a7441
Use re-spirv instead of native specialization constants. Optimize the amount of ubershader pipelines that need to be created. (#69) 2024-08-07 21:38:50 -03:00
David Chavez
cb631739b0
chore(ci): Run workflow with clang on windows (#68)
* chore(ci): Run workflow with clang on windows

* fix compilation issue
2024-08-05 08:49:58 -03:00
Dario
825e5a8c78 Recursive workflow. 2024-08-04 15:36:28 -03:00
Tanmay
b32ff329f9
Fix swap chain tests to use the new semaphore API (#67) 2024-08-01 09:40:17 -03:00
Darío
734ae60512
Replace swap chain RHI to use semaphores instead. (#65)
* Rewrite swap chains to use semaphores.

* Delay resize until there's something to draw.

* Unused variable.
2024-07-31 12:29:33 -03:00
Dario
8d6b2621f7 Wait for texture streaming threads to finish before exiting. 2024-07-28 22:33:52 -03:00
Dario
09f7ac21d0 Handle empty scissors correctly. 2024-07-28 16:35:08 -03:00
GhostlyDark
c6e50be61a
Add various F3DEX microcodes (#62) 2024-07-28 16:20:04 -03:00
AltoXorg
8747507cf9
Add necessary headers and use %zu (#63) 2024-07-28 12:53:10 -03:00
Dario
04c7d45920 Change streaming queue to streaming stack to prioritize later draw calls. 2024-07-28 12:43:46 -03:00
Dario
fa373f0b8a Patch miniz instead to allow specifying the compression method. 2024-07-27 16:40:16 -03:00
Darío
b53d7f7611
Update TEXTURE-PACKS.md 2024-07-27 14:55:37 -03:00
Darío
3ca12a69fb
Update TEXTURE-PACKS.md 2024-07-27 14:54:47 -03:00
Dario
a05cc2c787 Supress another bogus D3D12 Sample Positions warning. 2024-07-27 14:13:01 -03:00
Dario
efbda3f0ee Fix edge case with reference counting. 2024-07-27 00:06:49 -03:00
Darío
ab7d96f609
Update TEXTURE-PACKS.md 2024-07-26 19:46:38 -03:00
Dario
82375dabaa Update ddspp to fix issue with odd-sized mipmaps. 2024-07-26 19:32:55 -03:00
Darío
0fd6d05b8a
HD Textures (#34)
* Add support for HD Texture replacements.
2024-07-25 22:30:39 -03:00
GhostlyDark
3b5d891e17
Expand GBI database (#60) 2024-07-24 16:25:32 -03:00
Dario
d864d7ab9b D3D12: Fix bogus warning for sample positions. 2024-07-21 19:04:22 -03:00
Dario
f10ad63044 Add clang ifdef for clang warning pragmas. 2024-07-21 18:20:36 -03:00
Wiseguy
7f14741da2
Use correct warning flags under clang-cl and fix new warnings (#61) 2024-07-21 18:03:04 -03:00
Dario
ad1c540d6e Add unaligned load support for vertex PD, fix edge case in sync requirement detection. 2024-07-21 17:18:35 -03:00
Dario
e55a7fba59 Merge branch 'main' of https://github.com/rt64/rt64 2024-07-15 19:25:25 -03:00
Dario
f17c6587bd Update submodules and add ddspp as a submodule. 2024-07-15 19:24:58 -03:00
Dario
e260b2b076 Add submodules. 2024-07-15 19:22:55 -03:00
Darío
56316549da
Use DXIL Linker to reduce compilation time of specializations significantly. (#55)
* Use DXIL Linker to reduce shader optimization time.

* Use string view on render params text.
2024-07-12 00:15:21 -03:00
Mr-Wiseguy
1c33a5ff42 Fixed windows clang warnings 2024-07-06 12:35:23 -04:00
Wiseguy
eb981eb47b
Add egbi command to bypass the segment table for K0 CPU addresses to allow extending rdram (#54)
* Add egbi command to bypass the segment table for K0 CPU addresses to allow extending rdram

* Fix capitalization of RDRAM for consistency
2024-07-05 22:13:53 -03:00
Reonu
5c1562d66a
Workaround Nvidia Linux hang on Wayland (#52) 2024-06-30 17:07:40 -03:00
Anghelo Carvajal
ed7511300c
Fix most warnings (#35)
* Turn on warnings

* -Wno-unused-parameter -Wno-unused-variable -Wno-unused-function

* Fix -Wformat

```
warning: format specifies type 'unsigned long long' but the argument has type 'uint64_t' (aka 'unsigned long') [-Wformat]
```

* Fix -Wrange-loop-construct warning

```
warning: loop variable 'it' creates a copy from type 'std::pair<const std::basic_string<char>, RT64::PresetLights::Light> const' [-Wrange-loop-construct]
```

* -Wsign-compare

```
comparison of integers of different signs: 'int32_t' (aka 'int') and 'uint32_t' (aka 'unsigned int')
```

* -Wrange-loop-construct

```
warning: loop variable ‘it’ creates a copy from type ‘const std::pair<const std::__cxx11::basic_string<char>, RT64::PresetDrawCall>’
```

* rerun

* Fix -Wparentheses

```
warning: suggest parentheses around arithmetic in operand of ‘^’
```

* -Wsign-compare

```
warning: comparison of integer expressions of different signedness: ‘int32_t’ {aka ‘int’} and ‘unsigned int’
```

* Update hlslpp to fix a number of warnings

* Remove `#pragma once` in cpp file

```
warning: #pragma once in main file
```

* -Wswitch

```
warning: enumeration value ‘None’ not handled in switch
```

* -Wformat-security

```
warning: format not a string literal and no format arguments
```

* regen

* Move warnings to clang check

* Fix -Wdelete-non-abstract-non-virtual-dtor

```
warning: destructor called on non-final 'RT64::PresetMaterial' that has virtual functions but non-virtual destructor
```

* remove warnings file

* Fix one unused parameter

* Fix assert wrapping

* Add -Werror flag

* Change type of `dstIndex` to `uint32_t`

* More uses I missed

* Fix new warnings
2024-06-20 18:57:24 -03:00
Darío
7d8954e734
Be extra cautious and only free XRRCrtcInfo if it's not nullptr in case the implementation doesn't handle it. 2024-06-20 18:49:48 -03:00
Anghelo Carvajal
e52aa9eea1
Add missing XRRFreeCrtcInfo and XRRFreeScreenResources functions (#46) 2024-06-20 18:44:17 -03:00
Wiseguy
e106c18965
Show offline list count and current specialized shader count in debugger (#44) 2024-06-02 12:59:19 -04:00
Darío
1c9594d95b
RDNA3 Workaround. (#41) 2024-06-01 13:45:50 -04:00
Dario
e4af592195 Only prefer devices based on VRAM in D3D12. Fixes #18. 2024-05-28 20:01:29 -03:00
Dario
1adcbea31a Merge branch 'main' of https://github.com/rt64/rt64 2024-05-26 11:22:54 -03:00
Dario
036abf55f1 Shader cache dumping fix, removed SM 5.1 from supported models. 2024-05-26 11:22:45 -03:00
David Chavez
48e2adeebf
Fix CI config (#32) 2024-05-25 20:44:27 +02:00
Darío
64b9e166f7
Add dither noise approximation using post-blending draws. (#33) 2024-05-24 19:50:45 -03:00
Darío
9b9237f097
Support for high precision framebuffers. (#31)
* Support for high precision framebuffers.

* Missing header.

* Add detection logic for devices with low VRAM.

* Add HDR handling to shader cache dumping and parsing.

* Internal color format in configuration.
2024-05-24 16:39:34 -03:00
Dario
c84eb6a984 Add F3DEX2 2.04H and S2DEX2 2.04. 2024-05-23 19:24:45 -03:00
Dario
627571e5e6 MSAA Workaround for Decals on a non-NoN game (See #24). 2024-05-21 22:16:20 -03:00
Anghelo Carvajal
051af43bd8
Define the D3D12_RESOURCE_STATE_ALL_SHADER_RESOURCE macro (#26) 2024-05-20 18:51:18 -03:00
Dario
1dd801264d Undef ControlMask. Fixes #22. 2024-05-19 22:54:30 -03:00
Anghelo Carvajal
ca26fb8096
Link against Xrandr on Linux (#20)
* Add `Xrandr` to `target_link_libraries`

* Use the fancy cmake stuff
2024-05-19 12:56:46 -03:00
Dario
a64519b897 Round down the left and top coordinates in fill mode or copy mode. 2024-05-19 00:01:44 -03:00