Gareth Higgins
8060c519a6
Changed occurences of colour to color for consistency
2015-04-05 02:36:43 -04:00
archshift
cae89fb315
Allow the user to set the background clear color during emulation
...
The background color can be seen at the sides of the bottom screen or when the window is wider than normal.
2015-04-03 15:35:51 -07:00
bunnei
c1f5cb7dd5
Merge pull request #652 from neobrain/shader_output_fix
...
Pica/VertexShader: Fix a bug caused due to incorrect assumptions of consecutive output register tables.
2015-03-16 18:35:34 -04:00
Emmanuel Gil Peyrot
92fd2a1ee3
VideoCore: Add static_cast around expressions where the compiler doesn’t deduce the right type.
2015-03-16 15:14:04 +01:00
Tony Wasserka
e4f5ec6272
Pica/VertexShader: Fix a bug caused due to incorrect assumptions of consecutive output register tables.
...
We now write create a temporary buffer for output registers and copy all of them to the actual output vertex structure after the shader has run. This is technically not necessary, but it's easier to vectorize in the future.
2015-03-12 14:18:46 +01:00
bunnei
b56829df02
Merge pull request #629 from archshift/lcdfb
...
Implement SetLcdForceBlack and add implementation for color filling in the GPU code
2015-03-10 18:08:55 -04:00
bunnei
ec5bc54575
Merge pull request #643 from Subv/dem_feels
...
GPU: Implemented more depth buffer formats.
2015-03-09 22:06:30 -04:00
Subv
1248e291f0
GPU: Added the stencil test structure to the Pica Regs struct.
2015-03-09 20:13:21 -05:00
Subv
414b0741c4
GPU: Implemented more depth buffer formats.
...
This fixes the horizontal lines in Picross E, Cubic Ninja, Cave Story 3D and possibly others
2015-03-09 20:12:39 -05:00
archshift
041e99b613
Added LCD registers, and implementation for color filling in OGL code.
2015-03-09 15:51:41 -07:00
Tony Wasserka
5742367341
Pica/PrimitiveAssembly: Fix triangle strips and fans being generated with incorrect winding order.
2015-03-09 21:49:49 +01:00
archshift
7d43aef4d0
Update nihstro submodule to the initial release version.
...
Includes more opcodes to implement in the future.
2015-03-08 13:52:38 -07:00
bunnei
06bf471581
Merge pull request #636 from bunnei/refactor-screen-win
...
Set framebuffer layout from EmuWindow.
2015-03-07 18:18:40 -05:00
bunnei
9960c49c21
Set framebuffer layout from EmuWindow.
2015-03-07 17:21:19 -05:00
Subv
4b8d4d0ed5
GPU/Textures: Fixed ETC texture decoding.
2015-03-07 16:21:54 -05:00
Tony Wasserka
93e32bce72
Merge pull request #538 from yuriks/perf-stat
...
Add profiling infrastructure and widget
2015-03-07 15:30:40 +01:00
bunnei
34c31db14a
GPU: Added RGB565/RGB8 framebuffer support and various cleanups.
...
- Centralizes color format encode/decode functions.
- Fixes endianness issues.
- Implements remaining framebuffer formats in the debugger.
2015-03-03 18:26:03 -05:00
Yuri Kunde Schlesner
cd1fbfcf1b
Add profiling infrastructure and widget
2015-03-01 21:47:13 -03:00
archshift
7f9ee69a2b
Added RGBA5551 compatibility in the rasterizer
...
This allows Virtual Console games to display properly.
2015-02-27 19:15:08 -08:00
Subv
c564c21668
GPU: Implemented bits 3 and 1 from the display transfer flags.
...
Bit 3 is used to specify a raw copy, where no processing is done to the data, seems to behave exactly as a DMA.
Bit 1 is used to specify whether to convert from a tiled format to a linear format or viceversa.
2015-02-26 21:17:14 -05:00
Yuri Kunde Schlesner
ea3c99f3a2
Video core: Fix A4 texture decoding
...
It was trying to take the LSB from `coarse_x`, which would always be 0
and thus would always return the same texel from each byte. To add
insult to the injury, the conditional was actually the wrong way around
too.
Fixes blocky text in OoT.
2015-02-25 23:05:14 -03:00
Yuri Kunde Schlesner
3c50da6fc0
Video core: Fix pixelation/blockiness in textures.
...
This was caused during morton decoding by me not masking the bits of
each coordinate before merging them, so the bits from x could set bits
in y if it was >255.
2015-02-25 22:16:01 -03:00
bunnei
ed255ebaec
Rasterizer: Add support for RGBA4 framebuffer format.
2015-02-24 19:58:33 -05:00
bunnei
733c19ddd3
Rasterize with the correct color component order.
...
- Fixes a regression with #594 .
2015-02-22 13:57:24 -05:00
Tony Wasserka
34f21334ad
Merge pull request #593 from Subv/search_problem
...
Pica/VertexShader: Fixed LOOP with more than one iteration.
2015-02-22 15:51:12 +01:00
Subv
9a03e9c61d
Pica/VertexShader: Fixed LOOP with more than one iteration.
...
Previously it wouldn't jump back to the start of the loop code once it reached the end of the block.
Fixes the texture problems in a lot of games.
2015-02-21 12:52:21 -05:00
bunnei
5f9939070e
Merge pull request #588 from archshift/somebranch
...
Sweeping cleanup of Common
2015-02-20 11:41:30 -05:00
archshift
302f0b32f5
Remove duplication of INSERT_PADDING_WORDS between pica.h and gpu.h
2015-02-19 22:26:25 -08:00
Subv
5410367ebf
Rasterizer: Fixed a warning in GetWrappedTexCoord.
...
Redeclaring the variable inside the switch was causing weird behavior.
2015-02-18 23:52:47 -05:00
bunnei
ec8f2210e3
Merge pull request #580 from lioncash/emplace
...
core/video_core: Use in-place construction where possible
2015-02-18 17:36:34 -05:00
Tony Wasserka
2eee3a87f9
Pica/Rasterizer: Replace exit() calls with UNIMPLEMENTED().
2015-02-18 14:52:27 +01:00
Tony Wasserka
6e5a903286
Pica/Rasterizer: Make some local lambdas static.
2015-02-18 14:50:28 +01:00
Tony Wasserka
1561204342
Pica/BlendUnit: Implement separate color/alpha blend equations.
2015-02-18 14:50:28 +01:00
Tony Wasserka
81ebb4d682
Pica/TextureEnvironment: Add a note.
2015-02-18 14:50:28 +01:00
Tony Wasserka
e11fb96408
Pica/TextureEnvironment: Treat texture combiner source 1 as the PrimaryColor.
...
Not really sure where the difference is, but some applications seem to use this 1:1 the same way...
2015-02-18 14:50:28 +01:00
Tony Wasserka
04cd06d5c2
Pica/TextureEnvironment: Add support for the MAD-like texture combiners and clean up texture environment logic.
2015-02-18 14:50:28 +01:00
Tony Wasserka
087edcfbec
Pica/OutputMerger: Fix flipped framebuffers.
2015-02-18 14:50:28 +01:00
Tony Wasserka
6ca752ccbc
Pica/TextureUnit: Implement mirrored repeating texture wrapping.
2015-02-18 14:50:28 +01:00
Tony Wasserka
8bd7a896ea
Pica: Fix a bug in the register definitions, relating to texture wrapping.
2015-02-18 14:50:28 +01:00
Tony Wasserka
aaf30ca4ee
Pica/OutputMerger: Implement color format checking.
2015-02-18 14:50:28 +01:00
Tony Wasserka
3b5710bae6
Pica/Rasterizer: Rasterize actual pixel centers instead of pixel corners.
2015-02-18 14:50:28 +01:00
Tony Wasserka
3cb22d31a7
Pica/Rasterizer: Fix garbage pixels at triangle borders.
2015-02-18 14:50:28 +01:00
Tony Wasserka
638b370fb5
Pica/Rasterizer: Clean up and fix backface culling.
2015-02-18 14:50:28 +01:00
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).
2015-02-18 14:50:03 +01:00
Tony Wasserka
70a764d992
Pica/VertexShader: Implement the LOOP instruction.
2015-02-18 14:02:59 +01:00
Tony Wasserka
6c26ec72a5
Pica/CommandProcessor: Properly implement shader load destination offset registers.
2015-02-18 14:02:59 +01:00
Tony Wasserka
67120270f2
Pica/CommandProcessor: Work around initialized vertex attributes some more.
2015-02-18 14:02:59 +01:00
Lioncash
5d2366e1e9
core/video_core: Use in-place construction where possible
2015-02-17 17:57:23 -05:00
Emmanuel Gil Peyrot
8a1c08a0af
VideoCore: Fix a typo in Vec4 MakeVec(T, Vec3<T>), where the second argument was Vec2<T> instead.
2015-02-16 21:51:37 +00:00
Emmanuel Gil Peyrot
c439b3074d
video_core: Implement the remaining framebuffer formats in the OpenGL renderer.
2015-02-15 14:08:12 +00:00