dd23a1ee79
Update VS projects/solutions to VS2019
2019-11-30 13:42:52 +10:00
6db305a4e8
VideoBackends/Null: Add missing override specifiers
...
Applies a missing override specifier to VertexManager's destructor.
2019-07-27 17:33:18 -04:00
23c5b362a5
VideoBackends/Null: Apply final to classes where applicable
...
These aren't intended to be further specialized, so we can make this
obvious with final.
2019-07-27 17:33:18 -04:00
86000fc6b4
VideoBackends/Null: Remove unnecessary constructors and destructors
...
Removes constructors and destructors that don't actually provide any
behavior (i.e. doesn't constain generated code related to non-trivial
members in a cpp file, etc).
Lessens the amount of code present.
2019-07-27 17:33:18 -04:00
bdcc5853d5
VideoBackends/Null: Remove unnecessary includes
2019-07-27 17:33:16 -04:00
968d379cc4
VideoNull/CMakeLists: Specify headers in target sources
2019-05-31 06:54:26 -04:00
e60268bd42
VideoCommon/RenderBase: Use a std::string_view with CreateShaderFromSource()
...
Greatly simplifies the overall interface when it comes to compiling
shaders. Also allows getting rid of a std::string overload of the same
name. Now std::string and const char* both go through the same function.
2019-05-30 03:29:35 -04:00
ff972e3673
Reformat repo to clang-format 7.0 rules
2019-05-06 18:48:04 +00:00
99a4ca8de7
Merge pull request #7839 from ShFil119/impr/redundant
...
Remove redundant initialization
2019-05-04 22:50:51 +02:00
c110ffcdaa
Remove redundant initialization
2019-04-30 01:22:24 +02:00
f8c1ba409c
Replace EFBRectangle/TargetRectangle with MathUtil::Rectangle
2019-04-21 14:28:14 +10:00
3791262d96
TextureCache: Use linear filtering on y-scaled and >1xIR VRAM copies
2019-04-21 12:41:15 +10:00
61a656570e
AbstractPipeline: Support returning "cache data"
...
"Cache data" can be used to assist a driver with creating pipelines by
using previously-compiled shader ISA.
2019-04-16 00:09:47 +10:00
65216c9e87
VideoConfig: Add SupportsPartialDepthCopies to backend info
...
D3D11 doesn't support partial copies of depth buffers via
CopySubResource(), so we need to use a different path for the EFB cache.
2019-03-09 12:19:53 +10:00
f039149198
Move most backend functionality to VideoCommon
2019-02-19 16:57:54 +10:00
e4b205c769
Decouple XFB scanout from presentation
2019-01-25 11:15:57 +10:00
c9c0b85056
VideoBackends: Store a backbuffer 'scale'
...
This is a scaling factor, used for hi-dpi configurations.
2019-01-25 11:15:57 +10:00
63dd91628d
Remove old RasterFont classes
2019-01-25 11:15:57 +10:00
7afd5cc2fb
Use main buffers for utility draws
2018-12-04 17:37:25 +10:00
2644e920cc
Renderer: Add backbuffer format to base class
2018-12-04 17:36:08 +10:00
1adcd47dcb
Renderer: Add a base Initialize() method to match Shutdown()
2018-12-04 17:36:08 +10:00
8e2c063d62
TextureCache: Implement deferred/batched EFB copies
2018-11-07 16:25:01 +10:00
eb284b5d66
VideoBackends: Pass window system info from host on creation
2018-10-20 21:11:34 +10:00
a3961750a7
Drop Host_GetRenderSurface and pass display to backend
2018-10-20 21:11:34 +10:00
97cc9894e4
Update to Visual Studio's default Windows SDK
2018-10-20 00:53:08 +01:00
e3f475b30e
NullBackend: Initialize vtx_decl in VertexFormat
...
This field was previously left uninitialized, which resulted in corrupted
UID caches being created.
2018-10-14 21:24:09 +10:00
eb33d7af64
Core: Call InitBackendInfo before loading config
2018-09-28 21:44:41 +10:00
dc2f22516c
Mark all video backend names for translation
2018-06-30 06:30:19 -04:00
640bfb8135
VideoConfig: Add a field for indicating logic op support in the backend
2018-05-26 00:07:20 +10:00
9e798eec94
Implement EFB copy filter and gamma in hardware backends
...
Also makes y_scale a dynamic parameter for EFB copies, as it doesn't
make sense to keep it as part of the uid, otherwise we're generating
redundant shaders.
2018-04-29 19:05:20 +10:00
d4f8502ad1
Null/CMakeLists: Migrate off add_dolphin_library
...
Continues the migration work started in 3a4c3bbe01
2018-04-02 08:17:00 -04:00
f9c829c7f7
OGL: Re-implement async shader compiling
2018-03-10 15:56:34 +10:00
dec0c3bce8
Move shader caches to VideoCommon
2018-03-10 15:56:30 +10:00
4c24a69710
VideoCommon: Add support for Abstract Framebuffers
2018-03-02 20:20:48 +10:00
6374a4c4a8
AbstractTexture: Support multisampled abstract texture
2018-03-01 17:31:24 +10:00
fec6bb4d56
VideoBackends: Add AbstractShader and AbstractPipeline classes
2018-02-22 22:02:34 +10:00
c790077c13
VideoBackend: Remove PeekMessages method
...
The video thread and backend no longer create any windows, therefore
there will never be any messages dispatched to their thread.
2018-01-27 13:53:55 +10:00
d96e8c9d76
VideoBackends: Combine Initialize/Prepare and Cleanup/Shutdown methods
...
Also allows the work previously done in Prepare to return a failure
status.
2018-01-27 13:53:55 +10:00
38e0b6e2ab
AbstractTexture: Move Bind() method to Renderer
...
This makes state tracking simpler, and enables easier porting to command
lists later on.
2018-01-22 13:22:09 +10:00
29a9ed043b
Implement dual-source blending in shader
...
For some GLES drivers that don't support dual-source blending, but do
support GL_EXT_shader_framebuffer_fetch, this might be useful.
2018-01-05 09:56:46 -08:00
02dd062518
VideoCommon: Drop now unused efb2tex matrix generation.
2017-12-06 09:30:03 +01:00
491c10ec96
VideoBackends: Use VideoCommon shader generators for efb2tex copies.
...
This will generate one shader per copy format. For now, it is the same
shader with the colmat hard coded. So it should already improve the GPU
performance a bit, but a rewrite of the shader generator is suggested.
Half of the patch is done by linkmauve1:
VideoCommon: Reorganise the shader writes.
2017-12-02 15:17:39 +01:00
56afebeb44
AbstractTexture: Seperate CopyRectangleFromTexture to two methods
...
ScaleRectangleFromTexture, which does a draw, and
CopyRectangleFromTexture, which where possible, does a bit-for-bit copy.
2017-11-22 18:47:04 +10:00
f43d85921d
VideoBackends: Add AbstractStagingTexture class
...
Can be used for asynchronous readback or upload of textures.
2017-11-22 18:47:04 +10:00
49a9c33bd7
VideoCommon: Move abstract texture creation function to Renderer
2017-11-22 18:47:04 +10:00
39559f6358
VideoConfig: Remove bSupportsInternalResolutionFrameDumps
...
Field is unused as of Hybrid XFB.
2017-11-21 17:19:43 +10:00
33bc286baa
Remove old XFB logic
2017-11-17 22:11:29 -06:00
79387dddb2
Add support for hybrid XFB
2017-11-17 19:47:56 -06:00
836b9b9acb
Renderer: Move cull mode to a rasterization state object
...
Also moves logic for primitive handling to VideoCommon.
2017-09-11 20:01:45 +10:00
c3a57bbad5
Video: Clearly separate Texture and EFB Copy formats
...
Improve bookkeeping around formats. Hopefully make code less confusing.
- Rename TlutFormat -> TLUTFormat to follow conventions.
- Use enum classes to prevent using a Texture format where an EFB Copy format
is expected or vice-versa.
- Use common EFBCopyFormat names regardless of depth and YUV configurations.
2017-08-03 18:35:29 -07:00