1
0
mirror of https://github.com/blawar/GLideN64.git synced 2024-07-07 03:13:49 +00:00
Commit Graph

1826 Commits

Author SHA1 Message Date
Sergey Lipskiy
85101a5d67 Yet another fix for gDPLoadBlock line calculation.
Fixed  pilotwings: text issues (regression) #927
2016-03-24 10:33:40 +06:00
Jools Wills
dc23dc6be7 don't write to the logfile if it doesn't open correctly (eg permissions) #930 2016-03-24 09:27:09 +06:00
Sergey Lipskiy
d1129ffa36 Fix texture coordinates calculation in GLES2 vertex shader 2016-03-24 09:24:53 +06:00
Sergey Lipskiy
8d3e6ef2f9 Revert "Reset TLUT mode to NONE after each frame."
This reverts commit 6108b13eab.

Fixed CI textures load in Quake 64
2016-03-23 23:07:06 +06:00
Sergey Lipskiy
7875b6057f Detect microcodes, where texture perspective correction is always enabled.
Fixed Quake 64 HLE incorrect particles. #637
2016-03-23 22:15:19 +06:00
Sergey Lipskiy
cc5dc009d8 Use current TLUT mode in texture CRC.
Hopefully fixed quake 2: wrong colors on corpses #328
2016-03-23 21:14:21 +06:00
Sergey Lipskiy
8488ebccd2 Fix texture coordinates calculation in vertex shader when TexturePersp disabled.
Fixed Rogue Squadron Sky is broken [regression] #924
2016-03-23 10:22:25 +06:00
Sergey Lipskiy
0fb603dd29 Clear gSP.status on dlist start.
Fixed gSPObjLoadTxtr for StarCraft64, #472
2016-03-22 21:59:30 +06:00
Sergey Lipskiy
5fc82399bc Save correct ConfigOptionsBitSet to shader storage header.
Fix Enabling HW Lightning with Shader Storage enabled breaks lightning #922
2016-03-22 20:51:08 +06:00
Sergey Lipskiy
d8f8f587cf Fix texture clamp size calculation during texture load.
Fixed Knife Edge: wrong texts #846
Warning: texture load changed, regressions possible.
2016-03-22 20:51:00 +06:00
Sergey Lipskiy
f0b76aeb3e Fix custom windowed mode, issue #917 2016-03-21 21:11:32 +06:00
Sergey Lipskiy
cf8d597458 Correct hack for Blast Corps.
Fixed Blast Corps background missing #418
2016-03-20 19:48:51 +06:00
Sergey Lipskiy
a5e7bc56cd Add blend mode for Bomberman 64: the Second Attack
Fixed issue #544
2016-03-20 19:33:37 +06:00
Sergey Lipskiy
3c675b1cfb Do not draw Sprite2D when sprite->stride <= 0.
Fixed crash in Super Robot Spirits: Crash rankings option in HLE. #909
2016-03-20 17:43:12 +06:00
Sergey Lipskiy
bcde07a978 Don't skip buffer height calculation in gDPFillRectangle.
Fixed regression in Super Robot Spirits: Crash rankings option in HLE. #909
2016-03-20 13:24:26 +06:00
Sergey Lipskiy
769e474ed9 Set texrect vertex alpha to 1 if alpha combiner uses only shade alpha.
Fixed regression in bottom of the 9th: missing gfx (title screen ..) #913
2016-03-20 12:30:41 +06:00
Sergey Lipskiy
fedc15fafd Revert "Set texrect vertex alpha to 1 for Pokemon Stadium 2."
This reverts commit 54e0c533e9.
2016-03-20 12:24:10 +06:00
Sergey Lipskiy
3cfb377155 Fixed scissor in FrameBufferList::renderBuffer when AA enabled.
Fixed cut image in fullscreen mode with AA enabled in some games, e.g Mario Party 3
2016-03-19 20:36:56 +06:00
Sergey Lipskiy
ea62a778fa Force resolve multisampled buffer in FrameBufferList::renderBuffer.
Fixed Mario Party 3 - Missing characters and textbox in intro #901
2016-03-19 20:36:54 +06:00
Sergey Lipskiy
325082b2bb Don't call gDPFullSync() when config window is open.
gDPFullSync() calls buffers read, which can be broken when settings changed.

Fixed Enabling and disabling Antialasing midgame makes the emulator crash #903
2016-03-19 20:36:49 +06:00
Sergey Lipskiy
096d2f7d7e Fix screenshot capture from antialased buffer, issue #905 2016-03-19 19:35:59 +06:00
Sergey Lipskiy
05466632af Correct main bufer height calculation again:
fix regression caused by commit 3215a8ad5d

Fixed regression issue #902
2016-03-19 19:21:05 +06:00
Sergey Lipskiy
04b1f3f9f9 Correct gDPLoadBlock line calculation again:
fixed regression caused by commit f6be5fd39

