summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_opengl/gl_rasterizer.cpp (unfollow)
Commit message (Expand)AuthorFilesLines
2023-03-12video_core: Fix ogl status error when draw_textureFengChen1-0/+1
2023-01-08VideoCore: Fix OGL cache invalidation.Fernando Sahmkow1-0/+4
2023-01-05video_core: Implement opengl/vulkan draw_textureFeng Chen1-1/+43
2023-01-04Video_core: Address feedbackFernando Sahmkow1-9/+9
2023-01-01Rasterizer: Setup skeleton for Host Conditional renderingFernando Sahmkow1-0/+15
2023-01-01RasterizerMemory: Add filtering for flushing/invalidation operations.Fernando Sahmkow1-18/+33
2023-01-01MacroHLE: Add OpenGL SupportFernando Sahmkow1-37/+87
2022-12-08video_core: The draw manager manages whether Clear is required.FengChen1-3/+0
2022-12-08video_core: Implement maxwell3d draw manager and split draw logicFeng Chen1-7/+9
2022-11-24Fermi2D: Rework blit engine and add a software blitter.Fernando Sahmkow1-2/+1
2022-11-17maxwell3d: full HLE for multi-layer clearsLiam1-1/+1
2022-11-15video_core: Reimplement inline index buffer bindingFeng Chen1-12/+0
2022-11-11Fix regs regression with OpenGL two-sided stencil, and re-add data invalidation regKelebek11-1/+1
2022-11-11ir/texture_pass: Use host_info instead of querying Settings::values (#9176)Morph1-1/+1
2022-11-04video_core: Fix SNORM texture buffer emulating error (#9001)Feng Chen1-5/+5
2022-10-22video_core: Implement maxwell inline_index methodFengChen1-0/+12
2022-10-21video_coare: Reimplementing the maxwell drawing trigger mechanismFengChen1-3/+2
2022-10-10Fix stencil func registers, make clip control equivalent to how it was before, but surely wrong.Kelebek11-6/+11
2022-10-07Update 3D regsKelebek11-69/+71
2022-10-06DMA & InlineToMemory Engines Rework.bunnei1-1/+1
2022-10-06OpenGL: Fix TickWorkFernando Sahmkow1-0/+4
2022-10-06VideoCore: Refactor fencing system.Fernando Sahmkow1-14/+8
2022-10-06NVDRV: Further refactors and eliminate old code.Fernando Sahmkow1-4/+0
2022-10-06Texture cache: Fix the remaining issues with memory mnagement and unmapping.Fernando Sahmkow1-2/+2
2022-10-06VideoCore: Fix channels with disk pipeline/shader cache.Fernando Sahmkow1-0/+1
2022-10-06OpenGl: Implement Channels.Fernando Sahmkow1-69/+105
2022-10-06VideoCore: implement channels on gpu caches.Fernando Sahmkow1-7/+7
2022-09-20video_core: Generate mipmap texture by drawingFengChen1-0/+10
2022-07-27chore: make yuzu REUSE compliantAndrea Pappacoda1-3/+2
2022-05-07OpenGL: implement face flips according to NDCLiam1-4/+3
2022-04-04OpenGL: fix croppingLiam1-0/+2
2022-04-04OpenGL: propagate face flip conditionLiam1-4/+10
2022-04-04OpenGL: flip front faces if Z scale is invertedLiam1-2/+3
2022-03-29gl_rasterizer: Avoid scenario locking already owned mutexameerj1-3/+3
2022-03-26Revert "Memory GPU <-> CPU: reduce infighting in the texture cache by adding CPU Cached memory."bunnei1-5/+1
2022-03-25Texture Cache: Add Cached CPU system.Fernando Sahmkow1-1/+5
2022-03-19video_core: Reduce unused includesameerj1-2/+0
2022-02-01Rasterizer: Refactor inlineToMemory.Fernando Sahmkow1-2/+2
2022-01-29Rasterizer: Implement Inline2Memory Acceleration.Fernando Sahmkow1-0/+22
2021-11-16Texture Cahe/Shader decompiler: Resize PointSize on rescaling, refactor and make reaper more agressive on 4Gb GPUs.FernandoS271-2/+3
2021-11-16OpenGL: Fix viewport/Scissor scaling on downscaling.FernandoS271-6/+28
2021-11-16gl_rasterizer: Fix ScissorTest and Clear when scalingameerj1-10/+6
2021-11-16video_core: Misc resolution scaling related refactoringameerj1-2/+2
2021-11-16gl_rasterizer: Properly scale viewports and scissorsReinUsesLisp1-23/+24
2021-11-16gl_rasterizer: Fix rescale dirty state checkingameerj1-4/+9
2021-11-16renderer_gl: Resolution scaling fixesameerj1-3/+20
2021-11-01gl_rasterizer: Remove unused includesMorph1-4/+2
2021-08-05texture_cache: Address ameerj's reviewyzct123451-1/+1
2021-07-23vk_rasterizer: Workaround bug in VK_EXT_vertex_input_dynamic_stateReinUsesLisp1-1/+1
2021-07-23shader: Unify shader stage typesReinUsesLisp1-2/+0
2021-07-23gl_shader_cache: Implement async shadersameerj1-1/+1
2021-07-23gl_rasterizer: Add texture fetch barrier for fragmentsameerj1-1/+1
2021-07-23shader: Handle host exceptionsReinUsesLisp1-1/+3
2021-07-23glasm: Use storage buffers instead of global memory when possibleReinUsesLisp1-6/+7
2021-07-23gl_shader_cache: Add disk shader cacheReinUsesLisp1-1/+3
2021-07-23gl_shader_cache: Rename Program abstractions into PipelineReinUsesLisp1-5/+5
2021-07-23glasm: Set transform feedback stateReinUsesLisp1-92/+6
2021-07-23gl_rasterizer: Flush L2 caches before glFlush on GLASMReinUsesLisp1-0/+8
2021-07-23shader: Initial OpenGL implementationReinUsesLisp1-9/+14
2021-07-23shader: Accelerate pipeline transitions and use dirty flags for shadersReinUsesLisp1-1/+1
2021-07-23shader: Remove old shader managementReinUsesLisp1-310/+4
2021-07-13DMAEngine: Accelerate BufferClearFernando Sahmkow1-0/+5
2021-07-11accelerateDMA: Accelerate Buffer Copies.Fernando Sahmkow1-1/+12
2021-07-09Fence Manager: remove reference fencing.Fernando Sahmkow1-5/+2
2021-07-09Fence Manager: Force ordering on WFI.Fernando Sahmkow1-0/+4
2021-07-09Fence Manager: Add fences on Reference Count.Fernando Sahmkow1-0/+7
2021-07-04Texture Cache: Initial Implementation of Sparse Textures.Fernando Sahmkow1-0/+7
2021-06-22bootmanager: Use std::stop_source for stopping emulationReinUsesLisp1-1/+1
2021-06-01buffer_cache: Simplify uniform disabling logicameerj1-0/+4
2021-05-06hle: kernel: Rename Process to KProcess.bunnei1-1/+1
2021-04-15common: Move settings to common from core.bunnei1-1/+1
2021-02-24Implement glDepthRangeIndexeddNVKelebek11-1/+5
2021-02-13video_core: Fix clang build issuesReinUsesLisp1-7/+0
2021-02-13renderer_opengl: Remove interopReinUsesLisp1-3/+1
2021-02-13video_core: Reimplement the buffer cacheReinUsesLisp1-452/+122
2021-02-13maxwell_to_gl: Remove unused codeameerj1-0/+1
2021-02-09gl_rasterizer: Remove unused variablesLioncash1-3/+0
2020-12-30video_core: Rewrite the texture cacheReinUsesLisp1-254/+250
2020-12-07video_core: Remove unnecessary enum class casting in logging messagesLioncash1-1/+1
2020-12-05video_core: Resolve more variable shadowing scenarios pt.3Lioncash1-6/+6
2020-11-21gl_rasterizer: Remove warning of untested alpha testReinUsesLisp1-4/+0
2020-11-20gl_rasterizer: Make floating-point literal a floatLioncash1-1/+1
2020-10-20gl_arb_decompiler: Implement robust buffer operationsReinUsesLisp1-24/+23
2020-09-06video_core: Remove all Core::System references in rendererReinUsesLisp1-151/+110
2020-08-16move thread 1/4 count computation into allocate workers methodameerj1-9/+1
2020-07-28renderer_opengl: Use 1/4 of all threads for async shader compilationMorph1-9/+4
2020-07-18gl_arb_decompiler: Use NV_shader_buffer_{load,store} on assembly shadersReinUsesLisp1-37/+66
2020-07-17Drop max workers from 8->2 for testingDavid Marcec1-1/+1
2020-07-17async shadersDavid Marcec1-3/+21
2020-06-29maxwell_to_gl: Rename VertexType() to VertexFormat()Morph1-2/+3
2020-06-24gl_rasterizer: Use NV_vertex_buffer_unified_memory for vertex buffer robustnessReinUsesLisp1-8/+20
2020-06-24gl_buffer_cache: Mark buffers as residentReinUsesLisp1-22/+22
2020-06-09gl_rasterizer: Mark vertex buffers as dirty after buffer cache invalidationReinUsesLisp1-1/+10
2020-06-07gl_shader_cache: Use generic shader cacheReinUsesLisp1-9/+10
2020-06-05shader/texture: Join separate image and sampler pairs offlineReinUsesLisp1-2/+14
2020-06-04gl_rasterizer: Use NV_transform_feedback for XFB on assembly shadersReinUsesLisp1-0/+90
2020-06-01glsl: Squash constant buffers into a single SSBO when we hit the limitReinUsesLisp1-19/+59
2020-05-31gl_device: Enable compute shaders for Intel proprietary driversMorph1-4/+0
2020-05-26gl_texture_cache: Implement small texture view cache for swizzlesReinUsesLisp1-14/+7
2020-05-26gl_rasterizer: Port front face flip check from VulkanReinUsesLisp1-5/+20
2020-05-19renderer_opengl: Add assembly program code pathsReinUsesLisp1-24/+72
2020-05-10VideoCore: Use SyncGuestMemory mechanism for Shader/Pipeline Cache invalidation.Fernando Sahmkow1-2/+2
2020-05-04gl_rasterizer: Implement viewport swizzles with NV_viewport_swizzleReinUsesLisp1-0/+8
2020-04-28{maxwell_3d,buffer_cache}: Implement memory barriers using 3D registersReinUsesLisp1-0/+11
2020-04-28maxwell_3d: Fix depth clamping registerReinUsesLisp1-5/+1
2020-04-27texture_cache: Reintroduce preserve_contents accuratelyReinUsesLisp1-13/+36
2020-04-23shader_ir: Turn classes into data structuresReinUsesLisp1-13/+11
2020-04-22Async GPU: Correct flushing behavior to be similar to old async GPU behavior.Fernando Sahmkow1-0/+3
2020-04-22Address Feedback.Fernando Sahmkow1-4/+1
2020-04-22Fix GCC error.Fernando Sahmkow1-5/+4
2020-04-22QueryCache: Implement Async Flushes.Fernando Sahmkow1-3/+3
2020-04-22OpenGL: Guarantee writes to Buffers.Fernando Sahmkow1-1/+0
2020-04-22GPU: Implement Flush Requests for Async mode.Fernando Sahmkow1-0/+6
2020-04-22FenceManager: Manage syncpoints and rename fences to semaphores.Fernando Sahmkow1-2/+11
2020-04-22FenceManager: Implement async buffer cache flushes on High settingsFernando Sahmkow1-1/+2
2020-04-22GPU: Fix rebase errors.Fernando Sahmkow1-0/+1
2020-04-22Rasterizer: Disable fence managing in synchronous gpu.Fernando Sahmkow1-0/+10
2020-04-22ThreadManager: Sync async reads on accurate gpu.Fernando Sahmkow1-0/+4
2020-04-22GPU: Implement a Fence Manager.Fernando Sahmkow1-23/+4
2020-04-22OpenGL: Implement Fencing backend.Fernando Sahmkow1-0/+28
2020-04-22BufferCache: Implement OnCPUWrite and SyncGuestHostFernando Sahmkow1-2/+2
2020-04-22GPU: Refactor synchronization on Async GPUFernando Sahmkow1-0/+16
2020-04-22UI: Replasce accurate GPU option for GPU Accuracy LevelFernando Sahmkow1-1/+1
2020-04-22gl_rasterizer: Fix buffers without sizeReinUsesLisp1-4/+8
2020-04-16buffer_cache: Return handles instead of pointer to handlesReinUsesLisp1-28/+11
2020-04-14gl_rasterizer: Implement constant vertex attributesReinUsesLisp1-2/+2
2020-04-13gl_rasterizer: Implement line widths and smooth linesReinUsesLisp1-0/+14
2020-04-11texture_cache: Remove preserve_contentsReinUsesLisp1-4/+4
2020-04-08Memory: Address Feedback.Fernando Sahmkow1-2/+2
2020-04-06Shader/Pipeline Cache: Use VAddr instead of physical memory for addressing.Fernando Sahmkow1-2/+1
2020-04-06Query Cache: Use VAddr instead of physical memory for adressing.Fernando Sahmkow1-3/+2
2020-04-06Buffer Cache: Use vAddr instead of physical memory.Fernando Sahmkow1-2/+2
2020-04-06Texture Cache: Use vAddr instead of physical memory for caching.Fernando Sahmkow1-4/+3
2020-04-06GPU: Setup Flush/Invalidate to use VAddr instead of CacheAddrFernando Sahmkow1-10/+12
2020-03-31gl_rasterizer: Mark cleared textures as dirtyReinUsesLisp1-2/+5
2020-03-26gl_rasterizer: Update stencil test regardless of it being disabledReinUsesLisp1-5/+1
2020-03-26gl_rasterizer: Synchronize stencil testing on clearsReinUsesLisp1-0/+1
2020-03-22gl_rasterizer: Use transformed viewport for depth rangesReinUsesLisp1-4/+6
2020-03-19gl_rasterizer: Silence misc warningsReinUsesLisp1-7/+2
2020-03-13gl_rasterizer: Implement transform feedback bindingsReinUsesLisp1-7/+63
2020-03-11gl_shader_manager: Fix interaction between graphics and computeReinUsesLisp1-3/+2
2020-03-10gl_rasterizer: Implement polygon modes and fill rectanglesReinUsesLisp1-0/+40
2020-03-09gl_shader_cache: Rework shader cache and remove post-specializationsReinUsesLisp1-25/+17
2020-02-28gl_rasterizer: Don't disable blending on clearsReinUsesLisp1-4/+0
2020-02-28gl_rasterizer: Remove num vertex buffers magic numberReinUsesLisp1-2/+4
2020-02-28gl_rasterizer: Only apply polygon offset clamp if enabledReinUsesLisp1-3/+6
2020-02-28gl_state_tracker: Implement dirty flags for depth clamp enablingReinUsesLisp1-3/+9
2020-02-28gl_rasterizer: Disable scissor 0 when scissor is not used on clearReinUsesLisp1-0/+3
2020-02-28gl_rasterizer: Notify depth mask changes on clearReinUsesLisp1-1/+1
2020-02-28gl_rasterizer: Minor sort changes to clearingReinUsesLisp1-11/+9
2020-02-28gl_state_tracker: Implement dirty flags for clip controlReinUsesLisp1-13/+17
2020-02-28gl_state_tracker: Implement dirty flags for point sizesReinUsesLisp1-4/+17
2020-02-28gl_state_tracker: Implement dirty flags for fragment color clampReinUsesLisp1-2/+8
2020-02-28gl_state_tracker: Implement dirty flags for logic opReinUsesLisp1-2/+10
2020-02-28gl_state_tracker: Implement dirty flags for sRGBReinUsesLisp1-2/+8
2020-02-28gl_state_tracker: Implement dirty flags for rasterize enableReinUsesLisp1-2/+8
2020-02-28gl_state_tracker: Implement dirty flags for multisampleReinUsesLisp1-0/+7
2020-02-28gl_state_tracker: Implement dirty flags for alpha testingReinUsesLisp1-4/+14
2020-02-28gl_state_tracker: Implement dirty flags for polygon offsetsReinUsesLisp1-2/+7
2020-02-28gl_state_tracker: Implement dirty flags for primitive restartReinUsesLisp1-3/+12
2020-02-28gl_state_tracker: Implement dirty flags for stencil testingReinUsesLisp1-3/+9
2020-02-28gl_state_tracker: Implement depth dirty flagsReinUsesLisp1-5/+15
2020-02-28gl_state_tracker: Implement dirty flags for front face and cullingReinUsesLisp1-4/+17
2020-02-28gl_state_tracker: Implement dirty flags for blendingReinUsesLisp1-13/+36
2020-02-28gl_state_tracker: Implement dirty flags for clip distances and shadersReinUsesLisp1-10/+18
2020-02-28gl_state_tracker: Add dirty flags for buffers and divisorsReinUsesLisp1-22/+29
2020-02-28gl_state_tracker: Implement dirty flags for vertex formatsReinUsesLisp1-9/+19
2020-02-28gl_state_tracker: Implement dirty flags for color masksReinUsesLisp1-9/+30
2020-02-28gl_state_tracker: Implement dirty flags for scissorsReinUsesLisp1-4/+20
2020-02-28gl_state_tracker: Implement dirty flags for viewportsReinUsesLisp1-7/+24
2020-02-28renderer_opengl: Reintroduce dirty flags for render targetsReinUsesLisp1-6/+14
2020-02-28maxwell_3d: Flatten cull and front face registersReinUsesLisp1-3/+3
2020-02-28gl_state: Remove completelyReinUsesLisp1-10/+3
2020-02-28gl_state: Remove program trackingReinUsesLisp1-17/+11
2020-02-28gl_state: Remove framebuffer trackingReinUsesLisp1-3/+2
2020-02-28gl_state: Remove image trackingReinUsesLisp1-3/+3
2020-02-28gl_state: Remove texture and sampler trackingReinUsesLisp1-6/+5
2020-02-28gl_state: Remove blend state trackingReinUsesLisp1-25/+24
2020-02-28gl_state: Remove stencil test trackingReinUsesLisp1-48/+17
2020-02-28gl_state: Remove clip control trackingReinUsesLisp1-5/+6
2020-02-28gl_state: Remove clip distances trackingReinUsesLisp1-8/+2
2020-02-28gl_state: Remove rasterizer disable trackingReinUsesLisp1-4/+4
2020-02-28gl_state: Remove viewport and depth range trackingReinUsesLisp1-17/+7
2020-02-28gl_state: Remove scissor test trackingReinUsesLisp1-23/+9
2020-02-28gl_state: Remove color mask trackingReinUsesLisp1-14/+11
2020-02-28gl_state: Remove clamp framebuffer color trackingReinUsesLisp1-4/+6
2020-02-28gl_state: Remove multisample trackingReinUsesLisp1-2/+2
2020-02-28gl_state: Remove framebuffer sRGB trackingReinUsesLisp1-1/+9
2020-02-28gl_state: Remove VAO cache and trackingReinUsesLisp1-63/+37
2020-02-28gl_state: Remove depth clamp trackingReinUsesLisp1-2/+10
2020-02-28gl_state: Remove depth trackingReinUsesLisp1-12/+6
2020-02-28gl_state: Remove primitive restart trackingReinUsesLisp1-2/+2
2020-02-28gl_state: Remove logic op trackerReinUsesLisp1-9/+4
2020-02-28gl_state: Remove blend color trackingReinUsesLisp1-4/+1
2020-02-28gl_state: Remove polygon offset trackingReinUsesLisp1-6/+5
2020-02-28gl_state: Remove alpha test trackingReinUsesLisp1-5/+3
2020-02-28gl_state: Remove cull mode trackingReinUsesLisp1-4/+2
2020-02-28gl_state: Remove front face trackingReinUsesLisp1-1/+1
2020-02-28gl_state: Remove point size trackingReinUsesLisp1-6/+4
2020-02-28gl_rasterizer: Add oglEnablei helperReinUsesLisp1-0/+4
2020-02-28gl_rasterizer: Add OpenGL enable/disable helperReinUsesLisp1-0/+4
2020-02-28gl_rasterizer: Remove dirty flagsReinUsesLisp1-68/+2
2020-02-24shader: Simplify indexed sampler usagesReinUsesLisp1-19/+7
2020-02-14maxwell_3d: Unify draw methodsReinUsesLisp1-10/+0
2020-02-14gl_query_cache: Optimize query cacheReinUsesLisp1-2/+3
2020-02-14gl_query_cache: Implement host queries using a deferred cacheReinUsesLisp1-20/+10
2020-02-14gl_rasterizer: Add queued commands counterReinUsesLisp1-0/+13
2020-02-14maxwell_3d: Slow implementation of passed samples (query 21)ReinUsesLisp1-0/+24
2020-02-14gl_rasterizer: Use the least generic OpenGL draw function possibleReinUsesLisp1-8/+28
2020-02-04gl_rasterizer: Implement GL_POINT_SPRITEReinUsesLisp1-0/+1
2020-01-30gl_rasterizer: Fix instanced draw arraysReinUsesLisp1-100/+27
2020-01-24GL Backend: Introduce indexed samplers into the GL backendFernando Sahmkow1-7/+27
2020-01-18gl_state: Use bool instead of GLbooleanReinUsesLisp1-1/+1
2020-01-15gl_state: Implement PROGRAM_POINT_SIZEReinUsesLisp1-0/+1
2019-12-26gl_rasterizer: Allow rendering without fragment shaderReinUsesLisp1-0/+3
2019-12-18gl_rasterizer: Implement RASTERIZE_ENABLEReinUsesLisp1-0/+7
2019-12-11Gl_Rasterizer: Skip Tesselation Control and Eval stages as they are un implemented.Fernando Sahmkow1-0/+8
2019-12-11Maxwell3D: Implement Depth Mode.Fernando Sahmkow1-0/+4
2019-11-29gl_framebuffer_cache: Optimize framebuffer keyReinUsesLisp1-18/+12
2019-11-29gl_rasterizer: Re-enable framebuffer cache for clear buffersReinUsesLisp1-28/+13
2019-11-27core/memory: Migrate over GetPointer()Lioncash1-1/+2
2019-11-27core: Prepare various classes for memory read/write migrationLioncash1-2/+3
2019-11-23gl_rasterizer: Disable compute shaders on IntelReinUsesLisp1-0/+4
2019-11-23gl_shader_decompiler: Normalize image bindingsReinUsesLisp1-20/+9
2019-11-23gl_shader_decompiler: Normalize cbuf bindingsReinUsesLisp1-2/+2
2019-11-23gl_rasterizer: Add missing cbuf counter reset on computeReinUsesLisp1-0/+2
2019-11-23gl_shader_cache: Remove dynamic BaseBinding specializationReinUsesLisp1-49/+45
2019-11-23video_core: Unify ProgramType and ShaderStage into ShaderTypeReinUsesLisp1-14/+12
2019-11-23gl_rasterizer: Bind graphics images to draw commandsReinUsesLisp1-32/+48
2019-11-23gl_shader_cache: Specialize local memory size for compute shadersReinUsesLisp1-1/+2
2019-11-23gl_shader_cache: Specialize shared memory sizeReinUsesLisp1-1/+1
2019-11-23gl_shader_cache: Specialize shader workgroupReinUsesLisp1-14/+7
2019-11-23shader/texture: Deduce texture buffers from lockerReinUsesLisp1-30/+15
2019-11-08video_core: Silence implicit conversion warningsReinUsesLisp1-1/+1
2019-11-07gl_rasterizer: Remove front facing hackReinUsesLisp1-12/+0
2019-11-07gl_rasterizer: Emulate viewport flipping with ARB_clip_controlReinUsesLisp1-22/+28
2019-11-02gl_rasterizer: Re-enable stream buffer memory due to global memoryReinUsesLisp1-14/+8
2019-11-02gl_rasterizer: Upload constant buffers with glNamedBufferSubDataReinUsesLisp1-10/+19
2019-10-30gl_state: Remove ApplyDefaultStateReinUsesLisp1-2/+0
2019-10-30shader/node: Unpack bindless texture encodingReinUsesLisp1-12/+7
2019-10-28maxwell_3d/kepler_compute: Remove unused arguments in GetTextureReinUsesLisp1-6/+6
2019-10-27rasterizer_accelerated: Add intermediary for GPU rasterizersReinUsesLisp1-36/+0
2019-10-25Shader_Cache: setup connection of ConstBufferLockerFernando Sahmkow1-2/+4
2019-10-25VideoCore: Unify const buffer accessing along engines and provide ConstBufferLocker class to shaders.Fernando Sahmkow1-3/+4
2019-10-05Gl_Rasterizer: Protect CPU Memory mapping from multiple threads.Fernando Sahmkow1-0/+1
2019-10-01gl_rasterizer: Fix polygon offset unitsReinUsesLisp1-1/+3
2019-09-22Maxwell3D: Corrections and refactors to MME instance refactorFernando Sahmkow1-10/+2
2019-09-20Rasterizer: Correct introduced bug where a conditional render wouldn't stop a draw call from executingFernando Sahmkow1-10/+16
2019-09-19Rasterizer: Refactor and simplify DrawBatch Interface.Fernando Sahmkow1-19/+10
2019-09-19Rasterizer: Address Feedback and conscerns.Fernando Sahmkow1-11/+11
2019-09-19Rasterizer: Refactor draw calls, remove deadcode and clean up.Fernando Sahmkow1-103/+66
2019-09-19VideoCore: Corrections to the MME Inliner and removal of hacky instance management.Fernando Sahmkow1-20/+18
2019-09-19Video Core: initial Implementation of InstanceDraw PackagingFernando Sahmkow1-8/+81
2019-09-17gl_rasterizer: Remove unused code paths from ConfigureFramebuffersReinUsesLisp1-68/+20
2019-09-11gl_rasterizer: Correct sRGB Fix regressionFernando Sahmkow1-0/+12
2019-09-11renderer_opengl: Fix sRGB blitsReinUsesLisp1-20/+1
2019-09-06gl_shader_decompiler: Keep track of written images and mark them as modifiedReinUsesLisp1-0/+3
2019-09-06gl_rasterizer: Apply textures and images stateReinUsesLisp1-0/+2
2019-09-06gl_rasterizer: Add samplers to compute dispatchesReinUsesLisp1-3/+33
2019-09-06gl_rasterizer: Minor code changesReinUsesLisp1-18/+25
2019-09-06gl_state: Split textures and samplers into two arraysReinUsesLisp1-5/+4
2019-09-06gl_rasterizer: Implement image bindingsReinUsesLisp1-2/+7
2019-09-06texture_cache: Pass TIC to texture cacheReinUsesLisp1-1/+1
2019-09-06kepler_compute: Implement texture queriesReinUsesLisp1-1/+21
2019-09-06gl_rasterizer: Split SetupTexturesReinUsesLisp1-20/+30
2019-09-04gl_rasterizer: Fix stencil testingReinUsesLisp1-11/+11
2019-08-30video_core: Silent miscellaneous warnings (#2820)Rodrigo Locatti1-2/+0
2019-08-21Video_Core: Implement a new Buffer CacheFernando Sahmkow1-1/+1
2019-07-26GPU: Flush commands on every dma pusher step.Fernando Sahmkow1-0/+4
2019-07-20Maxwell3D: Reorganize and address feedbackFernando Sahmkow1-18/+27
2019-07-17GL_State: Feedback and fixesFernando Sahmkow1-5/+5
2019-07-17Maxwell3D: Address FeedbackFernando Sahmkow1-1/+1
2019-07-17GL_Rasterizer: Corrections to Clearing.Fernando Sahmkow1-6/+6
2019-07-17GL_Rasterizer: Rework RenderTarget/DepthBuffer clearingFernando Sahmkow1-6/+58
2019-07-17Maxwell3D: Implement State Dirty Flags.Fernando Sahmkow1-31/+55
2019-07-17Maxwell3D: Rework the dirty system to be more consistant and scaleableFernando Sahmkow1-12/+41
2019-07-17maxwell3d: Implement Conditional RenderingFernando Sahmkow1-1/+12
2019-07-15gl_shader_cache: Address review commentariesReinUsesLisp1-0/+2
2019-07-15gl_rasterizer: Implement compute shadersReinUsesLisp1-15/+82
2019-07-06gl_rasterizer: Fix nullptr dereference on disabled buffersReinUsesLisp1-1/+1
2019-07-06gl_rasterizer: Minor style changesReinUsesLisp1-26/+20
2019-07-06gl_rasterizer: Fix vertex and index data invalidationsReinUsesLisp1-7/+7
2019-07-06gl_buffer_cache: Implement with generic buffer cacheReinUsesLisp1-15/+25
2019-07-06gl_buffer_cache: Remove global system gettersReinUsesLisp1-3/+2
2019-07-06gl_rasterizer: Drop gl_global_cache in favor of gl_buffer_cacheReinUsesLisp1-10/+17
2019-07-06gl_buffer_cache: Rework to support internalized buffersReinUsesLisp1-1/+1
2019-07-06gl_buffer_cache: Return used buffer from Upload functionReinUsesLisp1-15/+15
2019-07-06gl_rasterizer: Add some commentariesReinUsesLisp1-0/+5
2019-07-06gl_rasterizer: Make DrawParameters rasterizer instance constReinUsesLisp1-1/+1
2019-07-06gl_rasterizer: Move index buffer uploading to its own methodReinUsesLisp1-6/+15
2019-06-25texture_cache: Query MemoryManager from the systemFernando Sahmkow1-4/+0
2019-06-21texture_cache: Implement texception detection and texture barriers.Fernando Sahmkow1-2/+8
2019-06-21texture_cache: Implement Buffer Copy and detect Turing GPUs Image CopiesFernando Sahmkow1-1/+1
2019-06-21Fix rebase errorsFernando Sahmkow1-2/+8
2019-06-21texture_cache: Fermi2D reform and implement View MirageFernando Sahmkow1-3/+2
2019-06-21gl_rasterizer: Track texture buffer usageReinUsesLisp1-13/+21
2019-06-21video_core: Make ARB_buffer_storage a required extensionReinUsesLisp1-5/+0
2019-06-21texture_cache: Implement Guard mechanismFernando Sahmkow1-0/+4
2019-06-21gl_framebuffer_cache: Use a hashed struct to cache framebuffersReinUsesLisp1-57/+2
2019-06-21texture_cache return invalid buffer on deactivated color_maskFernando Sahmkow1-2/+4
2019-06-21Remove Framebuffer reconfiguration and restrict rendertarget protectionFernando Sahmkow1-10/+6
2019-06-21texture_cache: Correct premature texceptionsFernando Sahmkow1-5/+10
2019-06-21texture_cache: Implement guest flushingFernando Sahmkow1-2/+4
2019-06-21Texture Cache: Implement Blitting and Fermi CopiesFernando Sahmkow1-3/+1
2019-06-21Change texture_cache chaching from GPUAddr to CacheAddrFernando Sahmkow1-16/+0
2019-06-21Implement Texture Cache V2Fernando Sahmkow1-22/+47
2019-06-21gl_texture_cache: Implement fermi copiesReinUsesLisp1-2/+3
2019-06-21gl_texture_cache: Minor changesReinUsesLisp1-4/+4
2019-06-21gl_texture_cache: Attach surface textures instead of viewsReinUsesLisp1-13/+9
2019-06-21gl_texture_cache: Initial implementationReinUsesLisp1-33/+33
2019-06-08gl_rasterizer: Remove unused parameters in descriptor uploadsReinUsesLisp1-5/+4
2019-06-08video_core/engines: Move ConstBufferInfo out of Maxwell3DReinUsesLisp1-37/+36
2019-05-30gl_rasterizer: Move alpha testing to the OpenGL pipelineReinUsesLisp1-5/+9
2019-05-30gl_rasterizer: Use GL_QUADS to emulate quads renderingReinUsesLisp1-34/+3
2019-05-21gl_shader_cache: Use shared contexts to build shaders in parallelReinUsesLisp1-3/+5
2019-05-18gl_rasterizer: Limit OpenGL point size to a minimum of 1ReinUsesLisp1-1/+3
2019-05-17gl_rasterizer: Pass the right number of array quad vertices countReinUsesLisp1-2/+2
2019-05-04gl_rasterizer: Silence unused variable warningLioncash1-2/+2
2019-04-18video_core: Silent -Wswitch warningsReinUsesLisp1-0/+2
2019-04-14gl_shader_decompiler: Use variable AOFFI on supported hardwareReinUsesLisp1-3/+1
2019-04-14shader_ir: Implement STG, keep track of global memory usage and flushReinUsesLisp1-0/+4
2019-04-10gl_rasterizer: Apply just the needed state on ClearReinUsesLisp1-4/+4
2019-04-10gl_device: Implement interface and add uniform offset alignmentReinUsesLisp1-12/+13
2019-04-08Move ConstBufferAccessor to Maxwell3d, correct mistakes and clang format.Fernando Sahmkow1-6/+4
2019-04-08Fix bad rebaseFernando Sahmkow1-2/+1
2019-04-08Simplify ConstBufferAccessorFernando Sahmkow1-2/+4
2019-04-08Fixes to Const Buffer Accessor and FormattingFernando Sahmkow1-2/+1
2019-04-08Implement Bindless Handling on SetupTextureFernando Sahmkow1-1/+9
2019-04-08Implement Const Buffer AccessorFernando Sahmkow1-2/+4
2019-04-06gl_rasterizer: Use ARB_multi_bind to update SSBOsReinUsesLisp1-9/+8
2019-04-06gl_rasterizer: Use ARB_multi_bind to update UBOs across stagesReinUsesLisp1-22/+10
2019-04-04video_core/renderer_opengl: Remove unnecessary includesLioncash1-2/+0
2019-04-02gl_sampler_cache: Port sampler cache to OpenGLReinUsesLisp1-93/+1
2019-03-28gl_shader_manager: Remove reliance on global accessor within MaxwellUniformData::SetFromRegs()Lioncash1-1/+1
2019-03-27gl_rasterizer: Remove unused reference member variable from RasterizerOpenGLLioncash1-5/+3
2019-03-21gpu: Move GPUVAddr definition to common_types.bunnei1-4/+4
2019-03-17gl_rasterizer: Skip zero addr/sized regions on flush/invalidate.bunnei1-0/+6
2019-03-15gpu: Use host address for caching instead of guest address.bunnei1-5/+5
2019-03-11gl_rasterizer: Use system instance passed from argumentReinUsesLisp1-29/+30
2019-03-09gl_rasterizer: Encapsulate sampler queries into methodsReinUsesLisp1-57/+40
2019-03-09gl_rasterizer: Minor logger changesReinUsesLisp1-19/+13
2019-03-07gpu: Always flush.bunnei1-5/+1
2019-02-28gl_rasterizer: Remove texture unbinding after dispatching a draw callReinUsesLisp1-12/+0
2019-02-28Remove certain optimizations that caused texception to fail in certain scenarios.Fernando Sahmkow1-3/+0
2019-02-28rasterizer_cache_gl: Implement Texception PassFernando Sahmkow1-0/+7
2019-02-27gl_rasterizer_cache: Create texture views for array discrepanciesReinUsesLisp1-3/+2
2019-02-27gl_rasterizer: Reorder constructor initializer list in terms of member declaration orderLioncash1-2/+2
2019-02-27common/math_util: Move contents into the Common namespaceLioncash1-3/+3
2019-02-26maxwell_3d: Use std::bitset to manage dirty flagsReinUsesLisp1-9/+9
2019-02-07gl_rasterizer: Implement a more accurate fermi 2D copy.bunnei1-8/+4
2019-02-07gl_shader_cache: Link loading screen with disk shader cache loadReinUsesLisp1-3/+4
2019-02-07gl_shader_disk_cache: Pass core system as argument and guard against games without title idsReinUsesLisp1-2/+3
2019-02-07gl_shader_disk_cache: Save GLSL and entries into the precompiled fileReinUsesLisp1-5/+3
2019-02-07rasterizer_interface: Add disk cache entry for the rasterizerReinUsesLisp1-0/+5
2019-02-03maxwell_3d: Allow texture handles with TIC id zeroReinUsesLisp1-4/+0
2019-02-01rasterizer_interface: Remove unused AccelerateFill operationReinUsesLisp1-5/+0
2019-01-30gl_state: Remove texture target trackingReinUsesLisp1-3/+0
2019-01-30gl_rasterizer_cache: Move swizzling to textures instead of stateReinUsesLisp1-5/+5
2019-01-30shader_ir: Unify constant buffer offset valuesReinUsesLisp1-1/+1
2019-01-30gl_shader_cache: Use explicit bindingsReinUsesLisp1-81/+49
2019-01-30gl_rasterizer: Implement global memory managementReinUsesLisp1-0/+22
2019-01-30gl_rasterizer: Workaround invalid zeta clearsReinUsesLisp1-11/+13
2019-01-24frontend: Refactor ScopeAcquireWindowContext out of renderer_opengl.bunnei1-4/+0
2019-01-22maxwell_3d: Set rt_separate_frag_data to 1 by defaultReinUsesLisp1-4/+1
2019-01-18gl_rasterizer: Silent unsafe mix warningReinUsesLisp1-1/+1
2019-01-15video_core: Replace gl_shader_decompilerReinUsesLisp1-2/+2
2019-01-09gl_rasterizer: Workaround Intel VAO DSA bugReinUsesLisp1-0/+6
2019-01-08gl_global_cache: Add dummy global cache managerReinUsesLisp1-1/+2
2019-01-07gl_rasterizer: Skip framebuffer configuration if rendertargets have not been changedReinUsesLisp1-1/+13
2019-01-07gl_shader_cache: Use dirty flags for shadersReinUsesLisp1-1/+3
2019-01-06gl_rasterizer: Use DSA for vertex array objectsReinUsesLisp1-34/+28
2018-12-30gl_rasterizer_cache: Texture view if shader samples array but OGL is notReinUsesLisp1-2/+5
2018-11-29gl_rasterizer: Enable clip distances when set in register and in shaderReinUsesLisp1-11/+24
2018-11-29gl_rasterizer: Implement a framebuffer cacheReinUsesLisp1-39/+77
2018-11-29gl_rasterizer: Signal UNIMPLEMENTED when rt_separate_frag_data is not zeroReinUsesLisp1-1/+1
2018-11-29gl_rasterizer: Remove extension booleansReinUsesLisp1-13/+0
2018-11-27gl_rasterizer: Fixup for #1723.Markus Wick1-1/+1
2018-11-27remove viewport_transform_enabled as it seems to be inactive when valid transforms are used.Rodolfo Bogado1-12/+5
2018-11-27Implement depth clampRodolfo Bogado1-0/+16
2018-11-27Add support for Clip Distance enabled registerRodolfo Bogado1-1/+10
2018-11-27GPU States: Implement Polygon Offset. This is used in SMO all the time. (#1784)Marcos1-1/+11
2018-11-25Limit the amount of viewports tested for state changes only to the usable onesRodolfo Bogado1-2/+10
2018-11-24Add support for viewport_transfom_enable registerRodolfo Bogado1-5/+13
2018-11-24Add support for clear_flags registerRodolfo Bogado1-6/+38
2018-11-21Removed pre 4.3 ARB extensionsFernandoS271-5/+0
2018-11-19gl_rasterizer: Remove default clip distanceReinUsesLisp1-2/+0
2018-11-18drop support for non separate alpha as it seems to cause issues in some gamesRodolfo Bogado1-18/+16
2018-11-17fix sampler configuration, thanks to Marcos for his investigationRodolfo Bogado1-17/+38
2018-11-17small type fixRodolfo Bogado1-6/+6
2018-11-17add AlphaToCoverage and AlphaToOneRodolfo Bogado1-0/+7
2018-11-17add support for fragment_color_clampRodolfo Bogado1-0/+6
2018-11-17set border color not depending on the wrap modeRodolfo Bogado1-9/+9
2018-11-17set default value for point size registerRodolfo Bogado1-5/+1
2018-11-17fix viewport and scissor behaviorRodolfo Bogado1-16/+17
2018-11-17gl_rasterizer: Skip VB upload if the state is clean.Markus Wick1-4/+20
2018-11-11Use core extensions when available to set max anisotropic filtering levelRodolfo Bogado1-2/+7
2018-11-11Improve state management by splitting some of the states id separated function to avoid a full apply overheadRodolfo Bogado1-31/+23
2018-11-11Try to fix problems with stencil test in some games, relax translation to opengl enums to avoid crashing and only generate logs of the errors.Rodolfo Bogado1-4/+10
2018-11-11set sampler max lod, min lod, lod bias and max anisotropyRodolfo Bogado1-10/+21
2018-11-08gl_rasterizer: Fix compiler warningsFrederic Laing1-2/+2
2018-11-08rasterizer_cache: Remove reliance on the System singletonLioncash1-1/+2
2018-11-06gl_rasterizer: Skip VAO binding if the state is clean.Markus Wick1-2/+7
2018-11-06gl_rasterizer: Split VAO and VB setup functions.Markus Wick1-4/+14
2018-11-05Add support to color mask to avoid issues in blending caused by wrong values in the alpha channel in some render targets.Rodolfo Bogado1-5/+18
2018-11-05Implement multi-target viewports and blendingRodolfo Bogado1-39/+56
2018-10-31Improve OpenGL state handlingRodolfo Bogado1-3/+1
2018-10-30video_core: Move surface declarations out of gl_rasterizer_cacheReinUsesLisp1-3/+4
2018-10-30global: Use std::optional instead of boost::optional (#1578)Frederic L1-1/+1
2018-10-29Implement Mip FilterFernandoS271-3/+7
2018-10-28Implement sRGB Support, including workarounds for nvidia driver issues and QT sRGB supportRodolfo Bogado1-1/+12
2018-10-26gl_rasterizer: Implement primitive restart.bunnei1-0/+8
2018-10-26gl_rasterizer: Implement depth range.bunnei1-5/+5
2018-10-22Assert that multiple render targets are not set while alpha testingFernandoS271-0/+12
2018-10-22Use standard UBO and fix/stylize the codeFernandoS271-15/+0
2018-10-22Cache uniform locations and restructure the implementationFernandoS271-22/+4
2018-10-22Remove SyncAlphaTest and clang formatFernandoS271-2/+5
2018-10-22Added Alpha FuncFernandoS271-1/+9
2018-10-22Implemented Alpha TestingFernandoS271-0/+11
2018-10-19fermi_2d: Add support for more accurate surface copies.bunnei1-0/+6
2018-10-16config: Rename use_accurate_framebuffers -> use_accurate_gpu_emulation.bunnei1-2/+2
2018-10-16rasterizer_cache: Refactor to support in-order flushing.bunnei1-6/+3
2018-10-16gl_rasterizer_cache: Only flush when use_accurate_framebuffers is enabled.bunnei1-1/+6
2018-10-16gl_rasterizer: Implement flushing.bunnei1-1/+25
2018-10-15gl_rasterizer: Silence implicit cast warning in glBindBufferRangeReinUsesLisp1-1/+2
2018-10-09Implement Scissor TestFernandoS271-4/+9
2018-10-09Assert Scissor testsFernandoS271-0/+12
2018-10-07gl_shader_decompiler: Implement geometry shadersReinUsesLisp1-14/+26
2018-10-07gl_rasterizer: Fixup undefined behaviour in SetupDrawReinUsesLisp1-0/+1
2018-10-06Implemented Depth Compare and Shadow SamplersFernandoS271-0/+18
2018-10-06gl_rasterizer: Add rasterizer cache code to handle accerated fermi copies.bunnei1-7/+3
2018-10-04gl_rasterizer: Implement quads topologyReinUsesLisp1-43/+103
2018-10-01gl_rasterizer: Fixup unassigned point sizesReinUsesLisp1-1/+4
2018-09-30gl_rasterizer_cache: Workaround for Texture2D -> Texture2DArray scenario.bunnei1-1/+1
2018-09-28video_core: Implement point_size and add point state syncReinUsesLisp1-0/+7
2018-09-26video_core: Add asserts for CS, TFB and alpha testingReinUsesLisp1-0/+22
2018-09-21RasterizerGL: Use the correct framebuffer when clearing via the CLEAR_BUFFERS register.Subv1-1/+1
2018-09-19gl_rasterizer: Fix StartAddress handling with indexed draw calls.Markus Wick1-6/+7
2018-09-15Port #4182 from Citra: "Prefix all size_t with std::"fearlessTobi1-15/+15
2018-09-13Use ARB_multi_bind for uniform buffers (#1287)ReinUsesLisp1-3/+22
2018-09-10rasterizer: Drop unused handler.Markus Wick1-2/+0
2018-09-10gl_rasterizer: Implement clear for non-zero render targets.bunnei1-48/+55
2018-09-10gl_rasterizer: Implement multiple color attachments.bunnei1-69/+45
2018-09-08gl_rasterizer: Use baseInstance instead of moving the buffer points.bunnei1-21/+25
2018-09-08video_core: Arithmetic overflow warning fix for gl_rasterizer (#1262)Patrick Elsässer1-12/+14
2018-09-08gl_rasterizer: Implement texture wrap mode p.bunnei1-2/+7
2018-09-08gl_rasterizer_cache: Keep track of texture type per surface.bunnei1-0/+1
2018-09-08gl_state: Keep track of texture target.bunnei1-3/+3
2018-09-06gl_rasterizer: Call state.Apply only once on SetupShaders.bunnei1-4/+2
2018-09-05gl_rasterizer: Implement a VAO cache.Markus Wick1-48/+48
2018-09-05renderer_opengl: Implement a buffer cache.Markus Wick1-74/+27
2018-09-04gl_shader_cache: Use an u32 for the binding point cache.Markus Wick1-2/+2
2018-09-04Update microprofile scopes.Markus Wick1-3/+11
2018-08-31gl_rasterizer_cache: Use accurate framebuffer setting for accurate copies.bunnei1-20/+0
2018-08-31gl_renderer: Cache textures, framebuffers, and shaders based on CPU address.bunnei1-11/+8
2018-08-31gl_rasterizer: Fix issues with the rasterizer cache.bunnei1-0/+38
2018-08-28gpu: Make memory_manager privateLioncash1-2/+2
2018-08-28gl_rasterizer: Remove unused variablesLioncash1-2/+0
2018-08-28renderer_opengl: Implement a new shader cache.bunnei1-59/+25
2018-08-28gl_rasterizer_cache: Update to use RasterizerCache base class.bunnei1-4/+1
2018-08-24gl_rasterizer: Correct assertion condition in SyncLogicOpState()Lioncash1-1/+2
2018-08-23gl_rasterizer: Implement stencil test.bunnei1-4/+31
2018-08-23gl_rasterizer: Implement partial color clear and stencil clear.bunnei1-12/+42
2018-08-22gl_shader_gen: Use a std::vector to represent program code instead of std::arrayLioncash1-1/+1
2018-08-22renderer_opengl: Namespace OpenGL codeLioncash1-0/+4
2018-08-21GPU: Implemented the logic op functionality of the GPU.Subv1-0/+18
2018-08-21rasterizer_interface: Remove ScreenInfo from AccelerateDraw()'s signatureLioncash1-4/+3
2018-08-20Rasterizer: Don't attempt to copy over the old texture's data when doing a format reinterpretation if we're only going to clear the framebuffer.Subv1-4/+5
2018-08-18GLRasterizer: Implemented instanced vertex arrays.Subv1-3/+16
2018-08-15Rasterizer: Implemented instanced rendering.Subv1-1/+1
2018-08-15gl_rasterizer: Fix upload size for constant buffers.bunnei1-3/+3
2018-08-12gl_rasterizer: Use a shared helper to upload from CPU memory.Markus Wick1-28/+29
2018-08-12gl_state: Don't track constant buffer mappings.Markus Wick1-15/+3
2018-08-12gl_rasterizer: Use the stream buffer for constant buffers.Markus Wick1-20/+19
2018-08-12gl_rasterizer: Use the streaming buffer itself for the constant buffer.Markus Wick1-31/+14
2018-08-12gl_rasterizer: Use a helper for aligning the buffer.Markus Wick1-14/+19
2018-08-12Update the stream_buffer helper from Citra.Markus Wick1-22/+14
2018-08-12RasterizerGL: Ignore invalid/unset vertex attributes.Subv1-1/+6
2018-08-12gl_rasterizer: Silence implicit truncation warning in SetupShaders()Lioncash1-1/+1
2018-08-12core: Namespace EmuWindowLioncash1-1/+1
2018-08-10Revert "gl_state: Temporarily disable culling and depth test."bunnei1-3/+1
2018-08-10gl_rasterizer_cache: Remove unused viewport parameter of GetFramebufferSurfaces()Lioncash1-4/+3
2018-08-09gl_rasterizer: Do not render when no render target is configured.bunnei1-0/+5
2018-08-08maxwell_3d: Use correct const buffer size and check bounds.bunnei1-1/+4
2018-08-08renderer_opengl: Use trace log in a few places.bunnei1-1/+1
2018-08-05added braces for conditionsDavid Marcec1-2/+3
2018-08-05fix the attrib format for intsDavid Marcec1-2/+7
2018-08-02video_core: Make global EmuWindow instance part of the base renderer classLioncash1-4/+3
2018-07-24gl_rasterizer: Replace magic number with GL_INVALID_INDEX in SetupConstBuffers()Lioncash1-3/+5
2018-07-24gl_rasterizer: Use std::string_view instead of std::string when checking for extensionsLioncash1-1/+3
2018-07-24gl_rasterizer: Use in-class member initializers where applicableLioncash1-7/+0
2018-07-24gl_rasterizer: Implement texture border color.bunnei1-3/+6
2018-07-22gl_rasterizer_cache: Use GPUVAddr as cache key, not parameter set.bunnei1-10/+14
2018-07-22gl_rasterizer: Use zeta_enable register to enable depth buffer.bunnei1-2/+2
2018-07-21gpu: Rename Get3DEngine() to Maxwell3D()Lioncash1-5/+5
2018-07-19gl_state: Temporarily disable culling and depth test.bunnei1-1/+3
2018-07-19core: Don't construct instance of Core::System, just to access its live instanceLioncash1-13/+13
2018-07-14OpenGL: Use MakeCurrent/DoneCurrent for multithreaded rendering.bunnei1-0/+6
2018-07-14GPU: Always enable the depth write when clearing the depth buffer.Subv1-3/+8
2018-07-13gl_rasterizer: Fix check for if a shader stage is enabled.bunnei1-11/+3
2018-07-13gl_shader_gen: Implement dual vertex shader mode.bunnei1-10/+33
2018-07-08gl_rasterizer: Flip triangles when regs.viewport_transform[0].scale_y is negative.bunnei1-1/+4
2018-07-04GPU: Ignore textures that the GLSL compiler deemed unused when binding textures to the shaders.Subv1-1/+4
2018-07-04GPU: Flip the triangle front face winding if the GPU is configured to not flip the triangles.Subv1-0/+10
2018-07-04GPU: Only configure the used framebuffers during clear.Subv1-7/+13
2018-07-03GPU: Factor out the framebuffer configuration code for both Clear and Draw commands.Subv1-72/+34
2018-07-03GPU: Support clears that don't clear the color buffer.Subv1-4/+14
2018-07-03GPU: Bind and clear the render target when the CLEAR_BUFFERS register is written to.Subv1-0/+71
2018-07-03gl_rasterizer: Only set cull mode and front face if enabled.bunnei1-2/+5
2018-07-03GPU: Don't try to parse the depth test function if the depth test is disabled.Subv1-0/+4
2018-07-03Update clang formatJames Rowe1-5/+5
2018-07-03Rename logging macro back to LOG_*James Rowe1-4/+4
2018-07-03GPU: Set up the culling configuration on each draw.Subv1-6/+8
2018-07-02GPU: Set up the depth test state on every draw.Subv1-0/+11
2018-07-02GPU: Implemented the Z24S8 depth format and load the depth framebuffer.Subv1-1/+3
2018-07-02GPU: Implement offsetted rendering when using non-indexed drawing.Subv1-1/+1
2018-07-02GPU: Fixed the index offset rendering, and implemented the base vertex functionality.Subv1-6/+8
2018-07-02GPU: Ignore disabled textures and textures with an invalid address.Subv1-1/+5
2018-06-27gl_rasterizer_cache: Implement caching for texture and framebuffer surfaces.bunnei1-6/+19
2018-06-27gl_rasterizer: Implement AccelerateDisplay to forward textures to framebuffers.bunnei1-3/+22
2018-06-27gl_rasterizer_cache: Remove Citra's rasterizer cache, always load/flush surfaces.bunnei1-91/+26
2018-06-27gl_rasterizer: Workaround for when exceeding max UBO size.bunnei1-0/+6
2018-06-26gl_state: Fix state management for texture swizzle.bunnei1-1/+1
2018-06-20Build: Fixed some MSVC warnings in various parts of the code.Subv1-2/+2
2018-06-18gl_rasterizer: Get loose on independent blending.Jules Blok1-1/+1
2018-06-10Rasterizer: Use UBOs instead of SSBOs for uploading const buffers.Subv1-11/+17
2018-06-09GPU: Synchronize the blend state on every draw call.Subv1-8/+18
2018-06-09GPU: Added registers for normal and independent blending.Subv1-26/+1
2018-06-08Rasterizer: Flush the written region when writing shader uniform data before copying it to the uniform buffers.Subv1-0/+3
2018-06-07GLRenderer: Write the shader stage configuration UBO data *before* copying it to the GPU.Subv1-3/+4
2018-06-07GPU: Support changing the texture swizzles for Maxwell textures.Subv1-0/+8
2018-06-07gl_shader_gen: Add uniform handling for indirect const buffer access.bunnei1-1/+10
2018-06-06GPU: Implement sampling multiple textures in the generated glsl shaders.Subv1-37/+46
2018-06-04GPU: Calculate the correct viewport dimensions based on the scale and translate registers.Subv1-2/+2
2018-05-19GLRenderer: Remove unused hw_vao_enabled_attributes variable.Subv1-3/+0
2018-05-19GLRenderer: Remove unused vertex buffer and increase the size of the stream buffer to 128 MB.Subv1-4/+1
2018-05-02general: Make formatting of logged hex values more straightforwardLioncash1-1/+1
2018-04-25video-core: Move logging macros over to new fmt-capable onesLioncash1-3/+3
2018-04-25gl_rasterizer_cache: Add a function for finding framebuffer GPU address.bunnei1-0/+1
2018-04-25gl_rasterizer_cache: Update to be based on GPU addresses, not CPU addresses.bunnei1-7/+6
2018-04-24memory_manager: Make GpuToCpuAddress return an optional.bunnei1-7/+7
2018-04-24memory_manager: Use GPUVAdddr, not PAddr, for GPU addresses.bunnei1-3/+3
2018-04-23GPU: Support multiple enabled vertex arrays.Subv1-40/+81
2018-04-21opengl: Remove unnecessary header inclusionsLioncash1-1/+0
2018-04-20math_util: Remove the Clamp() functionLioncash1-12/+13
2018-04-18GLCache: Added boilerplate code to make supporting configurable texture component types.Subv1-0/+2
2018-04-18GLCache: Take into account the texture's block height when caching and unswizzling.Subv1-1/+2
2018-04-18renderer_opengl: Implement BlendEquation and BlendFunc.bunnei1-1/+26
2018-04-17gl_rendering: Use NGLOG* for changed code.bunnei1-3/+3
2018-04-17gl_rasterizer: Implement indexed vertex mode.bunnei1-19/+31
2018-04-15GPU: Use the same buffer names in the generated GLSL and the buffer uploading code.Subv1-10/+7
2018-04-15GPU: Don't use explicit binding points when uploading the constbuffers to opengl.Subv1-5/+25
2018-04-15GPU: Don't use GetPointer when uploading the constbuffer data to the GPU.Subv1-3/+4
2018-04-15GPU: Use the buffer hints from the shader decompiler to upload only the necessary const buffers for each shader stage.Subv1-29/+38
2018-04-15GPU: Upload the entirety of each constbuffer for each shader stage as SSBOs.Subv1-1/+38
2018-04-15GPU: Allow configuring ssbos in the opengl state manager.Subv1-0/+8
2018-04-15GPU: Added a function to determine whether a shader stage is enabled or not.Subv1-3/+3
2018-04-14gl_rasterizer: Generate shaders and upload uniforms.bunnei1-28/+74
2018-04-14gl_rasterizer: Use shader program manager, remove test shader.bunnei1-143/+27
2018-04-14renderer_opengl: Use OGLProgram instead of OGLShader.bunnei1-1/+1
2018-04-07GL: Set up the textures used for each draw call.Subv1-2/+36
2018-04-07GL: Bind the textures to the shaders used for drawing.Subv1-2/+11
2018-04-07GL: Create the sampler objects when starting up the GL rasterizer.Subv1-0/+6
2018-04-07GL: Ported the SamplerInfo struct from citra.Subv1-0/+39
2018-03-27gl_rasterizer: Move code to bind framebuffer surfaces before draw to its own function.bunnei1-22/+27
2018-03-27gl_rasterizer: Add a SyncViewport method.bunnei1-18/+17
2018-03-27gl_rasterizer: Move PrimitiveTopology check to MaxwellToGL.bunnei1-11/+2
2018-03-27gl_rasterizer: Use ReadBlock instead of GetPointer for SetupVertexArray.bunnei1-1/+1
2018-03-27gl_rasterizer: Normalize vertex array data as appropriate.bunnei1-1/+1
2018-03-27rasterizer: Rename DrawTriangles to DrawArrays.bunnei1-2/+2
2018-03-27gl_rasterizer: Use passthrough shader for SetupVertexShader.bunnei1-1/+2
2018-03-27renderer_opengl: Logging, etc. cleanup.bunnei1-17/+18
2018-03-27gl_rasterizer: Implement SetupVertexArray.bunnei1-20/+38
2018-03-27gl_rasterizer: Use 32 texture units instead of 3.bunnei1-0/+1
2018-03-27gl_rasterizer: Implement DrawTriangles.bunnei1-1/+194
2018-03-27gl_rasterizer: Implement AnalyzeVertexArray.bunnei1-1/+21
2018-03-24gl_rasterizer: Fake render in green, because it's cooler.bunnei1-1/+1
2018-03-24gl_rasterizer: Log warning instead of sync'ing unimplemented funcs.bunnei1-7/+1
2018-03-23rasterizer: Flush and invalidate regions should be 64-bit.bunnei1-3/+3
2018-03-23gl_rasterizer: Implement AccelerateDisplay method from Citra.bunnei1-1/+33
2018-03-23video_core: Remove usage of PAddr and replace with VAddr.bunnei1-4/+4
2018-03-23video_core: Move FramebufferInfo to FramebufferConfig in GPU.bunnei1-2/+3
2018-03-23gl_rasterizer: Replace a bunch of UNIMPLEMENTED with ASSERT.bunnei1-15/+15
2018-03-23gl_rasterizer: Add a simple passthrough shader in lieu of shader generation.bunnei1-3/+56
2018-03-20renderer_gl: Port boilerplate rasterizer code over from Citra.bunnei1-0/+269
2018-01-13Remove references to PICA and rasterizers in video_coreJames Rowe1-1686/+0
2018-01-01core/video_core: Fix a bunch of u64 -> u32 warnings.bunnei1-2/+2
2017-09-17Fixed framebuffer warningHuw Pascoe1-7/+18
2017-08-25gl_rasterizer: implement custom clip planewwylele1-0/+28
2017-08-21gl_rasterizer: add clipping plane z<=0 defined in PICAwwylele1-0/+3
2017-07-01gl_rasterizer: use texture buffer for proctex LUTwwylele1-30/+35
2017-06-22gl_rasterizer: use texture buffer for fog LUTwwylele1-13/+12
2017-06-22gl_rasterizer: create the texture before applying the statewwylele1-2/+2
2017-06-21gl_rasterizer: fix glGetUniformLocation typewwylele1-8/+8
2017-06-21gl_rasterizer: manage texture ids in one placewwylele1-23/+24
2017-06-21gl_rasterizer/lighting: fix LUT interpolationwwylele1-49/+22
2017-06-10OpenGL: Update comment on AreQuaternionsOpposite with new informationYuri Kunde Schlesner1-8/+11
2017-05-30gl_rasterizer: sync spot light statuswwylele1-0/+45
2017-05-20gl_rasterizer: implement procedural texturewwylele1-0/+232
2017-05-05pica: shader_dirty if texture2 coord changedwwylele1-0/+4
2017-04-17OpenGL: Pass Pica regs via parameterYuri Kunde Schlesner1-1/+1
2017-04-17OpenGL: Move PicaShaderConfig to gl_shader_gen.hYuri Kunde Schlesner1-1/+1
2017-04-17OpenGL: Move Attributes enum to a more appropriate fileYuri Kunde Schlesner1-1/+0
2017-02-18OpenGL: Check if uniform block exists before updating it (#2581)Jannik Vogel1-29/+30
2017-02-09OpenGL: Remove unused duplicate of IsPassThroughTevStageYuri Kunde Schlesner1-12/+0
2017-02-09VideoCore: Split regs.h inclusionsYuri Kunde Schlesner1-1/+3
2017-02-04VideoCore: Move Regs to its own fileYuri Kunde Schlesner1-1/+1
2017-02-04VideoCore: Split framebuffer regs from Regs structYuri Kunde Schlesner1-49/+60
2017-02-04VideoCore: Split texturing regs from Regs structYuri Kunde Schlesner1-62/+67
2017-02-04VideoCore: Split rasterizer regs from Regs structYuri Kunde Schlesner1-25/+29
2017-01-30VideoCore: Change misleading register namesYuri Kunde Schlesner1-1/+1
2017-01-30video_core: gl_rasterizer.cpp removed unused type aliasKloen1-2/+0
2017-01-23video_core: gl_rasterizer float to int warningKloen1-1/+2
2016-12-19Use GL_TRUE when setting color_maskAlbin Bernhardsson1-4/+4
2016-12-15VideoCore: Make profiling scope more representativeYuri Kunde Schlesner1-0/+12
2016-12-07OpenGL: Drop framebuffer completeness check.Markus Wick1-16/+0
2016-12-05Report shader uniform block size in case of mismatchJannik Vogel1-1/+3
2016-12-04OpenGL: Non-zero stride only makes sense for linear buffersYuri Kunde Schlesner1-1/+1
2016-12-04OpenGL: Fix DisplayTransfer accel when input width != output widthYuri Kunde Schlesner1-1/+10
2016-11-30ClangFormat: Fixed the clang-format errorsSubv1-4/+8
2016-11-29Build: Fixed a few warnings.Subv1-4/+4
2016-11-27RasterizerGL: Use GL_TRUE and 0xFF in the stencil and depth masks instead of simply true and -1Subv1-2/+2
2016-11-27Rasterizer/Memfill: Set the correct stencil write mask when clearing the stencil buffer.Subv1-1/+1
2016-09-30OpenGL: Take cached viewport sub-rect into account for scissorYuri Kunde Schlesner1-21/+21
2016-09-29rasterizer: separate TextureCopy from DisplayTransferwwylele1-5/+5
2016-09-21Use negative priorities to avoid special-casing the self-includeYuri Kunde Schlesner1-1/+1
2016-09-21Remove empty newlines in #include blocks.Emmanuel Gil Peyrot1-5/+1
2016-09-19Manually tweak source formatting and then re-run clang-formatYuri Kunde Schlesner1-5/+5
2016-09-18Sources: Run clang-format on everything.Emmanuel Gil Peyrot1-86/+148
2016-06-28OpenGL: Add scaled resolution support to scissorYuri Kunde Schlesner1-0/+8
2016-06-28PICA: Scissor fixes and cleanupsYuri Kunde Schlesner1-10/+10
2016-06-28PICA: Implement scissor testSubv1-0/+26
2016-06-07OpenGL: Implement fogJannik Vogel1-0/+68
2016-05-23OpenGL: Set shader_dirty on lighting changesJannik Vogel1-0/+23
2016-05-23OpenGL: Use uniforms for dist_atten_bias and dist_atten_scaleJannik Vogel1-0/+72
2016-05-14OpenGL: Only update depth uniforms if the depth changedJannik Vogel1-7/+17
2016-05-12OpenGL: Support blend equationJannik Vogel1-0/+2
2016-05-11OpenGL: Implement texture type 3Jannik Vogel1-0/+8
2016-05-10OpenGL: Implement W-Buffers and fix depth-mappingJannik Vogel1-3/+8
2016-05-10Pica: Implement W-Buffer in SW rasterizerJannik Vogel1-2/+2
2016-05-07fixup simple type conversions where possibleAlexander Laties1-1/+1
2016-04-30OpenGL: border_color was never set. Fixed. (#1740)Jannik Vogel1-0/+1
2016-04-30VideoCore: Run include-what-you-use and fix most includes.Emmanuel Gil Peyrot1-6/+7
2016-04-29Common: Remove section measurement from profiler (#1731)Yuri Kunde Schlesner1-1/+0
2016-04-22HWRasterizer: sync specular uniform for new shaderstfarley1-0/+2
2016-04-21HWRasterizer: Texture forwardingtfarley1-511/+328
2016-04-08OpenGL: Respect buffer-write allow registersJannik Vogel1-6/+28
2016-04-08OpenGL: Split buffer-write mask sync into seperate functionsJannik Vogel1-8/+30
2016-04-08OpenGL: Keep stencil-test and framebuffer.depth_format in syncJannik Vogel1-0/+1
2016-04-05Common: Remove Common::make_unique, use std::make_uniqueMerryMage1-2/+1
2016-04-03OpenGL: Fix a double framebuffer completeness checks.Emmanuel Gil Peyrot1-4/+6
2016-04-03OpenGL: Check for framebuffer completenessJannik Vogel1-0/+3
2016-03-24OpenGL: Don't attempt to draw empty triangle batchesYuri Kunde Schlesner1-0/+3
2016-03-06Pica: Write depth value even when depth test is disabledYuri Kunde Schlesner1-2/+4
2016-03-03Add immediate mode vertex submissionDwayne Slater1-0/+1
2016-02-05renderer_opengl: Use GLvec3/GLvec4 aliases for commonly used types.bunnei1-2/+2
2016-02-05gl_rasterizer: Fix issue with interpolation of opposite quaternions.bunnei1-3/+25
2016-02-05pica_types: Replace float24/20/16 with a template class.bunnei1-7/+7
2016-02-05renderer_opengl: Use textures for fragment shader LUTs instead of UBOs.bunnei1-12/+39
2016-02-05renderer_opengl: Initial implementation of basic specular lighting.bunnei1-0/+68
2016-02-05renderer_opengl: Implement HW fragment lighting LUTs within our default UBO.bunnei1-13/+52
2016-02-05renderer_opengl: Implement diffuse component of HW fragment lighting.bunnei1-0/+141
2016-02-03hwrasterizer: Use proper cached fb addr/sizetfarley1-40/+32
2016-01-21hwrasterizer: Use depth offsettfarley1-0/+16
2015-12-08VideoCore: Unify interface to OpenGL and SW rasterizersYuri Kunde Schlesner1-9/+0
2015-12-07VideoCore: Rename HWRasterizer methods to be less confusingYuri Kunde Schlesner1-3/+3
2015-12-07OpenGL: Rename cache functions to better match what they actually doYuri Kunde Schlesner1-4/+4
2015-12-05OpenGL: Flip framebuffers during transfer rather than when renderingYuri Kunde Schlesner1-11/+10
2015-11-26renderer_opengl: Fix uniform issues introduced with kemenaran/avoid-explicit-uniform-location.bunnei1-4/+6
2015-11-25Use regular uniform locationPierre de La Morinerie1-3/+4
2015-11-19FragShader: Use an UBO instead of several individual uniformsSubv1-4/+29
2015-10-22gl_rasterizer: Define enum types for each vertex texcoord attribute.bunnei1-6/+6
2015-10-22gl_rasterizer: Use MMH3 hash for shader cache hey.bunnei1-4/+3
2015-10-22gl_shader_gen: Require explicit uniform locations.bunnei1-19/+8
2015-10-22renderer_opengl: Refactor shader generation/caching to be more organized + various cleanups.bunnei1-74/+57
2015-10-22gl_rasterizer: Move logic for creating ShaderCacheKey to a static function.bunnei1-17/+2
2015-10-22gl_rasterizer: Fix typo in uploading TEV const color uniforms.bunnei1-5/+5
2015-10-22gl_shader_util: Fix precision bug with alpha testing.bunnei1-2/+2
2015-10-22Initial implementation of fragment shader generation with caching.Subv1-227/+124
2015-10-07Silence -Wsign-compare warnings.Rohit Nirmal1-3/+3
2015-09-11video_core: Reorganize headersLioncash1-1/+1
2015-09-10gl_rasterizer: Replace push_back calls with emplace_back in AddTriangleLioncash1-3/+3
2015-09-03OpenGL: Use Sampler Objects to decouple sampler config from texturesYuri Kunde Schlesner1-0/+46
2015-09-03OpenGL: Remove ugly and endian-unsafe color pointer castsYuri Kunde Schlesner1-3/+3
2015-08-30Replace the previous OpenGL loader with a glad-generated 3.3 oneYuri Kunde Schlesner1-2/+2
2015-08-28gl_rasterizer_cache: Detect and ignore unnecessary texture flushes.bunnei1-2/+2
2015-08-25Integrate the MicroProfile profiling libraryYuri Kunde Schlesner1-0/+10
2015-08-24HWRenderer: Added a workaround for the Intel Windows driver bug that causes glTexSubImage2D to not change the stencil buffer.Subv1-2/+9
2015-08-20GLRasterizer: Implemented stencil testing in the hw renderer.Subv1-2/+11
2015-08-15GPU: Refactor "VertexShader" namespace to "Shader".bunnei1-3/+3
2015-08-06OpenGL: Remove redundant texture.enable_2d field from OpenGLStateYuri Kunde Schlesner1-10/+1
2015-07-28OpenGL: Add a profiler category measuring framebuffer readbackYuri Kunde Schlesner1-0/+7
2015-07-19GLRasterizer: Don't try to get a pointer to the depth buffer if it doesn't exist.Subv1-3/+7
2015-06-28Core: Cleanup hw includes.Emmanuel Gil Peyrot1-0/+1
2015-06-28Common: Cleanup key_map includes.Emmanuel Gil Peyrot1-3/+5
2015-06-09Renderer formatting editstfarley1-12/+12
2015-06-09Render-to-texture flush, interval math fixtfarley1-1/+13
2015-06-09Liberal texture unbind (clout menu)tfarley1-4/+34
2015-06-09Depth format fix (crush3d intro/black screens)tfarley1-46/+46
2015-06-09Implemented glColorMasktfarley1-0/+4
2015-05-31Pica: Implement LogicOp function.bunnei1-0/+10
2015-05-30Move video_core/color.h to common/color.harchshift1-1/+2
2015-05-29Remove every trailing whitespace from the project (but externals).Emmanuel Gil Peyrot1-1/+1
2015-05-23Pica: Create 'State' structure and move state memory there.bunnei1-108/+126
2015-05-23OpenGL renderertfarley1-0/+879