aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/engines
AgeCommit message (Collapse)Author
2019-12-31Merge pull request #3239 from ReinUsesLisp/p2rbunnei
shader/p2r: Implement P2R Pr
2019-12-26Merge pull request #3228 from ReinUsesLisp/ptpbunnei
shader/texture: Implement AOFFI and PTP for TLD4 and TLD4S
2019-12-25Merge pull request #3244 from ReinUsesLisp/vk-fpsFernando Sahmkow
fixed_pipeline_state: Define structure and loaders
2019-12-24Merge pull request #3236 from ReinUsesLisp/rasterize-enablebunnei
gl_rasterizer: Implement RASTERIZE_ENABLE
2019-12-22maxwell_3d: Add depth bounds registersReinUsesLisp
2019-12-20shader/r2p: Refactor P2R to support P2RReinUsesLisp
2019-12-18gl_rasterizer: Implement RASTERIZE_ENABLEReinUsesLisp
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.
2019-12-17shader_bytecode: Fix TLD4S encodingReinUsesLisp
2019-12-16shader/texture: Implement TLD4.PTPReinUsesLisp
2019-12-11Shader_Ir: Correct TLD4S encoding and implement f16 flag.Fernando Sahmkow
2019-12-11Merge pull request #3210 from ReinUsesLisp/memory-barrierbunnei
shader: Implement MEMBAR.GL
2019-12-10Maxwell3D: Implement Depth Mode.Fernando Sahmkow
This commit finishes adding depth mode that was reverted before due to other unresolved issues.
2019-12-10shader: Implement MEMBAR.GLReinUsesLisp
Implement using memoryBarrier in GLSL and OpMemoryBarrier on SPIR-V.
2019-12-09shader_ir/memory: Implement patch storesReinUsesLisp
2019-12-06maxwell_3d: Add tessellation tess level registersReinUsesLisp
2019-12-06maxwell_3d: Add tessellation mode registerReinUsesLisp
2019-12-06maxwell_3d: Add patch vertices registerReinUsesLisp
2019-12-06shader_bytecode: Remove corrupted characterReinUsesLisp
2019-12-06Merge pull request #3109 from FernandoS27/new-instrbunnei
Implement FLO & TXD Instructions on GPU Shaders
2019-11-24Merge pull request #3098 from ReinUsesLisp/shader-invalidationsbunnei
gl_shader_cache: Miscellaneous changes to shaders
2019-11-24Merge pull request #3105 from ReinUsesLisp/fix-stencil-regbunnei
maxwell_3d: Fix stencil_back_func_mask offset
2019-11-22gl_shader_cache: Remove dynamic BaseBinding specializationReinUsesLisp
2019-11-22video_core: Unify ProgramType and ShaderStage into ShaderTypeReinUsesLisp
2019-11-22gl_shader_cache: Specialize local memory size for compute shadersReinUsesLisp
Local memory size in compute shaders was stubbed with an arbitary size. This commit specializes local memory size from guest GPU parameters.
2019-11-22gl_shader_cache: Specialize shader workgroupReinUsesLisp
Drop the usage of ARB_compute_variable_group_size and specialize compute shaders instead. This permits compute to run on AMD and Intel proprietary drivers.
2019-11-14texture_cache: Use a table instead of switch for texture formatsReinUsesLisp
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.
2019-11-14Shader_IR: Implement TXD instruction.Fernando Sahmkow
2019-11-14Shader_IR: Implement FLO instruction.Fernando Sahmkow
2019-11-14Shader_Bytecode: Add encodings for FLO, SHF and TXDFernando Sahmkow
2019-11-14Merge pull request #3081 from ReinUsesLisp/fswzadd-shufflesFernando Sahmkow
shader: Implement FSWZADD and reimplement SHFL
2019-11-13maxwell_3d: Fix stencil_back_func_mask offsetReinUsesLisp
stencil_back_func_mask and stencil_back_mask were misplaced. This commit addresses that issue.
2019-11-08video_core: Silence implicit conversion warningsReinUsesLisp
2019-11-07shader_ir/warp: Implement FSWZADDReinUsesLisp
2019-11-05Merge pull request #2914 from FernandoS27/fermi-fixbunnei
Fermi2D: limit blit area to only available area
2019-11-03common_func: Use std::array for INSERT_PADDING_* macros.bunnei
- Zero initialization here is useful for determinism.
2019-10-30Merge pull request #3050 from FernandoS27/fix-tld4Rodrigo Locatti
shader_ir: Fix TLD4 and add bindless variant
2019-10-30Shader_IR: Fix TLD4 and add Bindless Variant.Fernando Sahmkow
This commit fixes an issue where not all 4 results of tld4 were being written, the color component was defaulted to red, among other things. It also implements the bindless variant.
2019-10-28maxwell_3d/kepler_compute: Remove unused arguments in GetTextureReinUsesLisp
2019-10-28video_core/textures: Remove unused index entry in FullTextureInfoReinUsesLisp
2019-10-28maxwell_3d: Remove unused method GetStageTexturesReinUsesLisp
2019-10-27maxwell_3d: Silence implicit conversion warningsReinUsesLisp
While we are at it, unify types for dirty reg pointers.
2019-10-26Shader_IR: Address Feedback.Fernando Sahmkow
2019-10-25Shader_IR: Clang formatFernando Sahmkow
2019-10-25gl_shader_disk_cache: Store and load fast BRXReinUsesLisp
2019-10-25Shader_IR: allow lookup of texture samplers within the shader_ir for ↵Fernando Sahmkow
instructions that don't provide it
2019-10-25VideoCore: Unify const buffer accessing along engines and provide ↵Fernando Sahmkow
ConstBufferLocker class to shaders.
2019-10-24shader_bytecode: Make Matcher constexpr capableLioncash
Greatly shrinks the amount of generated code for GetDecodeTable(). Collapses an assembly output of 9000+ lines down to ~3621 with Clang, and 6513 down to ~2616 with GCC, given it's now allowed to construct all the entries as a sequence of constant data.
2019-10-20maxwell_3d: Reduce FlushMMEInlineDraw logging to TraceReinUsesLisp
2019-10-17Fermi2D: Use a different formula for delimiting blit areas.Fernando Sahmkow
2019-10-17Fermi2D: limit blit area to only available areaFernando Sahmkow
Normaly OpenGL does not care if the areas exceed the texture regions but other backends such as Vulkan do care about the limits of this areas. This PR crops the areas of the blit in order that they don't surpass the limits of the textures. This should help Vulkan and faulty OpenGL drivers