5f8a884c2c
renderer_opengl: Add driver class to report info/bugs
2022-10-14 21:03:10 +03:00
a7cfe99ca1
rasterizer_cache: Add staging buffer cache for uploads/downloads
...
* In addition bump context version to 4.4 to enforce ARB_buffer_storage and use EXT_buffer_storage for GLES which is support on many mobile devices
2022-10-14 21:03:10 +03:00
424ed2df04
rasterizer_cache: Improve TextureRuntime API
...
* This makes every operation more explicit and mimics more the Vulkan API
2022-10-14 21:03:09 +03:00
e22e641736
frame_dumper: Switch to std::jthread
2022-10-14 21:02:45 +03:00
c080ed35c2
renderer_opengl: Encapsulate sync objects in OGLSync
2022-10-14 21:02:45 +03:00
6dacd66f40
code: Use std::numbers::pi
2022-10-14 21:02:45 +03:00
25a6da50ef
code: dodge PAGE_SIZE #define
...
Some header files, specifically for OSX and Musl libc define PAGE_SIZE to be a number
This is great except in citra we're using PAGE_SIZE as a variable
Specific example
`static constexpr u64 PAGE_SIZE = u64(1) << PAGE_BITS;`
PAGE_SIZE PAGE_BITS PAGE_MASK are all similar variables.
Simply deleted the underscores, and then added CITRA_ prefix
2022-10-14 21:02:45 +03:00
38a5cc634f
core: memory: Refactor block functions and general cleanup
...
* Also drop usage of std::vector in CopyBlock in favour of a plain std::array. Now all block functions use the common WalkBlockImpl the implementation of which is very similar to yuzu
2022-10-14 21:02:45 +03:00
f26d00fbb4
morton_swizzle: Optimize and use std::span
2022-10-14 21:02:45 +03:00
b03c3b0d7d
morton_swizzle: Avoid buffer underflow
...
* Check the y coordinate before decrementing linear_buffer
2022-10-14 21:02:45 +03:00
1f450d6d1d
morton_swizzle: Move out of bounds texture check out of the decode loop
...
* Running relative expensive checks like this on a hot path causes small but measurable performance loss. Tested SMD wit this and it doesn't crash
2022-10-14 21:02:45 +03:00
e464507b7a
rasterizer_cache: Use SurfaceType instead of Aspect
...
* It was doing pointless enum conversions when both enums described the same thing
2022-10-14 21:02:45 +03:00
7158952ae7
rasterizer_cache: Separate texture swizzling to utils
2022-10-14 21:02:45 +03:00
841dee8ed8
rasterizer_cache: Remove OpenGL references from morton_swizzle
2022-10-14 21:02:45 +03:00
01e53fe9d2
rasterizer_cache: microprofile: Rename OpenGL to RasterizerCache
2022-10-14 21:02:45 +03:00
9762e24696
citra_qt: Forbid renderer change during runtime
...
* It's an endless source of problems and isn't usefull
2022-10-14 21:02:45 +03:00
937c7e67a4
rasterizer_cache: Touch up MatchFlags comments
2022-10-14 21:02:45 +03:00
1d4f8db60d
rasterizer_cache: Drop OpenGL postfix
2022-10-14 21:02:45 +03:00
bc0c9f6eb7
rasterizer_cache: Shorten filenames and general cleanup
...
* AllocateSurfaceTexture now takes the PixelFormat directly as FormatTuple is an OpenGL struct and will be moved there
2022-10-14 21:02:42 +03:00
667d978480
video_core: Move UpdatePagesCachedCount to RasterizerAccelerated
2022-10-14 21:01:19 +03:00
389d1862bb
citra_qt: Prepare GUI for Vulkan support
2022-10-14 21:01:19 +03:00
b05b5b3bd8
renderer_opengl: Address cubemap related errors ( #6158 )
2022-10-14 22:28:38 +05:30
1759e2afc2
CI: add source packing when doing a release ( #6146 )
2022-10-13 07:33:32 +05:30
e24e2a8f8b
ccache: rename option as not to conflict with submodules ( #6156 )
...
* ccache: rename option as not to conflict with submodules
* MinGWCross: fix alignment
2022-10-10 18:10:47 +05:30
2c40b2aa72
Android: Add support for custom textures and texture dumping ( #6144 )
...
* Android: add app UI settings for custom textures and texture dumping.
* Android: Bring lodepng_image_interface into jni directory, include it, and add lodepng to CMAKE for linker (Android version doesn't use the src/citra folder)
* Android: Add custom texture and texture dumping config.ini settings
* Register image interface line added.
* Update src/android/app/src/main/res/values/strings.xml
Co-authored-by: SachinVin <26602104+SachinVin@users.noreply.github.com >
* Update src/android/app/src/main/jni/lodepng_image_interface.cpp
Whoops
Co-authored-by: SachinVin <26602104+SachinVin@users.noreply.github.com >
* clang-format attempt #1
Co-authored-by: SachinVin <26602104+SachinVin@users.noreply.github.com >
2022-10-09 10:49:00 +05:30
a427a80446
Fix clang-format ( #6155 )
2022-10-07 16:59:44 +02:00
6f9586a1fe
android: upgrade SDK and NDK versions ( #6152 )
2022-10-07 20:09:12 +05:30
bc6e45ab3b
fix secure1 secondary key calc ( #6149 )
2022-10-06 09:22:01 +05:30
76f8d08d66
externals: track a stable version of sdl, 2.24.1 ( #6150 )
2022-10-06 03:06:12 +02:00
3e692eb383
externals: Upgrade httplib ( #6147 )
2022-10-06 03:01:37 +02:00
c6153bb32e
CI: fix recent build issues ( #6148 )
...
Co-authored-by: Vitor K <vitor-kiguchi@hotmail.com >
2022-10-05 18:43:07 +02:00
7d18e36566
Update translations (2022-10-01) ( #6142 )
...
Co-authored-by: The Citra Community <noreply-fake@community.citra-emu.org >
2022-10-01 16:08:02 +05:30
6a9d36608f
Allow GetPhysicalRef to hold a past-the-end offset ( #6141 )
...
Games will sometimes use these when representing open right bounds
and so disallowing it caused regressions, with a notable example
being when MemoryFill is called to the end of vram, causing an
"invalid end address" error.
This had been noted on a comment in GetPhysicalRef prior to the
regression.
2022-10-01 16:07:27 +05:30
030ecaa83c
Merge pull request #6133 from jakedowns/jakedowns-fix-interlaced
...
Fix loading custom interlaced shaders (correction to incorrect "anaglyph" = true argument)
2022-09-24 20:35:31 +05:30
e5da8897cd
Merge pull request #6134 from GPUCode/master
...
cmake: Add SDL2 alias when using system library
2022-09-23 14:01:42 -04:00
b5872ea79e
cmake: Add SDL2 alias when using system library
2022-09-23 20:55:51 +03:00
a44c77351b
Update renderer_opengl.cpp
...
pass false for bool anaglyph when calling OpenGL::GetPostProcessingShaderCode in Interlaced conditional branch
fixes https://github.com/citra-emu/citra/issues/6132
2022-09-22 15:57:00 -07:00
cbd5d1c15c
Upgrade codebase to C++ 20 + fix warnings + update submodules ( #6115 )
2022-09-21 18:36:12 +02:00
90b418fd1a
Merge pull request #6123 from FearlessTobi/game-list-ports
...
ui: Fixes to compatibility list translations (yuzu port)
2022-09-21 08:39:39 +05:30
baecc18d8c
Partially Revert "renderer_opengl: Remove amd hacks and legacy paths" ( #6122 )
...
This reverts commit 07a69b7c7b
.
2022-09-10 15:35:13 +05:30
30831e6367
CI: dont upload macos artifacts ( #6121 )
2022-09-10 15:35:00 +05:30
fd0430e079
Merge pull request #6119 from GPUCode/master
...
Fix graphical bugs in Yokai 2/3 games
2022-09-10 15:34:46 +05:30
854fe203e8
Qt: Retranslate GameList header and Filter line
...
Didn't notice this until I was trying to change the default font
to Comic Sans MS when language is set to English in yuzu.
2022-09-07 13:08:18 +02:00
ed0e9e9593
ui: Fix Game Compatibility list translations
...
Reported by GillianMC on Discord. Looks to be a small quirk in the QT API.
setText(QObject::tr(status.text));
bringing up QObject breaks the link with the GameListItemCompat
2022-09-07 13:08:05 +02:00
fd40880127
rasterizer_cache: Ignore fill surfaces
...
* Causes graphical bugs in Yokai games
2022-09-04 12:54:52 +03:00
47c4f31c8d
Merge pull request #6117 from vitor-k/invalidate-cache
...
Invalidate older shader caches
2022-09-03 19:56:06 +05:30
c6fc00bc77
GetShaderCacheVersionHash: add comment explaining where the hash comes from
2022-09-03 15:09:09 +02:00
a8d82a2a04
Include gl_shader_util in shader cache version hash calculation
2022-09-03 14:44:40 +02:00
746609f35f
Merge pull request #6103 from GPUCode/tex-cache
...
Start abstracting the rasterizer cache from OpenGL
2022-09-02 00:07:46 +05:30
9268b7d48e
Merge branch 'master' into tex-cache
2022-09-01 19:50:32 +05:30