aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Graphics
AgeCommit message (Collapse)Author
2018-07-14Some small shader related fixes (#258)gdkchan
* Some small shader related fixes * Address PR feedback
2018-07-09Add locking methods to the ogl resource cache (#238)gdkchan
* Add locking methods to the ogl resource cache * Remove some unused arguments * Add the ZF32 texture format
2018-07-08Implement GPU primitive restart (#221)ReinUsesLisp
2018-07-06Disable front facing and face culling to avoid regression (#226)ReinUsesLisp
* Disable tests for framebuffer blitting
2018-07-05Implement some GPU features (#209)ReinUsesLisp
* Implement stencil testing * Implement depth testing * Implement face culling * Implement front face * Comparison functions now take OGL enums too * Fix front facing when flipping was used * Add depth and stencil clear values
2018-07-03Add FaceAttr in GLSL, unmanaged case in EmitTex and ConstantColorG80 blend ↵ReinUsesLisp
factor (#207) * Add FaceAttr (0x3fc) input attribute in GLSL * Implement unmanaged case in EmitTex * Add ConstantColor for 0xC001 (G80) from PR #145
2018-06-30Add linux-x64 to RID property to make tests works on linux (#205)Thomas Guillemard
2018-06-28Explicit GLSL "position" attribute location (#199)ReinUsesLisp
2018-06-28Add support for vertex base on indexed draws, fix index buffer first ↵gdkchan
(untested) (#197)
2018-06-28Somewhat better ClearBuffers implementationgdkchan
2018-06-27Add support for Vertex Program A and other small shader improvements (#192)gdkchan
* Add WIP support for Vertex Program A, add the FADD_I32 shader instruction, small fix on FFMA_I encoding, nits * Add separate subroutines for program A/B, and copy attributes to a temp * Move finalization code to main * Add new line after flip uniform on the shader * Handle possible case where VPB uses an output attribute written by VPA but not available on the vbo * Address PR feedback
2018-06-27Fix vertex buffer size on the gpu when the draw vertex count is less than ↵gdkchan
the buffer size, added a few more registers (currently not implemented)
2018-06-26Fix GL.CreateBuffers -> GL.GenBuffers (#189)ReinUsesLisp
2018-06-26Implementation of UBOs instead of uniform constant arrays (#186)ReinUsesLisp
* Sort uniform binding to avoid possible failures in drivers fewer bindings * Throw exception for Cbuf overflow * Search for free bindings instead of using locked ones * EnsureAllocated when binding buffers * Fix uniform bindings * Remove spaces * Use 64 KiB UBOs when available * Remove double colon * Use IdentationStr and avoid division in Cbuf offset * Add spaces
2018-06-23Small OpenGL Renderer refactoring (#177)gdkchan
* Call OpenGL functions directly, remove the pfifo thread, some refactoring * Fix PerformanceStatistics calculating the wrong host fps, remove wait event on PFIFO as this wasn't exactly was causing the freezes (may replace with an exception later) * Organized the Gpu folder a bit more, renamed a few things, address PR feedback * Make PerformanceStatistics thread safe * Remove unused constant * Use unlimited update rate for better pref
2018-06-23Fix 3 graphics related issues (#180)gdkchan
* Fix 3 graphics related bugs * OGLShader shouldn't be public (yet)
2018-06-21 Port from OpenTK.NETCore to OpenTK.NetStandard (#176)ReinUsesLisp
* Minor code changes * Forgot to remove a method
2018-06-12Implement R16 texture format (#147)Lordmau5
2018-06-12Minor shader fixesgdkchan
2018-06-10Fix a small size related issue on MapBufferEx and add the BC7U texture formatgdkchan
2018-06-08Texture/Vertex/Index data cache (#132)gdkchan
* Initial implementation of the texture cache * Cache vertex and index data aswell, some cleanup * Improve handling of the cache by storing cached ranges on a list for each page * Delete old data from the caches automatically, ensure that the cache is cleaned when the mapping/size changes, and some general cleanup
2018-06-02Fix copy-paste mistake, also related to astc...gdkchan
2018-06-02Fix mistake on astc conversion, make some static methods that shouldn't be ↵gdkchan
public private, remove old commmented out code
2018-06-02Re add some texture formats that I somehow removed by accident on ↵gdkchan
OGLEnumConverter
2018-06-02Some small gpu improvements and shader improvements, add support for ASTC ↵gdkchan
4x4 textures (slow!)
2018-06-01Add an ASTC Decoder (Not currently used in Ryujinx) (#131)Ac_K
* Add an ASTC Decoder (Not currently used in Ryujinx) * Update ASTCDecoder.cs
2018-05-29Added support for more shader instructions and texture formats, fix swapped ↵gdkchan
channels in RGB565 and RGBA5551? texture formats, allow zero values on blending registers, initial work to build CFG on the shader decoder, update the BRA instruction to work with it (WIP)
2018-05-22Improve shader sending method to GAL, use a memory interface instead of ↵gdkchan
reading a fixed array size and sending every time
2018-05-17Added more shader instructions, including BFE, BRA (partial), FMNMX, ISCADD, ↵gdkchan
SHL, LD_C, some shader related fixes, added support for texture component selection
2018-05-11Add intrinsics support (#121)gdkchan
* Initial intrinsics support * Update tests to work with the new Vector128 type and intrinsics * Drop SSE4.1 requirement * Fix copy-paste mistake
2018-05-07NvServices refactoring (#120)gdkchan
* Initial implementation of NvMap/NvHostCtrl * More work on NvHostCtrl * Refactoring of nvservices, move GPU Vmm, make Vmm per-process, refactor most gpu devices, move Gpu to Core, fix CbBind * Implement GetGpuTime, support CancelSynchronization, fix issue on InsertWaitingMutex, proper double buffering support (again, not working properly for commercial games, only hb) * Try to fix perf regression reading/writing textures, moved syncpts and events to a UserCtx class, delete global state when the process exits, other minor tweaks * Remove now unused code, add comment about probably wrong result codes
2018-04-30Ignore ZR target texture color registers on shadergdkchan
2018-04-29Properly support multiple vertex buffers, stub 2 ioctls, fix a shader issue, ↵gdkchan
change the way how the vertex buffer size is calculated for the buffers with limit = 0
2018-04-25Some small sync primitive fixes, logging fixes, started to implement the 2D ↵gdkchan
engine on the GPU, fixed DrawArrays, implemented a few more shader instructions, made a start on nvdrv refactor, etc...
2018-04-19Add SvcSetThreadActivity, tweak SignalProcessWideKey, add fmul32i shader ↵gdkchan
instructions and other small fixes
2018-04-14[GPU] Set frame buffer texture size to window sizegdkchan
2018-04-14[GPU] Send correct window size to the vertex shadergdkchan
2018-04-14[GPU] Fix frame buffer being upside down in some casesgdkchan
2018-04-13[GPU] Avoid drawing the frame buffer with alpha blend enabled, use correct ↵gdkchan
blend enable register, clear the buffer before drawing
2018-04-13[GPU] Remove 1f in RCP instruction emitter on glsl decompilergdkchan
2018-04-13[GPU] Do not use the f suffix on float contants on the shader glsl codegdkchan
2018-04-13Bump glsl version to support layout qualifiergdkchan
2018-04-13Fix for current framebuffer issues (#78)gdkchan
[GPU] Fix some of the current framebuffer issues
2018-04-10[GPU] Add support for the BC4/5 texture formatsgdkchan
2018-04-10Fix regression -- enable raw frame buffer renderinggdkchan
2018-04-10[GPU] Add more shader instructions, add support for rgb565 texturesgdkchan
2018-04-08Add A1B5G5R5 texture format. (#76)LDj3SNuD
* Update GalTextureFormat.cs * Update TextureReader.cs
2018-04-08Use correct pitch value when decoding linear swizzle texturesgdkchan
2018-04-08Merge shader branch, adding support for GLSL decompilation, a macrogdkchan
interpreter, and a rewrite of the GPU code.
2018-03-19[WIP] Add support for events (#60)gdkchan
* Add support for events, move concept of domains to IpcService * Support waiting for KThread, remove some test code, other tweaks * Use move handle on NIFM since I can't test that now, it's better to leave it how it was