Sergey Lipskiy
ef7ad9a549
Correct force clamp condition in OGLRender::drawTexturedRect
...
Fixed sun in Perfect Dark, which was broken after commit ba89dce8512:
Remove textures coordinates swap in case of lower coordinate is larger than higher one.
2015-05-13 10:18:53 +06:00
Sergey Lipskiy
d9e9955668
Implement texture packs path selection.
2015-05-13 10:18:52 +06:00
Sergey Lipskiy
7178145462
Fix mipmap when mipmap_lvl == 0.
...
Fixed AeroFighters Assault: texture issue on the plane (in game and menu) #118
2015-05-13 10:18:51 +06:00
Sergey Lipskiy
eb42f8fe46
Code cleanup: remove unused gDP.texRect struct and related code.
2015-05-13 10:18:50 +06:00
Sergey Lipskiy
fa1ef45101
Fix texture coordinates for texrect flip.
...
Fixed text in SM64 (E), issue #259
2015-05-13 10:18:50 +06:00
Sergey Lipskiy
f266e91981
Remove textures coordinates swap in case of lower coordinate is larger than higher one.
...
It is legacy code. Not sure which issue it intended to fix.
2015-05-13 10:18:49 +06:00
Sergey Lipskiy
b7d5819ec6
Implement video restart on settings change.
2015-05-13 10:18:48 +06:00
Sergey Lipskiy
9d422acae3
Enable NoN for Perfect Dark ucode.
...
That fixed menu screen in Perfect Dark, #260 . Otherwise background polygons are z-clipped.
2015-05-13 10:18:48 +06:00
Sergey Lipskiy
12658040f6
Fix int to bool conversion.
2015-05-13 10:18:47 +06:00
Sergey Lipskiy
1e6684014e
Add GL_DEPTH_CLAMP state caching.
2015-05-13 10:18:46 +06:00
Sergey Lipskiy
08f4278892
Correct F3D_Tri4.
2015-05-13 10:18:46 +06:00
Sergey Lipskiy
bc34838db6
Fix pause screen in Conker BFD.
...
How it work:
- content of previous main frame buffer is copied into depth buffer area.
- CPU applies blur to th eimage in depth buffer area.
- Depth buffer is used as background texture for pause screen.
Solution:
1. Do not use depth buffer FBO as texture. Image must be load from RDRAM.
2. If current color image is depth image and previous color buffer is used as
texture for it, copy content of color image in RDRAM to depth image area.
2015-05-13 10:18:45 +06:00
Sergey Lipskiy
62aa6495ec
Revert "Remove redundunt glTexParameter calls."
...
Commit was based on wrong assumption that glTexParameters sets parameter
for current texture. Actually it sets parameter for current TMU.
glTextureParameter sets parameter per texture, but it is OGL 4.5
This reverts commit 0526d284ef377981cf45bf764dd8c0e7ea571f6e.
2015-05-13 10:18:44 +06:00
Sergey Lipskiy
43eac44f91
Correct RDRAMtoFrameBuffer::CopyFromRDRAM :
...
fuls and fult for gSP.textureTile[0] should be zero.
2015-05-13 10:18:44 +06:00
Sergey Lipskiy
58799e767f
Fix scissor in FrameBufferList::renderBuffer for windowed mode.
...
Fixed top of the screen being cut.
2015-05-13 10:18:43 +06:00
Sergey Lipskiy
59e86b7794
Fix DepthBufferToRDRAM::CopyToRDRAM when multisampling is on.
2015-05-13 10:18:42 +06:00
Sergey Lipskiy
d06befb4eb
Add a hack for Mario Golf replays.
...
Replays works only if depth buffer FBO is NOT used as texture
because CPU copies color frame buffer for replays into depth buffer area.
Pause screen in Zelda OOT is copied into depth buffer area and it works only
id depth buffer FBO IS used as texture. Thus it is impossible to write general code
for both situations.
2015-05-13 10:18:42 +06:00
Sergey Lipskiy
6b4b7ae35c
Add ucode for Power League Baseball 64 to the list of specialMicrocodes.
...
Fixed issue #105
2015-05-13 10:18:41 +06:00
Sergey Lipskiy
4faa52e76d
Disable noise emulation if enableNoise option is off.
2015-05-13 10:18:40 +06:00
Sergey Lipskiy
46e6f3c28c
Correct VI.width calculation when hEnd is zero.
2015-05-13 10:18:40 +06:00
Sergey Lipskiy
2d099dda4c
Correct VI.real_height calculation in interlaced mode.
2015-05-13 10:18:39 +06:00
Sergey Lipskiy
4155accfee
Correct noise dithering.
2015-05-13 10:18:38 +06:00
Sergey Lipskiy
769ab7ac40
Remove async frame buffer reads - it can cause glitches because of wrong frame read.
...
Example: F-1 PolePosition 99 car tuning menu.
2015-05-13 10:18:38 +06:00
Sergey Lipskiy
296476405a
Fix alpha test for COPY cyclemode.
...
Fixed text in menu in F-1 Pole Position.
2015-05-13 10:18:37 +06:00
Sergey Lipskiy
4fd702bfe3
Disable color and alpha dither in COPY and FILL cyclemode.
2015-05-13 10:18:36 +06:00
Sergey Lipskiy
e3f51aae25
Correct texture size calculation: use mask size only if mask != 0.
...
Fixed backgrounds in F-1 Pole Position.
2015-05-13 10:18:36 +06:00
Sergey Lipskiy
2fb7477420
Correct creation of auxilary combiners.
2015-05-13 10:18:35 +06:00
Sergey Lipskiy
917225d783
Move RSP.DList increment from RSP_ProcessDList() to OGLVideo::swapBuffers().
...
Now frame count works for LLE mode.
2015-05-13 10:18:34 +06:00
Sergey Lipskiy
8bd1b96e3c
Correct FrameBufferToRDRAM.
...
Fixed out of memory writes in 1080 replay.
2015-05-13 10:18:34 +06:00
Sergey Lipskiy
d4264e18a4
Don't create frame buffer with zero height.
...
Fixed load from savestates in 1080.
2015-05-13 10:18:33 +06:00
Sergey Lipskiy
8e546e6f4b
Fix compilation errors when TXFILTER_DLL defined
2015-05-13 10:18:32 +06:00
Sergey Lipskiy
b55656b615
Revert useless commit "Fix bug with ucode loaded each frame."
...
This reverts commit 62445eb9a1de0c2ddbb4d7744fe90aea7941ded0.
2015-05-13 10:18:32 +06:00
Sergey Lipskiy
7b730096b3
Fix monochrome frame buffers when FSAA is on.
...
Fixed shadows in Mario Tennis.
2015-05-13 10:18:31 +06:00
Sergey Lipskiy
526dfe0846
RunConfig() returns true if user pushed OK.
2015-05-13 10:18:30 +06:00
Sergey Lipskiy
2b87c0e131
Correct horisontal bounds for input and output buffers in FrameBufferList::renderBuffer
...
Fixed wrong right bound in Mario Tennis and other games.
2015-05-13 10:18:30 +06:00
Sergey Lipskiy
3c9ad5f730
Correct frame buffer - texture bounds intersection check.
...
Fixed bottom of background image in Dr.Mario
2015-05-13 10:18:29 +06:00
Sergey Lipskiy
b085593d2a
Major fixes in RDRAMtoFrameBuffer::CopyFromRDRAM.
...
Fixed Dr.Mario pills
2015-05-13 10:18:28 +06:00
Sergey Lipskiy
d0073fe3a3
Don't clear frame buffer area when copyFromRDRAM option is on.
2015-05-13 10:18:28 +06:00
Sergey Lipskiy
406a4d3165
Create auxilary combiners in Combiner_Init().
2015-05-13 10:18:27 +06:00
Sergey Lipskiy
6f40fa430b
Fix frame buffer content check in CheckForFrameBufferTexture.
...
Frame buffer area is cleared in FrameBufferList::saveBuffer.
If scissor does not equal to frame buffer size, clear is incorrect.
Solution: clear frame buffer area without scissoring.
Fixed background in Dr.Mario
2015-05-13 10:18:26 +06:00
Sergey Lipskiy
cd0ec661ba
Corrected bNeedUpdate condition in VI_UpdateScreen()
...
Fixed Quake II underwater, issue #229
2015-05-13 10:18:26 +06:00
Sergey Lipskiy
07599ad5ab
Simplify vertex_shader.
2015-05-13 10:18:25 +06:00
Sergey Lipskiy
b353028969
Fixed fillrect drawing.
2015-05-13 10:18:24 +06:00
Sergey Lipskiy
f946a82e38
Fix replay in Mario Golf:
...
replay is copied to a area, which is used for depth buffer.
Added check that found frame buffer is not depth buffer.
2015-05-13 10:18:24 +06:00
Sergey Lipskiy
0efce8bb17
Fix FrameBufferToRDRAM::CopyToRDRAM when multisampling is on.
2015-05-13 10:18:23 +06:00
Sergey Lipskiy
65b6de3f19
Correct VI.height calculation - make it even.
...
Fixed New Tetris work with FB on.
2015-05-13 10:18:22 +06:00
Sergey Lipskiy
67e26af187
Revert "Use VI.real_height to make copy to RDRAM more safe."
...
Wrong solution - causes bottom black line when copied image is used as
background.
This reverts commit 2186d12c9230be48b1824aaabbee56f135f54d4d.
2015-05-13 10:18:21 +06:00
Sergey Lipskiy
9a3298eed2
Fix texture address calculation in texturedRectBGCopy.
...
Fixed warp in Yoshi Story.
2015-05-13 10:18:21 +06:00
Sergey Lipskiy
2da470cf3a
Make Yoshi Story compatible with FB emulation.
2015-05-13 10:18:20 +06:00
Sergey Lipskiy
bbeb149df4
Correct FrameBufferList::removeBuffer - set m_pCurrent to NULL if current color buffer isd removed.
2015-05-13 10:18:19 +06:00