| Age | Commit message (Collapse) | Author |
|
GUI: Add aspect ratio dropdown
|
|
Fix CMake build errors for certain SDL2 installations
|
|
|
|
nvhost_gpu: implement ChannelSetTimeslice
|
|
IUserLocalCommunicationService: stub function Initialize2
|
|
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.
|
|
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.
|
|
Code before this commit was trying to match 3D textures with another
target. Fix that.
|
|
Implement downloads to guest memory from texture buffers on the generic
cache and OpenGL.
|
|
|
|
402: function name should be Initialize2 (7.0.0+) not SetOperationMode
Follow by: https://switchbrew.org/wiki/LDN_services#IUserLocalCommunicationService
|
|
|
|
Revert "video_core: memory_manager: Use GPU interface for cache functions."
|
|
|
|
|
|
Shadow sampler 2D arrays are supported on OpenGL, so there's no reason
to forbid these. Enable textureLod usage on these.
Minor style changes.
|
|
Pass instanced state of a draw invocation as an argument instead of
having two separate virtual methods.
|
|
|
|
|
|
|
|
|
|
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.
|
|
Use a custom cache instead of relying on a ranged 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.
|
|
|
|
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.
|
|
Implements GL_SAMPLES_PASSED by waiting immediately for queries.
|
|
Set of refactors for Kernel Synchronization and Hardware Constants
|
|
|
|
shader/decode: Fix constant buffer offsets
|
|
Use config mode for finding SDL2 with CMake
|
|
|
|
|
|
|
|
Available as a drop down within the configure graphics tab.
|
|
update hwopus DecodeInterleaved for FW 7.0.0+
|
|
|
|
GPU: Refactor queries implementation and correct GPU Clock.
|
|
This may help some implementations.
|
|
Vulkan's VertexIndex and InstanceIndex don't match with hardware. This
is because Nvidia implements gl_VertexID and gl_InstanceID. The math
that relates these is:
gl_VertexIndex = gl_BaseVertex + gl_VertexID
gl_InstanceIndex = gl_InstanceIndex + gl_InstanceID
To emulate it using what Vulkan's SPIR-V offers (the *Index variants)
this commit substracts gl_Base* from gl_*Index to obtain the OpenGL and
hardware's equivalent.
|
|
|
|
|
|
address_arbiter: Minor cleanup to list querying
|
|
|
|
Same behavior, but without the need to explicitly loop through
everything manually.
|
|
Simplifies the overall function and also allows for it to become a
const-qualified member function.
|
|
bcat/backend: Prevent fmt exception in debug log within NullBackend::Clear()
|
|
kernel/thread: Remove trivial usages of the global system accessor
|
|
NullBackend::SetPassphrase()
Aligns the '=' to be consistent with the rest of the logs within this
source file.
|
|
A formatting specifier within Clear wasn't being used, which will cause
fmt to throw an exception. This fixes that.
|