bunnei
74186a5f01
gl_shader_gen: Use explicit locations for vertex shader attributes.
10 years ago
bunnei
e663f5c914
gl_shader_gen: Optimize code for AppendAlphaTestCondition.
- Also add a comment to AppendColorCombiner.
10 years ago
bunnei
e7b1f2ae0a
gl_rasterizer: Define enum types for each vertex texcoord attribute.
10 years ago
bunnei
0ebcff710e
gl_shader_gen: Various cleanups to shader generation.
10 years ago
bunnei
240a3b80d9
gl_rasterizer: Use MMH3 hash for shader cache hey.
- Includes a check to confirm no hash collisions.
10 years ago
bunnei
71edb55114
gl_shader_gen: Require explicit uniform locations.
- Fixes uniform issue on AMD.
10 years ago
bunnei
5ef2df056d
gl_shader_gen: Rename 'o' to 'attr' in vertex/fragment shaders.
10 years ago
bunnei
c2c4faef4c
gl_shader_gen: AppendAlphaModifier default should be 0.0, not vec4(0.0).
10 years ago
bunnei
bd833b8dd8
gl_shader_gen: Fix bug where TEV stage outputs should be clamped.
10 years ago
bunnei
f2e7f7e101
gl_rasterizer: Add documentation to ShaderCacheKey.
10 years ago
bunnei
4b5141954e
gl_shader_gen: Add additional function documentation.
10 years ago
bunnei
2a0a86f629
gl_shader_util: Cleanup header file + add docstring.
10 years ago
bunnei
a74774257e
gl_shader_gen: Various cleanups + moved TEV stage generation to its own function.
10 years ago
bunnei
c86b9d4242
renderer_opengl: Refactor shader generation/caching to be more organized + various cleanups.
10 years ago
bunnei
3c057bd3d8
gl_rasterizer: Move logic for creating ShaderCacheKey to a static function.
10 years ago
bunnei
b02a533d94
gl_shader_util: Use vec3 constants for AppendColorCombiner.
10 years ago
bunnei
37b0aa5af7
gl_rasterizer: Fix typo in uploading TEV const color uniforms.
10 years ago
bunnei
82f3e6dc69
gl_shader_util: Fix precision bug with alpha testing.
- Alpha testing is not done with float32 precision, this makes the HW renderer match the SW renderer.
10 years ago
Subv
e3f4233cef
Initial implementation of fragment shader generation with caching.
11 years ago
Emmanuel Gil Peyrot
14af5919ba
CitraQt, SkyEye, Loader, VideoCore: Remove newlines in LOG_* calls.
The LOG_* function itself already appends one.
10 years ago
Rohit Nirmal
32391cffdd
Silence -Wsign-compare warnings.
10 years ago
Martin Lindhe
bafb7afba2
fix some xcode 7.0 warnings
10 years ago
Lioncash
751fbfdcc3
general: Silence some warnings when using clang
10 years ago
Lioncash
aec28ed91e
video_core: Reorganize headers
10 years ago
Lioncash
1fa772393b
video_core: Remove unnecessary includes from headers
10 years ago
Lioncash
8a3428f16c
renderer_opengl: Remove unimplemented function declaration
10 years ago
Lioncash
526eb33d1e
video_core: Remove unused variables
10 years ago
Lioncash
7b72b71605
gl_rasterizer: Replace push_back calls with emplace_back in AddTriangle
10 years ago
aroulin
1484a23530
Shader JIT: Use SCALE constant from emitter
10 years ago
aroulin
87e3b9ffc0
Shader: Fix size_t to int casts of register offsets
10 years ago
Yuri Kunde Schlesner
b044c047c4
OpenGL: Use Sampler Objects to decouple sampler config from textures
Fixes #978
10 years ago
Yuri Kunde Schlesner
466e608c19
OpenGL: Remove ugly and endian-unsafe color pointer casts
10 years ago
Yuri Kunde Schlesner
ec28f037e6
OpenGL: Add support for Sampler Objects to state tracker
10 years ago
aroulin
ba998b85a1
video_core: Fix format specifiers warnings
10 years ago
aroulin
179ad35c2e
x64: Proper stack alignment in shader JIT function calls
Import Dolphin stack handling and register saving routines
Also removes the x86 parts from abi files
11 years ago
Subv
58a04c0776
Pica: Added the primitive_restart register (0x25f) to the registers map.
10 years ago
Subv
149ea561a6
Pica: Add the vertex_offset register to the Pica registers map.
10 years ago
aroulin
84959be150
Shader JIT: Fix SGE/SGEI NaN behavior
SGE was incorrectly emulated w.r.t. NaN behavior as the CMPSS SSE
instruction was used with NLT
10 years ago
Subv
12a11472f1
GPU: Implemented register 0x22A.
This is the equivalent of the "first" parameter in glDrawArrays, it tells the GPU the vertex index at which to start rendering.
Register 0x22A doesn't affect indexed rendering.
11 years ago
Yuri Kunde Schlesner
a1a5570e97
Replace the previous OpenGL loader with a glad-generated 3.3 one
The main advantage of switching to glad from glLoadGen is that, apart
from being actively maintained, it supports a customizable entrypoint
loader function, which makes it possible to also support OpenGL ES.
10 years ago
bunnei
f3cef178e3
gl_rasterizer_cache: Detect and ignore unnecessary texture flushes.
11 years ago
aroulin
f52d8c1a9b
Shader JIT: Fix float to integer rounding in MOVA
MOVA converts new address register values from floats to integers using truncation
10 years ago
archshift
dd0e1061ef
Shader JIT: ifdef out reference to ifdef'd out shader_map
shader_map was only defined on x86 architectures, but was cleared on shutdown
with no ifdef protection. Ifdef this out so non-x86 architectures can be built.
11 years ago
Yuri Kunde Schlesner
0fcabd2b11
Integrate the MicroProfile profiling library
This brings goodies such as a configurable user interface and
multi-threaded timeline view.
11 years ago
Subv
583d777b1a
HWRenderer: Added a workaround for the Intel Windows driver bug that causes glTexSubImage2D to not change the stencil buffer.
Reported here https://communities.intel.com/message/324464
11 years ago
Yuri Kunde Schlesner
eff10959de
fixup! Shaders: Fix multiplications between 0.0 and inf
11 years ago
Yuri Kunde Schlesner
d8ef20c856
Shader JIT: Tiny micro-optimization in DPH
11 years ago
Yuri Kunde Schlesner
630a850d4d
Shaders: Fix multiplications between 0.0 and inf
The PICA200 semantics for multiplication are so that when multiplying
inf by exactly 0.0, the result is 0.0, instead of NaN, as defined by
IEEE. This is relied upon by games.
Fixes #1024 (missing OoT interface items)
11 years ago
Yuri Kunde Schlesner
082b74fa24
Shaders: Explicitly conform to PICA semantics in MAX/MIN
11 years ago
Yuri Kunde Schlesner
76247170df
Shader JIT: Add name to second scratch register (XMM4)
11 years ago