Jannik Vogel
4c98113b57
Pica: Implement W-Buffer in SW rasterizer
10 years ago
Emmanuel Gil Peyrot
691a42fe98
VideoCore: Run include-what-you-use and fix most includes.
10 years ago
Dwayne Slater
6b775034dd
Add immediate mode vertex submission
10 years ago
bunnei
a949fd5f25
pica_types: Replace float24/20/16 with a template class.
10 years ago
bunnei
b003075570
pica: Implement decoding of basic fragment lighting components.
- Diffuse
- Distance attenuation
- float16/float20 types
- Vertex Shader 'view' output
10 years ago
Yuri Kunde Schlesner
195fedccf0
VideoCore: Unify interface to OpenGL and SW rasterizers
This removes explicit checks sprinkled all over the codebase to instead
just have the SW rasterizer expose an implementation with no-ops for
most operations.
10 years ago
Lioncash
aec28ed91e
video_core: Reorganize headers
10 years ago
bunnei
18527b9e21
Shader: Move shader code to its own subdirectory, "shader".
11 years ago
bunnei
642b9b5030
GPU: Refactor "VertexShader" namespace to "Shader".
- Also renames "vertex_shader.*" to "shader_interpreter.*"
11 years ago
Tony Wasserka
d2c3ecc8d8
Pica/Clipper: Output proper number of triangles in debugging logs.
11 years ago
zawata
92bfec0566
VideoCore: Fix floating point warning
11 years ago
bunnei
1b42d55a9d
Pica: Create 'State' structure and move state memory there.
11 years ago
Tony Wasserka
365236fa4c
Pica: Cleanup clipping code and change screenspace z to range from -1..0.
The change in depth range seems to reflect better to what applications are expecting, and makes for cleaner code overall (hence is more likely to reflect hardware behavior).
11 years ago
Yuri Kunde Schlesner
8369ee5803
Rasterizer: Pre-divide vertex attributes by W
Execute the division-by-W for perspective-correct interpolation of
values in the clipper, moving them out of the rasterization inner loop.
11 years ago
Yuri Kunde Schlesner
7e9bc85cc8
Clipper: Compact buffers on each clipping pass
Use a new buffer management scheme in the clipper that allows using a
bounded minimal amount of buffer space. Even though it copies more data
it is still slightly faster likely due to using less cache.
11 years ago
Yuri Kunde Schlesner
a320d1a5b4
Clipper: Avoid dynamic allocations
The triangle clipper was allocating its temporary input, output and work
buffers using a std::vector. Since this is a hot path, it's desirable to
use stack allocation instead.
11 years ago
purpasmart96
ebfd831ccb
License change
11 years ago
Yuri Kunde Schlesner
0600e2d8b5
Convert old logging calls to new logging macros
11 years ago
Lioncash
ac58b76e71
Fix two format strings.
11 years ago
Sean
9a012ff007
Fix some warnings
11 years ago
Lioncash
eb5054e6eb
Fix warnings in video_core
11 years ago
bunnei
20d169e4a1
VideoCore: Fixes rendering issues on Qt and corrects framebuffer output size.
11 years ago
Tony Wasserka
94d742fe17
Pica: Add basic rasterizer.
12 years ago
Tony Wasserka
94aa9da562
Pica: Add triangle clipper.
12 years ago