Commit graph

13814 commits

Author SHA1 Message Date
Nguyen Dac Nam
c646835eb0 vk_shader: Implement function ImageLoad (Used by Kirby Start Allies)
Please enter the commit message for your changes. Lines starting
2020-02-19 08:39:01 +07:00
Brian Clinkenbeard
b33889a1fe update httplib to latest commit 2020-02-18 17:11:40 -08:00
Nguyen Dac Nam
85e76831a1 fixups mistake auto commit. 2020-02-19 01:24:32 +07:00
Nguyen Dac Nam
418b7ffb21 Update code structure
Co-Authored-By: Mat M. <mathew1800@gmail.com>
2020-02-19 01:23:08 +07:00
Fernando Sahmkow
d67c538d68 Merge pull request #3409 from ReinUsesLisp/host-queries
query_cache: Implement a query cache and query 21 (samples passed)
2020-02-18 11:31:06 -04:00
Nguyen Dac Nam
af67c90eca add vertex UnsignedInt size RGBA 2020-02-18 21:52:51 +07:00
Nguyen Dac Nam
2058556671 add eBc2SrgbBlock to formats 2020-02-18 21:44:09 +07:00
Nguyen Dac Nam
6d36df9e5d vulkan: add DXT23_SRGB 2020-02-18 21:39:50 +07:00
Nguyen Dac Nam
fa641bf689 renderer_vulkan: Add the rest of case for TryConvertBorderColor 2020-02-18 16:52:54 +07:00
Brian Clinkenbeard
b343bf76ad update httplib README 2020-02-17 22:54:09 -08:00
Brian Clinkenbeard
6ffa4d2a11 0.4.2 works too 2020-02-17 22:53:25 -08:00
CJBok
7ec4bd7793 analog_from_button get direction implementation 2020-02-18 06:45:37 +01:00
Brian Clinkenbeard
0e13b86170 update httplib to 0.2.6 2020-02-17 20:13:24 -08:00
bunnei
92e3fb6e2f Merge pull request #3412 from Morph1984/aspect-ratio
GUI: Add aspect ratio dropdown
2020-02-17 22:02:18 -05:00
bunnei
bbe76e4227 Merge pull request #3429 from brianclinkenbeard/fix-cmake-sdl2-arch
Fix CMake build errors for certain SDL2 installations
2020-02-17 18:33:20 -05:00
Brian Clinkenbeard
f2e1142067 fix CMake build errors for certain SDL2 installations 2020-02-17 13:01:40 -08:00
bunnei
a251713173 Merge pull request #3420 from namkazt/master2
nvhost_gpu: implement ChannelSetTimeslice
2020-02-17 00:31:11 -05:00
bunnei
6bf664aa1e Merge pull request #3421 from namkazt/patch-1
IUserLocalCommunicationService: stub function Initialize2
2020-02-16 04:01:42 -05:00
ReinUsesLisp
505f30fdaf texture_cache: Implement layered framebuffer attachments
Layered framebuffer attachments is a feature that allows applications to
write attach layered textures to a single attachment. What layer the
fragments are written to is decided from the shader using gl_Layer.
2020-02-16 04:19:32 -03:00
ReinUsesLisp
6385b93c8d vk_shader_decompiler: Implement Layer output attribute
SPIR-V's Layer is GLSL's gl_Layer. It lets the application choose from a
shader stage (vertex, tessellation or geometry) which framebuffer layer
write the output fragments to.
2020-02-16 04:17:37 -03:00
ReinUsesLisp
b4bd0c57e4 texture_cache: Avoid matches in 3D textures
Code before this commit was trying to match 3D textures with another
target. Fix that.
2020-02-16 04:15:42 -03:00
ReinUsesLisp
4fd155c282 surface_base: Implement texture buffer flushes
Implement downloads to guest memory from texture buffers on the generic
cache and OpenGL.
2020-02-16 04:13:27 -03:00
Nguyen Dac Nam
2807020c01 IUserLocalCommunicationService: add function Initialize2 2020-02-16 13:24:34 +07:00
Nguyen Dac Nam
c4e8f9589a HLE: correct function name of IUserLocalCommunicationService
402: function name should be Initialize2 (7.0.0+) not SetOperationMode
Follow by: https://switchbrew.org/wiki/LDN_services#IUserLocalCommunicationService
2020-02-16 13:14:06 +07:00
namkazy
8bb64da7ac nvhost_gpu: implement ChannelSetTimeslice 2020-02-16 11:53:03 +07:00
bunnei
73e4de21b7 Merge pull request #3419 from yuzu-emu/revert-3386-gpu-mem-interface
Revert "video_core: memory_manager: Use GPU interface for cache functions."
2020-02-15 22:37:29 -05:00
bunnei
f382179d47 Revert "video_core: memory_manager: Use GPU interface for cache functions." 2020-02-15 17:47:15 -05:00
ReinUsesLisp
f3255c3598 texture: Implement R32I 2020-02-15 16:26:50 -03:00
ReinUsesLisp
f37f4e76d6 shader/texture: Allow 2D shadow arrays and simplify code
Shadow sampler 2D arrays are supported on OpenGL, so there's no reason
to forbid these. Enable textureLod usage on these.

