transifex-integration[bot]
d69ebbd9fd
Apply translations in zh-Hant
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'zh-Hant' language.
2023-04-11 09:36:56 +00:00
transifex-integration[bot]
ad23b33168
Apply translations in zh-Hant
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'zh-Hant' language.
2023-04-11 09:36:32 +00:00
transifex-integration[bot]
b0c986b98a
Apply translations in zh-Hant
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'zh-Hant' language.
2023-04-11 09:36:23 +00:00
transifex-integration[bot]
62c11b5070
Apply translations in zh-Hant
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'zh-Hant' language.
2023-04-11 09:36:14 +00:00
transifex-integration[bot]
6f25b339fa
Apply translations in zh-Hant
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'zh-Hant' language.
2023-04-11 09:34:17 +00:00
transifex-integration[bot]
defbfe2ca5
Apply translations in el
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'el' language.
2023-04-07 13:27:03 +00:00
transifex-integration[bot]
67bd5fdd5f
Apply translations in el
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'el' language.
2023-04-07 13:26:46 +00:00
transifex-integration[bot]
1cffc8eedb
Apply translations in el
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'el' language.
2023-04-07 13:26:29 +00:00
transifex-integration[bot]
4ec886f71f
Apply translations in el
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'el' language.
2023-04-07 13:26:15 +00:00
transifex-integration[bot]
dd34762a62
Apply translations in el
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'el' language.
2023-04-07 13:26:01 +00:00
transifex-integration[bot]
3900a3139c
Apply translations in el
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'el' language.
2023-04-07 13:25:48 +00:00
transifex-integration[bot]
2a50ab40a3
Apply translations in el
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'el' language.
2023-04-07 13:25:30 +00:00
transifex-integration[bot]
a757a2f026
Apply translations in el
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'el' language.
2023-04-07 13:25:16 +00:00
transifex-integration[bot]
c84ca9af4b
Apply translations in el
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'el' language.
2023-04-07 13:24:59 +00:00
transifex-integration[bot]
1a1c0b0e17
Apply translations in el
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'el' language.
2023-04-07 13:24:42 +00:00
transifex-integration[bot]
dd572fedbc
Apply translations in el
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'el' language.
2023-04-07 13:24:30 +00:00
transifex-integration[bot]
5bb1f8bade
Apply translations in el
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'el' language.
2023-04-07 13:24:16 +00:00
transifex-integration[bot]
9e09f1099d
Apply translations in el
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'el' language.
2023-04-07 13:23:56 +00:00
transifex-integration[bot]
2055e819f5
Apply translations in el
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'el' language.
2023-04-07 12:44:35 +00:00
transifex-integration[bot]
152d0db021
Apply translations in el
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'el' language.
2023-04-06 09:53:16 +00:00
transifex-integration[bot]
e0c25bbead
Apply translations in el
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'el' language.
2023-04-05 20:48:49 +00:00
transifex-integration[bot]
1c43791525
Apply translations in id
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'id' language.
2023-04-02 11:42:05 +00:00
transifex-integration[bot]
ad31db17fa
Apply translations in id
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'id' language.
2023-04-02 11:32:38 +00:00
transifex-integration[bot]
6e4a89099e
Apply translations in fr
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'fr' language.
2023-03-30 17:30:48 +00:00
transifex-integration[bot]
feffee6a88
Apply translations in zh-Hant
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'zh-Hant' language.
2023-03-28 18:37:25 +00:00
transifex-integration[bot]
6a03e4cd72
Apply translations in zh-Hans
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'zh-Hans' language.
2023-03-28 18:33:56 +00:00
transifex-integration[bot]
4f4229413e
Apply translations in zh-Hans
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'zh-Hans' language.
2023-03-28 18:28:28 +00:00
transifex-integration[bot]
9e2fe79804
Apply translations in es
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'es' language.
2023-03-26 18:58:17 +00:00
transifex-integration[bot]
7eea6515ba
Apply translations in de
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'de' language.
2023-03-26 15:20:35 +00:00
transifex-integration[bot]
3a4bf37b52
Apply translations in fr
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'fr' language.
2023-03-26 13:05:34 +00:00
transifex-integration[bot]
6017b26799
Apply translations in pt_BR
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'pt_BR' language.
2023-03-24 19:58:17 +00:00
transifex-integration[bot]
cdb5ecc5b2
Apply translations in pt_BR
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'pt_BR' language.
2023-03-24 17:49:22 +00:00
transifex-integration[bot]
8b8ecec808
Apply translations in pt_BR
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'pt_BR' language.
2023-03-24 16:07:39 +00:00
transifex-integration[bot]
f507110827
Apply translations in es_419
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'es_419' language.
2023-03-23 20:15:17 +00:00
transifex-integration[bot]
466462c937
Apply translations in id
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'id' language.
2023-03-21 16:40:29 +01:00
transifex-integration[bot]
39c7c8e17e
Apply translations in fr
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'fr' language.
2023-03-21 16:40:29 +01:00
transifex-integration[bot]
c8561ee64e
Apply translations in pt_BR
...
100% reviewed for the source file 'app/src/main/res/values/strings.xml'
on the 'pt_BR' language.
2023-03-21 16:40:28 +01:00
Billy Laws
1f0d297221
Fix infinite loop when reading dirty buffers with direct mem
...
The code didn't account for interval Queries returning zero when reaching the end.
2023-03-19 13:52:15 +00:00
Billy Laws
0b551e04db
Return a null handle when reading from an unbound cbuf
2023-03-19 13:52:15 +00:00
Billy Laws
8d9b0041b4
Return a dummy buffer when encountering unbound SSBOs
2023-03-19 13:52:15 +00:00
Billy Laws
d893777262
Flush deferred draws before executing macro HLE and cleanup
2023-03-19 13:52:15 +00:00
Billy Laws
c928084bb1
Show a toast when per-game settings are active
2023-03-19 13:52:15 +00:00
Billy Laws
6433a1722d
Update adrenotools for 8G2 DMI
2023-03-19 13:52:15 +00:00
Billy Laws
0f33055176
Fixup accidental change
2023-03-19 13:52:15 +00:00
Billy Laws
3901ecbf49
Hook up indirect draws into usagetracker
...
Now usagetracker is properly in place, indirect draw HLE can be used without requiring any hacks. Dirtiness is now ignored when fetching macro arguments, and it's now the duty of the HLE impls themselves to perform flushing if they require it.
2023-03-19 13:52:15 +00:00
Billy Laws
04f3fa4b7f
Implement basic indirect draw macro HLE
...
This still requires usagetracker to avoid redundantly performing indirect draws when the memory isn't dirty, and to allow for using it with direct memory, but it's a start.
2023-03-19 13:52:15 +00:00
Billy Laws
2444f2e81d
Fix HLE macro code to not hash all of macro memory + update args struct
...
We incorrectly hashed the entirety of macro memory starting from the macro base address, as opposed to just the macro itself.
2023-03-19 13:52:15 +00:00
Billy Laws
b313dcbdca
Avoid dereferencing macro argument pointers in memory where possible
...
Indirect draws are implemented by having the macro arguments overflow into a seperate GP Entry that points directly to the indirect argument buffer. To HLE indirect draws a buffer needs to be created from this pointer, and it cannot be dereferenced on the CPU at any point to avoid hitting traps.
2023-03-19 13:52:15 +00:00
Billy Laws
2b93604da0
Use hades HLE replacement for constant buffer attributes
...
In the cases of indirect draws, we don't know the vertex offset to write into the driver info constant buffer ahead of time, and to do it at draw time on the GPU would mean marking the constant buffer as GPU dirty (slow). HLE them in the shader instead using the host draw parameters extension.
2023-03-19 13:52:15 +00:00
Billy Laws
7e1c58accc
Implement indirect draws in the Maxwell 3D interconnect
...
These will be used by the HLE indirect draw macro to perform indirect draws without waiting for GPU idle.
2023-03-19 13:52:15 +00:00
Billy Laws
49cd2a71cc
Introduce GPU checkpoints for crash debugging
...
When GPU crashes aren't reproducable in renderdoc, it helps to have someway to figure out what exactly is going on when a crash happens or what operation caused it. Add a checkpoint system that reports the GPU execution state in perfetto in time with actual GPU execution, and use flow events to show the event's path through execution, vulkan record and executor record stages.
2023-03-19 13:52:15 +00:00
Billy Laws
d5b6c68ae4
Split out common parts of Maxwell 3D draws
...
These will be able to be shared between indirect and normal draws.
2023-03-19 13:52:15 +00:00
Billy Laws
779ba3de05
Commonise full pipeline barrier recording
2023-03-19 13:52:15 +00:00
Billy Laws
a65aa28df2
Avoid redundant GPU-dirty propagation for direct buffer recreation
2023-03-19 13:52:15 +00:00
Billy Laws
4a3a40aa40
Add more perfetto tracepoints
2023-03-19 13:52:15 +00:00
Billy Laws
c15b89975b
Allocate a general purpose GPU-side debug tracing buffer
...
Can be used for checkpoints, etc.
2023-03-19 13:52:15 +00:00
Billy Laws
c36b8e843e
Add index buffer size estimation via mapping size
...
This is useful for indirect draws, where we don't know the underlying index buffer size and also don't know the index count.
2023-03-19 13:52:15 +00:00
Billy Laws
0deff5e37a
Set a higher perfetto size hint to avoid packet loss
2023-03-19 13:52:15 +00:00
Billy Laws
4bb2a41594
Use usagetracker to determine if pushbuffers need to flush the GPU
2023-03-19 13:52:15 +00:00
Billy Laws
090151f0c3
Introduce usage tracker for dirty tracking within an execution
...
This is neccessary as e.g. shaders can be updated through a mirror and never hit modification traps. By tracking which addresses have sequenced writes applied, the shader manager can then correctly detect if a given shader has been modified by the GPU.
2023-03-19 13:52:15 +00:00
Billy Laws
f64860c93e
Commonise buffer interval list code
...
This will be reused for usagetracker.
2023-03-19 13:52:15 +00:00
Abandoned Cart
0949d51871
Clear or suppress some easy lint warnings
2023-03-18 16:16:15 +01:00
Abandoned Cart
94459e01a4
useLegacyPackaging for extractNativeLibs
...
"PackagingOptions.jniLibs.useLegacyPackaging should be set to true because android:extractNativeLibs is set to "true" in AndroidManifest.xml"
2023-03-18 16:15:51 +01:00
Abandoned Cart
e08525679c
Suppress a linear configuration warning
...
Due to the way Android Studio reads gradle configuration, a false positive warning for incompatible Java versions is fired when the Kotlin Java version is not specified first.
2023-03-18 16:15:51 +01:00
Abandoned Cart
e68baf9088
Centralize missingIcon and condition for use in DataItem
...
`One missing Bitmap to rule them all and one condition to find them.` Also eliminates passing that condition between methods. The data class can simply return the same instance every time it's necessary.
2023-03-15 14:25:24 +01:00
Abandoned Cart
905c0a47fa
Allow the options, even if they're useless
...
Since this is instantiated in `onCreate` and may be recycled with different settings, relying on the audio to be disabled to determine if a mute action is available seems like a risky gamble.
2023-03-14 23:22:32 +00:00
Abandoned Cart
39393ec310
Move picture-in-picture configuration to method
...
This will also make the transition to per-game settings less of a collision later.
2023-03-14 23:22:32 +00:00
Abandoned Cart
a906c6d689
Use BuildConfig package name to forgo Context
...
This should adapt to the package name, despite not actually relying on the value of it to function. Intents are one of the most analyzed items for vulnerabilities and exploits.
2023-03-14 23:22:32 +00:00
Abandoned Cart
bd9050f6c7
Add an emulator pause button to the OSC
2023-03-14 23:22:32 +00:00
Abandoned Cart
69e322b76b
Pausing should mute audio for looped music
...
Also adds pausing the surface in onPause and restoring it in onResume to avoid wasting resources when the activity is legitimately in the background.
2023-03-14 23:22:32 +00:00
Abandoned Cart
df96d74ca1
No use assigning null surface if null already
...
This also prevents any possibility a null value is falsely assigned to a valid surface for whatever reason.
2023-03-14 23:22:32 +00:00
Abandoned Cart
95a679e5cd
Add an action to pause the emulator process
2023-03-14 23:22:32 +00:00
Abandoned Cart
a1143ee5de
Respect the existing "mute" user preference
2023-03-14 23:22:32 +00:00
Abandoned Cart
bdc368e039
Add a mute button as a PiP window action
2023-03-14 23:22:32 +00:00
Abandoned Cart
4298415134
Add picture in picture for emulation activity
2023-03-14 23:22:32 +00:00
Billy Laws
179363a5e7
Fix depth-stencil formats
2023-03-14 23:22:12 +00:00
PabloG02
b4280a61ac
Stub IApplicationFunctions::GetSaveDataSize
2023-03-11 18:27:36 +00:00
Abandoned Cart
6703a875f0
Support deprecation of getSerializableExtra
2023-03-11 18:27:15 +00:00
Billy Laws
6d582566f9
Use AdaptiveSingleWaiterConditionVariable for thread scheduling
...
Some games, for example PGLE, have heavy contention in code that locks mutexes for only a brief period of time. This heavy contention over multiple threads results in futex latency (often ~20us) impacting performance heavily. Using an adaptive condition variable helps to reduce this latency.
2023-03-11 18:26:02 +00:00
Billy Laws
b1e57bc7bc
Introduce adapting condition variable class
...
By spin waiting for a small period before falling back to an actual condition variable, some of the overheads inherent to futex's can be avoided. The used constants were tuned for optimal performance on 8G1 on Skyrim and PGLE.
2023-03-11 18:26:02 +00:00
TheASVigilante
444e35e34f
Fix swizzling regression + minor optimizations to swizzling
2023-03-06 21:56:31 +00:00
TheASVigilante
3e1db818cf
Address review
2023-03-06 21:56:31 +00:00
TheASVigilante
caf1abbe31
Fix 3D swizzled copies & a small bug with DMA clears
2023-03-06 21:56:31 +00:00
TheASVigilante
70ee36e85c
Add support for 1D remapped buffer clears
2023-03-06 21:56:31 +00:00
TheASVigilante
4c3fed6cd0
Hookup various DMA engine features
...
The DMA engine now supports these additional functions: pitch (to pitch) copies, subrect copies, split copies.
2023-03-06 21:56:31 +00:00
TheASVigilante
fd205ff0a9
Implement rest of I2M engine copies
2023-03-06 21:56:31 +00:00
TheASVigilante
72c2d94cbe
Implement subrect copies
2023-03-06 21:56:31 +00:00
TheASVigilante
df0fd88991
Implement pitch swizzled copies
2023-03-06 21:56:31 +00:00
TheASVigilante
5c4bb1c44e
Fix incorrect remapping register layout
2023-03-06 21:56:31 +00:00
Billy Laws
55176c2a72
Update patreon names
2023-03-05 20:16:45 +00:00
Niccolò Betto
20130f1182
Update translations ( #2235 )
...
* Apply translations in zh-Hans
* Apply translations in zh-Hant
* Apply translations in pt_BR
* Apply translations in es_419
* Apply translations in pt
Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com>
2023-03-05 13:04:34 +01:00
lynxnb
b724bc2309
Adjust default OSC opacity and color
2023-03-05 12:45:07 +01:00
KikiManjaro
1282362fce
Add color selection to OSC
...
* Add bold text and antialiasing for osc buttons
* Fix osc dpad and button position (widder than taller)
* Set default OSC color to white background with black text
2023-03-05 12:45:07 +01:00
KikiManjaro
66d2965c63
Fix resetControls for opacity of OSC
2023-03-05 12:45:07 +01:00
Abandoned Cart
1f608da8e0
Drop local app path in preview summary
2023-03-05 11:48:46 +01:00
Abandoned Cart
bcd38460be
Align ChipGroup to center when space exists
2023-03-05 11:42:20 +01:00
Billy Laws
750dfb8f00
Disable extended dynamic state on <r42 mali drivers
2023-03-04 18:55:44 +00:00
Billy Laws
acf118155d
Submit an execution on invalidate{Sampler,TextureHeader}Cache accesses
2023-03-04 18:55:44 +00:00
Billy Laws
6ce5202b8e
Add exceptions for some more unimplemented maxwell draw regs
2023-03-04 18:55:44 +00:00
Billy Laws
7150ce0d1d
Allow disabling the freeing of texture guest memory
...
This helps to prevent issues that result from the overlapping of buffer and texture data, by only ever syncing back textures if they are actually used as RTs, which are much less likely to overlap buffers.
2023-03-04 18:55:44 +00:00
Billy Laws
5e8cdfda92
Don't populate colour targets with an empty write mask
...
Avoids breaking VK spec in BOTW, as it has the same colour attachment bound twice, but the former is masked out entirely.
2023-03-04 18:55:44 +00:00
Billy Laws
8baf06c9ab
Never free memory for GPU dirty buffers
...
Fixes Persona 5 textures in some cases due to overlaps with textures.
2023-03-04 18:55:44 +00:00
Billy Laws
1dd13e90b0
Use channel sequence number for TIC cache validity tracking
...
Fixes some OpenGL games which update a TIC with I2M but never end up triggering an execution otherwise.
2023-03-04 18:55:44 +00:00
Billy Laws
34fddfccba
Only clear requested aspect for depth/stencil clears
...
Fixes water in Skyrim (depth was being cleared when only stencil should have been)
2023-03-04 18:55:44 +00:00
Billy Laws
330f402398
Clear chained fence cycles on the waiter thread
...
This avoids some sporadic random crashes that happen during fence cycle destruction in BOTW/SMO.
2023-03-04 18:55:44 +00:00
lynxnb
787f2bde02
Enable localization for app strings
...
A setting has been added to override the system default language, should a user want a different language for the app.
2023-02-27 22:19:53 +01:00
transifex-integration[bot]
8e7455fb04
Initial translations sync with Transifex
...
* Apply translations in fr
* Apply translations in ru
* Apply translations in b+zh+Hans
* Apply translations in b+zh+Hant
* Apply translations in de
* Apply translations in el
* Apply translations in ja
* Apply translations in ar
* Apply translations in ta
* Apply translations in pl
* Apply translations in ko
* Apply translations in es
* Apply translations in pl
* Apply translations in in
* Apply translations in it
* Apply translations in b+es+419
* Apply translations in hu
2023-02-27 22:19:53 +01:00
lynxnb
3b849393c2
Fix capitalization in settings title strings
2023-02-27 19:56:53 +01:00
lynxnb
aa1da257f8
Add an option to copy global settings to per-game ones
2023-02-27 19:56:53 +01:00
lynxnb
485bd2031c
Only hide validation_layer
setting on release instead of debug category
2023-02-27 19:56:53 +01:00
lynxnb
b2228a93da
Reorder settings pt.2
2023-02-27 19:56:53 +01:00
lynxnb
ddfa9013a9
Use a proper tag for AppItem
in intent extras and arguments
2023-02-27 19:56:53 +01:00
lynxnb
2f4778247c
Use per-game settings during emulation
2023-02-27 19:56:53 +01:00
lynxnb
1a11aaa651
Add per-game settings configuration functionality
2023-02-27 19:56:53 +01:00
lynxnb
0467614dc0
Add per-game support to EmulationSettings
...
Implements support for retrieving per-game emulation settings
2023-02-27 19:56:53 +01:00
lynxnb
cd426d9f18
Split PreferenceSettings
into AppSettings
and EmulationSettings
...
`PreferenceSettings` was removed in favor of:
* `AppSettings`: stores general purpose settings mostly used for UI configuration and state
* `EmulationSettings`: stores emulation-related settings, most of these are passed to native emulation code
2023-02-27 19:56:53 +01:00
lynxnb
854ea1a42d
Make NativeSettings
a serializable data class
2023-02-27 19:56:53 +01:00
lynxnb
ee98aaaed1
Add a method to return format in AppItem
2023-02-27 19:56:53 +01:00
lynxnb
d1fd44e32e
Move preference fragment to a separate file for modularity
2023-02-27 19:56:53 +01:00
lynxnb
a683978e8c
Split preferences to multiple files for reusability
2023-02-27 19:56:53 +01:00
lynxnb
e7c176a8e5
Reorder preferences and introduce new categories
2023-02-27 19:56:53 +01:00
lynxnb
a1ca84f95e
Move Kotlin settings to a dedicate package
2023-02-27 19:56:53 +01:00
lynxnb
180d1efd4d
Revert "Toggle DisableFrameThrottling setting by clicking on FPS"
...
This commit reverts PR #2037 . Passing `NativeSettings` to emulation code through a member reference, instead of a local variable, caused unpredictable crashes when using custom GPU drivers (v615+) on some Qualcomm SoCs.
The exact cause of the issue remains unknown, my best guess is that it was caused by an incorrect optimization performed on the Kotlin bytecode in release mode, which caused an issue when reading memory that had been forked, because of running emulation in a separate process.
Runtime settings modification will be reimplemented in the future via an alternative method.
2023-02-27 19:00:52 +01:00
PixelyIon
22f8cc5970
Stub indirect layer VI service functions
...
Indirect layers are used by the game to render layer on its own, the game allocates a buffer with the size from `GetIndirectLayerImageRequiredMemoryInfo` and uses `GetIndirectLayerImageMap` to draw the applet contents into the buffer.
As we don't LLE applet implementations nor do our HLE implementations draw equivalent applets, we cannot submit this to the guest. As a result, these functions are stubbed with the framebuffer being cleared to red.
Stubbing these functions allows titles such as Dark Souls to not crash while initializing indirect layers.
2023-02-22 23:23:08 +05:30
lynxnb
dba191d2dc
Fix deadlock on settings in PresentationEngine
after callback
...
Accessing the settings class during the execution of the `OnChangedCallback` results in a deadlock, as accesses to values are protected by a mutex. Instead, we now keep a local copy of the relevant settings and update those with the new value.
2023-02-20 21:45:30 +00:00
lynxnb
fc9b34846c
Fix KtSettings JNI usage
...
* Use a global ref for NativeSettings JNI instance
* Always use the JNI env from the JNI call to ensure it's safe to use in the current thread
2023-02-20 21:45:30 +00:00
lynxnb
5b0a397165
Update native settings after toggling frame throttling
2023-02-20 21:45:30 +00:00
Matesic Darko
f850271e2d
toggle DisableFrameThrottling setting by clicking on FPS display
...
s/jSurface/vkSurface
2023-02-20 21:45:30 +00:00
TheASVigilante
3168e8efc0
Address review
2023-02-20 18:17:35 +00:00
TheASVigilante
b780e2b755
Deallocate Unmapped memory pages
...
Reduces memory usage buildup over time, may affect performance.
2023-02-20 18:17:35 +00:00
Billy Laws
7296f8503d
Enable always attempt to enable robustness
2023-02-20 18:01:49 +00:00
Billy Laws
d45f9e4d26
Loosen some texture WaR sync when possible
...
By keeping track of the stages reading the image we can do more fine-grained WaR prevention, as opposed to waiting for all commands to complete.
2023-02-20 18:01:49 +00:00
Billy Laws
6ee8a919e5
Use pipeline barriers, as opposed to an ext dependency for RP barrier
...
Allows for waiting on compute shaders, which are not a graphics stage.
2023-02-20 18:01:49 +00:00
Billy Laws
ee68facc5d
Apply RP barrier masks for every draw, rather than the 1st in RP
...
I missed that addSubpass was only called once-per-subpass, meaning that if a new barrier req was discovered several draws into the RP it wouldn't be applied. Split out barriers into a seperate function to avoid this.
2023-02-20 18:01:49 +00:00
Billy Laws
bb20b145a8
Hash subpass dependencies in RP cache
2023-02-20 18:01:49 +00:00
Billy Laws
99bf7dbb36
Implement usage based implicit renderpass barrier generation
...
Full pipeline barriers between every RP can be extremely expensive on HW, by analysing the inputs and outputs of a draw it's possible to construct a much more optimal barrier that only syncs what is neccessary.
2023-02-20 18:01:49 +00:00
Billy Laws
7a759326b3
Don't break RPs on view pointer changes
...
Sometimes view pointers may change despite the underlying Vulkan image view not actually changing, so use vk::ImageViews for tracking to keep RP breaks to a minimum.
2023-02-20 18:01:49 +00:00
Billy Laws
a02e1a2536
R.I.P. Subpasses
2023-02-20 18:01:49 +00:00
Billy Laws
a47f010653
Add an option to allow CPU writes when fast readback is used
2023-02-20 18:01:49 +00:00
Billy Laws
2d56ed053d
Implement all remaining ASTC formats
2023-02-20 18:01:49 +00:00
Billy Laws
d93c96de83
Fix sign error when decoding bc5s images
...
Using an unsigned loop counter caused an implicit conversion breaking the decoder logic.
2023-02-20 18:01:49 +00:00
Billy Laws
2d97b9fc2c
Keep track of buffer dirtiness within an execution
2023-02-20 18:01:49 +00:00
Billy Laws
6ea1483c9a
Fix a race with multiple threads pushing data into circular queue
...
If the 'end' changes when waiting for data to be consumed our 'waitNext' would be invalid leading to a deadlock.
2023-02-20 18:01:49 +00:00
Billy Laws
f55b135243
Assert on geometry stream usage
2023-02-20 18:01:49 +00:00
Billy Laws
2e64199640
Add host shader replacement and dumping support
...
This is useful for debugging, but shouldn't generally be used as bindings in SPIR-V etc are unstable.
2023-02-20 18:01:49 +00:00
Billy Laws
02786839a5
Flush pipeline after texture uploads
2023-02-20 18:01:49 +00:00
Billy Laws
ffdd50bdf3
Fix geometry and compute shaders on mali GPUs
2023-02-20 18:01:49 +00:00
mk73ds
cb62e15748
Ignore new layer creations instead of replacing previous ones while waiting for proper multiple layers support.
2023-02-18 12:06:37 +00:00
Erwin Spitaler
2855d12f31
quick and dirty implementation for GetFreeSpaceSize
2023-02-18 12:06:18 +00:00
Abandoned Cart
b20c6e9fc4
onBackPressed
-> onBackPressedDispatcher
2023-02-16 14:50:02 +01:00