Fixed regression in Racing Simulation 2 #167
2016-03-19 19:20:58 +06:00
Sergey Lipskiy
80c954e5cc Move modify_vtx transformations to vertex shader.
Fixed Jeremy McGrath Supercross 2000: missing jauge line in menu #274
This game sets coordinates of lines vertices via modify_vtx.
modify_vtx set screen coordinates for the vertex.
Screen coordinates must be converted back to normalized device coordinates (NDC)
to apply viewport transformation. Unfortunately, the screen coordinates set are out of current viewport
and just clipped after transformation to NDC coordinates and viewport transformation.
Solution: use fullscreen viewport for modified vertex coordinates and
transform coordinates according to this viewport.
2016-03-19 14:02:57 +06:00
Sergey Lipskiy
7549e04157 Move calculations from drawLLETriangle to vertex shader. 2016-03-19 14:02:49 +06:00
Sergey Lipskiy
16f5bfa423 Use correct screen scale when native resolution used. 2016-03-17 16:05:26 +06:00
Sergey Lipskiy
f6be5fd39f Fix bug with line calculation in gDPLoadBlock.
Fixed South Park Rally (All) - Gfx Issue #391
and probably other similar issues.
2016-03-17 09:29:57 +06:00
Sergey Lipskiy
2a56af9da1 Always update texture for texrect.
Fixed  Star Wars Episode I - Racer (J) Displaying wrong text. #510
The game uses the same CI texture with different palettes.
Each palette produces different set of hieroglyphs from the texture.
Current palette depends on tile index, which is set by tile parameter of texrect.
2016-03-15 15:46:08 +06:00
AmbientMalice
f59518f024 Correct texrectVertexFullAlpha hack description 2016-03-15 10:22:59 +06:00
Sergey Lipskiy
54e0c533e9 Set texrect vertex alpha to 1 for Pokemon Stadium 2.
Texrect vertex alpha was set to 1 for all games in d506d6134d commit as fix for issue #721.
It causes regression in Duke Nukem 64, issue #906,
so I made separate hack and enable it for PS2.
2016-03-14 21:50:33 +06:00
Sergey Lipskiy
0ec6d9d0bd Correct alpha compare. 2016-03-13 19:07:30 +06:00
Sergey Lipskiy
2840c89629 Add optimization hacks for depth buffer read in PD and CBFD:
- read depth buffer only when texturedRectDepthBufferCopy called for current frame
- for Conker, read depth buffer only in texturedRectDepthBufferCopy.
- for PD the buffer need to be read twice, otherwise coronas may poke through objects.
2016-03-13 17:53:08 +06:00
Sergey Lipskiy
444aa8320a Fix depth buffer copy for Perfect Dark. 2016-03-13 17:05:25 +06:00
Sergey Lipskiy
ede0a046c2 Fix DepthBufferToRDRAM::_prepareCopy for Native Resolution mode.
Fixed issue #888.
2016-03-13 17:02:10 +06:00
Sergey Lipskiy
5176e94c58 Fix screenshot capture when fb emulation enabled.
Fixed issue #883
2016-03-12 21:06:42 +06:00
Sergey Lipskiy
072553b3f7 Fix screen scale for LOD when multiple of native resolution is used.
Fixed issue #890
2016-03-12 20:56:44 +06:00
Sergey Lipskiy
a2c39afc19 Fixed crash in RDRAMtoFrameBuffer::CopyFromRDRAM in GLES2 mode. 2016-03-12 20:39:54 +06:00
Sergey Lipskiy
ff67350c8c Revert "Increase only y coordinate of rect in COPY or FILL mode."
because it causes regression in Mischief Makers.

This reverts commit 143a68bc07.
2016-03-12 20:09:34 +06:00
Sergey Lipskiy
9d8ef24777 Code refactor: use std::string instead of plain char buffer in compileCombiner. 2016-03-12 20:09:29 +06:00
Sergey Lipskiy
b7369e905e Correct alpha compare:
- Take into account coverage flags.
  This is still not quite correct without proper coverage emulation.
- Discard pixels with zero alpha if uCvgXAlpha flag is set.
  Resulted pixel coverage is function of pixel alpha multiplied by actual
  coverage in that mode, thus pixel with zero alpha has zero coverage and discarded.

Fixed regression in BAR, issue #866
2016-03-12 20:08:27 +06:00
Francisco Zurita
56f85e02f8 Fix OpenGL ES 3.0 plugin in Nexus 6p 2016-03-11 20:49:51 +06:00
Sergey Lipskiy
913b0e7635 Disable fog for Turbo3D ucode.
Fixed menu text in Dark Rift, issue #648
2016-03-07 15:29:46 +06:00
matto
438f5e327b Adds noisy warning if we can't find Texture Image support
This was confusing me for a while as it would simply fail to find the
proper support and I was confronted with a blank screen in certain areas.
This warning (and the associated change of default. I'd like users to see
warnings as well) will help others figure out why there is a blank screen.

My driver supports the necessary extensions (but not 4.3), so if I force it to
advertise 4.3 support (and glsl 420 support) it will properly render.
I tried to create a patch that only looks for the proper extension, and
it works for me, but I feel as though it would depend on behaviour that
most GL implementations would not implement the same way so I've put
it in a separate branch and probably won't request to merge it.
Mesa should get 4.3 support soon enough anyway, so it shouldn't
be an issue for much longer.
2016-03-07 13:08:59 +06:00
matto
7fb2ad2d5b Fixing what is almost certainly a memory leak 2016-03-07 12:58:49 +06:00
Sergey Lipskiy
675d777e92 Fix windowed modes list initialization in GUI. 2016-03-06 21:23:48 +06:00
Sergey Lipskiy
c504b9b216 Correct depth buffer removal:
if depth buffer removed, clear pointers on it for all frame buffers.
2016-03-06 21:12:23 +06:00
Sergey Lipskiy
fbbbe147c6 Correct hack for texrect textures.
Fixed texture coordinates for backgrounds in Dark Rift, issue #648
2016-03-05 20:23:00 +06:00
Sergey Lipskiy
67cab52909 Fix tile width calculation in LOADTYPE_TILE mode.
Fixed background textures size in Dark Rift.
2016-03-05 20:09:11 +06:00
Sergey Lipskiy
143a68bc07 Increase only y coordinate of rect in COPY or FILL mode. 2016-03-05 20:06:41 +06:00
Sergey Lipskiy
024c48218a Fix frame buffer texture detection when load tile is not 7.
Fixed wrong frame buffer detection in Tetrispere intro, issue #681
Terisphere uses tile 2 as load-tile and as base tile.
2016-03-05 17:55:30 +06:00