Geometry shader emulation for macOS (#5551)
* Implement vertex and geometry shader conversion to compute * Call InitializeReservedCounts for compute too * PR feedback * Set clip distance mask for geometry and tessellation shaders too * Transform feedback emulation only for vertex
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
using Ryujinx.Graphics.GAL;
|
||||
using Ryujinx.Graphics.Gpu.Shader;
|
||||
|
||||
namespace Ryujinx.Graphics.Gpu.Engine.Threed
|
||||
{
|
||||
@@ -61,5 +62,20 @@ namespace Ryujinx.Graphics.Gpu.Engine.Threed
|
||||
/// Index buffer data streamer for inline index buffer updates, such as those used in legacy OpenGL.
|
||||
/// </summary>
|
||||
public IbStreamer IbStreamer = new();
|
||||
|
||||
/// <summary>
|
||||
/// If the vertex shader is emulated on compute, this should be set to the compute program, otherwise it should be null.
|
||||
/// </summary>
|
||||
public ShaderAsCompute VertexAsCompute;
|
||||
|
||||
/// <summary>
|
||||
/// If a geometry shader exists and is emulated on compute, this should be set to the compute program, otherwise it should be null.
|
||||
/// </summary>
|
||||
public ShaderAsCompute GeometryAsCompute;
|
||||
|
||||
/// <summary>
|
||||
/// If the vertex shader is emulated on compute, this should be set to the passthrough vertex program, otherwise it should be null.
|
||||
/// </summary>
|
||||
public IProgram VertexPassthrough;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user