namkazy
22f4268c2f
maxwell_3d: this seem more correct.
6 years ago
namkazy
7051dc1902
maxwell_3d: update comments for shadow ram usage
6 years ago
Nguyen Dac Nam
63c2635e6f
maxwell_3d: track shadow ram ctrl and hw reg value
6 years ago
ReinUsesLisp
978172530e
const_buffer_engine_interface: Store component types
This is required for Vulkan. Sampling integer textures with float
handles is illegal.
6 years ago
ReinUsesLisp
9e74e6988b
maxwell_3d: Flatten cull and front face registers
6 years ago
ReinUsesLisp
eed789d0d1
video_core: Reintroduce dirty flags infrastructure
6 years ago
ReinUsesLisp
96ac3d518a
gl_rasterizer: Remove dirty flags
6 years ago
ReinUsesLisp
91aa58e410
maxwell_3d: Unify draw methods
Pass instanced state of a draw invocation as an argument instead of
having two separate virtual methods.
6 years ago
ReinUsesLisp
73d2d3342d
gl_query_cache: Optimize query cache
Use a custom cache instead of relying on a ranged cache.
6 years ago
ReinUsesLisp
aae8c180cb
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.
6 years ago
ReinUsesLisp
2b58652f08
maxwell_3d: Slow implementation of passed samples (query 21)
Implements GL_SAMPLES_PASSED by waiting immediately for queries.
7 years ago
Fernando Sahmkow
d6ed31b9fa
GPU: Address Feedback.
6 years ago
Fernando Sahmkow
8e9a4944db
GPU: Implement GPU Clock correctly.
6 years ago
Fernando Sahmkow
0cb3bcfbb7
Maxwell3D: Correct query reporting.
6 years ago
Fernando Sahmkow
b97608ca64
Shader_IR: Allow constant access of guest driver.
6 years ago
Fernando Sahmkow
c921e496eb
GPU: Implement guest driver profile and deduce texture handler sizes.
6 years ago
ReinUsesLisp
94915d4ea1
vk_graphics_pipeline: Set front facing properly
Front face was being forced to a certain value when cull face is
disabled. Set a default value on initialization and drop the forcefully
set front facing value with culling disabled.
6 years ago
ReinUsesLisp
0d6d8129c4
yuzu: Remove Maxwell debugger
This was carried from Citra and wasn't really used on yuzu. It also adds
some runtime overhead. This commit removes it from yuzu's codebase.
6 years ago
ReinUsesLisp
da0aa4da6b
gl_rasterizer: Implement RASTERIZE_ENABLE
RASTERIZE_ENABLE is the opposite of GL_RASTERIZER_DISCARD. Implement it
naturally using this.
NVN games expect rasterize to be enabled by default, reflect that in our
initial GPU state.
6 years ago
ReinUsesLisp
c8a48aacc0
video_core: Unify ProgramType and ShaderStage into ShaderType
6 years ago
ReinUsesLisp
80eacdf89b
texture_cache: Use a table instead of switch for texture formats
Use a large flat array to look up texture formats. This allows us to
properly implement formats with different component types. It should
also be faster.
6 years ago
ReinUsesLisp
096f339a2a
video_core: Silence implicit conversion warnings
6 years ago
ReinUsesLisp
fa31e5b868
maxwell_3d/kepler_compute: Remove unused arguments in GetTexture
6 years ago
ReinUsesLisp
538ddd220e
video_core/textures: Remove unused index entry in FullTextureInfo
6 years ago
ReinUsesLisp
961fe4d19b
maxwell_3d: Remove unused method GetStageTextures
6 years ago
ReinUsesLisp
3e469cecc1
maxwell_3d: Silence implicit conversion warnings
While we are at it, unify types for dirty reg pointers.
6 years ago
Fernando Sahmkow
33fcec3502
Shader_IR: allow lookup of texture samplers within the shader_ir for instructions that don't provide it
6 years ago
Fernando Sahmkow
1a58f45d76
VideoCore: Unify const buffer accessing along engines and provide ConstBufferLocker class to shaders.
6 years ago
ReinUsesLisp
e3107788e6
maxwell_3d: Reduce FlushMMEInlineDraw logging to Trace
6 years ago
Lioncash
c9c75f9587
maxwell_3d: Silence truncation warnings
A trivial warning caused by not using size_t as the argument types
instead of u32.
6 years ago
ReinUsesLisp
fe7f20e659
maxwell_3d: Add dirty flags for depth bounds values
This is useful in Vulkan where we want to update depth bounds without
caring if it's enabled or disabled through vkCmdSetDepthBounds.
6 years ago
Fernando Sahmkow
68f5aff64f
Maxwell3D: Corrections and refactors to MME instance refactor
6 years ago
David Marcec
01a4afee42
Mark DrawArrays as LOG_TRACE
There's no reason to clog logs with DrawArray.
6 years ago
Fernando Sahmkow
7761e44d18
Rasterizer: Refactor and simplify DrawBatch Interface.
6 years ago
Fernando Sahmkow
7606da5611
VideoCore: Corrections to the MME Inliner and removal of hacky instance management.
6 years ago
Fernando Sahmkow
ba02d564f8
Video Core: initial Implementation of InstanceDraw Packaging
6 years ago
Rodrigo Locatti
193bfefce4
maxwell_3d: Update firmware 4 call stub commentary
6 years ago
ReinUsesLisp
78574746bd
renderer_opengl: Fix sRGB blits
Removes the sRGB hack of tracking if a frame used an sRGB rendertarget
to apply at least once to blit the final texture as sRGB. Instead of
doing this apply sRGB if the presented image has sRGB.
Also enable sRGB by default on Maxwell3D registers as some games seem to
assume this.
6 years ago
ReinUsesLisp
5f309b88db
Revert "Revert #2466" and stub FirmwareCall 4
6 years ago
ReinUsesLisp
701dedcfad
maxwell_3d: Avoid moving macro_params
6 years ago
ReinUsesLisp
52a41f482f
maxwell_3d: Fix macro binding cursor
6 years ago
Rodrigo Locatti
4d4f9cc104
video_core: Silent miscellaneous warnings ( #2820 )
* texture_cache/surface_params: Remove unused local variable
* rasterizer_interface: Add missing documentation commentary
* maxwell_dma: Remove unused rasterizer reference
* video_core/gpu: Sort member declaration order to silent -Wreorder warning
* fermi_2d: Remove unused MemoryManager reference
* video_core: Silent unused variable warnings
* buffer_cache: Silent -Wreorder warnings
* kepler_memory: Remove unused MemoryManager reference
* gl_texture_cache: Add missing override
* buffer_cache: Add missing include
* shader/decode: Remove unused variables
6 years ago
Fernando Sahmkow
7a35178ee2
Maxwell3D: Reorganize and address feedback
7 years ago
Fernando Sahmkow
5ad889f6fd
Maxwell3D: Address Feedback
7 years ago
Fernando Sahmkow
8cdbfe69b1
GL_Rasterizer: Corrections to Clearing.
7 years ago
Fernando Sahmkow
0ff4a5fa39
Maxwell3D: Correct marking dirtiness on CB upload
7 years ago
Fernando Sahmkow
fec32fed18
GL_Rasterizer: Rework RenderTarget/DepthBuffer clearing
7 years ago
Fernando Sahmkow
a081dea8ab
Maxwell3D: Implement State Dirty Flags.
7 years ago
Fernando Sahmkow
0d3db58657
Maxwell3D: Rework CBData Upload
7 years ago
Fernando Sahmkow
f2e7b29c14
Maxwell3D: Rework the dirty system to be more consistant and scaleable
7 years ago