aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Graphics.Shader/Instructions
AgeCommit message (Collapse)Author
2020-09-29Convert 1D texture targets to 2D (#1584)gdkchan
* Convert 1D texture targets to 2D * Fix typo * Simplify some code * Should mask that too * Consistency
2020-09-01Fix PSL and MRG flags on XMAD cbuf-reg shader instruction (#1520)gdkchan
2020-07-30Refactor shader translator ShaderConfig and reduce the number of out args ↵gdkchan
(#1438)
2020-07-07Implement Zero-Configuration Resolution Scaling (#1365)riperiperi
* Initial implementation of Render Target Scaling Works with most games I have. No GUI option right now, it is hardcoded. Missing handling for texelFetch operation. * Realtime Configuration, refactoring. * texelFetch scaling on fragment shader (WIP) * Improve Shader-Side changes. * Fix potential crash when no color/depth bound * Workaround random uses of textures in compute. This was blacklisting textures in a few games despite causing no bugs. Will eventually add full support so this doesn't break anything. * Fix scales oscillating when changing between non-native scales. * Scaled textures on compute, cleanup, lazier uniform update. * Cleanup. * Fix stupidity * Address Thog Feedback. * Cover most of GDK's feedback (two comments remain) * Fix bad rename * Move IsDepthStencil to FormatExtensions, add docs. * Fix default config, square texture detection. * Three final fixes: - Nearest copy when texture is integer format. - Texture2D -> Texture3D copy correctly blacklists the texture before trying an unscaled copy (caused driver error) - Discount small textures. * Remove scale threshold. Not needed right now - we'll see if we run into problems. * All CPU modification blacklists scale. * Fix comment.
2020-07-04Implement shader LEA instruction and improve bindless image load/store (#1355)gdkchan
2020-05-27Support separate textures and samplers (#1216)gdkchan
* Support separate textures and samplers * Add missing bindless flag, fix SNORM format on buffer textures * Add missing separation * Add comments about the new handles
2020-05-27Omit image format if possible, and fix BA bit (#1280)gdkchan
* Omit image format if possible, and fix BA bit * Match extension name
2020-05-23Implement TMML and TMML.B (#1270)Thog
* Implement TMML and TMML.B This implement TMML and TMML.B instructions * Fix TmmlB declaration alignment * Address gdkchan's comments * Fix inverted encoding definitions
2020-05-06Refactor shader GPU state and memory access (#1203)gdkchan
* Refactor shader GPU state and memory access * Fix NVDEC project build * Address PR feedback and add missing XML comments
2020-04-25Fix mode and Reg08.H1 decoding on XMAD instruction (#1156)gdkchan
2020-04-25Implement texture buffers (#1152)gdkchan
* Implement texture buffers * Throw NotSupportedException where appropriate
2020-04-22Remove leftover of debugging code for shader texture format (#1141)gdkchan
2020-04-22Implement SULD shader instruction (#1117)gdkchan
* Implement SULD shader instruction * Some nits
2020-04-15Fix negation of HADD2 constant buffer source (#1116)gdkchan
2020-04-03Better IPA shader instruction implementation (#1082)gdkchan
* Fix varying interpolation on fragment shader * Some nits * Alignment
2020-03-30Implement FCMP shader instruction (#1067)gdkchan
2020-03-26Implement NOP and stub DEPBAR shader instructions (#1041)Elise
* Implement NOP and stub DEPBAR shader instruction * Fix a few issues and formatting stuff * Remove OpCodeNop/Depbar and use OpCode instead * Fix NOP shader instruction opcode * Fix formatting
2020-03-25Implement VMNMX shader instruction (#1032)gdkchan
* Implement VMNMX shader instruction * No need for the gap on the enum * Fix typo
2020-03-23Implement ICMP shader instruction (#1010)gdkchan
2020-03-06Fix branch with CC and predicate, and a case of SYNC propagation (#967)jduncanator
2020-03-03Initial support for double precision shader instructions. (#963)gdkchan
* Implement DADD, DFMA and DMUL shader instructions * Rename FP to FP32 * Correct double immediate * Classic mistake
2020-02-14Sign-extend shader memory instruction offsets (#934)gdkchan
2020-02-02Support flat interpolation qualifier on shaders (#915)gdkchan
2020-01-09Remove some unused args on the shader translatorgdkchan
2020-01-09Fix FADD32I check for Ra negationgdkchan
2020-01-09Address PR feedbackgdkchan
Add TODO comment for GL_EXT_polygon_offset_clamp
2020-01-09Address PR feedbackgdkchan
2020-01-09Support CC on FSET shader instruction, fix CC on ISET.BF shader instructiongdkchan
2020-01-09Partial support for shader memory barriersgdkchan
2020-01-09Remove some usings that are not neededgdkchan
2020-01-09Support bindless texture gather shader instructiongdkchan
2020-01-09Fix wrong maximum id on sampler pool in some casesgdkchan
2020-01-09Support shared color mask, implement more shader instructionsgdkchan
Support shared color masks (used by Nouveau and maybe the NVIDIA driver). Support draw buffers (also required by OpenGL). Support viewport transform disable (disabled for now as it breaks some games). Fix instanced rendering draw being ignored for multi draw. Fix IADD and IADD3 immediate shader encodings, that was not matching some ops. Implement FFMA32I shader instruction. Implement IMAD shader instruction.
2020-01-09Add a pass to turn global memory access into storage access, and do all ↵gdk
storage related transformations on IR
2020-01-09Partial support for branch with CC, and fix a edge case of branch out of ↵gdk
loop on shaders
2020-01-09Simplified F2I shader instruction codegengdk
2020-01-09Implement HSET2 shader instruction and fix errors uncovered by Rodrigo testsgdk
2020-01-09Add PSET shader instructiongdk
2020-01-09Add R2P shader instructiongdk
2020-01-09Make the shader translator more error resilient (part 2)gdk
2020-01-09Make the shader translator more error resilientgdk
2020-01-09Add partial support for the BRX shader instructiongdk
2020-01-09Add ATOMS, LDS, POPC, RED, STS and VOTE shader instructions, start changing ↵gdk
the way how global memory is handled
2020-01-09Implement BFI, BRK, FLO, FSWZADD, PBK, SHFL and TXD shader instructions, ↵gdk
misc. fixes
2020-01-09Add shader support for the round mode on the F2F instruction, support ↵gdk
mipmaps on ASTC compressed textures
2020-01-09Fix shader FMUL32I instruction saturationgdk
2020-01-09Add per-source type memory change tracking, simplified state change ↵gdk
tracking, other fixes
2020-01-09Initial support for image stores, support texture sample on computegdk
2020-01-09Fix incorrect saturation on HADD2 and HMUL2 shader instructionsgdk
2020-01-09Initial workgdk