| Age | Commit message (Collapse) | Author |
|
Keeps associated data together. It also eliminates the possibility of out
parameters not being initialized properly. For example, consider the
following example:
-- some FramebufferManager implementation --
void FBMgrImpl::GetTargetSize(u32* width, u32* height) override
{
// Do nothing
}
-- somewhere else where the function is used --
u32 width, height;
framebuffer_manager_instance->GetTargetSize(&width, &height);
if (texture_width != width) <-- Uninitialized variable usage
{
...
}
It makes it much more obvious to spot any initialization issues, because
it requires something to be returned, as opposed to allowing an
implementation to just not do anything.
|
|
|
|
size rather than the raw framebuffer size.
|
|
|
|
|
|
|
|
|
|
We have the s_backbuffer_{width,height} fields to represent this, so
there's no point in passing them as parameters every time.
|
|
This is mainly for potential Android fifoci usage, and thus is not
exposed anywhere in the UI. To enable, set DumpFramesAsImages under
Settings in GFX.ini.
|
|
This function isn't used any more, and good code shouldn't use it at all. Use negative strides instead.
|
|
This increase the performance of good backends a bit, but slows down the bads one a lot.
Let's fix those backends instead of forcing stupid memcpy in the common code.
|
|
|
|
|
|
So AddFrame use no global state and can be threaded well.
|
|
This fixes a review feedback in PR #4345.
|
|
This reverts commit 5c0fa4db4fa4a2533c190825e83675f074eaf50c, reversing
changes made to b8731eb8180d76b4663eaf4188f985b9c5fa6fb2.
|
|
This reverts commit 6bff97ea300e452cf13196488f1b717f51695ead, reversing
changes made to 5c0fa4db4fa4a2533c190825e83675f074eaf50c.
|
|
|
|
|
|
Sorry, merge failure.
|
|
|
|
|
|
|
|
This was needed with fixed framerate dumping. As we now synchronize the frames, the last one will just get padded.
|
|
And rename them to the new naming scheme.
|
|
|
|
|
|
people probably want to see decimal instead of hex...
|
|
Some OSD messages were displayed in RenderBase.cpp using global variables and some code duplicated
in OnScreeDisplay.cpp.
Now all messages are displayed using functions in the OSD namepace.
* OSDChoice and OSDTime global variables are gone
* All OSD logic is kept at the same place
* All messages are properly aligned
* Clean characters for all OSD messages
Original commit:
commit f0ec61c05707c9657baaad096e21cf60abd267f9
Author: Aestek <thib.gilles@gmail.com>
Date: Sun Aug 7 16:08:41 2016 +0200
|
|
Make Renderer::GetMaxTextureSize return u32 instead of int.
|
|
This is needed because for some reason the WSI for NV Vulkan drivers
doesn't return VK_ERROR_OUT_OF_DATE_KHR, so there is no other way to know
that a resize has occured apart from polling, which is a poor solution for
X11 (since it is blocking).
|
|
|
|
`clang-format`s files that lint missed because of the bug. Fortunately,
not much.
|
|
|
|
|
|
|
|
|
|
|
|
Right now, it's possible that x and y are scaled differently, if efb and xfb size are not the same.
|
|
Also remedies places where the video backends and core rely on things
being indirectly included.
|
|
|
|
Rework the aspect ratio calculation (Fixes 240p mode)
|
|
Use ffmpeg for Windows Video Dumping instead of VFW
|
|
Video Interface simply isn't aware about widescreen.
Instead, the render class can multiply by 1.3333333 to get
the 16:9 aspect ratio.
|
|
|
|
We don't throttle by frames, we throttle by coretiming speed.
So looking up VI for calculating the speed was just very wrong.
The new ini option is a float, 1.0f for fullspeed.
In the GUI, percentual values are used.
|
|
Also gets rid of global headers
|
|
D3D: Implement vectored efb pokes
|
|
|
|
Approximately three or four times now, the issue of pointers being
in an inconsistent state been an issue in the video backend renderers
with regards to tripping up other developers.
Global (ugh) resources are put into a unique_ptr and will always have a
well-defined state of being - null or not null
|