ReinUsesLisp
0eb9f3b107
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
Fernando Sahmkow
1987e66daa
Maxwell3D: Implement Depth Mode.
This commit finishes adding depth mode that was reverted before due to
other unresolved issues.
6 years ago
ReinUsesLisp
b377e0c75c
maxwell_3d: Add tessellation tess level registers
6 years ago
ReinUsesLisp
cac31c3fbb
maxwell_3d: Add tessellation mode register
6 years ago
ReinUsesLisp
c69c5be931
maxwell_3d: Add patch vertices register
6 years ago
ReinUsesLisp
0ecd1a227d
gl_shader_cache: Remove dynamic BaseBinding specialization
6 years ago
ReinUsesLisp
5f6a589d63
video_core: Unify ProgramType and ShaderStage into ShaderType
6 years ago
ReinUsesLisp
2f14d6ba63
maxwell_3d: Fix stencil_back_func_mask offset
stencil_back_func_mask and stencil_back_mask were misplaced. This commit
addresses that issue.
6 years ago
bunnei
fe02b9f968
common_func: Use std::array for INSERT_PADDING_* macros.
- Zero initialization here is useful for determinism.
6 years ago
ReinUsesLisp
902431adce
maxwell_3d/kepler_compute: Remove unused arguments in GetTexture
6 years ago
ReinUsesLisp
cf7206fe7b
maxwell_3d: Remove unused method GetStageTextures
6 years ago
ReinUsesLisp
15a52a86bd
maxwell_3d: Silence implicit conversion warnings
While we are at it, unify types for dirty reg pointers.
6 years ago
Fernando Sahmkow
4168b287c9
Shader_IR: allow lookup of texture samplers within the shader_ir for instructions that don't provide it
6 years ago
Fernando Sahmkow
d4da704ac5
VideoCore: Unify const buffer accessing along engines and provide ConstBufferLocker class to shaders.
6 years ago
ReinUsesLisp
521b03ddb4
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
d53d764965
Maxwell3D: Corrections and refactors to MME instance refactor
6 years ago
Fernando Sahmkow
ae03b1ebc7
VideoCore: Corrections to the MME Inliner and removal of hacky instance management.
6 years ago
Fernando Sahmkow
b61203a547
Video Core: initial Implementation of InstanceDraw Packaging
6 years ago
ReinUsesLisp
0c8851163d
gl_rasterizer: Implement image bindings
7 years ago
ReinUsesLisp
4f0213d0c7
Revert "Revert #2466" and stub FirmwareCall 4
6 years ago
ReinUsesLisp
9ad95eb74a
maxwell_3d: Avoid moving macro_params
6 years ago
ReinUsesLisp
95df43ec32
maxwell_3d: Fix macro binding cursor
6 years ago
Fernando Sahmkow
57e6c1fac3
Maxwell3D: Reorganize and address feedback
7 years ago
Fernando Sahmkow
c9690e912e
GL_State: Feedback and fixes
7 years ago
Fernando Sahmkow
527a77ec0a
Maxwell3D: Address Feedback
7 years ago
Fernando Sahmkow
89cc60554a
Maxwell3D: Implement State Dirty Flags.
7 years ago
Fernando Sahmkow
24bf7e4de0
Maxwell3D: Rework CBData Upload
7 years ago
Fernando Sahmkow
7c50842226
Maxwell3D: Rework the dirty system to be more consistant and scaleable
7 years ago
Fernando Sahmkow
67d869b53a
maxwell3d: Implement Conditional Rendering
Conditional Rendering takes care of conditionaly clearing or drawing
depending on a set of queries. This PR implements the query checks to
stablish if things can be rendered or not.
7 years ago
ReinUsesLisp
e6d37e10db
gl_rasterizer: Minor style changes
7 years ago
ReinUsesLisp
1073b32300
video_core/engines: Move ConstBufferInfo out of Maxwell3D
7 years ago
Lioncash
b66f9188cb
video_core/engines/maxwell_3d: Add is_trivially_copyable_v check for Regs
std::memset is used to clear the entire register structure, which
requires that the Regs struct be trivially copyable (otherwise undefined
behavior is invoked). This prevents the case where a non-trivial type is
potentially added to the struct.
7 years ago
ReinUsesLisp
ac78410d39
gl_shader_decompiler: Declare all possible varyings on physical attribute usage
7 years ago
Fernando Sahmkow
08f861a820
Refactors and name corrections.
7 years ago
Fernando Sahmkow
bcf4b19fca
Add Documentation Headers to all the GPU Engines
7 years ago
Fernando Sahmkow
4a2763a121
Implement Maxwell3D Data Upload
7 years ago
ReinUsesLisp
7a56d07632
video_core: Silent -Wswitch warnings
7 years ago
Fernando Sahmkow
f5792ffeab
Move ConstBufferAccessor to Maxwell3d, correct mistakes and clang format.
7 years ago
Fernando Sahmkow
e6d2e59f07
Implement Bindless Handling on SetupTexture
7 years ago
Fernando Sahmkow
e3d9c983aa
Implement SyncPoint Register in the GPU.
7 years ago
Lioncash
1211a5623e
video_core/engines: Make memory manager members private
These aren't used externally by anything, so they can be made private
data members.
7 years ago
Lioncash
33742deaf6
video_core/engines: Remove unnecessary inclusions where applicable
Replaces header inclusions with forward declarations where applicable
and also removes unused headers within the cpp file. This reduces a few
more dependencies on core/memory.h
7 years ago
Lioncash
e59ae7210a
common/math_util: Move contents into the Common namespace
These types are within the common library, so they should be within the
Common namespace.
7 years ago
ReinUsesLisp
20d8c304f2
maxwell_3d: Use std::bitset to manage dirty flags
7 years ago
Lioncash
12774b7c44
video_core: Remove usages of System::GetInstance() within the engines
Avoids the use of the global accessor in favor of explicitly making the
system a dependency within the interface.
7 years ago
ReinUsesLisp
1c8411dc8d
gl_rasterizer_cache: Use dirty flags for the depth buffer
7 years ago
ReinUsesLisp
6e932fe118
gl_rasterizer_cache: Use dirty flags for color buffers
7 years ago
ReinUsesLisp
5fec808e30
gl_shader_cache: Use dirty flags for shaders
7 years ago
David Marcec
1dfb0a513a
Fixed uninitialized memory due to missing returns in canary
Functions which are suppose to crash on non canary builds usually don't return anything which lead to uninitialized memory being used.
7 years ago
ReinUsesLisp
5861ae801a
gl_rasterizer: Enable clip distances when set in register and in shader
7 years ago