hthh
88d52b4d69
TextureDecoder: Deduplicate some utility code
2017-01-15 20:23:26 +11:00
hthh
5d4e4aa561
TextureDecoder: Fix off-by-one errors in CMPR
2017-01-14 10:52:35 +11:00
Jules Blok
271a9fe7a9
VertexShaderManager: Break up the conditions to make it readable.
2017-01-13 14:01:17 +01:00
Jules Blok
f866748006
VertexShaderGen: Remove the need for an extra UID.
2017-01-13 14:01:17 +01:00
Stenzek
2f223e24dc
TextureDecoder: Seperate each format into its own function
2017-01-10 20:41:00 +10:00
Matthew Parlane
7a4464c3e0
Merge pull request #4599 from stenzek/point-uvs
...
GeometryShaderGen: Use lower-left origin for point texture coordinates
2017-01-08 13:40:55 +13:00
degasus
f6c7a258ed
BlendState: Use masking as a fastpath for the logic op NO_OP.
2017-01-06 14:01:39 +01:00
degasus
23b0faeba5
OGL: Use VideoCommon blend state for framebuffer configuration.
2017-01-06 14:01:39 +01:00
degasus
3df828463d
VideoCommon: Assembly blending state in a shared state object.
2017-01-06 14:01:36 +01:00
BhaaL
23d99f2f2c
specify custom brace style to fix unions
...
BreakBeforeBraces: Allman apparently includes all styles,
except for AfterUnion (which is false) when using clang-format -dump-config
2017-01-05 12:55:13 +01:00
degasus
41b0c74e30
VideoCommon: Make dst_alpha state implicit.
2017-01-04 20:02:31 +01:00
Stenzek
176177af49
GeometryShaderGen: Use lower-left origin for point texture coordinates
...
From what I can tell, the emulated GPU places (0,0) at the lower left of
the image, and we were generating texture coordinates so that (0,0) was
at the upper-left in the expansion geometry shader, causing textures
used by point sprites to be flipped vertically.
Fixes the upside-down A button in Mario Golf.
2017-01-04 20:23:07 +10:00
Stenzek
5f3c878ba2
FifoPlayer: Save/restore texture memory state for fifo logs
2017-01-03 21:16:05 +10:00
Jules Blok
a2e191649d
Merge pull request #4471 from Armada651/hybrid-depth
...
VideoCommon: Don't process the depth range in the vertex shader if it's not oversized.
2016-12-29 18:49:27 +01:00
Jules Blok
ee7a2edf35
Update comments
2016-12-27 21:32:52 +01:00
degasus
d0a73c1d90
TextureCache: Add a dirty bit for partial updates on overlapping EFB copies.
2016-12-27 17:26:04 +01:00
Jules Blok
ef82aebb97
VideoCommon: Don't process the depth range in the vertex shader if it's not oversized.
2016-12-27 14:31:17 +01:00
degasus
abf9bb170b
TextureCache: Drop unused parameter in backend API.
2016-12-26 22:10:32 +01:00
degasus
04f319066d
TextureCache: Extract BP enum check to VideoCommon.
...
We have TOO many video backends.
2016-12-26 22:10:21 +01:00
Tillmann Karras
44acd9fdb9
VideoCommon: use u32 for texture addresses
2016-12-25 18:48:19 +01:00
Lioncash
c5243d6d12
CommandProcessor: Remove unimplemented prototypes
2016-12-24 01:15:50 -05:00
Mat M
9160be50db
Merge pull request #4224 from lioncash/tcache
...
TextureCacheBase: Eliminate static state
2016-12-23 04:33:42 -05:00
Stenzek
01047319f8
Merge pull request #4517 from stenzek/mp3-blotches
...
TextureCache: Use same color coefficients for EFB2Tex as EFB2RAM
2016-12-19 22:11:38 +10:00
Stenzek
344f2e57f6
VideoCommon: Use avg(color1, color2) for color3 in CMPR textures
2016-12-19 20:17:44 +10:00
Stenzek
accce4294a
TextureCache: Use same color coefficients for EFB2Tex as EFB2RAM
2016-12-15 02:20:46 +10:00
Stenzek
5aaa5141ed
PixelShaderGen: Fix incorrect indexing of tevLerpBias
...
Fixes the white box in the fortune street fifolog.
2016-12-13 00:03:25 +10:00
Markus Wick
d64c9dd5c9
Merge pull request #4419 from degasus/master
...
Jit64: Fix a few trivial PIE issues.
2016-12-12 10:58:16 +01:00
Lioncash
8dcb05802b
ShaderManagers: Use aggregate initialization for some variables.
...
These provide the same semantics, however aggregate initialization
doesn't force the structs to be trivially copyable. memset, on the other
hand, does.
2016-12-10 17:33:51 -05:00
Lioncash
58a5395173
TextureCacheBase: Eliminate static state
2016-12-09 16:50:37 -05:00
Léo Lam
31ccfffd38
Common: Add alignment header
...
Gets rid of duplicated alignment code.
2016-12-06 20:33:53 +01:00
degasus
5082a664c8
VertexLoaderX64: Avoid unchecked pointer cast.
2016-12-04 13:09:16 +01:00
Stenzek
adc22a5e20
VideoCommon: Add method for calculating full-scale framedump rectangles
2016-11-28 21:54:54 +10:00
Stenzek
6db0ee9561
VideoCommon: Remove backbuffer size parameters from methods
...
We have the s_backbuffer_{width,height} fields to represent this, so
there's no point in passing them as parameters every time.
2016-11-28 20:14:59 +10:00
Stenzek
a83ca587c6
VideoCommon: Make FramebufferManagerBase::GetTargetSize public
2016-11-28 20:14:59 +10:00
Stenzek
a0a62c0f46
VideoConfig: Add option for full-resolution frame dumping
2016-11-28 20:14:59 +10:00
Stenzek
681294586b
Merge pull request #4455 from stenzek/png-frame-dumping
...
VideoCommon: Support dumping frames to images
2016-11-28 20:03:50 +10:00
Léo Lam
72e3f1ecec
Remove unnecessary ConfigManager includes
...
Making changes to ConfigManager.h has always been a pain, because
it means rebuilding half of Dolphin, since a lot of files depend on
and include this header.
However, it turns out some includes are unnecessary. This commit
removes ConfigManager includes from files which don't contain
SConfig or GPUDeterminismMode or GPU_DETERMINISM (which means the
ConfigManager include is not used).
(I've also had to get rid of some indirect includes.)
2016-11-27 22:38:38 +01:00
Stenzek
6d0b9b816f
VideoCommon: Support dumping frames to images
...
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.
2016-11-23 12:07:49 +10:00
Jules Blok
7e35a47b51
Cosmetics.
2016-11-13 22:17:40 +01:00
Jules Blok
d7cf5e28b6
Frame: Use PauseAndLock when switching fullscreen modes.
...
This allows us to regain exclusive mode directly from OnActive().
2016-11-11 20:36:10 +01:00
Jules Blok
0a194f8a3e
VideoConfig: Remove fullscreen flags.
...
These weren't actually settings, they were used as a bad way to communicate with the GPU thread.
2016-11-11 20:36:09 +01:00
Jules Blok
c21efa0cad
D3D: Move exclusive mode switching to UI thread.
...
This prevents deadlocks when switching to exclusive mode.
And it also allows the CPU thread to block until we've completed the switch.
2016-11-11 20:36:04 +01:00
Jules Blok
8203ea929b
BlockingLoop: Yield to UI message pump while waiting.
2016-11-11 13:37:02 +01:00
degasus
193dd97759
VideoCommon: Drop FlipImageData.
...
This function isn't used any more, and good code shouldn't use it at all. Use negative strides instead.
2016-11-10 12:59:22 +01:00
degasus
52caa4f2f5
VideoCommon/Render: Inplace frame dump encoding.
...
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.
2016-11-10 12:59:19 +01:00
degasus
a47332bf8a
VideoCommon/Render: Use a flag for screenshot.
2016-11-07 22:16:34 +01:00
degasus
d79840078f
Renderer: Threaded frame dumping.
2016-11-07 22:11:13 +01:00
degasus
3c65c5f2c5
AVIDump: Drop frames which are delayed over a savestate.
2016-11-04 18:39:50 +01:00
degasus
be29090aae
AVIDump: Add a struct for the state.
...
So AddFrame use no global state and can be threaded well.
2016-11-04 18:35:42 +01:00
degasus
dad5041737
AVIDump: Inline OSD error handling.
...
This fixes a review feedback in PR #4345 .
2016-11-04 18:03:14 +01:00
degasus
03d8efc270
AVIDump: Merge redundant variables.
...
They were always the same. We also don't scale at all.
2016-11-04 18:03:14 +01:00
degasus
112e18a5d1
AVIDump: Drop stored frame.
...
This used an invalid pointer, which was only valid within AddFrame.
This drops a feature which shall dump the last frame as it might was dropped before.
A good implementation however should "overwrite" the last frame if the time matches.
But this needs to delay every frame a bit.
2016-11-04 18:03:14 +01:00
Markus Wick
9ce1cdde98
Merge pull request #4414 from linkmauve/single-newline
...
Remove double newlines at the end of *_LOG messages
2016-11-02 12:20:46 +01:00
Emmanuel Gil Peyrot
c9e6b05ce9
Core: Remove double newlines at the end of *_LOG messages.
2016-11-02 02:09:33 +00:00
Jules Blok
2058a49465
PixelShaderGen: Remove unused global variable.
2016-10-31 15:02:08 +01:00
Jules Blok
086f839435
DriverDetails: Make the bug identifiers humanly readable.
2016-10-31 15:02:08 +01:00
Markus Wick
b9e4370023
Merge pull request #4383 from Sintendo/minor-text-fixes
...
Fix minor comment typos
2016-10-31 12:51:42 +01:00
Markus Wick
d5ca153c26
Merge pull request #4401 from JosJuice/rename-getuniqueid
...
DiscIO/SConfig: Rename GetUniqueID to GetGameID
2016-10-31 12:39:27 +01:00
Jules Blok
d0e60492cf
PixelShaderGen: Don't use a global variable.
2016-10-30 00:48:02 +02:00
Jules Blok
d778400133
DriverDetails: Add OS X to the dual-source blending bug.
2016-10-30 00:47:02 +02:00
Jules Blok
ce9f717045
OGL: Fall back to the old dual-source blending behaviour.
2016-10-29 18:00:22 +02:00
JosJuice
1081497cad
DiscIO/SConfig: Rename GetUniqueID to GetGameID
...
We call this "game ID" everywhere else, and it's not
actually completely unique.
2016-10-29 15:24:02 +02:00
Jules Blok
afe707bc18
DriverDetails: Disable dual-source blending on AMD OGL drivers.
2016-10-27 22:03:25 +02:00
Jules Blok
9e21ac8607
Merge pull request #4360 from VinDuv/fix-shader-compile
...
VideoCommon: Fix GetInterpolationQualifier calls
2016-10-25 11:53:20 +02:00
Sintendo
f163bd1048
Fix various comment typos
2016-10-24 18:27:49 +02:00
Jules Blok
122ce96ed1
PixelShaderGen: Don't use dual source blend if unsupported.
2016-10-24 00:11:55 +02:00
Jules Blok
5c406b5ef0
PixelShaderGen: Fix implicit type conversions.
2016-10-23 19:54:28 +02:00
Jules Blok
2536e37ec5
Merge pull request #4194 from Armada651/efb-source-format
...
PixelShaderGen: Add support for RGBA6 EFB format truncation.
2016-10-21 21:45:29 +00:00
Vincent Duvert
8bb459aae5
VideoCommon: Fix GetInterpolationQualifier calls
...
Commit 4969415
modified calls to GetInterpolationQualifier, but mistakenly changed the order of some boolean parameters: GetInterpolationQualifier(true, false) was changed to GetInterpolationQualifier(…, false, true).
Should fix #9783 .
2016-10-16 12:48:32 +02:00
degasus
1cc1876002
Revert "Merge pull request #4286 from shuffle2/Aestek-clean-osd"
...
This reverts commit 5c0fa4db4f
, reversing
changes made to b8731eb818
.
2016-10-15 12:44:37 +02:00
degasus
b8a1611f4a
Revert "Merge pull request #4287 from shuffle2/typo-fix"
...
This reverts commit 6bff97ea30
, reversing
changes made to 5c0fa4db4f
.
2016-10-15 12:33:27 +02:00
Mat M
b15bcc6aa0
Merge pull request #4341 from degasus/syncgpufix
...
SyncGPU: Fix savestate.
2016-10-12 07:23:38 -04:00
degasus
22681ad975
SyncGPU: Fix savestate.
2016-10-11 18:29:53 +02:00
Jules Blok
93109df654
PixelShaderGen: Use dual source blending to do 8-bit blending.
2016-10-10 15:34:55 +02:00
Jules Blok
d61ae5a88a
PixelShaderGen: Only set dither uid bit if actually used.
2016-10-10 14:32:21 +02:00
Jules Blok
e8cddae132
VideoConfig: Turn on ForceTrueColor by default.
2016-10-10 14:31:53 +02:00
Jules Blok
365e88e311
VideoConfig: Add an option to force RGB8 EFB format.
2016-10-10 14:31:53 +02:00
Jules Blok
31a4ee7bfc
PixelShaderGen: Always truncate the alpha channel to 6-bit.
2016-10-10 14:30:14 +02:00
Jules Blok
9bc466a443
PixelShaderGen: Add support for dithering.
2016-10-10 14:30:14 +02:00
Jules Blok
b958457e51
PixelShaderGen: Add support for RGBA6 EFB format truncation.
2016-10-10 14:27:30 +02:00
degasus
9f264c0872
AVIDump: Move CoreTiming into caller.
2016-10-10 12:03:18 +02:00
Markus Wick
a583d36c7f
Merge pull request #4326 from degasus/framedump
...
Framedump: Merge screenshot code with framedumping.
2016-10-10 11:48:57 +02:00
shuffle2
c8cb1fa7d7
Merge pull request #4319 from leoetlino/sysconf
...
Don't read/store settings directly from/to SYSCONF (and fix config restore)
2016-10-09 02:34:52 -07:00
shuffle2
3ec91a4e33
Merge pull request #4330 from ligfx/no_vulkan_on_mac
...
Don't build Vulkan video backend on macOS
2016-10-08 20:58:18 -07:00
Markus Wick
a86b2c15d8
Merge pull request #4322 from Helios747/I_hate_features
...
Remove Frameskip
2016-10-08 21:41:43 +02:00
degasus
64927a2f81
Renderer: Merge screenshot logic into VideoCommon.
2016-10-08 19:38:57 +02:00
anthony
b427ead0cc
Remove Frameskip
2016-10-08 11:49:51 -05:00
degasus
21e42c68c4
Renderer: Remove write-only variable.
...
Sorry, merge failure.
2016-10-08 18:26:43 +02:00
degasus
db0509560e
AVIDump: Hard code rgba.
2016-10-08 18:16:32 +02:00
degasus
0864ef4352
VideoCommon: Add custom stride for framedumping.
2016-10-08 15:44:54 +02:00
degasus
b5a91e1dfa
Framedumps: Add finish() function to limit memory lifetime.
2016-10-08 15:39:22 +02:00
degasus
ebc617882b
VideoCommon: Drop RepeatFrameDumpFrame helper.
...
This was needed with fixed framerate dumping. As we now synchronize the frames, the last one will just get padded.
2016-10-08 15:39:21 +02:00
degasus
d078309827
ImageWriter: Don't use inplace alpha truncation.
...
This may lead to errors in the D3D backend, as we overwrite read-only memory.
2016-10-08 12:02:49 +02:00
Markus Wick
4ba1100f31
Merge pull request #4269 from degasus/singlecore
...
Fifo: Fix SyncGPU on dual core mode.
2016-10-08 01:26:34 +02:00
Léo Lam
39fd6dcd5b
Fix missing includes
...
Aren't indirect includes great?
2016-10-07 23:46:41 +02:00
degasus
8c999f9ee8
VideoCommon: Mark framedump variables as private.
...
And rename them to the new naming scheme.
2016-10-07 23:17:21 +02:00
degasus
f45ddddf1c
VideoCommon: Add shared framedumping code.
2016-10-07 23:07:40 +02:00
Michael Maltese
f301ebf780
Don't build Vulkan video backend on macOS
...
There's no official implementation of the Vulkan API,
and Dolphin currently isn't set-up to work with the
single, commercially-available third-party implementation.
2016-10-06 16:53:55 -07:00
Stenzek
b6d09c61ed
TextureCache: Don't re-use pooled textures within the same frame
...
This is an issue because a driver may have to maintain two copies of a
texture if it batches all uploads together at the start of a frame.
In the Vulkan backend, we do something similar to avoid breaking out of a
render pass to copy a texture from the streaming buffer to the destination
image.
This was causing issues in the sms-bubbles fifolog, where an EFB copy to
the same address of a previously-used texture caused the previous texture
to be re-used again for a different image later on in the frame, causing
the original contents to be discarded.
2016-10-06 20:23:37 +10:00
Markus Wick
ef1bfc26b2
Merge pull request #4291 from degasus/shader_gen
...
PixelShaderGen: Fix UID issues.
2016-10-05 12:20:58 +02:00