Commit Graph

104 Commits

Author SHA1 Message Date
8bd7a896ea Pica: Fix a bug in the register definitions, relating to texture wrapping. 2015-02-18 14:50:28 +01:00
aaf30ca4ee Pica/OutputMerger: Implement color format checking. 2015-02-18 14:50:28 +01:00
6c26ec72a5 Pica/CommandProcessor: Properly implement shader load destination offset registers. 2015-02-18 14:02:59 +01:00
536958fb29 Add more blend equations from 3dbrew 2015-02-09 20:41:06 -06:00
1eb591d6fd Rasterizer: Implement the other color and alpha modifiers. 2015-02-04 22:15:51 -05:00
72cc512b1e Pica: Implement blend factors. 2015-01-31 01:40:05 -05:00
b522cf4e6a Pica: Implement color/alpha channel enable. 2015-01-27 22:03:34 -05:00
b2c55bf772 Rasterizer: Implemented alpha testing. 2015-01-27 14:39:17 -05:00
ff83d23ed5 GPU: Implement the remaining depth testing functions. 2015-01-25 23:34:14 -05:00
f2b74b4fb3 Pica/Rasterizer: Add ETC1 texture decompression support. 2015-01-13 14:42:40 -08:00
0f49424022 Pica/Rasterizer: Implement backface culling. 2014-12-31 16:32:55 +01:00
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