Lioncash
361c7c9c09
VertexManagerBase: Make class constants constexpr
2016-10-01 03:37:17 -04:00
Lioncash
e61eb34ae6
VertexManagerBase: Get rid of a u16 cast
...
Just using the direct value is more straightforward
2016-10-01 01:05:43 -04:00
Stenzek
bac8c2d441
Vulkan: Work around indexed fragment output bug on AMD drivers
2016-10-01 02:40:02 +10:00
Stenzek
77a128ab87
Implement experimental Vulkan backend
2016-10-01 02:40:01 +10:00
Stenzek
828aac7890
VideoBackends: Make TextureCache::CompileShaders return a bool
2016-10-01 01:09:12 +10:00
Stenzek
6a99cbd9fc
VideoCommon: Call Renderer::SurfaceChanged on render parent resize
...
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).
2016-10-01 01:09:12 +10:00
Stenzek
5346078791
VideoCommon: Add config fields for multithreading and validation layers
2016-10-01 01:09:12 +10:00
Stenzek
09638e714e
VideoCommon: Extend DriverDetails to support both OpenGL and Vulkan
2016-10-01 01:09:12 +10:00
Stenzek
a71381e80a
VideoCommon: Add APIType entry for Vulkan
2016-10-01 01:09:11 +10:00
Stenzek
75e4e42e56
ShaderGen: Work around issue with glslang and dynamic vector subscripts
...
Seems that vec[eye] will select vec.x no matter what the value of eye is.
2016-10-01 01:09:11 +10:00
Stenzek
7f3a876aae
ShaderGen: posmtx should be a 4-component unsigned byte
...
This is a global change across backends, so should be tested for
regressions.
2016-10-01 01:09:11 +10:00
Stenzek
d9c034e8cc
ShaderGen: Specify attribute/output locations/bindings explicitly
...
This also shifts the SSBO index from index 3 to index 0.
2016-10-01 01:09:11 +10:00
Markus Wick
3696c2b022
Merge pull request #4210 from degasus/arm
...
JitArm64: Small cleanup + speedups.
2016-09-27 18:45:14 +02:00
Markus Wick
9525a9e048
Merge pull request #3490 from degasus/singlecore
...
Fifo: Use SyncGPU timings for single core.
2016-09-27 10:33:47 +02:00
degasus
732e0ff03a
VertexLoaderArm64: Mark register allocation as static const.
2016-09-26 22:19:07 +02:00
degasus
258f48572d
VertexLoaderJit: Fix out-of-bounds access for zfreeze.
...
This fixes a GCC6.1 warning.
2016-09-17 16:47:12 +02:00
degasus
735da0ed69
Fifo: Use SyncGPU timings for single core.
2016-09-17 16:25:13 +02:00
Jules Blok
da43f9a156
PixelShaderGen: Always divide the texture coordinates by q.
...
Some games will set q to a different value than 1.0 through
texture matrix manipulations. It seems the console will still
do the division in that case.
2016-09-07 21:13:16 +02:00
Scott Mansell
0119f1302f
Merge pull request #4177 from phire/useless_cases
...
BPStructs: remove case statements which never match.
2016-09-06 00:56:09 +12:00
Scott Mansell
a665743b70
BPStructs: remove case statments which never match.
...
Visual Studio's code analyzer complains about these.
2016-09-06 00:40:49 +12:00
EmptyChaos
aa16282516
Core: Change CoreTiming event key from int to EventType*
...
Replace 'int' keys with something that carries type information.
Performance is neutral.
2016-09-03 14:55:44 +10:00
Jules Blok
d072d6d336
Merge pull request #4170 from Armada651/float-abs
...
VertexShaderManager: Explicitly use floating-point variant of abs.
2016-09-01 19:03:03 +02:00
Jules Blok
9fb6f93ca1
PixelEngine: Add missing static specifier for `s_token_finish_mutex`.
2016-09-01 17:28:48 +02:00
Jules Blok
376cadb862
VertexShaderManager: Explicitly use floating-point variant of abs.
...
Some compilers don't have an automatic abs() overload for floats.
Doesn't really matter if they use the integer variant here, but
it's better to be explicit about the fact that we're using floats.
2016-09-01 17:23:07 +02:00
Jules Blok
50984d85b0
Merge pull request #4164 from Armada651/sonic-clipping
...
VertexShaderGen: Move the sonic epsilon hack to the vertex shader.
2016-09-01 15:28:09 +02:00
EmptyChaos
e0d4dc6fed
VertexShaderGen: Fix D3D X3014 compile error
...
float2 requires 2 parameters in HLSL apparently.
2016-09-01 14:43:19 +10:00
Jules Blok
debaf63fe8
VertexShaderGen: Move the sonic epsilon hack to the vertex shader.
...
In the vertex shader we have control over the depth clipping planes,
so we don't have to offset every floating point value and lose accuracy.
2016-09-01 01:14:14 +02:00
Preston Smith
94cbe0c12a
Comments
2016-08-31 06:40:50 -05:00
Preston Smith
5a6b876dbd
Hardware renderer fix
2016-08-30 18:33:23 -05:00
Jules Blok
92920c4005
TextureCacheBase: Address 0x0 is valid, don't you dare ignore it.
2016-08-30 16:45:49 +02:00
Jules Blok
35a270d2a8
TextureConversionShader: Don't use the float specifier in shader code.
2016-08-24 17:42:32 +02:00
Jules Blok
f7987017a0
PixelShaderManager: Use signed integers for the depth range parameters.
2016-08-23 15:54:05 +02:00
Jules Blok
a8a9348913
OGL: Handle cases where reversed depth is already used.
2016-08-23 15:54:04 +02:00
Markus Wick
52af0770c3
Merge pull request #4141 from lioncash/vtx
...
VertexManagerBase: Get rid of static state
2016-08-23 07:33:25 +02:00
Lioncash
2bf05a544d
VertexManager: Correct variable naming scheme
...
Altered to indicate regular class members
2016-08-22 20:01:00 -04:00
Markus Wick
10d20d47aa
Merge pull request #4132 from lioncash/enum-fifo
...
Fifo: Make SyncGPUReason an enum class
2016-08-22 16:49:40 +02:00
Lioncash
1392efa91d
VertexManagerBase: Get rid of static behavior
2016-08-21 23:30:38 -04:00
JosJuice
31c530c7b3
Merge pull request #3386 from lioncash/memory
...
Common: Namespace MemoryUtil
2016-08-19 11:04:45 +02:00
Lioncash
5635d4b709
Fifo: Make SyncGPUReason an enum class
2016-08-18 22:35:58 -04:00
Jules Blok
e86d7cbc99
OGL: Workaround gl_ClipDistance bug on Mesa i965.
2016-08-18 01:08:39 +02:00
Jules Blok
7078216b61
Improve documentation.
2016-08-16 21:09:58 +02:00
Jules Blok
8c1c7fc2da
Cosmetics.
2016-08-15 13:11:30 +02:00
Jules Blok
959d1879e5
VertexShaderGen: Fix far clipping.
...
We should only check whether z > 0, we don't care about w.
2016-08-15 13:11:29 +02:00
Jules Blok
afa251af42
DriverDetails: Add bug for broken gl_ClipDistance on i965.
2016-08-15 13:11:28 +02:00
Jules Blok
94927f360f
VideoCommon: Add a user-defined far clipping plane.
2016-08-15 13:11:28 +02:00
Jules Blok
9596ec8971
GeometryShaderGen: Pass-through clipping distance.
2016-08-15 13:11:27 +02:00
Jules Blok
a141e91dd2
OGL: Check for GL_DEPTH_CLAMP support.
...
It's not available in OpenGL ES and officially it's not supported on OpenGL 3.0/3.1.
Fallback to old depth range code if there is no method to disable depth clipping.
It's more important to have correct clipping than to have accurate depth values.
Inaccurate depth values can be fixed by slow depth.
2016-08-15 13:11:26 +02:00
Jules Blok
4582853af4
VertexShaderGen: Use reversed depth range.
2016-08-15 13:11:26 +02:00
Jules Blok
e9e81ece65
VideoBackends: Enable depth clamping.
2016-08-15 13:11:25 +02:00
Jules Blok
b1ed7e80fb
VertexShaderGen: Clip z using user-defined clipping planes.
2016-08-15 13:11:25 +02:00