Commit graph

9408 commits

Author SHA1 Message Date
emufan4568
9b5230c60e rasterizer_cache: Always create TextureDownloaderES
* It's used when dumping textures on desktop, so create it upfront to avoid null checks
2022-08-21 13:35:06 +03:00
emufan4568
1579f96397 rasterizer_cache: Remove remaining OpenGL code 2022-08-21 13:32:02 +03:00
emufan4568
fc450edd14 gl_rasterizer: Fix minor warnings and improve readability 2022-08-21 12:42:32 +03:00
emufan4568
e6137d7874 renderer_opengl: Remove GLvec* types
* The common types already exist and provide all the functionality required, why invent new types?
2022-08-21 12:22:58 +03:00
Ian Chamberlain
c634c263db
citra-sdl: use the result of system.RunLoop()
If a shutdown was requested by the application, close the SDL window,
initiating the normal shutdown procedure. This causes a graceful exit
process instead of hanging.
2022-08-20 20:49:59 -04:00
Ian Chamberlain
a90b0daebe
Look at version_major.h when for newer ffmpeg libs
In ffmpeg 5.1, it seems most (or all) of these libraries use a separate
version_major.h, so the logic to check minimum version didn't work
without looking at the major version file.
2022-08-20 20:40:26 -04:00
emufan4568
e834f2b049 gl_resource_manager: Fix bug when allocating 3D textures 2022-08-21 02:24:13 +03:00
emufan4568
2726fe66db renderer_opengl: Header cleanup
* Should help with building times
2022-08-21 02:22:57 +03:00
emufan4568
07a69b7c7b renderer_opengl: Remove amd hacks and legacy paths
* AMDs new driver fixed many issues in the OpenGL driver. No reason to
  keep these hacks. In addition the upgrade to 4.3 guarantees the
  existance of required extensions, so no need to check for them
2022-08-21 01:52:49 +03:00
emufan4568
025cd31420 video_core: Bump OpenGL version to 4.3 on desktop
* The current backend heavily depends on many extensions for shadow
  rendering and texture cubes in the fragment shaders. All these
  extensions were incorporated to core in 4.3. Support is practically
  ubiquitous and requiring support for it makes things a lot easier
2022-08-21 01:39:16 +03:00
emufan4568
02d1fa2e0f git: Ignore build directories from Qt Creator 2022-08-21 01:16:48 +03:00
emufan4568
17ad594a62 rasterizer_cache: Introduce TextureRuntime and separate CachedSurface
* This commit aims to both continue the rasterizer cache cleanup by
  separating CachedSurface into a dedicated header and to start weeding
  out the raw OpenGL code from the cache.

* The latter is achieved by abstracting most texture operations in a new
  class called TextureRuntime. This has many benefits such as making it easier
  to port the functionality to other graphics APIs and the removal of the need
  to pass (read/draw) framebuffer handles everywhere. The filterer and
  reinterpreter get their own sets of FBOs due to this, something that
  might be a performance win since it reduces the state switching
  overhead on the runtime FBOs.
2022-08-21 01:16:48 +03:00
emufan4568
199671301d rasterizer_cache: Header cleanup and copyright date update 2022-08-21 01:16:48 +03:00
emufan4568
f6e3bb54f4 rasterizer_cache: Move utlities and type to separate headers 2022-08-21 01:16:48 +03:00
emufan4568
0fedf11be1 rasterizer_cache: Move depth tuples to cpp file 2022-08-21 01:16:47 +03:00
emufan4568
22acfe4d41 rasterizer_cache: SurfaceParams interface cleanup 2022-08-21 01:16:47 +03:00
emufan4568
cb0816c987 rasterizer_cache: Compute width and height only when used
Solves the compiler warning
2022-08-21 01:16:47 +03:00
emufan4568
6a7d601e42 rasterizer_cache: Factor morton swizzle and pixel format to dedicate headers
* Makes the code cleaner in general by not having to alias PixelFormat and SurfaceType everywhere
2022-08-21 01:16:47 +03:00
emufan4568
efc2db4088 rasterizer_cache: Separate into common directory 2022-08-21 01:16:42 +03:00
SachinVin
58d0705f0f
Merge pull request #6090 from JosJuice/android-cheats
android: Add cheat GUI
2022-08-14 18:14:40 +05:30
SachinVin
9ba1d68ba3
Merge pull request #6083 from pawelniegowski/amd-22-7-makecurrent-shader-bugfixes
Fix MakeCurrent and shader issues with AMD 22.7 driver
2022-08-14 18:14:26 +05:30
pawelniegowski
b0c72c2ea7 revert GLSL version change 2022-08-10 16:36:23 +02:00
JosJuice
5180122506 android: Add cheat GUI
Based on https://github.com/dolphin-emu/dolphin/pull/10092,
with adaptations made for differences in how Citra handles cheats.

