Commit Graph

21 Commits

Author SHA1 Message Date
Ryan Houdek
bc9ef95643 Support Sampler binding in the shader.
In the cases where we support the binding layout keyword, use it for more than binding UBO location.
This changes it so it is supported for samplers as well.

Instances when this is enabled is if a device supports GL_ARB_shading_language_420pack, or if it supports GLES 3.10.
2014-07-18 17:04:03 -05:00
Tillmann Karras
0ccee6c87b Fix warnings unearthed by #579 2014-07-13 02:16:51 +02:00
degasus
22e1aa5bb4 mark all local functions as static 2014-07-11 16:07:23 +02:00
Ryan Houdek
fd37a768a6 Fix texture conversion shaders for GLSL ES.
Noticed this while messing with EFB to RAM.
We were having an implicit conversion from integer to float, GLSL ES doesn't allow implicit conversion.
Changes it to a explicit conversion to float.
2014-04-22 15:48:26 -05:00
Matthew Parlane
31cfc73a09 Fixes spacing for "for", "while", "switch" and "if"
Also moved && and || to ends of lines instead of start.
Fixed misc vertical alignments and some { needed newlining.
2014-03-11 00:35:07 +13:00
Tillmann Karras
d802d39281 clang-modernize -use-nullptr
and s/\bNULL\b/nullptr/g for *.cpp/h/mm files not compiled on my machine
2014-03-09 21:14:26 +01:00
Matthew Parlane
25341f88ef Fixes include order of TextureConversionShader.cpp 2014-03-09 12:38:29 +13:00
Tillmann Karras
315a8ba1c0 Various changes suggested by cppcheck
- remove unused variables
- reduce the scope where it makes sense
- correct limits (did you know that strcat()'s last parameter does not
  include the \0 that is always added?)
- set some free()'d pointers to NULL
2014-02-28 12:43:20 +01:00
degasus
f628695d31 comment fixes 2014-02-26 12:48:52 +01:00
degasus
1d0b6a1156 Merge duplicate parts of sampler into header 2014-02-26 11:37:29 +01:00
degasus
11efa88157 calculate constant values on shader compilation 2014-02-26 11:37:29 +01:00
degasus
8a4aa8c1f5 Rewrite texture tiling implementation
inline halfxb

So we know which is the first pixel by masking.

inline xl

inline xb a bit

inline yl

inline uv1.x shift

remove likely wrong guessed ternary operator

add pixel layout comment

inline xel

optimize the shifts a bit

inline xb

optimize shifts in a second step

extract xb

rename all variables

calculate cache line by position.x

Revert 5115b459f40d53044cd7a858f52e6e876e1211b4 "optimize the shifts a bit"

It seems I was wrong, the other way is the more natural.

use x_virtual_position instead of uv1.x for x_offset_in_block

This looks more natural and the offset should be masked anyway.

substitude factor with cache_lines

move 32bit logic in a conditional block
2014-02-26 11:37:29 +01:00
degasus
bd3beeb184 TextureConverter: Use Log2() and shifts instead of multiplications/divisions 2014-02-26 11:37:29 +01:00
degasus
f99c8a0b70 merge common parts of encoding shaders 2014-02-26 11:37:28 +01:00
Pierre Bourdon
ffe588cc24 Fix more header sorting issues in VideoCommon/ (now check-includes clean). 2014-02-20 01:01:10 +01:00
Lioncash
2afe215271 Convert all includes to relative paths. 2014-02-18 02:19:10 -05:00
degasus
e00c3ce363 TextureConverter: remove implicit int->float convertion
They was used to check if we're writing to the first or second part of one pixel.
So this is now done with a boolean and a ternary operator.
2014-01-13 12:10:17 +01:00
Scott Mansell
9aff16e7c1 Fix stupid bug in Z16L depth texture efb2ram encoding shader. 2014-01-12 13:32:06 +13:00
degasus
e6676b4565 OpenGL: fix scaled efb2ram copys
This fix a regression in revision 687097d4bc because of the wrong order of moving the sampled rect and scaling.
2014-01-05 18:19:17 +01:00
degasus
4fff5ac90d OpenGL: drop UBO-workaround usage for efb2ram shaders
It's just brainfuck to use this workaroung there. Just fetch the uniform location like all other util shaders.
2014-01-05 09:52:26 +01:00
Jasper St. Pierre
34692ab826 Remove unnecessary Src/ folders 2013-12-31 14:03:19 -05:00