Minor style changes.
2020-02-15 02:36:28 -03:00
ReinUsesLisp
518a6182f9 maxwell_3d: Unify draw methods
Pass instanced state of a draw invocation as an argument instead of
having two separate virtual methods.
2020-02-14 18:09:40 -03:00
ReinUsesLisp
4364492b95 query_cache: Address feedback 2020-02-14 17:38:27 -03:00
ReinUsesLisp
80fff282df query_cache: Fix ambiguity in CacheAddr getter 2020-02-14 17:38:27 -03:00
ReinUsesLisp
748a3cd69d query_cache: Add a recursive mutex for concurrent usage 2020-02-14 17:38:27 -03:00
ReinUsesLisp
aaf68dc10b vk_query_cache: Implement generic query cache on Vulkan 2020-02-14 17:38:27 -03:00
ReinUsesLisp
1b2a6980f5 query_cache: Abstract OpenGL implementation
Abstract the current OpenGL implementation into the VideoCommon
namespace and reimplement it on top of that. Doing this avoids repeating
code and logic in the Vulkan implementation.
2020-02-14 17:38:27 -03:00
ReinUsesLisp
d8a42816d7 gl_query_cache: Optimize query cache
Use a custom cache instead of relying on a ranged cache.
2020-02-14 17:38:27 -03:00
ReinUsesLisp
339a227a5e gl_query_cache: Implement host queries using a deferred cache
Instead of waiting immediately for executed commands, defer the query
until the guest CPU reads it. This way we get closer to what the guest
program is doing.

To archive this we have to build a dependency queue, because host APIs
(like OpenGL and Vulkan) use ranged queries instead of counters like
NVN.

Waiting for queries implicitly uses fences and this requires a command
being queued, otherwise the driver will lock waiting until a timeout. To
fix this when there are no commands queued, we explicitly call glFlush.
2020-02-14 17:33:13 -03:00
ReinUsesLisp
9d7d67501f gl_rasterizer: Sort method declarations 2020-02-14 17:27:17 -03:00
ReinUsesLisp
7129efe9b2 gl_rasterizer: Add queued commands counter
Keep track of the queued OpenGL commands that can signal a fence if
waited on. As a side effect, we avoid calls to glFlush when no commands
are queued.
2020-02-14 17:27:17 -03:00
ReinUsesLisp
11206f8a28 maxwell_3d: Slow implementation of passed samples (query 21)
Implements GL_SAMPLES_PASSED by waiting immediately for queries.
2020-02-14 17:27:17 -03:00
bunnei
2e46017b66 Merge pull request #3401 from FernandoS27/synchronization
Set of refactors for Kernel Synchronization and Hardware Constants
2020-02-14 14:40:20 -05:00
Morph
5afb6b95ed Add 4:3 aspect ratio and address feedback 2020-02-14 14:39:04 -05:00
bunnei
082ba6fc64 Merge pull request #3379 from ReinUsesLisp/cbuf-offset
shader/decode: Fix constant buffer offsets
2020-02-14 13:22:53 -05:00
Zach Hilman
91cbbfdf7d Merge pull request #3398 from brianclinkenbeard/fix-cmake-sdl2
Use config mode for finding SDL2 with CMake
2020-02-14 09:11:47 -05:00
Fernando Sahmkow
f326183e8b Core: Correct compilition in GCC 2020-02-14 05:53:30 -04:00
Morph
5abb2b6336 Address feedback 2020-02-14 00:06:26 -05:00
Morph
db5dc22c68 Use enumeration instead of magic numbers 2020-02-13 23:13:23 -05:00
Morph
74a490c909 Add following aspect ratios: 16:9, 21:9, Stretch to Window
Available as a drop down within the configure graphics tab.
2020-02-13 22:17:28 -05:00
bunnei
f542fc989d Merge pull request #3400 from makigumo/patch-1
update hwopus DecodeInterleaved for FW 7.0.0+
2020-02-13 21:26:13 -05:00
ReinUsesLisp
3603c2f559 gl_resource_manager: Add managed query class 2020-02-13 22:25:55 -03:00