コード例 #1
0
void FramebufferManager::CopyToRealXFB(u32 xfbAddr, u32 fbStride, u32 fbHeight, const EFBRectangle& sourceRc, float Gamma)
{
    u8* xfb_in_ram = Memory::GetPointer(xfbAddr);
    if (!xfb_in_ram)
    {
        WARN_LOG(VIDEO, "Tried to copy to invalid XFB address");
        return;
    }

    TargetRectangle targetRc = g_renderer->ConvertEFBRectangle(sourceRc);
    std::swap(targetRc.top, targetRc.bottom);
    TextureConverter::EncodeToRamYUYV(GetEFBColorTexture(), targetRc, xfb_in_ram, sourceRc.GetWidth(), fbStride, fbHeight, Gamma);
}
コード例 #2
0
// Apply AA if enabled
GLuint FramebufferManager::ResolveAndGetRenderTarget(const EFBRectangle &source_rect)
{
	return GetEFBColorTexture(source_rect);
}
コード例 #3
0
void FramebufferManager::SwapReinterpretTexture()
{
    D3DTexture2D* swaptex = GetEFBColorTempTexture();
    m_efb.color_temp_tex = GetEFBColorTexture();
    m_efb.color_tex = swaptex;
}