aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/renderer_opengl
AgeCommit message (Collapse)Author
2019-08-29Merge pull request #2742 from ReinUsesLisp/fix-texture-buffersbunnei
gl_texture_cache: Miscellaneous texture buffer fixes
2019-08-29Merge pull request #2783 from FernandoS27/new-buffer-cachebunnei
Implement a New LLE Buffer Cache
2019-08-21shader_ir: Implement VOTEReinUsesLisp
Implement VOTE using Nvidia's intrinsics. Documentation about these can be found here https://developer.nvidia.com/reading-between-threads-shader-intrinsics Instead of using portable ARB instructions I opted to use Nvidia intrinsics because these are the closest we have to how Tegra X1 hardware renders. To stub VOTE on non-Nvidia drivers (including nouveau) this commit simulates a GPU with a warp size of one, returning what is meaningful for the instruction being emulated: * anyThreadNV(value) -> value * allThreadsNV(value) -> value * allThreadsEqualNV(value) -> true ballotARB, also known as "uint64_t(activeThreadsNV())", emits VOTE.ANY Rd, PT, PT; on nouveau's compiler. This doesn't match exactly to Nvidia's code VOTE.ALL Rd, PT, PT; Which is emulated with activeThreadsNV() by this commit. In theory this shouldn't really matter since .ANY, .ALL and .EQ affect the predicates (set to PT on those cases) and not the registers.
2019-08-21Buffer Cache: Adress Feedback.Fernando Sahmkow
2019-08-21Buffer_Cache: Implement flushing.Fernando Sahmkow
2019-08-21Video_Core: Implement a new Buffer CacheFernando Sahmkow
2019-08-21Merge pull request #2769 from FernandoS27/commands-flushbunnei
GPU: Flush commands on every dma pusher step.
2019-08-21Merge pull request #2753 from FernandoS27/float-convertbunnei
Shader_Ir: Implement F16 Variants of F2F, F2I, I2F.
2019-08-21renderer_opengl: Implement RGB565 framebuffer formatReinUsesLisp
2019-08-21renderer_opengl: Use block linear swizzling for CPU framebuffersReinUsesLisp
2019-08-21renderer_opengl: Use VideoCore pixel formatReinUsesLisp
2019-08-21gpu: Change optional<reference_wrapper<T>> to T* for FramebufferConfigReinUsesLisp
2019-07-26GPU: Flush commands on every dma pusher step.Fernando Sahmkow
This commit ensures that the host gpu is constantly fed with commands to work with, while the guest gpu keeps producing the rest of the commands. This reduces syncing time between host and guest gpu.
2019-07-25Merge pull request #2743 from FernandoS27/surpress-assertbunnei
Downgrade and suppress a series of GPU asserts and debug messages.
2019-07-24Merge pull request #2704 from FernandoS27/conditionalbunnei
maxwell3d: Implement Conditional Rendering
2019-07-22Merge pull request #2734 from ReinUsesLisp/compute-shadersbunnei
gl_rasterizer: Implement compute shaders
2019-07-21Merge pull request #2735 from FernandoS27/pipeline-reworkbunnei
Rework Dirty Flags in GPU Pipeline, Optimize CBData and Redo Clearing mechanism
2019-07-20Shader_Ir: Implement F16 Variants of F2F, F2I, I2F.Fernando Sahmkow
This commit takes care of implementing the F16 Variants of the conversion instructions and makes sure conversions are done.
2019-07-20Maxwell3D: Reorganize and address feedbackFernando Sahmkow
2019-07-19shader/half_set_predicate: Fix HSETP2 implementationReinUsesLisp
2019-07-18Gl_Texture_Cache: Remove assert on component type in GetFormatTupleFernando Sahmkow
Textures can have different components types in different orders. This assert was completely inprecise and the effectiveness of such is better handled by case and within the texture cache.
2019-07-18gl_shader_decompiler: Rename bufferImage to imageBufferReinUsesLisp
The online OpenGL documentation is wrong. The type definition is imageBuffer.
2019-07-18gl_shader_cache: Fix newline on buffer preprocessor definitionsReinUsesLisp
2019-07-18gl_texture_cache: Do not set texture parameters to buffersReinUsesLisp
2019-07-18gl_texture_cache: Add missing break in CreateTextureReinUsesLisp
2019-07-17GL_State: Feedback and fixesFernando Sahmkow
2019-07-17Maxwell3D: Address FeedbackFernando Sahmkow
2019-07-17GL_Rasterizer: Corrections to Clearing.Fernando Sahmkow
2019-07-17GL_Rasterizer: Rework RenderTarget/DepthBuffer clearingFernando Sahmkow
2019-07-17Maxwell3D: Implement State Dirty Flags.Fernando Sahmkow
2019-07-17Maxwell3D: Rework the dirty system to be more consistant and scaleableFernando Sahmkow
2019-07-17maxwell3d: Implement Conditional RenderingFernando Sahmkow
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.
2019-07-15gl_shader_cache: Fix clang-format issuesReinUsesLisp
2019-07-15gl_shader_decompiler: Stub local memory sizeReinUsesLisp
2019-07-15gl_shader_cache: Address review commentariesReinUsesLisp
2019-07-15gl_shader_cache: Address CI issuesReinUsesLisp
2019-07-15gl_rasterizer: Implement compute shadersReinUsesLisp
2019-07-15Merge pull request #2695 from ReinUsesLisp/layer-viewportFernando Sahmkow
gl_shader_decompiler: Implement gl_ViewportIndex and gl_Layer in vertex shaders
2019-07-14Merge pull request #2705 from FernandoS27/tex-cache-fixesbunnei
GPU: Fixes to Texture Cache and Include Microprofiles for GL State/BufferCopy/Macro Interpreter
2019-07-14Merge pull request #2675 from ReinUsesLisp/opengl-buffer-cachebunnei
buffer_cache: Implement a generic buffer cache and its OpenGL backend
2019-07-14GPU: Add a microprofile for macro interpreterFernando Sahmkow
2019-07-14GL_State: Add a microprofile timer to OpenGL state.Fernando Sahmkow
2019-07-14Gl_Texture_Cache: Measure Buffer Copy TimesFernando Sahmkow
2019-07-11Merge pull request #2609 from FernandoS27/new-scanbunnei
Implement a New Shader Scanner, Decompile Flow Stack and implement BRX BRA.CC
2019-07-11gl_shader_decompiler: Fix gl_PointSize redeclarationReinUsesLisp
2019-07-11gl_shader_decompiler: Fix conditional usage of ↵ReinUsesLisp
GL_ARB_shader_viewport_layer_array
2019-07-10Merge pull request #2697 from lioncash/docbunnei
gl_rasterizer: Amend documentation comment for ConfigureFramebuffers()
2019-07-09shader_ir: Unify blocks in decompiled shaders.Fernando Sahmkow
2019-07-09shader_ir: propagate shader size to the IRFernando Sahmkow
2019-07-09shader_ir: Implement BRX & BRA.CCFernando Sahmkow