You can access the cheat GUI while a game is running.
2022-08-06 08:19:18 +02:00
SachinVin
a51b1cd3cd
Merge pull request #6089 from JosJuice/android-convert-str
android: Improve string conversion
2022-08-04 13:47:49 +05:30
JosJuice
ce07ef1821 android: Use correct encoding when converting strings
The JNI functions that have "UTF" their name use "modified UTF-8"
rather than the standard UTF-8 that Citra uses, at least according
to Oracle's documentation, so it is incorrect for us to use them.
This change fixes the problem by converting between UTF-8 and
UTF-16 manually instead of letting JNI do it for us.
2022-08-03 15:54:15 +02:00
JosJuice
87677be921 android: Create utility function for converting strings to Java 2022-08-03 15:45:11 +02:00
JosJuice
e65ca8b907 android: Deduplicate GetJString 2022-08-03 15:45:11 +02:00
Morph
bf6e4a41d7
Merge pull request #6086 from zhaobot/tx-update-20220801035019
Update translations (2022-08-01)
2022-08-01 06:43:59 -04:00
pawelniegowski
ce441237cf
Update src/core/frontend/emu_window.h
clang-format

Co-authored-by: BreadFish64 <mohror64@gmail.com>
2022-08-01 09:07:23 +02:00
The Citra Community
2c91bab0c5 Update translations (2022-08-01) 2022-08-01 03:50:38 +00:00
pawelniegowski
ff81fb04b4 Fix MakeCurrent and shader issues with AMD 22.7 driver 2022-07-29 12:26:18 +02:00
Ian Chamberlain
6764264488
Initialize GAMECONTROLLER in EmuWindow_SDL2 (#6078)
Resolves #6077

If only `SDL_INIT_JOYSTICK` is used, `InputCommon::SDL::SDLState` later tries to initialize the game controller in a background thread, which on macOS causes a crash in `SDL_PumpEvents`. From [the SDL docs](https://wiki.libsdl.org/SDL_Init), `SDL_INIT_GAMECONTROLLER` implies `SDL_INIT_JOYSTICK`, so this should be a total superset of the previous behavior.
2022-07-28 20:51:53 +05:30
Diego Arias
357025dfdf
loader: check for overflow of seg_sizes[] in 3dsx loader (#6075) 2022-07-23 21:57:55 +05:30
Z11-V
2b2868f156
screenshot fixes (#6070)
* screenshot fixes

* formatting

* disable screenshot on pause
2022-07-23 21:57:32 +05:30
merry
2d95b9946f
framebuffer_layout: Fix positioning of small screen when centered in landscape on mobile (#6071) 2022-07-17 17:49:55 +05:30
BreadFish64
353aaaf665
Merge pull request #6010 from SachinVin/gunman
shader_jit: Fixes for Gunman clive
2022-07-06 23:45:44 -05:00
Z11-V
19d97e4180
added quick screenshot (#6025)
Modified Capture screenshot to save screenshots with a timestamped name in the user directory.
2022-07-06 21:51:01 -05:00
Morph
355933218d
Merge pull request #6062 from SachinVin/dyn-msvc
dynarmic: workaround MSCV compile error
2022-07-03 08:28:39 -04:00
SachinVin
243548afc4 bump dynarmic
workaround MSCV compile error
2022-07-03 13:56:33 +05:30
SachinVin
d84b3d9330
Merge pull request #6053 from Morph1984/assert-noinline
common/assert: Use noinline lambda instead of a wrapper template
2022-07-03 11:50:50 +05:30
Morph
edbe7600f5 common/assert: Use noinline lambda instead of a wrapper template
MSVC now supports specifying __declspec on lambda functions
2022-06-30 08:58:36 -04:00
SachinVin
84d5d62cf5
Merge pull request #5519 from vitor-k/decouple
Remove citra-room dependence on core
2022-06-25 14:42:31 +05:30
Morph
f71e853054
externals: Update cpp-jwt to e12ef062 (#6051)
Resolves compilation errors when compiling with C++20
2022-06-25 14:41:57 +05:30
Morph
49c0ed297f common_funcs: Add CITRA_NO_INLINE 2022-06-14 07:18:12 -04:00
Vitor Kiguchi
bc5bf28333 webservice: change naming on android as well 2022-06-11 11:44:49 +02:00
Vitor Kiguchi
28188f13f5 remove dedicated_room dependence on core 2022-06-11 10:21:18 +02:00
Vitor Kiguchi
fa0cb52a5d Move webservice settings to own file 2022-06-11 10:21:17 +02:00
SachinVin
88a4759702
citra_qt: configure_input.cpp: update the modifier settings for both the sticks (#6033)
The Controller config UI exposes the Circle mod, only for the Circle pad's modifier, So after changing the binding, it leaves the default binding for the c-stick untouched, and the user is nagged about the (default) D key being bound to something, when trying to bind it to any other button.

With this PR we update the modifier for both the Circle Pad and C-stick.
2022-06-11 11:53:27 +05:30
SachinVin
3f16cd9c82
Merge pull request #6045 from liushuyu/web-export-ssl
web_service: infect other targets with OpenSSL exports
2022-06-11 11:53:02 +05:30
liushuyu
8d603032f8
web_service: infect other targets with OpenSSL exports ...
... this can avoid the missing symbol issue when linking
2022-06-08 01:22:11 -06:00