- 22 Dec, 2019 3 commits
-
-
Fernando Sahmkow authored
renderer_vulkan/shader: Add helper GLSL shaders
-
Fernando Sahmkow authored
vk_shader_decompiler: Use Visit instead of reimplementing it
-
bunnei authored
shader/memory: Implement LDG.U8 and unaligned U8 loads
-
- 21 Dec, 2019 1 commit
-
-
ReinUsesLisp authored
ExprCondCode visit implements the generic Visit. Use this instead of that one. As an intended side effect this fixes unwritten memory usages in cases when a negation of a condition code is used.
-
- 20 Dec, 2019 2 commits
- 19 Dec, 2019 3 commits
- 18 Dec, 2019 6 commits
-
-
ReinUsesLisp authored
LDG can load single bytes instead of full integers or packs of integers. These have the advantage of loading bytes that are not aligned to 4 bytes. To emulate these this commit gets the byte being referenced (by doing "address & 3" and then using that to extract the byte from the loaded integer: result = bitfieldExtract(loaded_integer, (address % 4) * 8, 8)
-
ReinUsesLisp authored
I2F's byte selector is used to choose what bytes to convert to float. e.g. if the input is 0xaabbccdd and the selector is ".B3" it will convert 0xaa. The default (when it's not shown in nvdisasm) is ".B0", in that example the default would convert 0xdd to float.
-
bunnei authored
delete appveyor config
-
ReinUsesLisp authored
When a image format mismatches we were inserting zeroes to the texture itself. This was not handling cases were the mismatch uses less coordinates than the guest shader code. Address that by resizing the vector.
-
ReinUsesLisp authored
-
ReinUsesLisp authored
-
- 17 Dec, 2019 3 commits
-
-
bunnei authored
common: SPSCQueue: Notify after incrementing queue size.
-
Amila Welihinda authored
-
bunnei authored
-
- 16 Dec, 2019 3 commits
-
-
ReinUsesLisp authored
These shaders are used to specify code that is not dynamically generated in the Vulkan backend. Instead of packing it inside the build system, it's manually built and copied to the C++ file to avoid adding unnecessary build time dependencies. quad_array should be dropped in the future since it can be emulated with a memory pool generated from the CPU.
-
bunnei authored
renderer_opengl: Miscellaneous clean ups
-
Rodrigo Locatti authored
Corrections and fixes to TLD4S & bindless samplers failing
-
- 15 Dec, 2019 2 commits
-
-
Amila Welihinda authored
-
bunnei authored
maxwell_to_vk: Use VK_EXT_index_type_uint8 and misc changes
-
- 14 Dec, 2019 4 commits
- 13 Dec, 2019 7 commits
-
-
ReinUsesLisp authored
A1B5G5R5 uses A1R5G5B5. This is flipped with image view swizzles; flushing is still not properly implemented on Vulkan for this particular format.
-
ReinUsesLisp authored
-
ReinUsesLisp authored
Add an extra argument to query device capabilities in the future. The intention behind this is to use native quads, quad strips, line loops and polygons if these are released for Vulkan.
-
ReinUsesLisp authored
The OpenGL spec defines GL_CLAMP's formula similarly to CLAMP_TO_EDGE and CLAMP_TO_BORDER depending on the filter mode used. It doesn't exactly behave like this, but it's the closest we can get with what Vulkan offers without emulating it by injecting shader code.
-
ReinUsesLisp authored
-
ReinUsesLisp authored
Introduce a worker thread approach for delegating Vulkan work derived from dxvk's approach. https://github.com/doitsujin/dxvk Now that the scheduler is what handles all Vulkan work related to command streaming, store state tracking in itself. This way we can know when to reupload Vulkan dynamic state to the queue (since this one is invalidated between command buffers unlike NVN). We can also store the renderpass state and graphics pipeline bound to avoid redundant binds and renderpass begins/ends.
-
bunnei authored
kernel/svc: Amend function signature of SignalProcessWideKey
-
- 12 Dec, 2019 1 commit
-
-
bunnei authored
Added missing include
-
- 11 Dec, 2019 5 commits
-
-
Fernando Sahmkow authored
-
Fernando Sahmkow authored
-
Fernando Sahmkow authored
-
Fernando Sahmkow authored
-
Fernando Sahmkow authored
Gl_Rasterizer: Skip Tesselation Control and Eval stages as they are unimplemented
-