Commit Graph

93 Commits

Author SHA1 Message Date
e229ff8c83 Pica/Rasterizer: Implement depth testing. 2014-12-31 16:32:55 +01:00
36291bc3f6 Pica: Add output merger definitions. 2014-12-31 15:35:54 +01:00
b7a48c422a Pica/CommandProcessor: Add support for integer uniforms. 2014-12-31 15:33:09 +01:00
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.
2014-12-29 02:08:11 -02:00
2188af4a65 Merge pull request #322 from chinhodado/master
More warning cleanups
2014-12-22 00:12:43 -05:00
0de6a08d75 Merge pull request #291 from purpasmart96/license
License change
2014-12-21 16:05:44 -05:00
0199a7d9ef More warning cleanups 2014-12-21 10:58:55 -05:00
ebfd831ccb License change 2014-12-20 21:20:24 -08:00
aff808b2fd Pica: Add support for boolean uniforms. 2014-12-20 18:06:55 +01:00
67618a2c55 Pica/VertexShader: Add support for MOVA, CMP and IFC. 2014-12-20 18:06:55 +01:00
1c972ef3b9 Add support for a ridiculous number of texture formats. 2014-12-20 18:06:54 +01:00
40f123b7c0 Pica: Unify ugly address translation hacks. 2014-12-20 18:06:53 +01:00
7e210e0229 Pica: Further improve Tev emulation. 2014-12-20 18:05:53 +01:00
0fba1d48a6 Pica: Implement texture wrapping. 2014-12-20 18:05:53 +01:00
c81f1a9ebc Pica/DebugUtils: Add support for RGBA8, RGBA5551, RGBA4 and A8 texture formats. 2014-12-20 18:05:53 +01:00
fd2539121c Pica: Initial support for multitexturing. 2014-12-20 18:05:53 +01:00
4cb7a44d4e MemMap: Renamed "GSP" heap to "linear", as this is not specific to GSP.
- Linear simply indicates that the mapped physical address is always MappedVAddr+0x0C000000, thus this memory can be used for hardware devices' DMA (such as the GPU).
2014-12-12 00:15:47 -05:00
f94d8f9603 GSP: Trigger GPU interrupts at more accurate locations. 2014-12-09 19:07:14 -05:00
0305435edd Pica: Re-enable command names on MSVC.
The affected code is no longer limited by compiler support on that platform.
2014-12-09 16:37:34 +01:00
79bb403089 More coding style fixes. 2014-12-09 16:37:34 +01:00
2793619dce citra_qt: Add enhanced texture debugging widgets.
Double-clicking a texture parameter command in the pica command lists will spawn these as a new tab in the pica command list dock area.
2014-12-09 16:37:34 +01:00
8db65723d2 Build fix for something which shouldn't have compiled successfully to begin with. 2014-12-09 16:37:34 +01:00
eb5054e6eb Fix warnings in video_core 2014-10-07 20:35:13 -04:00
6cc7c73b80 Core: Fix warnings in gpu.cpp 2014-09-13 22:55:41 -04:00
9679d231df Pica/Rasterizer: Add texturing support. 2014-08-25 22:03:18 +02:00
27cab6477e Pica/Rasterizer: Add initial implementation of texture combiners. 2014-08-25 22:03:18 +02:00
c4691b784b Pica: Add support for dumping textures. 2014-08-25 22:03:18 +02:00
f37e39deb9 Pica: Add debug utilities for dumping shaders. 2014-08-25 22:03:18 +02:00
662a1993e6 float24: Remove private default constructor
Fixes building with clang.
2014-08-13 02:54:16 -07:00
94d742fe17 Pica: Add basic rasterizer. 2014-08-12 13:50:07 +02:00
94aa9da562 Pica: Add triangle clipper. 2014-08-12 13:49:33 +02:00
9a76a2d061 Pica: Add primitive assembly stage. 2014-08-12 13:48:56 +02:00
c526512619 Pica: Add vertex shader implementation. 2014-08-12 13:48:10 +02:00
d443f0a921 Pica: Implement vertex loading. 2014-08-12 13:47:31 +02:00
1a43f69477 Pica: Add register definition for vertex loading and rendering. 2014-08-12 13:47:31 +02:00
76a586de49 Pica: Add command processor. 2014-08-12 13:47:30 +02:00
98ad16a45b Pica: Add float24 structure.
24-bit floating points are used internally for calculations on the GPU, however the current code will still emulate that with 32-bit floating points.
In the future we might want to accurately perform the calculations with correct bitness in the future, but for now we just wrap the calculations around this class.
2014-08-12 13:46:24 +02:00
7b6a7d7dfb Pica/GPU: Change hardware registers to use physical addresses rather than virtual ones.
This cleans up the mess that address reading/writing had become and makes the code a *lot* more sensible.
This adds a physical<->virtual address converter to mem_map.h. For further accuracy, we will want to properly extend this to support a wider range of address regions. For now, this makes simply homebrew applications work in a good manner though.
2014-08-12 13:32:56 +02:00
9c781a6c76 Remove the fancy RegisterSet class introduced in 4c2bff61e.
While it was some nice and fancy template usage, it ultimately had many practical issues regarding length of involved expressions under regular usage as well as common code completion tools not being able to handle the structures.
Instead, we now use a more conventional approach which is a lot more clean to use.
2014-08-12 02:17:21 +02:00
4c2bff61e5 Pica: Use some template magic to define register structures efficiently. 2014-06-12 06:10:54 -04:00
f82410e633 Further refine GPU command list debugging. 2014-06-12 06:10:53 -04:00
b0051b2203 Refine command list debugging functionality and its qt interface. 2014-06-12 06:10:52 -04:00
50b2b73be4 video core: added PICA definitions file. 2014-06-12 06:10:51 -04:00