ryujinx-mirror/Ryujinx.Graphics.Shader/Instructions
gdkchan 9dfe81770a
Use vector outputs for texture operations (#3939)
* Change AggregateType to include vector type counts

* Replace VariableType uses with AggregateType and delete VariableType

* Support new local vector types on SPIR-V and GLSL

* Start using vector outputs for texture operations

* Use vectors on more texture operations

* Use vector output for ImageLoad operations

* Replace all uses of single destination texture constructors with multi destination ones

* Update textureGatherOffsets replacement to split vector operations

* Shader cache version bump

Co-authored-by: Ac_K <Acoustik666@gmail.com>
2022-12-29 16:09:34 +01:00
..
InstEmit.cs Implement IMUL, PCNT and CONT shader instructions, fix FFMA32I and HFMA32I (#2972) 2022-01-10 12:08:00 -03:00
InstEmitAluHelper.cs Implement VMAD shader instruction and improve InvocationInfo and ISBERD handling (#3251) 2022-04-08 12:42:39 +02:00
InstEmitAttribute.cs Move gl_Layer from vertex to geometry if GPU does not support it on vertex (#3866) 2022-11-18 23:27:54 -03:00
InstEmitBarrier.cs Rewrite shader decoding stage (#2698) 2021-10-12 22:35:31 +02:00
InstEmitBitfield.cs Fix FLO.SH shader instruction with a input of 0 (#2876) 2021-12-05 13:25:05 +01:00
InstEmitConversion.cs Implement remaining shader double-precision instructions (#2845) 2021-12-08 17:54:12 -03:00
InstEmitFloatArithmetic.cs Implement IMUL, PCNT and CONT shader instructions, fix FFMA32I and HFMA32I (#2972) 2022-01-10 12:08:00 -03:00
InstEmitFloatComparison.cs Implement remaining shader double-precision instructions (#2845) 2021-12-08 17:54:12 -03:00
InstEmitFloatMinMax.cs Implement remaining shader double-precision instructions (#2845) 2021-12-08 17:54:12 -03:00
InstEmitFlowControl.cs Improve shader BRX instruction code generation (#3759) 2022-10-15 23:20:16 +00:00
InstEmitHelper.cs Avoid adding shader buffer descriptors for constant buffers that are not used (#3478) 2022-07-23 11:15:58 -03:00
InstEmitIntegerArithmetic.cs Implement IMUL, PCNT and CONT shader instructions, fix FFMA32I and HFMA32I (#2972) 2022-01-10 12:08:00 -03:00
InstEmitIntegerComparison.cs Rewrite shader decoding stage (#2698) 2021-10-12 22:35:31 +02:00
InstEmitIntegerLogical.cs Rewrite shader decoding stage (#2698) 2021-10-12 22:35:31 +02:00
InstEmitIntegerMinMax.cs Rewrite shader decoding stage (#2698) 2021-10-12 22:35:31 +02:00
InstEmitMemory.cs Fix shader 8-bit and 16-bit STS/STG (#2741) 2021-10-18 20:24:15 -03:00
InstEmitMove.cs Implement VMAD shader instruction and improve InvocationInfo and ISBERD handling (#3251) 2022-04-08 12:42:39 +02:00
InstEmitMultifunction.cs Implement remaining shader double-precision instructions (#2845) 2021-12-08 17:54:12 -03:00
InstEmitNop.cs Rewrite shader decoding stage (#2698) 2021-10-12 22:35:31 +02:00
InstEmitPredicate.cs Rewrite shader decoding stage (#2698) 2021-10-12 22:35:31 +02:00
InstEmitShift.cs Implement SHF (funnel shift) shader instruction (#2702) 2021-10-17 17:02:20 -03:00
InstEmitSurface.cs Use vector outputs for texture operations (#3939) 2022-12-29 16:09:34 +01:00
InstEmitter.cs
InstEmitTexture.cs Use vector outputs for texture operations (#3939) 2022-12-29 16:09:34 +01:00
InstEmitVideoArithmetic.cs Implement VMAD shader instruction and improve InvocationInfo and ISBERD handling (#3251) 2022-04-08 12:42:39 +02:00
InstEmitVideoMinMax.cs Implement VMAD shader instruction and improve InvocationInfo and ISBERD handling (#3251) 2022-04-08 12:42:39 +02:00
InstEmitWarp.cs Rewrite shader decoding stage (#2698) 2021-10-12 22:35:31 +02:00
Lop3Expression.cs Lop3Expression: Optimize expressions (#3184) 2022-04-08 11:17:38 +02:00