Stenzek
acfa93372e
D3D12: Refactoring and cleanups
...
Moves render target restoring to RestoreAPIState, this also means no need
to manually restore after allocating in a buffer that caused execution,
because the manager restores it for us.
Remove a method that wasn't used from D3DUtil.cpp, and fixes a few errors
in EFB poke drawing.
2016-05-08 12:08:25 +10:00
Stenzek
7ec1fce741
D3D12: Fix error with >1xIR/MSAA EFB depth access
2016-05-08 12:08:25 +10:00
Stenzek
ac1cd8279b
D3D12: Implement GPU-based bounding box
2016-05-08 12:08:25 +10:00
Stenzek
32599559db
D3D12: Use helper method for binding EFB render targets
2016-05-08 12:08:25 +10:00
Stenzek
984da2d624
D3D12: Use signed ints for viewport origin
...
Fixes black screen when crop is enabled.
2016-05-08 12:08:25 +10:00
Stenzek
a8c4d6c242
D3D12: Allow large texture uploads (>64MiB) by using temporary buffer
...
This is not optimal, but for those texture packs with extremely large
images, it won't crash. Releasing after the frame completes is an option
too, however, there is the risk of running out of memory by doing this.
2016-05-08 12:08:25 +10:00
Matthew Parlane
1634948b6e
Merge pull request #3742 from phire/dither
...
Implement Dithering for video software
2016-05-03 22:41:39 +12:00
degasus
6f2d8483b7
VideoSW: Fix special case.
...
I have no clue what this special case shall be, but accessing g_main_cp_state within Flush() is not allowed.
We likely still have a bad behavior, but now it only depends on the current state, not on the next one after flushing.
2016-04-30 13:14:09 +02:00
Jules Blok
8a21b082d6
Merge pull request #3745 from stenzek/d3d11-texcache
...
D3D11: Fix EFB MSAA depth buffer copies, StateManager desyncs in some cases
2016-04-24 11:47:32 +02:00
Lioncash
33c22ffab7
D3D: Amend code to fix a new VS warning
...
Fixes warning C4334
2016-03-30 20:59:57 -04:00
Pierre Bourdon
486d3a7114
Merge pull request #3656 from phire/windows-10-sdk-update
...
Updated D3D12 to build on the newer windows 10 sdk.
2016-03-30 18:37:53 +02:00
Scott Mansell
c036cf7a5f
Updated D3D12 to build on the newer windows 10 sdk.
2016-03-26 18:11:49 +13:00
Pierre Bourdon
2fd0884347
Merge pull request #3672 from EmptyChaos/d3d-anisotropy
...
Fix D3D Forced Anisotropy
2016-03-26 03:25:01 +01:00
Scott Mansell
066b6b0bcb
OpenGL: Cache query to max texture size.
...
This showed up really high when I was profiling things.
2016-03-26 03:14:39 +13:00
Stenzek
53cf42fb06
D3D11: Fix some cases where render target switches desynced StateManager
...
This was occuring in certain EFB copy patterns, leaving the textures
unbound for the next draw call.
2016-03-26 00:01:26 +10:00
Stenzek
63e4e07683
D3D11: Simplify MSAA depth texture resolving
...
This also fixes EFB depth buffer copies when MSAA is enabled.
2016-03-26 00:00:39 +10:00
EmptyChaos
0b9a72a62d
VideoCommon: Refactor TexMode0 mipmaps disabled test into a helper function
2016-03-24 13:43:29 +11:00
EmptyChaos
902e5cddf7
VideoBackends: Do not use Anisotropy on Point filtered textures.
...
The D3D backend was always forcing Anisotropic filtering when that is enabled regardless of how the game chose to configure the texture filtering registers; this causes the same issues as "Force Filtering" without Anisotropy, such as causing game UI elements to no longer line up adjacent correctly. Historically, OpenGL's Anisotropy support has always worked "better" than D3D's due to seeming to not have this problem; unfortunately, OpenGL's Anisotropy specification only gives GL_LINEAR based filtering modes defined behavior, with only the mipmap setting being required to be considered. Some OpenGL implementations were implicitly disabling Anisotropy when the min/mag filters were set to GL_NEAREST, but this behavior is not required by the spec so cannot be relied on.
2016-03-24 13:43:29 +11:00
Scott Mansell
51dc779b7c
Implement Dithering for video software
2016-03-23 12:29:35 +13:00
mimimi085181
e4f984d5dd
Minor fixes to the partial updates code
...
- remove an outdated comment about the efb to ram and scaled efb restriction
- when upscaling efb copies, mark the new texture as efb copy
- dx12 fixes for the src box, especially the number of layers for 3D
2016-03-16 22:24:11 +01:00
degasus
ab44d2ec5c
VideoSW: Drop SetTevReg for colors.
2016-03-06 11:05:49 +01:00
degasus
7a154181b4
VideoSW: Drop SetScissor().
...
Just access the global state directly.
2016-03-06 10:24:28 +01:00
degasus
8b0fd623e5
VideoSW: Drop SetViewOffset.
...
Just use the global state.
2016-03-06 10:22:44 +01:00
Mathew Maidment
c2802f96a6
Merge pull request #3655 from jcowgill/spelling-fixes
...
Fix some very minor spelling mistakes
2016-03-02 14:04:05 -05:00
EmptyChaos
cc36dec9b5
D3D12: Cleanup DX12::Renderer::SetSamplerState
...
Remove uninitialized non-static variable. Replace test to avoid unnecessary state changes with a simpler one.
2016-03-01 23:55:19 +11:00
Pierre Bourdon
07ff8379ba
Merge pull request #3647 from stenzek/d3d12-fences
...
D3D12: Multiple fixes (texture cache, fences, MSAA, CPU EFB access)
2016-02-29 16:49:03 +01:00
Pierre Bourdon
961901daae
Merge pull request #3355 from mimimi085181/partial-texture-updates-check-dimensions
...
Partial texture updates: Check the dimensions of the efb copy
2016-02-29 00:49:48 +01:00
Stenzek
0a96e2f531
D3D11: Fix texture dumping, for both single and multi-mip textures
2016-02-28 17:24:47 +10:00
Stenzek
c793459b88
D3D12: Fixed issue where EFB copies could end up corrupted after reset
...
Also prevents previously-released textures from ending up in a descriptor
table.
2016-02-28 17:24:46 +10:00
Stenzek
74275bdfe3
D3D12: Don't keep screenshot/encoder buffers mapped
...
Readback heaps do not support persistent mapping. See D3D12 docs.
2016-02-28 17:24:09 +10:00
Stenzek
c4d79d6db3
D3D12: Add helper method for setting both viewport and scissor rect
...
Simplfies making changes, as well as keeping the two in sync.
2016-02-28 17:18:46 +10:00
Stenzek
13e143de38
D3D12: Optionally prevent StreamBuffer from executing command list
...
This applies to callers that do not have full knowledge of the command
list state, and thus, cannot restore it should allocations cause command
list execution. Instead we reallocate a new buffer. Should not happen
often enough for this to be a concern, as it's mainly for the utility
classes.
2016-02-28 17:18:46 +10:00
Stenzek
04257029e0
D3D12: Don't enumerate outputs, it's not used anywhere
...
The D3D12 backend does not support exclusive fullscreen.
2016-02-28 17:18:45 +10:00
Stenzek
9efe66509d
D3D12: Fix crash/errors when switching MSAA modes while running
2016-02-28 17:18:44 +10:00
Stenzek
1d909ec7a4
D3D12: Implement non-blocking EFB access when EFB has not been modified
2016-02-28 17:18:43 +10:00
Stenzek
6bbf836ea9
D3D12: Simplify and fix MSAA EFB depth copy path
2016-02-28 17:18:43 +10:00
Stenzek
649b94338e
D3D12: Cleanup/refactoring of teardown process
2016-02-28 17:18:42 +10:00
Stenzek
759b77474d
D3D12: Use std::thread for worker thread
...
Using CreateThread can create issues if any CRT calls are made, as
thread-specific data may not be initialized. Additionally, TerminateThread
is not a good idea for similar reasons, and may not free CRT resources.
2016-02-28 17:18:41 +10:00
Stenzek
ffe0e326d2
D3D12: Use stream buffer for CD3DFont
2016-02-28 17:18:40 +10:00
Stenzek
5c1a708977
D3D12: Clean up debug device creation path
2016-02-28 17:18:39 +10:00
Stenzek
efbb85da43
D3D12: Improve robustness of command allocator and fence tracking
2016-02-28 17:18:39 +10:00
Stenzek
2f7870b046
D3D12: Don't add fence tracking entries without buffer offset changes
2016-02-28 17:18:38 +10:00
Stenzek
31bc0cf2c3
D3D12: Don't clear texture SRV on destruction, as it may still be in use
2016-02-28 17:18:37 +10:00
James Cowgill
db8dbae131
Fix some very minor spelling mistakes
...
Found by Lintian https://lintian.debian.org/
2016-02-19 01:48:10 +00:00
Mathew Maidment
05e431d5b5
Merge pull request #3645 from lioncash/dxmem
...
D3D12: Get rid of most explicit delete and new usages
2016-02-16 22:54:04 -05:00
Mathew Maidment
96e48c3c9f
Merge pull request #3644 from lioncash/shadercache
...
ShaderCache: Minor changes
2016-02-16 22:52:39 -05:00
Chris Burgener
6fe3a3004d
Rename Direct3D to Direct3D 11
2016-02-16 22:43:21 -05:00
Lioncash
6b08194728
D3D12: Get rid of safe deletion macros
...
Anything these macros provided can be obsoleted by using
the correct standard library types.
2016-02-16 02:09:06 -05:00
Lioncash
626fcf4c15
D3DStreamBuffer: Use size_t within the class interface
...
A few StreamBuffer instances take arguments that are actually size_t,
and this will cause truncation warnings during argument forwarding
with make_unique.
2016-02-16 02:08:52 -05:00
Lioncash
932dd14418
NativeVertexFormat: Add missing override specifier
2016-02-15 23:41:20 -05:00
Lioncash
69c82f32ff
NativeVertexFormat: Use in-class initialization
2016-02-15 23:40:34 -05:00
Lioncash
6c0db9fe3c
ShaderCache: Remove unnecessary template type specifications
...
These are already inferred through the passed in arguments.
2016-02-15 23:32:30 -05:00
Lioncash
53fe5a04ec
ShaderCache: Remove unnecessary null checks
...
We already bail out if the shader compilation fails.
Also, there would have already been a nullptr dereference in
InsertByteCode prior to reaching this point.
2016-02-15 23:29:30 -05:00
Lioncash
a22f2e1144
D3DBase: Fix missing return statement
2016-02-15 21:15:43 -05:00
hdcmeta
8cc686b360
D3D12: Initial commit for D3D12 backend implementation.
2016-02-15 09:48:25 -08:00
mimimi085181
bb4d636f34
Copy all layers of textures with CopyRectangleFromTexture
2016-02-14 21:17:06 +01:00
mimimi085181
99555a35ca
For partial texture updates check the dimensions of the efb copy and the target texture, not just the binary size.
...
This should get Donkey Kong Country Returns characters to be as broken as they should be. They will be fixed in a later pr.
Expected result is:
efbtex: characters are always flickering or invisible, no matter what scaling or IR setting
efb2ram: characters are always working properly at 1xIR, no matter what scaling or IR setting
2016-02-14 17:13:51 +01:00
Lioncash
1df1ba55bb
VideoCommon: Convert some DataReader includes into forward declarations
...
Gets rid of some indirect inclusions in cpp files.
Also this will reduce the amount of rebuilt files if
changes occur in the DataReader header.
2016-01-31 15:19:20 -05:00
Ryan Houdek
e1f21602fd
Merge pull request #3426 from Sonicadvance1/ES_fix_framedump
...
Add support for framedumping to OpenGL ES.
2016-01-28 18:24:32 -05:00
Lioncash
5ebd1e215b
Fifo: Make g_bSkipCurrentFrame a TU-local variable
...
This is only ever queried, making it a global isn't necessary.
2016-01-25 05:23:14 -05:00
Lioncash
e187c55bdd
OpcodeDecoder: Add namespace
2016-01-24 01:31:36 -05:00
Pierre Bourdon
be1a9e4231
Merge pull request #3518 from Sonicadvance1/blacklist_sandy
...
Blacklist Sandy Bridge on mesa from using geometry shaders.
2016-01-20 19:32:56 +01:00
Ryan Houdek
3dda36bc5b
Blacklist Sandy Bridge on mesa from using geometry shaders.
2016-01-20 12:13:21 -06:00
Pierre Bourdon
24c228c6e9
Merge pull request #3523 from lioncash/video
...
VideoCommon: Header cleanup
2016-01-18 02:24:50 +01:00
Lioncash
d9fec92628
VideoCommon: Header cleanup
...
Also remedies places where the video backends and core rely on things
being indirectly included.
2016-01-17 20:11:45 -05:00
Stenzek
edebadc093
PixelShaderGen: Use bitwise AND for wrapping indirect texture coordinates
...
(x % y) is not defined in GLSL when sign(x) != sign(y).
This also has the added benefit of behaving the same as sampler wrapping modes, in regards to negative inputs.
2016-01-15 19:46:38 +10:00
Jules Blok
48b60649af
Merge pull request #3495 from Armada651/d3d-float
...
D3D: Use a 32-bit floating point depth buffer.
2016-01-14 00:39:23 +01:00
degasus
5f244abf28
Fifo: Create a "Fifo" namespace.
2016-01-12 23:28:26 +01:00
degasus
0c92603fd5
Merge VideoBackendHardware into VideoBackend.
...
And rename it to VideoBackendBase because of conflicts within the backends itself.
2016-01-12 23:18:58 +01:00
Jules Blok
8158d291aa
D3D: Use the full depth range for Z pokes.
2016-01-11 22:27:41 +01:00
Jules Blok
129975233f
D3D: Use a 32-bit floating point depth buffer.
2016-01-11 22:27:40 +01:00
Ryan Houdek
5a549ef663
[Android] Add support for rotation and minimizing the application
2016-01-10 13:00:32 -06:00
Pierre Bourdon
e7fbd1fd50
Merge pull request #3439 from Armada651/depth-range
...
Render: Clamp the z range to the full range.
2016-01-10 19:09:57 +01:00
Ryan Houdek
b4eb5d8e3f
Disable geometry shaders on mesa AMD/ATI drivers.
...
Causes misrenderings in games that uses them.
2016-01-09 15:09:37 -06:00
Tillmann Karras
98ea1f773a
VideoSW: fix some warnings
2016-01-09 10:38:07 +01:00
Ryan Houdek
3f15aa4b57
Add support for framedumping to OpenGL ES.
2016-01-09 00:21:20 -06:00
Pierre Bourdon
bf1c53a6e8
Merge pull request #3451 from RisingFog/libav
...
Use ffmpeg for Windows Video Dumping instead of VFW
2016-01-09 01:01:05 +01:00
Chris Burgener
c34fb3edf0
Use ffmpeg for Windows Video Dumping instead of VFW
2016-01-07 18:37:58 -05:00
Jules Blok
db551c55a2
FrameBufferManager: Fix typo in stereoscopic MSAA shader.
2016-01-07 20:05:12 +01:00
degasus
efbe5bc4b6
VideoSW: Use more VideoCommon
...
Now we require lots of empty functions, but this removes by far more duplicated code.
2016-01-06 22:10:29 +01:00
Ryan Houdek
7fcb5a803b
Merge pull request #3359 from degasus/ini
...
VideoConfig: Use "GFX.ini" for both D3D and OGL.
2016-01-06 16:02:23 -05:00
Markus Wick
05fdf0398b
Merge pull request #3313 from degasus/videosw
...
VideoSW: Clear Vertex data before usage
2016-01-06 21:56:02 +01:00
degasus
ad1f7576ad
VideoConfig: Use "GFX.ini" for both D3D and OGL.
...
They share the same format, so there is no need to separate their configs.
2016-01-06 21:43:11 +01:00
Ryan Houdek
0a42a0ab1b
Merge pull request #3428 from Sonicadvance1/proper_glextensions
...
Make GLExtensions no longer require slghtly modified GL headers
2016-01-06 15:24:47 -05:00
Mathew Maidment
0509292f86
Merge pull request #3431 from stenzek/shadercache
...
ShaderGen: Remove virtual methods and string from ShaderGeneratorInterface.
2016-01-04 19:11:14 -05:00
Markus Wick
ca7160f714
Merge pull request #3434 from lioncash/enum
...
OnScreenDisplay: Make CallbackType an enum class
2016-01-04 13:47:22 +01:00
Markus Wick
3045e08daf
Merge pull request #3430 from lioncash/compare
...
ProgramShaderCache: Simplify SHADERUID comparison operators
2016-01-04 13:42:39 +01:00
Lioncash
1bcfae5fd7
OGL: Correct unique_ptr types
...
By default unique_ptr will call delete on the given type if an array
qualifier isn't present, not delete[]. It's important to explicitly
specify an array is being handled.
2016-01-03 16:00:16 -05:00
Jules Blok
8c3108b354
Render: Clamp the z range to the full range.
2016-01-03 15:39:34 +01:00
Lioncash
01f99a04a2
VideoBackend: Get rid of a boolean global
...
Also gets rid of global headers
2016-01-02 18:03:28 -05:00
Lioncash
edda018d54
OnScreenDisplay: Make CallbackType an enum class
2016-01-02 14:57:55 -05:00
Ryan Houdek
37525f3fcf
Make GLExtensions no longer require slghtly modified GL headers.
...
In fact, removes the need for external headers at all.
2016-01-02 10:34:13 -06:00
Stenzek
617f9d9532
ShaderGen: Remove virtual methods from ShaderGeneratorInterface, move string buffer to ShaderCode
...
This fixes the crashes occuring at startup with a non-empty shader cache.
Because LinearDiskCache reads/writes to the storage of ShaderUid, ShaderUid must be trivially copyable.
Additionally, adds a static assert to LinearDiskCache to ensure this doesn't happen in the future.
The initialization of ShaderUid data has been moved to the code generation functions, so the above condition holds true.
2016-01-02 17:35:06 +10:00
Lioncash
6093d1f72a
ProgramShaderCache: Simplify SHADERUID comparison operators
2016-01-01 22:28:42 -05:00
Ryan Houdek
b4e9bbb551
Merge pull request #3336 from Sonicadvance1/improve_glextensions
...
[GLExtensions] Improve the extension loader.
2016-01-01 13:01:51 -05:00
Markus Wick
330329254c
Merge pull request #3361 from stenzek/d3d-vectored-efb-pokes
...
D3D: Implement vectored efb pokes
2015-12-30 15:27:24 +01:00
Scott Mansell
d8e5d8659e
TextureCache, fix an incorrect assert.
2015-12-29 14:25:31 +13:00
degasus
5d63a08a50
VideoSW: Clear Vertex data before usage
...
This must have no effect, everything else is usage of uninitialized memory.
2015-12-28 20:37:25 +01:00
Markus Wick
aabcd441d9
Merge pull request #3381 from Armada651/revert-3076
...
Revert "Merge pull request #3076 from void-ghost/stereo3d_presets"
2015-12-28 10:18:32 +01:00
Markus Wick
281860eafa
Merge pull request #3400 from lioncash/shadergen
...
ShaderGen: Get rid of static buffers
2015-12-28 10:09:11 +01:00
Stenzek
5cb047f449
D3D: Fix compilation error on windows
2015-12-28 15:50:01 +10:00
Markus Wick
294bb75316
Merge pull request #3295 from stenzek/d3d-xfb-msaa
...
D3D: Fix multiple issues relating to MSAA
2015-12-28 01:13:42 +01:00
Lioncash
8ce3a4aa70
ShaderGeneration: Get rid of static buffers
2015-12-26 17:01:54 -05:00
Scott Mansell
bed102ae89
Revert "ShaderGen: Toggle value of uninitialized color."
2015-12-27 02:28:29 +13:00
Stenzek
12ef4c8ae0
OGL: Fix for black framebuffer when resolution/msaa mode changes
2015-12-23 23:29:32 +10:00
Stenzek
4d48a7abfc
D3D: Fix crash on startup/resize
2015-12-23 23:07:31 +10:00
Lioncash
8371c428cd
VertexLoaderBase: Get rid of explicit delete and new
2015-12-22 20:09:54 -05:00
Lioncash
da0e647346
Render: Get rid of explicit new and delete
2015-12-22 19:10:05 -05:00
Jules Blok
8bda12bcfd
Revert "Merge pull request #3076 from void-ghost/stereo3d_presets"
...
This reverts commit 81414b4fa2
, reversing
changes made to b926061f64
.
Conflicts:
Source/Core/DolphinWX/Frame.cpp
Source/Core/VideoCommon/VideoConfig.cpp
Source/Core/VideoCommon/VideoConfig.h
2015-12-23 00:35:19 +01:00
Lioncash
e422af9cce
FramebufferManager: Get rid of raw new and delete
2015-12-22 18:06:05 -05:00
Lioncash
f448c6e291
FramebufferManagerBase: Get rid of explicit delete and new
2015-12-21 15:57:48 -05:00
Lioncash
d20ba76ab3
StreamBuffer: Make factory function return a std::unique_ptr
2015-12-21 10:21:38 -05:00
Lioncash
ec71452706
StreamBuffer: Correct function casing
2015-12-21 10:09:03 -05:00
Lioncash
1eea95a5be
StreamBuffer: Use std::array for fences
2015-12-21 10:07:56 -05:00
Lioncash
7b69fec8e7
StreamBuffer: Remove unnecessary inline specifiers
...
Methods defined directly in class bodies are inline by default
2015-12-21 10:04:14 -05:00
Lioncash
f295182833
VideoBackends: Simplify initialization and deinitialization of resources
...
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
2015-12-20 22:40:37 -05:00
hdcmeta
50b9ab4541
Set g_vertex_manager to nullptr on DX11 backend shutdown.. OGL backend already does this
2015-12-20 17:02:36 -08:00
Stenzek
a61fc372bb
VideoCommon: Change PokeEFB to take a pointer rather than a vector
...
This saves allocating a vector for the pass-through path.
2015-12-20 14:42:14 +10:00
Stenzek
7b628c99ec
D3D: Implement vectored efb pokes, increase util vertex buffer size to 64KiB
2015-12-20 00:31:58 +10:00
degasus
5e9ab28ed1
VideoSW: Clear normal vertex data.
...
This data might not be initialized but used for lighting.
This matches our ShaderGen usage in VertexShaderGen.cpp:166.
2015-12-19 10:51:42 +01:00
Pierre Bourdon
de21da5fb2
Merge pull request #3315 from degasus/test
...
ShaderGen: Toggle value of uninitialized color.
2015-12-18 14:21:37 +01:00
Scott Mansell
ebe3c49c5f
Merge pull request #3332 from degasus/master
...
MSAA: Store samples in ini files.
2015-12-19 01:37:10 +13:00
Markus Wick
e15b6e1a37
Merge pull request #3162 from lioncash/rast
...
Software: Minor changes to Rasterizer
2015-12-15 18:22:42 +01:00
degasus
e26d9f7c35
MSAA: Store samples in ini files.
2015-12-15 09:41:01 +01:00
Ryan Houdek
78dda1cf79
[OGL] Update extension checks in Render.
...
This was relying on behaviour that GLExtensions was adding fake extensions to the supported list with ES.
This no longer happens so it needed to be changed.
2015-12-13 11:39:45 -06:00
Stenzek
5dcd3cd4fd
D3D: Fix crash when taking screenshot with crop enabled
...
This was due to specifying negative source coordinates for the texture copy, which must lie within the bounds of the source and destination textures.
The behavior now is to clamp the copy region to [0 <= size <= backbuffer size], resulting in a copy region that can be smaller than the backbuffer, but never larger.
2015-12-09 02:38:24 +10:00
Stenzek
63264ac23f
D3D: Fix EFB depth buffer copies, filtering on scaled EFB copies when MSAA is enabled, real XFB filtering
...
Since ResolveSubresource cannot be used with depth textures (and throws an error with the debug layer enabled), use a shader which selects the minimum depth value from all samples.
Changes the sampler by XFBEncoder to use a linear filter, rather than point, to match GL behavior.
2015-12-08 20:29:21 +10:00
degasus
f511e539c2
VideoSW: Use Zero for undefined colors.
2015-12-06 12:39:18 +01:00
Lioncash
7762d68c4b
Rasterizer: Mark some references as const
2015-12-06 02:51:36 -05:00
Lioncash
0608ed5130
Rasterizer: Specify internal linkage on Draw
...
It's not exposed in the header.
2015-12-06 02:51:34 -05:00
Lioncash
a0924b5e1b
Rasterizer: Convert BLOCK_SIZE into a constant variable
2015-12-06 02:51:33 -05:00
Lioncash
2793785e0c
Rasterizer: Get rid of a clamp macro
2015-12-06 02:51:28 -05:00
Lioncash
9b921c2e7c
Rasterizer: Get rid of a trivial pointer cast
2015-12-06 02:44:06 -05:00
degasus
d28c9ae354
VideoSW: Wipe output vertices
...
They shall be overwritten afterwards.
2015-12-02 21:37:12 +01:00
Ryan Houdek
21b708106c
Make sure not to use a GL texture buffer past the max size.
...
The spec says that vendors can set the max texture size to be 65KB and we want 1MB.
Check the maximum supported and drop to the max if it is less than 1MB
2015-11-30 01:18:03 -06:00
Stenzek
5e803c3db3
D3D: Fix EFB->XFB copies incorrectly scaling, match GL behavior
2015-11-28 20:04:36 +10:00
degasus
fc00598785
NativeVertexFormat: Inline Initialize in contructor
...
They were only called at once, so no need to seperate them.
This also removes the only dereference of the NativeVertexFormat in VideoCommon, so backends may just return nullptr.
2015-11-24 22:48:49 +01:00
degasus
df799dd124
VideoCommon: Create default implementation for state setters
...
It's fine to pull those within the backends, so there is no need to enforce them to implement this interface.
2015-11-24 22:39:10 +01:00
Stenzek
d1b132731d
D3D: Remove redundant cast, move pitch calculation to caller
2015-11-24 21:54:19 +10:00
Stenzek
6be4608a0d
D3D: Fix crash on some drivers with small textures
2015-11-24 21:15:19 +10:00
Ryan Houdek
d27dcdba48
We shouldn't be trying to enable the SSBO extension in ES.
2015-11-23 14:47:43 -06:00
Ryan Houdek
ed5e3c054e
Enable Anisotropic filtering in ES.
...
This adds a check to make sure the vendor supports anisotropic filtering.
Pretty much all vendors support this, even the mobile ones.
2015-11-19 02:00:43 -06:00
Markus Wick
f172cda50f
Merge pull request #3191 from lioncash/rekt
...
MathUtil: Minor changes to Rectangle
2015-11-18 10:40:54 +01:00
degasus
087ba5268a
TextureCache: Rewrite EFB Copy control flow
2015-11-15 12:02:41 +01:00
degasus
dcdf8fd3ce
TextureCache: Split efb2ram from efb2tex
2015-11-15 11:59:52 +01:00
degasus
d7d8704353
D3D-TextureEncoder: Remove TCache::Entry usage
2015-11-15 11:59:52 +01:00
degasus
71b22702a1
OGL-TextureConverter: Keep care about the global state ifself
2015-11-15 11:59:52 +01:00
degasus
495902787c
OGL: Remove TCache::Entry usage in TextureConverter
2015-11-15 11:59:52 +01:00
Tillmann Karras
81d9cce70c
VideoCommon: rename TextureCache to TextureCacheBase
2015-11-06 15:43:58 +01:00
Scott Mansell
51c984dde3
Remove the "Show EFB Copy Regions" debug option.
...
It was only implemented in OpenGL, though the option was visible in both
backends, leading to memory leaks if you enabled it in DirectX.
And it wasn't particularly useful as a debug feature as it only showed
where in the EFB the copies were taken from, not what format it was, or
what the copy was used for, or what content was in the EFB at that point
in time.
Also, it stretched the copy regions relative to the window, so the
on-screen regions don't even line up with the window unless the game used
the full EFB (some pal games) and you game image stretched to the full
window.
2015-11-05 18:15:46 +13:00
Scott Mansell
05b06b7a21
Merge pull request #3227 from Tilka/sizeof
...
OGL: don't hardcode buffer sizes
2015-11-04 14:35:23 +13:00
Tillmann Karras
39313152ba
OGL: use StringFromFormat where appropriate
2015-11-04 01:56:02 +01:00
Scott Mansell
e161e714c7
Merge pull request #3226 from Tilka/shadergen
...
VideoCommon: return code/uid from shader gens
2015-11-04 13:42:49 +13:00
Tillmann Karras
bc38892db7
DriverDetails: remove BUG_BROKENINFOLOG leftovers
...
It was removed in 9618738278
.
2015-11-03 18:50:44 +01:00
Tillmann Karras
71d1eb3c31
VideoCommon: return code/uid from shader gens
...
rather than passing in non-const references
2015-11-03 14:40:23 +01:00
Tillmann Karras
c52c73f762
VideoCommon: VertexManager -> VertexManagerBase
...
It may be a bit weird to see calls to static functions in
VertexManagerBase now, but at least it's easier to see what's going on.
2015-11-02 11:53:54 +01:00
Tillmann Karras
983978ee66
VideoCommon: flush vertex manager if components change
2015-11-01 22:39:31 +01:00
Tillmann Karras
7066689131
ShaderCaches: remove unneeded typedefs
2015-10-29 14:43:05 +01:00
Tillmann Karras
f9512ece77
OGL/ProgramShaderCache: small cleanup
...
Drop an unused function and privatize the cash, er, I mean cache.
2015-10-29 13:51:25 +01:00
Lioncash
c28e3affc5
TextureCacheBase: Change CacheLinesPerRow to BytesPerRow
2015-10-22 08:14:43 -04:00
Lioncash
10c1fd7f38
MathUtil: Make Rectangle constructors and equality operator constexpr
2015-10-20 20:30:36 -04:00
Scott Mansell
9ee610830c
Make sure FORCE_EARLY_Z is defined for GLES
2015-10-18 02:37:14 +13:00
Scott Mansell
e7b2a22225
Support Conservative Depth as a fallback for EarlyZ
...
Allows Mesa based drivers to support ZCompLoc
2015-10-18 01:46:54 +13:00
Markus Wick
4d3d947efc
Merge pull request #3157 from degasus/videosw3
...
VideoSW: Wipe alpha on bypass EFB
2015-10-17 12:02:55 +02:00
flacs
d85344bd58
Merge pull request #3155 from degasus/videosw
...
VideoSW: Split up OGL window handling
2015-10-17 04:56:44 +02:00
Lioncash
b5b304cff2
VertexShaderManager: Get rid of float pointer casts
2015-10-15 23:34:54 -04:00
degasus
b69bff0690
VideoSW: Use OpenGL Core context
2015-10-14 00:13:54 +02:00
degasus
61c3a0d9e4
VideoSW: Split up OGL window handling
...
This removes OSD support for video software, but it was already broken before.
This commit does not try to fix coding style issues, the rewrite of this presentation API is splitted up.
2015-10-14 00:13:54 +02:00
flacs
b0bbe52cc9
Merge pull request #3164 from phire/samplerArrays
...
PixelShaderGen: Use arrays of texture samplers.
2015-10-12 18:44:14 +02:00
Tillmann Karras
9f8981c7c0
VertexLoaderUtils: remove simple wrapper functions
2015-10-11 23:40:50 +02:00
Scott Mansell
645e4cbbee
PixelShaderGen: Use arrays of texture samplers.
2015-10-12 05:06:39 +13:00
flacs
a7b6ae8f2c
Merge pull request #3160 from Tilka/style
...
Misc. style fixes
2015-10-11 15:36:06 +02:00
Tillmann Karras
99228633c3
OGL: simplify AA modes initialization
2015-10-10 22:51:31 +02:00
Tillmann Karras
0f1b287402
Misc. style fixes
2015-10-10 17:44:42 +02:00
degasus
d4e447555e
VideoSW: Wipe alpha on bypass EFB
...
Alpha must not be displayed.
2015-10-10 11:45:39 +02:00
shuffle2
81414b4fa2
Merge pull request #3076 from void-ghost/stereo3d_presets
...
Stereo3d presets
2015-10-03 18:10:23 -07:00
Lioncash
5464e698fc
Merge pull request #3102 from rohit-n/build-pch
...
Fix building with PCH disabled.
2015-10-03 13:30:51 -04:00
Scott Mansell
58d893e56f
Merge pull request #3075 from waddlesplash/no-regexp
...
FileSearch: Don't use RegExes, just do string comparisons.
2015-10-02 04:00:23 +13:00
flacs
696d6eae09
Merge pull request #3108 from lioncash/cstyle-array
...
ChunkFile: Provide additional helpers for C-style arrays
2015-10-01 01:55:54 +02:00
Lioncash
a10be26972
Tev: Don't savestate Zero16
...
It's an array of zeroes. There's no need.
2015-09-30 19:45:50 -04:00
Lioncash
c6678687b0
ChunkFile: Provide additional helpers for C-style arrays
...
Gets rid of magic numbers in cases where the array size is known at compile time.
This is also useful for future entries that are stack allocated arrays as these
functions prevent incorrect sizes being provided.
2015-09-30 19:45:46 -04:00
Lioncash
d6ff75d71d
OGL: Remove unnecesary FPSCounter include from Render.cpp
2015-09-29 10:01:38 -04:00
Rohit Nirmal
3b75f45cf6
Fix building with PCH disabled.
2015-09-28 11:51:08 -05:00
waddlesplash
06c6f60f5b
OGL: Use SplitPath() instead of std::regex.
2015-09-27 13:26:19 -04:00
waddlesplash
5643fe5d1f
FileSearch: Don't use RegExs, just do string comparisons.
...
Nothing used the RegEx feature of FileSearch, and GCC < 4.9
doesn't support C++11 RegEx properly, so get rid of it.
2015-09-27 13:25:51 -04:00
flacs
8ea9b07b59
Merge pull request #3093 from lioncash/header_shuffle
...
Common: Trim Common.h
2015-09-27 03:18:03 +02:00
Lioncash
cc036ca86c
Common: Remove other Common prefixed headers from Common.h
2015-09-26 18:51:58 -04:00
Lioncash
1d42db2439
Common: Move NonCopyable to its own header
2015-09-26 18:50:35 -04:00
Ryan Houdek
be667e7de8
Merge pull request #3035 from aserna3/SSAAImprovements
...
Improved OGL and D3D's AA options in UI
2015-09-26 09:27:39 -04:00
Anthony Serna
df189c3ea3
Improved D3D and OGL AA option UI
...
Removed Quality Levels from D3D AA options
Dropdown text now shows whether you're applying MSAA or SSAA
Added a description for SSAA
Moved SSAA checkbox
Cleaned up AA in backends slightly. Supported modes is now a list of ints.
2015-09-25 09:05:18 -07:00
ghost
07e4b4f7c4
VideoBackend: Video config filename is now exposed in VideoBackends.
...
It reduces redundancy. Needed make possible to save current video config.
2015-09-22 09:47:19 +03:00
Scott Mansell
c9836ff592
EGL: Don't depend on VideoCommon or Core
2015-09-22 00:36:48 +12:00
Scott Mansell
93f6563789
WGL: Don't depend on Core/VideoCommon
2015-09-22 00:36:45 +12:00
Scott Mansell
95f3c956a8
Move GL interface code out of the OpenGL video backend.
2015-09-22 00:36:45 +12:00
degasus
be16901ae1
VideoSW: Don't raise a PanicAlert because of indices
...
It's not panic, it may just render wrong. And this case seems to happen often.
2015-09-20 13:13:47 +02:00
degasus
c976e14277
GLInterface: Fix VideoSW on linux + OSX (v2)
...
Our Video Software backend isn't OpenGL Core compatible, so we need a flag to alloc a compatible one.
v2: Fix AGL profile selection.
2015-09-19 13:22:55 +02:00
Markus Wick
a7e9a154a5
Revert "GLInterface: Fix VideoSW on linux + OSX"
2015-09-18 13:40:09 +02:00
degasus
baf09c3af6
VideoSW: Remove unused function
2015-09-17 19:44:44 +02:00
flacs
e4dfb2f6bf
Merge pull request #3054 from degasus/master
...
GLInterface: Fix VideoSW on linux + OSX
2015-09-17 19:21:16 +02:00
degasus
3b5b80bf3c
VideoSW: Drop SW bbox code
...
The hardware backends don't use this shared code any more, and it's not needed for video sw either. So this was just dead code.
2015-09-17 18:21:37 +02:00