Rename IGalFrameBuffer -> IGalRenderTarget
This commit is contained in:
parent
248ad14b04
commit
c6c8a21054
8 changed files with 23 additions and 23 deletions
|
@ -2,7 +2,7 @@ using System;
|
||||||
|
|
||||||
namespace Ryujinx.Graphics.Gal
|
namespace Ryujinx.Graphics.Gal
|
||||||
{
|
{
|
||||||
public interface IGalFrameBuffer
|
public interface IGalRenderTarget
|
||||||
{
|
{
|
||||||
void BindColor(long Key, int Attachment);
|
void BindColor(long Key, int Attachment);
|
||||||
|
|
|
@ -10,7 +10,7 @@ namespace Ryujinx.Graphics.Gal
|
||||||
|
|
||||||
IGalConstBuffer Buffer { get; }
|
IGalConstBuffer Buffer { get; }
|
||||||
|
|
||||||
IGalFrameBuffer FrameBuffer { get; }
|
IGalRenderTarget RenderTarget { get; }
|
||||||
|
|
||||||
IGalRasterizer Rasterizer { get; }
|
IGalRasterizer Rasterizer { get; }
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@ using System;
|
||||||
|
|
||||||
namespace Ryujinx.Graphics.Gal.OpenGL
|
namespace Ryujinx.Graphics.Gal.OpenGL
|
||||||
{
|
{
|
||||||
class OGLFrameBuffer : IGalFrameBuffer
|
class OGLRenderTarget : IGalRenderTarget
|
||||||
{
|
{
|
||||||
private struct Rect
|
private struct Rect
|
||||||
{
|
{
|
||||||
|
@ -56,7 +56,7 @@ namespace Ryujinx.Graphics.Gal.OpenGL
|
||||||
private int DepthAttachment;
|
private int DepthAttachment;
|
||||||
private int StencilAttachment;
|
private int StencilAttachment;
|
||||||
|
|
||||||
public OGLFrameBuffer(OGLTexture Texture)
|
public OGLRenderTarget(OGLTexture Texture)
|
||||||
{
|
{
|
||||||
ColorAttachments = new int[8];
|
ColorAttachments = new int[8];
|
||||||
|
|
|
@ -7,7 +7,7 @@ namespace Ryujinx.Graphics.Gal.OpenGL
|
||||||
{
|
{
|
||||||
public IGalConstBuffer Buffer { get; private set; }
|
public IGalConstBuffer Buffer { get; private set; }
|
||||||
|
|
||||||
public IGalFrameBuffer FrameBuffer { get; private set; }
|
public IGalRenderTarget RenderTarget { get; private set; }
|
||||||
|
|
||||||
public IGalRasterizer Rasterizer { get; private set; }
|
public IGalRasterizer Rasterizer { get; private set; }
|
||||||
|
|
||||||
|
@ -25,7 +25,7 @@ namespace Ryujinx.Graphics.Gal.OpenGL
|
||||||
|
|
||||||
Texture = new OGLTexture();
|
Texture = new OGLTexture();
|
||||||
|
|
||||||
FrameBuffer = new OGLFrameBuffer(Texture as OGLTexture);
|
RenderTarget = new OGLRenderTarget(Texture as OGLTexture);
|
||||||
|
|
||||||
Rasterizer = new OGLRasterizer();
|
Rasterizer = new OGLRasterizer();
|
||||||
|
|
||||||
|
|
|
@ -123,7 +123,7 @@ namespace Ryujinx.Graphics
|
||||||
if (IsSrcFb && IsDstFb)
|
if (IsSrcFb && IsDstFb)
|
||||||
{
|
{
|
||||||
//Frame Buffer -> Frame Buffer copy.
|
//Frame Buffer -> Frame Buffer copy.
|
||||||
Gpu.Renderer.FrameBuffer.Copy(
|
Gpu.Renderer.RenderTarget.Copy(
|
||||||
SrcKey,
|
SrcKey,
|
||||||
DstKey,
|
DstKey,
|
||||||
0,
|
0,
|
||||||
|
@ -138,7 +138,7 @@ namespace Ryujinx.Graphics
|
||||||
if (IsSrcFb)
|
if (IsSrcFb)
|
||||||
{
|
{
|
||||||
//Frame Buffer -> Texture copy.
|
//Frame Buffer -> Texture copy.
|
||||||
Gpu.Renderer.FrameBuffer.GetBufferData(SrcKey, (byte[] Buffer) =>
|
Gpu.Renderer.RenderTarget.GetBufferData(SrcKey, (byte[] Buffer) =>
|
||||||
{
|
{
|
||||||
TextureInfo Src = SrcTexture();
|
TextureInfo Src = SrcTexture();
|
||||||
TextureInfo Dst = DstTexture();
|
TextureInfo Dst = DstTexture();
|
||||||
|
@ -156,7 +156,7 @@ namespace Ryujinx.Graphics
|
||||||
{
|
{
|
||||||
byte[] Buffer = TextureReader.Read(Vmm, SrcTexture());
|
byte[] Buffer = TextureReader.Read(Vmm, SrcTexture());
|
||||||
|
|
||||||
Gpu.Renderer.FrameBuffer.SetBufferData(
|
Gpu.Renderer.RenderTarget.SetBufferData(
|
||||||
DstKey,
|
DstKey,
|
||||||
DstWidth,
|
DstWidth,
|
||||||
DstHeight,
|
DstHeight,
|
||||||
|
|
|
@ -177,7 +177,7 @@ namespace Ryujinx.Graphics
|
||||||
|
|
||||||
if (VA == 0 || Format == 0)
|
if (VA == 0 || Format == 0)
|
||||||
{
|
{
|
||||||
Gpu.Renderer.FrameBuffer.UnbindColor(FbIndex);
|
Gpu.Renderer.RenderTarget.UnbindColor(FbIndex);
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -209,9 +209,9 @@ namespace Ryujinx.Graphics
|
||||||
|
|
||||||
Gpu.Renderer.Texture.CreateFb(Key, Size, Image);
|
Gpu.Renderer.Texture.CreateFb(Key, Size, Image);
|
||||||
|
|
||||||
Gpu.Renderer.FrameBuffer.BindColor(Key, FbIndex);
|
Gpu.Renderer.RenderTarget.BindColor(Key, FbIndex);
|
||||||
|
|
||||||
Gpu.Renderer.FrameBuffer.SetViewport(VpX, VpY, VpW, VpH);
|
Gpu.Renderer.RenderTarget.SetViewport(VpX, VpY, VpW, VpH);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void SetZeta(NvGpuVmm Vmm)
|
private void SetZeta(NvGpuVmm Vmm)
|
||||||
|
@ -224,7 +224,7 @@ namespace Ryujinx.Graphics
|
||||||
|
|
||||||
if (ZA == 0 || Format == 0 || !ZetaEnable)
|
if (ZA == 0 || Format == 0 || !ZetaEnable)
|
||||||
{
|
{
|
||||||
Gpu.Renderer.FrameBuffer.UnbindZeta();
|
Gpu.Renderer.RenderTarget.UnbindZeta();
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -242,7 +242,7 @@ namespace Ryujinx.Graphics
|
||||||
|
|
||||||
Gpu.Renderer.Texture.CreateFb(Key, Size, Image);
|
Gpu.Renderer.Texture.CreateFb(Key, Size, Image);
|
||||||
|
|
||||||
Gpu.Renderer.FrameBuffer.BindZeta(Key);
|
Gpu.Renderer.RenderTarget.BindZeta(Key);
|
||||||
}
|
}
|
||||||
|
|
||||||
private long[] UploadShaders(NvGpuVmm Vmm)
|
private long[] UploadShaders(NvGpuVmm Vmm)
|
||||||
|
@ -444,11 +444,11 @@ namespace Ryujinx.Graphics
|
||||||
Map[i] = (int)((Control >> Shift) & 7);
|
Map[i] = (int)((Control >> Shift) & 7);
|
||||||
}
|
}
|
||||||
|
|
||||||
Gpu.Renderer.FrameBuffer.SetMap(Map);
|
Gpu.Renderer.RenderTarget.SetMap(Map);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
Gpu.Renderer.FrameBuffer.SetMap(null);
|
Gpu.Renderer.RenderTarget.SetMap(null);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -522,7 +522,7 @@ namespace Ryujinx.Graphics
|
||||||
//we shouldn't read anything from memory and bind
|
//we shouldn't read anything from memory and bind
|
||||||
//the frame buffer texture instead, since we're not
|
//the frame buffer texture instead, since we're not
|
||||||
//really writing anything to memory.
|
//really writing anything to memory.
|
||||||
Gpu.Renderer.FrameBuffer.BindTexture(Key, TexIndex);
|
Gpu.Renderer.RenderTarget.BindTexture(Key, TexIndex);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
|
@ -303,7 +303,7 @@ namespace Ryujinx.HLE.HOS.Services.Android
|
||||||
int Right = Crop.Right;
|
int Right = Crop.Right;
|
||||||
int Bottom = Crop.Bottom;
|
int Bottom = Crop.Bottom;
|
||||||
|
|
||||||
Renderer.QueueAction(() => Renderer.FrameBuffer.SetTransform(FlipX, FlipY, Top, Left, Right, Bottom));
|
Renderer.QueueAction(() => Renderer.RenderTarget.SetTransform(FlipX, FlipY, Top, Left, Right, Bottom));
|
||||||
|
|
||||||
//TODO: Support double buffering here aswell, it is broken for GPU
|
//TODO: Support double buffering here aswell, it is broken for GPU
|
||||||
//frame buffers because it seems to be completely out of sync.
|
//frame buffers because it seems to be completely out of sync.
|
||||||
|
@ -311,7 +311,7 @@ namespace Ryujinx.HLE.HOS.Services.Android
|
||||||
{
|
{
|
||||||
//Frame buffer is rendered to by the GPU, we can just
|
//Frame buffer is rendered to by the GPU, we can just
|
||||||
//bind the frame buffer texture, it's not necessary to read anything.
|
//bind the frame buffer texture, it's not necessary to read anything.
|
||||||
Renderer.QueueAction(() => Renderer.FrameBuffer.Set(FbAddr));
|
Renderer.QueueAction(() => Renderer.RenderTarget.Set(FbAddr));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -321,7 +321,7 @@ namespace Ryujinx.HLE.HOS.Services.Android
|
||||||
|
|
||||||
byte[] Data = TextureReader.Read(Context.Memory, Texture);
|
byte[] Data = TextureReader.Read(Context.Memory, Texture);
|
||||||
|
|
||||||
Renderer.QueueAction(() => Renderer.FrameBuffer.Set(Data, FbWidth, FbHeight));
|
Renderer.QueueAction(() => Renderer.RenderTarget.Set(Data, FbWidth, FbHeight));
|
||||||
}
|
}
|
||||||
|
|
||||||
Context.Device.Gpu.Renderer.QueueAction(() => ReleaseBuffer(Slot));
|
Context.Device.Gpu.Renderer.QueueAction(() => ReleaseBuffer(Slot));
|
||||||
|
|
|
@ -73,7 +73,7 @@ namespace Ryujinx
|
||||||
{
|
{
|
||||||
ResizeEvent = false;
|
ResizeEvent = false;
|
||||||
|
|
||||||
Renderer.FrameBuffer.SetWindowSize(Width, Height);
|
Renderer.RenderTarget.SetWindowSize(Width, Height);
|
||||||
}
|
}
|
||||||
|
|
||||||
Ticks += Chrono.ElapsedTicks;
|
Ticks += Chrono.ElapsedTicks;
|
||||||
|
@ -96,7 +96,7 @@ namespace Ryujinx
|
||||||
|
|
||||||
Visible = true;
|
Visible = true;
|
||||||
|
|
||||||
Renderer.FrameBuffer.SetWindowSize(Width, Height);
|
Renderer.RenderTarget.SetWindowSize(Width, Height);
|
||||||
|
|
||||||
Context.MakeCurrent(null);
|
Context.MakeCurrent(null);
|
||||||
|
|
||||||
|
@ -251,7 +251,7 @@ namespace Ryujinx
|
||||||
|
|
||||||
private new void RenderFrame()
|
private new void RenderFrame()
|
||||||
{
|
{
|
||||||
Renderer.FrameBuffer.Render();
|
Renderer.RenderTarget.Render();
|
||||||
|
|
||||||
Device.Statistics.RecordSystemFrameTime();
|
Device.Statistics.RecordSystemFrameTime();
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue