aboutsummaryrefslogtreecommitdiff
path: root/src/video_core
AgeCommit message (Collapse)Author
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-13Merge pull request #3084 from ReinUsesLisp/cast-warningsRodrigo Locatti
video_core: Treat implicit conversions as errors
2019-11-11video_core: Enable sign conversion warningsRodrigo Locatti
Enable sign conversion warnings but don't treat them as errors.
2019-11-09Merge pull request #3082 from ReinUsesLisp/fix-lockersbunnei
gl_shader_cache: Fix locker constructors
2019-11-08video_core: Treat implicit conversions as errorsReinUsesLisp
2019-11-08video_core: Silence implicit conversion warningsReinUsesLisp
2019-11-08Merge pull request #3080 from FernandoS27/glsl-fixbunnei
GLSLDecompiler: Correct Texture Gather Offset.
2019-11-07gl_shader_cache: Fix locker constructorsReinUsesLisp
Properly pass engine when a shader is being constructed from memory.
2019-11-07gl_shader_cache: Enable extensions only when availableReinUsesLisp
Silence GLSL compilation warnings.
2019-11-07gl_shader_decompiler: Add safe fallbacks when ARB_shader_ballot is not availableReinUsesLisp
2019-11-07shader_ir/warp: Implement FSWZADDReinUsesLisp
2019-11-07gl_shader_decompiler: Reimplement shuffles with platform agnostic intrinsicsReinUsesLisp
2019-11-07GLSLDecompiler: Correct Texture Gather Offset.Fernando Sahmkow
This commit corrects the argument ordering in textureGatherOffset.
2019-11-07Merge pull request #3032 from ReinUsesLisp/simplify-control-flow-brxbunnei
shader/control_flow: Abstract repeated code chunks in BRX tracking
2019-11-07buffer_cache: Add missing includes (#3079)Morph
`boost::make_iterator_range` is available when `boost/range/iterator_range.hpp` is included. Also include `boost/icl/interval_map.hpp` and `boost/icl/interval_set.hpp`.
2019-11-07Merge pull request #3070 from ReinUsesLisp/shader-warningsbunnei
shader_ir: Reduce severity of warnings
2019-11-07gl_rasterizer: Remove front facing hackReinUsesLisp
2019-11-07gl_shader_decompiler: Fix typo "y_negate"->"y_direction"ReinUsesLisp
2019-11-07gl_shader_manager: Remove unused variable in SetFromRegsReinUsesLisp
2019-11-07gl_rasterizer: Emulate viewport flipping with ARB_clip_controlReinUsesLisp
Emulates negative y viewports with ARB_clip_control. This allows us to more easily emulated pipelines with tessellation and/or geometry shader stages. It also avoids corrupting games with transform feedbacks and negative viewports (gl_Position.y was being modified).
2019-11-07shader/control_flow: Specify constness on caller lambdasRodrigo Locatti
Update src/video_core/shader/control_flow.cpp Co-Authored-By: Mat M. <mathew1800@gmail.com> Update src/video_core/shader/control_flow.cpp Co-Authored-By: Mat M. <mathew1800@gmail.com> Update src/video_core/shader/control_flow.cpp Co-Authored-By: Mat M. <mathew1800@gmail.com> Update src/video_core/shader/control_flow.cpp Co-Authored-By: Mat M. <mathew1800@gmail.com> Update src/video_core/shader/control_flow.cpp Co-Authored-By: Mat M. <mathew1800@gmail.com> Update src/video_core/shader/control_flow.cpp Co-Authored-By: Mat M. <mathew1800@gmail.com>
2019-11-07shader/control_flow: Use callable template instead of std::functionReinUsesLisp
2019-11-07shader/control_flow: Abstract repeated code chunks in BRX trackingReinUsesLisp
Remove copied and pasted for cycles into a common templated function.
2019-11-07shader/control_flow: Silence Intellisense cast warningsReinUsesLisp
2019-11-07shader/control_flow: Remove brace initializer in std containersReinUsesLisp
These containers have a default constructor.
2019-11-07shader/decode: Reduce severity of arithmetic rounding warningsReinUsesLisp
2019-11-07shader/arithmetic: Reduce RRO stub severityReinUsesLisp
2019-11-07shader/texture: Remove NODEP warningsReinUsesLisp
These warnings don't offer meaningful information while decoding shaders. Remove them.
2019-11-06Merge pull request #3057 from ReinUsesLisp/buffer-sub-databunnei
gl_rasterizer: Upload constant buffers with glNamedBufferSubData
2019-11-06Merge pull request #3039 from ReinUsesLisp/cleanup-samplersRodrigo Locatti
shader/node: Unpack bindless texture encoding
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-11-02gl_rasterizer: Re-enable stream buffer memory due to global memoryReinUsesLisp
Global memory is still using the stream buffer when it shouldn't. As a temporary fix re-enable the stream buffer on compute.
2019-11-02gl_rasterizer: Upload constant buffers with glNamedBufferSubDataReinUsesLisp
Nvidia's OpenGL driver maps gl(Named)BufferSubData with some requirements to a fast. This path has an extra memcpy but updates the buffer without orphaning or waiting for previous calls. It can be seen as a better model for "push constants" that can upload a whole UBO instead of 256 bytes. This path has some requirements established here: http://on-demand.gputechconf.com/gtc/2014/presentations/S4379-opengl-44-scene-rendering-techniques.pdf#page=24 Instead of using the stream buffer, this commits moves constant buffers uploads to calls of glNamedBufferSubData and from my testing it brings a performance improvement. This is disabled when the vendor is not Nvidia since it brings performance regressions.
2019-10-30Shader_IR: Fix regression on TLD4Fernando Sahmkow
Originally on the last commit I thought TLD4 acted the same as TLD4S and didn't have a mask. It actually does have a component mask. This commit corrects that.
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-29Merge pull request #3046 from ReinUsesLisp/clean-gl-statebunnei
gl_state: Miscellaneous clean up
2019-10-29Merge pull request #3035 from ReinUsesLisp/rasterizer-acceleratedbunnei
rasterizer_accelerated: Add intermediary for GPU rasterizers
2019-10-30gl_state: Use std::array::fill instead of std::fillRodrigo Locatti
Co-Authored-By: Mat M. <mathew1800@gmail.com>
2019-10-29gl_state: Move dirty checks to individual apply calls instead of ApplyReinUsesLisp
This requires removing constness from some methods, but for consistency it's removed in all methods.
2019-10-29gl_state: Remove ApplyDefaultStateReinUsesLisp
OpenGL has defaults values we can trust. Remove these.
2019-10-29gl_state: Change SetDefaultViewports to use default constructorReinUsesLisp
2019-10-29gl_state: Minor style changesReinUsesLisp
2019-10-29gl_state: Remove unused Citra TextureUnitsReinUsesLisp
2019-10-29gl_state: Move initializers from constructor to class declarationReinUsesLisp