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

2284 Commits

Author SHA1 Message Date
fzurita
462dd2a9bc FIx EGL image compatibility with mali devices 2019-10-05 22:41:33 +07:00
fzurita
4c87af5975 Don't initialize EGL, this is causing issues 2019-10-05 22:41:33 +07:00
fzurita
8cdf5a41d8 Don't crash on failed initialization 2019-10-05 22:41:33 +07:00
Sergey Lipskiy
427004a703 Fix Debugger::_addTriangles 2019-10-03 18:51:26 +07:00
fzurita
4a10c0a7fa Fix incorrect OpenGL function init in Linux 2019-09-30 21:48:36 -04:00
fzurita
d6ad676436 Fix EGL initialization in applications that don't implment VidExt 2019-09-30 21:48:36 -04:00
fzurita
7861d14060 Fix issue with lack of highp floating numbers in GLSL for GLES 2.0. 2019-09-30 21:48:26 -04:00
fzurita
8817e2c549 Fix logging error 2019-09-29 09:25:04 -04:00
Sergey Lipskiy
62b4389d16 Use TexrectCopyProgram if TexrectColorAndDepthCopyProgram is not awailable. 2019-09-29 16:13:03 +07:00
fzurita
415e63d6d1 Fix shader compilation error in GLES 2.0 2019-09-29 16:08:44 +07:00
fzurita
a42c66e305 Fix android logging 2019-09-29 16:08:44 +07:00
Sergey Lipskiy
9409abd671 Support "Copy depth to main depth buffer" option in GUI. 2019-09-27 19:33:18 +07:00
Sergey Lipskiy
751ddc36a7 Support "EnableCopyDepthToMainDepthBuffer" option in mupen64plus config. 2019-09-27 19:33:18 +07:00
Sergey Lipskiy
86a227308e Implement copy depth to main depth buffer. It is necessary for correct work of some Reshade shaders. 2019-09-27 19:33:18 +07:00
Sergey Lipskiy
a1faafcc1b Code refactor: rename TxFileCache to TxFileStorage. 2019-09-27 19:33:18 +07:00
Sergey Lipskiy
0272bb626b Fix warning. 2019-09-27 19:33:18 +07:00
Aquatakat
7785e305d4 New aliasing tooltip 2019-09-27 19:33:17 +07:00
Aquatakat
6946f730b4 UI refresh: _init() behaviour fixes
Changing profiles/toggling the use game settings checkbox works a bit better.
2019-09-27 19:33:17 +07:00
Aquatakat
c18037b92d Support for file_tex_storage branch 2019-09-27 19:33:17 +07:00
Aquatakat
43bec023e4 UI refresh: option to save settings to profile while per-game settings enabled
Also letting Qt decide how tall the window should be.
2019-09-27 19:33:17 +07:00
Aquatakat
c77214f0a7 UI refresh: AA radio button behaviour changes 2019-09-27 19:33:17 +07:00
Aquatakat
95cee96d15 UI refresh: emulation tab condensed vertically 2019-09-27 19:33:17 +07:00
Aquatakat
54b825d957 UI refresh fixes
Whoops, it looks like I was working with an old UI and missed some options. I've added them all to the emulation tab.

I think I should find a way to tidy the emulation tab a little in the future.
2019-09-27 19:33:17 +07:00
Aquatakat
03f0fe78c9 UI refresh 2019-09-27 19:33:16 +07:00
Sergey Lipskiy
2fa076c1df Support new settings in Mupen64plus config 2019-09-27 19:33:16 +07:00
Sergey Lipskiy
b697393cab File stream implementation of TxCache. 2019-09-27 19:33:16 +07:00
Sergey Lipskiy
dee7065982 Memory cache implementation of TxCache 2019-09-27 19:33:16 +07:00
Sergey Lipskiy
a1a443ca47 TxCache refactor 2019-09-27 19:33:16 +07:00
Sergey Lipskiy
0068a0066b Fix Debugger::_addTriangles for TRIANGLE_STRIP mode 2019-09-18 15:38:25 +07:00
Sergey Lipskiy
fea37ab6d5 Fix elements cast in Debugger::_addTrianglesByElements 2019-09-18 15:38:22 +07:00
Sergey Lipskiy
34c6cae364 Fix compile errors in opengl_ColorBufferReaderWithEGLImage.cpp
Fixed #2083
2019-09-05 18:53:38 +07:00
Sergey Lipskiy
4808179691 Fixed crash in case of wrong FrameBuffer::m_scale initialization. 2019-09-05 18:47:45 +07:00
Sergey Lipskiy
10ec517fe9 Code refactor in GLInfo::init() 2019-08-31 11:05:44 +07:00
Sergey Lipskiy
5c5c218e41 Correct tile size calculation.
Fixed text in Zelda debug rom. See bug reported by AriaHiro64 in #1885
2019-08-21 12:39:53 +07:00
Sergey Lipskiy
c28ea61b8f Fix for texture issues in Stunt Racer, reported by DonelBueno in #1885
Stunt Racer uses combiner with two textures for track polygons, but actually loads only T0.
T1 replaced by T0 because of LOD flags in othermode.
This situation was not checked in the main code and ClampWrapMirror shader got wrong parameters,
which lead to the glitches.
2019-08-16 19:10:09 +07:00
Sergey Lipskiy
947fedcbb5 Code cleanup: remove unused getMirrorClamp function. 2019-08-16 17:47:20 +07:00
Sergey Lipskiy
fa2ce3f6e7 Debugger: correct mupen64plus window caption to find in debug mode. 2019-08-16 17:46:34 +07:00
Sergey Lipskiy
258e51d44d Code cleanup: remove unused CombinerInfo::getCombinersNumber() 2019-06-23 17:32:28 +07:00
Sergey Lipskiy
83dde99f6b Fix TextureCache::_loadHiresTexture: use correct tile when gSP.texture.tile != 0 2019-06-19 19:02:57 +07:00
Sergey Lipskiy
2d712f2ae0 Rewrite textures loading and mapping:
- use RiceVideo method for texture size calculation.
  RiceVideo uses the same method for texture dumping.
- rewrite texture mapping.
  Texture Clamp-Wrap-Mirror implemented in shaders.

Problem explanation:
https://github.com/gonetz/GLideN64/issues/1885#issuecomment-485136358

Fixed various glitches with HD textures, #1885
2019-06-19 19:02:52 +07:00
Sergey Lipskiy
993960f9ea Do not attempt to copy image to RDRAM when copyToRDRAM option set to "Disabled".
Fixed crash when open sub-screen in Zelda MM with copyToRDRAM disabled.
2019-05-22 20:16:10 +07:00
Sergey Lipskiy
2d15d2d20a Fix CMakeLists.txt for Raspberry Pi
Patched by 5schatten.

Fixed #1978 [RPi3 | cross compile]
2019-04-23 17:17:34 +07:00
Francisco Zurita
c06c593eba Improve logging information 2019-04-23 11:15:41 +07:00
Sergey Lipskiy
8debfdb81c Correct GLES2 version of mip-map shader. 2019-04-22 21:45:11 +07:00
Francisco Zurita
8f26645407 Fix crash with GL_DEBUG enabled with mupen64plus API
Also, fix compiler warning
2019-04-15 09:09:39 +07:00
Francisco Zurita
92bcbe5981 Fix issues with threaded OpenGL when debug is enabled 2019-04-10 12:55:09 +07:00
fzurita
5df3f9dbac Threaded GLideN64 calls 2019-04-08 10:51:18 +07:00
Sergey Lipskiy
3d74542d24 Correct geometry mode update for Turbo3D.
Fixed glitches in Dark Rift, #2033
2019-04-03 21:32:50 +07:00
Sergey Lipskiy
1eea6d4452 Update "About:Contributors" 2019-04-01 17:09:49 +07:00
Sergey Lipskiy
2b95e56db4 Remove info about blur shader from "About:Credits" form since the shader is not used anymore. 2019-04-01 16:53:18 +07:00
Sergey Lipskiy
7f5f6256f3 Apply gamma correction to text drawer textures.
Fixed #2030 : Font rasteriser doesn't perform gamma correction

Thanks Clownacy for the idea.
2019-04-01 16:30:36 +07:00
Sergey Lipskiy
c57909e2e9 Reset gSP.geometryMode at display list load and display list end.
Fixed culling issue in Triple Play 2000.
2019-04-01 15:21:08 +07:00
Sergey Lipskiy
3e552f4214 GUI: set max MSAA level to 16x. 2019-03-26 16:27:32 +07:00
Sergey Lipskiy
e91a767b82 GUI: add tooltips for anti-aliasing controls. 2019-03-26 16:24:25 +07:00
Sergey Lipskiy
af63737012 Avoid division by zero in ObjCoordinates ctor due to wrong data in _pObjSprite.
Fixed crash in Glover 2 intro.
2019-03-23 18:11:07 +07:00
Sergey Lipskiy
fc96b78542 Fix load of 4bit CI textures when TLUT mode is off. Correction for commit 98960950
Fixed color of the glove in Doubutsu no Mori sub-screen.
2019-03-23 12:37:38 +07:00
Sergey Lipskiy
751fe2b3fa Convert fix for StarCraft 64 from commit 729bf94c5 to StarCraft specific hack,
because that case is actual for StarCraft 64 only.
2019-03-23 12:33:04 +07:00
Sergey Lipskiy
03022db791 Check that RDRAM area is writable before writing buffer data into it.
Fixed Problem with Project64's protect memory option #764
2019-03-16 18:37:05 +07:00
Sergey Lipskiy
2ac29acf29 Add '#pragma once' to CRC.h 2019-03-15 16:56:50 +07:00
Sergey Lipskiy
3d11a21a40 Correct GraphicsDrawer::isRejected.
According to manual, ClipRatio must be at least 2.

Fixed #2023, Chou Kuukan Nighter Pro Yakyuu King 2 (J) missing polygons in HLE
2019-03-13 18:29:21 +07:00
Sergey Lipskiy
6041b47271 Fix Insert Matrix moveword command.
Fixed Sim City 64 HLE City Rendering Issue #1200
2019-03-11 22:10:28 +07:00
Sergey Lipskiy
76a56b4273 Fix gSPModifyVertex for Z coordinate.
Fixed gasp: wrong depth in menu #2019
2019-03-07 12:09:26 +07:00
Sergey Lipskiy
989609505c Fix load of 4bit CI textures when TLUT mode is off.
Fixed Goemon - Mononoke Sugoroku: wrong gfx #1892
2019-03-06 18:36:40 +07:00
Sergey Lipskiy
e13a2ffd6b Correct gDPLoadTileInfo bytes calculation for 32bit textures.
Fixed ready 2 rumble 2 : wrong gfx in intro #2021
2019-03-05 16:06:26 +07:00
Sergey Lipskiy
96ccfc63af Correct mip-map shader: lod could be larger than actual number of levels in mip-map texture.
Fixed mip-mapped textures in Automobili Lamborghini with 3point filtering enabled.
2019-03-03 15:17:52 +07:00
Sergey Lipskiy
3704b37c3e Fix some of PVS-Studio warnings. 2019-03-03 11:47:10 +07:00
Sergey Lipskiy
4a925e1490 Add simple check for absolute paths to texture filter folders.
Relative path is not supported and must be substituted by default one.
2019-02-28 13:31:11 +07:00
Sergey Lipskiy
08e15767a6 Fix copy-paste errors in TextureFilterHandler::init()
Fixed build of default paths to texture filter folders
2019-02-28 12:30:46 +07:00
Sergey Lipskiy
f55283e32f Fix CRC calculation for mip-mapped textures.
Fixed green smear on mipmaps in Turok, #1558
2019-02-25 15:44:56 +07:00
Sergey Lipskiy
69d608310f Fix compilation warning. 2019-02-25 15:38:20 +07:00
Sergey Lipskiy
19cf24f701 Apply "Disable enhancement for backgrounds" option only for S2DEX background commands.
Related to Ocarina of time - Temple of time issue #1984
2019-02-24 19:47:28 +07:00
Sergey Lipskiy
b0380e0a04 Increase log level for VI warnings. Users should not see them. 2019-02-24 18:56:30 +07:00
Sergey Lipskiy
ea27c6bd21 Correct code, which forces OnePiece mode for backgrounds.
Code cleanup.

Fixed STARCRAFT 64: does not work with one piece option #2013
2019-02-24 18:42:56 +07:00
Sergey Lipskiy
6022f510f5 Correct getStorageFileName: set user-preferred locale before using string conversion functions. 2019-02-24 12:07:13 +07:00
fzurita
b40e6f44c1 Fix shader storage with Android 4.4 2019-02-24 11:49:15 +07:00
fzurita
164b44e8e5 Fix shader compilation in GLSL 2019-02-23 15:05:06 +07:00
Sergey Lipskiy
a40afaf5bd Enable texturedRectDepthBufferCopy for Turok.
Code refactoring.

Fixed Turok 64 Missing lens flare #2009

Note: Turok lens flare works correct only when depth buffer copied from VRAM.
Software depth render produces incorrect result because it does not discard pixels,
which should be discarded by alpha test.
2019-02-22 15:45:04 +07:00
Sergey Lipskiy
5063ad7292 Fix address for depth buffer copy in texturedRectDepthBufferCopy 2019-02-22 12:17:27 +07:00
Sergey Lipskiy
a5e8bf4f3c Fix DepthBufferToRDRAM::_prepareCopy RDRAM bound condition. 2019-02-22 12:14:09 +07:00
Sergey Lipskiy
edd83fdb76 Code cleanup: rename variables in F5INDI_RebuildAndAdjustColors 2019-02-20 18:00:46 +07:00
fzurita
9033a4d536 Fix build errors when using CMake with RPi 2019-02-19 15:18:39 +07:00
Sergey Lipskiy
49465a094d Implement dump of background textures. 2019-02-19 12:49:40 +07:00
Sergey Lipskiy
15fa834ffa Correct "BackgroundsMode" parameter read from mupen64plus config. 2019-02-19 12:47:59 +07:00
Sergey Lipskiy
916d01ba60 Correct FrameBufferList::renderBuffer() output coordinates calculation.
Fixed screen shake in WDC and Bass Rush - ECOGEAR PowerWorm Championship.
2019-02-17 23:37:54 +07:00
Sergey Lipskiy
cd4535025d An optimization in F5INDI_CalcST 2019-02-17 15:39:39 +07:00
Sergey Lipskiy
9bf36d390a Implement 3-point texture filtering for mipmapped textures.
Fixed #1558 3-point texture filtering doesn't work with mipmapped textures.
2019-02-16 20:45:51 +07:00
Sergey Lipskiy
edc81952ab Fix texture unpack alignment for filtered textures.
Fixed #1412: Enhancements cause buggy texture elements.
2019-02-15 17:44:45 +07:00
Sergey Lipskiy
24bfb8274f Fix ucode selection for Wayne Gretzky's 3D Hockey.
Add custom settings to avoid flickering in this game with Project64.

Fixed Wayne Gretzky's 3D Hockey: missing gfx and flickers (regression) #1966
2019-02-08 22:04:47 +07:00
Sergey Lipskiy
0e04b3f902 Fix z coordinate calculation in TexrectDrawer::addRect()
Fixed #1989, Printf debug statements broken in LLE in Multiple Debug/Prototype games.
2019-02-08 19:43:16 +07:00
gizmo98
f7824a37a0 Use bool value for 3-Point or bilinear filtering selection again
With the new enableHalosRemoval option we  only need to select bilinear
filtering or 3-point filtering with a bool value again.

Reverts
https://github.com/gonetz/GLideN64/commit/164b1056b3b5446824e419a7721a5c
4e455f28c6 partly.
2019-02-08 11:47:28 +07:00
Sergey Lipskiy
32901bf5dd Add option enableHalosRemoval for bilinear filtering. 2019-02-07 17:23:20 +07:00
fzurita
2712e8f509 Cleanup EGL image code 2019-02-05 21:48:26 +07:00
Sergey Lipskiy
837f173e82 Support new bilinear filtering modes in GUI. 2019-02-05 21:28:00 +07:00
gizmo98
164b1056b3 Add bilinear filtering modes which remove halos around transparent textures
This workaround is not implemented for gles2 devices.
2019-02-05 21:09:36 +07:00
fzurita
f209304d0b Add support for Android EGL Image Public API 2019-02-05 17:30:58 +07:00
Sergey Lipskiy
039f818175 Correct initial value for clip ratio.
According to programming manual, initial value is 2.

Fixed logo clipping in SD Hiryuu no Ken Densetsu.
This game does not call gSPClipRatio, thus initial value is used.
2019-02-04 21:09:02 +07:00
Sergey Lipskiy
647f7759c2 Apply fix for GE multiplayer only for GE and PD.
Naboo does not use depth buffer clear with fillrect,
thus it does not allocate frame buffer for depth buffer clear.
GE multiplayer fix breaks depth compare in Naboo.
2019-02-04 20:04:48 +07:00
Sergey Lipskiy
78e98d880b Fix primitive depth for particles in Factor5 ucodes. 2019-02-04 18:30:05 +07:00
Sergey Lipskiy
2b7f78c9f8 Fix depth buffer clear when otherMode.depthCompare enabled.
Fixed 1080 Snowboarding (JU) FB off breaks games ( regression) #1976
2019-02-03 18:01:01 +07:00
Sergey Lipskiy
f79f8d406a Add bgMode config setting. 2019-02-02 19:10:50 +07:00
Sergey Lipskiy
be069adb1f Fix gSPObjSprite for S2DEX ver 1.03
Fixed speedometer in GT 64.
2019-02-02 18:34:13 +07:00
Sergey Lipskiy
b62734d297 Use ValueKeeper for RSP.LLE flag 2019-02-02 18:34:12 +07:00
Sergey Lipskiy
dcd159dc71 Enable texrect drawer in BG commands when enableNativeResTexrects enabled. 2019-02-02 18:34:12 +07:00
Sergey Lipskiy
f31cb4b00d GraphicsDrawer::drawTexturedRect - always use TexrectDrawer if m_bBGMode enabled. 2019-02-02 18:34:12 +07:00
Sergey Lipskiy
4a50912283 Enable texrect drawer for BGCopyNew. 2019-02-02 18:34:12 +07:00
Sergey Lipskiy
0560b49686 TexrectDrawer::draw() : correct texture coordinates. 2019-02-02 18:34:11 +07:00
Sergey Lipskiy
6ca50bd733 Use old code for frame buffer texture backgrounds 2019-02-02 18:34:11 +07:00
Sergey Lipskiy
1f372fa0ce Fix S2DEX_MoveWord 2019-02-02 18:34:11 +07:00
Sergey Lipskiy
be1a1fc413 Fixes for S2DEX 1.5 2019-02-02 18:34:11 +07:00
Sergey Lipskiy
9e64d45ac5 New implementation of BgCopy command. It is based on olivieryuyu decoding of actual ucode and works as close to original command as possible. 2019-02-02 18:34:11 +07:00
Sergey Lipskiy
729bf94c5a StarCraft fix. 2019-02-02 18:34:10 +07:00
Sergey Lipskiy
2decda55f3 CheckForFrameBufferTexture code refactor. 2019-02-02 18:34:10 +07:00
Sergey Lipskiy
c48e0e4d00 Fix loadblock when lrs = 0xFFF 2019-02-02 18:34:10 +07:00
Sergey Lipskiy
5ac2749bbb Fixes in gSPObjLoadTxtr. 2019-02-02 18:34:10 +07:00
Sergey Lipskiy
2aeff6caa5 Fix tile size when it is loaded by BgCopy with LoadBlock.
BgCopy set dimensions for tile0 to zero.
We can't use dimensions of load tile either because of CopyBlock.
The only way to find size of loaded texture is to use coordinates of texrect.
There is one-to-one correspondence between rect pixels and texture texels in copy mode,
so we can safely use it in this case.
2019-02-02 18:34:10 +07:00
Sergey Lipskiy
d4f9c341a9 Do not use fractional part of coordinates in G_CYC_COPY mode. 2019-02-02 18:34:09 +07:00
Sergey Lipskiy
a3613b42ae Draw backgrounds with TexrectDrawer. 2019-02-02 18:34:09 +07:00
Sergey Lipskiy
25bef0d805 New implementation of BG1Cyc command.
It is based on olivieryuyu decoding of actual ucode and works as close to original command as possible.
2019-02-02 18:34:09 +07:00
Sergey Lipskiy
7f68ae71f1 Correct texturedRectBGCopy in order to new Bg1Cyc command work with Yoshi Story 2019-02-02 18:34:09 +07:00
Sergey Lipskiy
aab318b4f7 Fix tile load for BG commands. 2019-02-02 18:34:08 +07:00
Sergey Lipskiy
9ac633d2ea Add originalMaskT, originalMaskS fields for struct gDPTile.
masks and maskt set by gDPSetTile, but _calcTileSizes may change them if actual
tile dimension do not correspond the mask. This creates problem for S2DEX_BG_1Cyc command,
which set tile masks and maskt to maximum, while actual size of loaded tiles may vary.
_calcTileSizes may set new values for masks and maskt, which are valid for the current tile but invalid for next ones.
Thus, original values of tile masks and maskt must be restored when tile size calculated again in _calcTileSizes.
2019-02-02 18:34:08 +07:00
Sergey Lipskiy
fa2b0793e0 Store integer scissor coordinates. 2019-02-02 18:34:08 +07:00
Sergey Lipskiy
11e87a46d8 Add template RAII class to change-restore arbitrary parameters: ValueKeeper Use it in TexrectDrawer::draw() 2019-02-02 18:34:08 +07:00
fzurita
18a735dfe6 Fix some sign issues with RdpUpdate 2019-01-28 18:34:23 +07:00
Sergey Lipskiy
132b06fd2f Correct VI image cut calculations, see VI fixes #1981 2019-01-20 19:32:39 +07:00
Sergey Lipskiy
864e635ca4 Correct RdpUpdate::update()
Fixed Black screen on smash bros #1987
2019-01-20 18:52:16 +07:00
fzurita
20a7b75100 Android makefile updates for 64 bit 2019-01-15 14:14:23 +07:00
Sergey Lipskiy
31e2c7e11a Correct lighting for CBFD.
Code refactoring.
2019-01-13 01:07:20 +07:00
Sergey Lipskiy
b036a8296e Fix OverscanBuffer::draw. 2019-01-13 01:07:06 +07:00
Sergey Lipskiy
1e84099521 Correct mapping of RDP frame buffer to output one.
Code of RdpUpdate::update is based on angrylion's rdp_update().

Main visible difference: VI cuts several pixels on left and right of original image.
Cite from angrylion's commit message:
"rdp: new tests revealed the shocking truth:
the VI aggresssively and regardlessly of any data alignment specificities
cuts off either 7 or 8 pixels closest to h_start and h_end, so that nothing
ever appears on the screen unless (h_end - h_start) is 16 pixels or greater
(this removes marginal garbage graphics on the far right in Mario Tennis,
Turok 2 Seeds of Evil intro and probably other games)"
2019-01-13 01:07:02 +07:00
Sergey Lipskiy
0f1b45cfa6 Add hack for Lode Runner 3-D.
The game uses very unique way to allocate frame buffers.
It uses double buffering, but both buffers share the same address space (sic!)
The game uses interlaced display mode, and lines in RDP buffers are interlaced too.
Plugin's fb and VI emulation code can't handle it properly, so I just added a hack.

Fixed Lode Runner 3-D: No video output if framebuffer is enabled #1937
2019-01-13 00:47:52 +07:00
Sergey Lipskiy
fc70172327 Refactor update of buffer end address.
Add removeIntersections() after end address update.
2019-01-13 00:40:21 +07:00
Sergey Lipskiy
7d7b5fcee3 Correct RDRAMtoColorBuffer::copyFromRDRAM(FrameBuffer * _pBuffer)
Fixed course map in Lego Racers.
2019-01-13 00:40:01 +07:00
Sergey Lipskiy
6135aa9de1 Activate hack for WCW Nitro backgrounds.
Currently it is impossible to draw them without hack.

Fixed WCW Nitro: the mysterious wrong textures #179
2019-01-13 00:38:10 +07:00
Sergey Lipskiy
dcbea90e76 Correct _loadSpriteImage: if bg image address is inside cfb buffer, remove that buffer. 2019-01-13 00:38:06 +07:00
Sergey Lipskiy
f787483dbb Correct condition for uEnableDepth uniform.
Fixed depth compare for particles in Indiana Jones when N64 depth compare enabled, #1977
2019-01-12 14:34:00 +07:00
Sergey Lipskiy
6de128b8fd Correct condition for valid depth buffer attachement.
Rat attack uses color buffer with width 640, but depth buffer width is only 639.
goodDepthBufferTexture check failed because of it, and game run without depth compare.

Fixed Rat attack missing geometry #600
2019-01-09 18:19:01 +07:00
Sergey Lipskiy
da5acef3eb Add hack_ModifyVertexXyInShader for Rat Attack.
Fixed projector light in Rat Attack, #600
2019-01-09 18:16:22 +07:00
Sergey Lipskiy
e676384550 Revert "Enable N64DepthCompare by default."
due to regression in Indiana Jones, #1977

This reverts commit d420737d6d.
2019-01-08 16:51:31 +07:00
Sergey Lipskiy
d420737d6d Enable N64DepthCompare by default. 2018-12-18 16:54:02 +07:00
Sergey Lipskiy
13966d7de0 Remove Overscan::init 2018-12-18 16:53:32 +07:00
Sergey Lipskiy
cb0cf5bed9 Fix depth_compare shader:
always write depth to buffer when otherMode.depthCompare flag is off.

Up shader storage version.

Fixed 2 players mode in Extreme-G XG2 (U) with N64 depth compare enabled, #1963
2018-12-18 16:04:37 +07:00
orbea
a5fc0689ac Fix performance with radeonsi.
This takes Donkey Kong 64 from 12 fps to full speed with framebuffer
emulation enabled.
2018-12-11 11:35:56 +07:00
Sergey Lipskiy
f899bf57a4 Ignore vi_lowerfield if vi_width <= 320.
It seems that when vi_width <= 320 output uses progressive mode
even if interlaced bit is set in VI_STATUS.

Fixed Bass Rush - ECOGEAR PowerWorm Championship - shakes #1957
2018-12-09 17:39:31 +07:00
Sergey Lipskiy
0d3c3c151d Correct reject box implementation: add special flag for it in gDP.changed flags.
Fixed Rejection process issues #1954
2018-12-09 16:49:23 +07:00
Sergey Lipskiy
29575624b9 Call copyRdram() for cfb buffer to have data for validity check.
Fixed NBA Courtside 2: wrong intro - regression #1956
2018-12-09 16:24:35 +07:00
Sergey Lipskiy
8cd1605933 Add debug message for VI_UpdateScreen 2018-12-09 14:23:08 +07:00
Sergey Lipskiy
362c99c256 Fix specialMicrocodes entry for Pachinko nichi 365
Fixed https://github.com/gonetz/GLideN64/issues/1950
2018-12-09 13:07:58 +07:00
Sergey Lipskiy
bb8c13ccce Implement rejection processing, see 25.3.2 of programming manual
Fixed Mario Party: Coin Block Blitz ground flicker / darkening #1912
2018-12-06 17:31:50 +07:00
zilmar
459fb32106 Revert OS_WINDOWS changes 2018-11-25 18:34:16 +07:00
zilmar
d50aabaa10 Stop using OS_WINDOWS 2018-11-25 18:34:16 +07:00
zilmar
5f008e4c92 Clean up libGlideNHQ.vcxproj 2018-11-25 18:34:16 +07:00
Sergey Lipskiy
cbf5821f8e Clamp arguments for acos when calculating G_TEXTURE_GEN_LINEAR
Fixed (Majora's Mask) Glass in Postman House not rendering #1941

Note: ucode actually works a bit differently because it uses approximated acos calculation.
2018-11-20 22:47:59 +07:00
Sergey Lipskiy
087ac76536 Correct commit e4b6224 for culling in Mortal Kombat 4.
Disable cullboth for F3DLX.Rej version 1 since this ucode does not support cullboth.
2018-11-11 16:06:23 +07:00
Sergey Lipskiy
1ec435d6e7 Correct command S2DEX_Obj_Rectangle_R for ucode version 1.03 2018-11-08 11:58:13 +07:00
Sergey Lipskiy
88aa90d075 Implement NO_XFM mode for Turbo3D ucode.
Fixed Dark Rift: gfx of the fist screen doesn't disappear when it should (HLE issue) #626
Fixed Dark Rift: missing transition effect in menu #649
2018-11-05 13:27:07 +07:00
Sergey Lipskiy
7aa360c900 Clear fog parameters in gSPLoadUcodeEx.
Fixed Zelda OOT wrong fog [HLE] #640
2018-11-03 15:40:41 +07:00
Sergey Lipskiy
f72553a524 Fix depth compare for texrects rendered with TexrectDrawer.
Fixed Duke Nukem 64: 2D Render Issue #1915
2018-10-21 20:19:41 +07:00
Sergey Lipskiy
a44d5a8960 Fix condition to apply hardware texture filtering:
FILTER_LINEAR must be used only if the current combiner uses LOD.
2018-10-18 11:14:34 +07:00
Sergey Lipskiy
68a2c939b4 Correct FrameBufferList::fillRDRAM - do not write to RDRAM color buffer if copyFromRDRAM enabled 2018-10-17 15:52:53 +07:00
Sergey Lipskiy
fe6447070e Minor code refactor in gDPFillRectangle 2018-10-17 15:52:53 +07:00
Sergey Lipskiy
57ad2e96c6 Fix DepthBufferList::clearBuffer() for image textures. 2018-10-17 15:52:53 +07:00
Sergey Lipskiy
9a2a77982b Set gDP.colorImage parameters before frameBufferList().saveBuffer call. 2018-10-17 15:52:53 +07:00
Sergey Lipskiy
9d7eb5b882 Fix in RDRAMtoColorBuffer::_copyFromRDRAM - draw rect in copy mode. 2018-10-17 15:52:53 +07:00
Sergey Lipskiy
f2ba87c241 Force clear depth buffer, if there is no corresponding color buffer for it.
Fixed GoldenEye Multiplayer - 3&4 player not rendering #1173
2018-10-17 15:52:52 +07:00
Sergey Lipskiy
d2bca602a1 Use roundup for viewport and scissor coordinates. Fixes some issues when screen resolution is not multiple of original resolution. 2018-10-17 15:52:52 +07:00
Sergey Lipskiy
217ef2557d Add ability to save content of frame buffer to file for debug purposes. 2018-10-17 15:52:52 +07:00
Sergey Lipskiy
0c2c4d3c27 Restore SCISSOR_TEST mode in RDRAMtoColorBuffer::_copyFromRDRAM 2018-10-17 15:52:52 +07:00
Sergey Lipskiy
8b3597614a Always render RDRAM content into newly created frame buffer. Remove ugly hack for Mario Tennis scoreboard. 2018-10-17 15:52:52 +07:00
Sergey Lipskiy
5538c7b4bb Add support for frame buffers, which are inside of some other frame buffer.
Fixed Superbowling: black screen in menu and game #116
2018-10-17 15:52:51 +07:00
Sergey Lipskiy
c8b6d35597 Minor code cleanup in FrameBuffer.cpp 2018-10-17 15:52:51 +07:00
Sergey Lipskiy
3d46293376 Correct condition for depth buffer copy hack for Perfect dark.
Fixed Perfect Dark high-res mode issues #1807
Fixed Perfect Dark No text/notifications in multiplayer #1930
2018-10-16 00:07:19 +07:00
Sergey Lipskiy
e4b6224218 Disable CULL_BOTH for NON microcodes.
Need to find better criteria.

Fixed Black screen in mortal kombat 4 #1929
2018-10-13 19:25:32 +07:00
gizmo98
35099ec8cb Backgrounds: Fix cut off textures and texture fragments and seams
-Fix cut off textures in hamster64. Enable coord correction if
gDP.otherMode.textureFilter == G_TF_BILERP.
-Fix seams in hamster64 and texture fragments in starcraft64. Enable
texture clamp if lrs/lrt <= (imageW/imageH - 1).
2018-10-13 19:09:24 +07:00
Sergey Lipskiy
1df96cebeb Enable clearDepthBuffer for Pokemon Snap.
Fixed Pokemon Snap Oak's check does not work #777 again

Note: this game is a mistery. I don't understand,
why clearing of depth buffer via drawRecs breaks Oak's check.
Actually, the problem causes rendering to color buffer corresponding to that depth buffer.
Need to investigate, why.
2018-10-07 00:15:01 +07:00
Sergey Lipskiy
423fc7ba3e Code cleanup in gDPFillRectangle 2018-10-06 13:43:14 +07:00
Sergey Lipskiy
8b9d955f7a Fix depth buffer clear for Zelda MM.
Fixed Legend of Zelda: Majora's Mask Issue #1921
2018-10-05 23:57:56 +07:00
Sergey Lipskiy
4f302cc777 gDPFillRectangle: call frameBufferList().fillRDRAM for color buffers in FILL mode.
Fixed Vigilante 8 Menu and In-game issues. #1917
2018-10-02 17:06:07 +07:00
Sergey Lipskiy
e91a9ddc31 Remove ucode for Mischief Makers (E) from specialMicrocodes list.
It was added by mistake.

Fixed Duke Nukem 64: HLE unplayable #1915
2018-10-02 09:53:17 +07:00
Sergey Lipskiy
6ba9a81e76 Rewrite Tri commands for SWRS ucode. 2018-10-01 23:15:33 +07:00
Sergey Lipskiy
9f1bbeab9f Rewrite primitive depth calculation.
Up shader storage version.

Fixed Star Wars Episode I - Racer: Overlapping #1911
2018-10-01 22:37:03 +07:00
Sergey Lipskiy
b88c99302f Debugger: correct display of primitive Z and deltaZ. 2018-10-01 19:20:32 +07:00
gizmo98
13f587a360 tile functions: Replace magic numbers with constants
Just refactoring. Replace magic numbers with constants. No functional
changes.
2018-09-30 18:03:46 +07:00
Sergey Lipskiy
b096c1e9fc Rewrite vertex coordinates calculation for ObjSprite command again. 2018-09-30 18:03:46 +07:00
Sergey Lipskiy
91b17a578c Rewrite vertex coordinates calculation for ObjRect commands again. 2018-09-30 18:03:46 +07:00
Sergey Lipskiy
9f936be57e Correct condition for texture filtering: remove (gSP.objRendermode&G_OBJRM_BILERP) != 0 from the condition.
It seems that flag G_OBJRM_BILERP in objRendermode does not mean that texture will be filtered.
2018-09-30 18:03:46 +07:00
Sergey Lipskiy
0da701e7e5 Rewrite texture coordinates calculation for ObjRect commands. 2018-09-30 18:03:46 +07:00
Sergey Lipskiy
8fd5f910ab Add support for S2DEX v1.03 2018-09-30 18:03:45 +07:00
Sergey Lipskiy
5abb19bd7a Disable "yoshi petals fix" because of regression in yoshi's message board. 2018-09-30 18:03:45 +07:00
Sergey Lipskiy
164d012138 Rewrite coordinates calculation for ObjRectangle and ObjRectangleR 2018-09-30 18:03:45 +07:00
Sergey Lipskiy
83995f5dc8 Correct vertex coordinates calculation for gSPObjRectangleR 2018-09-30 18:03:45 +07:00
Sergey Lipskiy
51490b9de0 Correct _YUVtoRGBA 2018-09-30 18:03:45 +07:00
Sergey Lipskiy
ec898f4178 Rewrite vertex coordinates calculation for gSPObjRectangleR using fixed-point math decoded from S2DEX ucode by olivieryuyu
Code refactoring.
2018-09-30 18:03:44 +07:00
Sergey Lipskiy
9bbd449812 Correct lrs and lrt calculation for ObjRect commands. 2018-09-30 18:03:44 +07:00
Sergey Lipskiy
38c7eef32b Code cleanup: use constants for flipS and flipT flags. 2018-09-30 18:03:44 +07:00
Sergey Lipskiy
b012e8b53c Code refactor:
* move implementation of S2DEX commands from gSP.cpp to uCodes/S2DEX.cpp
* code cleanup
2018-09-30 18:03:44 +07:00
Sergey Lipskiy
9192a82905 Rewrite vertex coordinates calculation for gSPObjRectangle using fixed-point math decoded from S2DEX ucode by olivieryuyu
Code refactoring.
2018-09-30 18:03:44 +07:00
Sergey Lipskiy
7d75b99705 Rewrite gSPObjSprite using fixed-point math decoded from S2DEX ucode by olivieryuyu 2018-09-30 18:03:44 +07:00
Sergey Lipskiy
cf05918222 Revert "Shift sprite origin Y by -0.5"
This reverts commit 43e0ad500f.
2018-09-30 18:03:43 +07:00
Sergey Lipskiy
6ac8efe081 Use frame buffer from input parameters when call
_updateScreenCoordsViewport from GraphicsDrawer::drawTexturedRect.

Fixed incorrect picture size when color buffer copied from RDRAM.
Buffer copy uses drawTexturedRect
2018-09-26 13:48:42 +07:00
Sergey Lipskiy
5e1c8a6b58 Do not use clearDepthBuffer in FillRect. Use drawRect only. 2018-09-24 22:02:25 +07:00
Sergey Lipskiy
6a7c64dd6b Do not use clearColorBuffer in FillRect. Use drawRect only.
Fixed Twisted Edge Extreme Snowboarding P1 broken #1873
2018-09-24 20:33:15 +07:00
Sergey Lipskiy
2f83650725 Switch from blitOrCopyTexturedRect() to copyTexturedRect() in OverscanBuffer::draw. 2018-09-24 20:33:12 +07:00
Sergey Lipskiy
3faa383c55 Fix in FrameBufferList::renderBuffer() : draw blank frame if VI state is wrong.
Previously renderBuffer() did nothing in that case and last rendered frame remained on screen.

Fixed Perfect Dark (Missing Transition Animation at end of Title Intro Screen - PD Logo Doesn't Disappear) #1715
2018-09-24 20:33:08 +07:00
Sergey Lipskiy
2e2cbcfcfc Fix culling in Indi and Naboo 2018-09-24 19:32:10 +07:00
Sergey Lipskiy
e65f8bd68d Weaken condition for invalid frame buffer texture.
Fixed text in Mario Tennis scoreboard.
2018-09-16 22:15:28 +07:00
Sergey Lipskiy
67e68ed1f6 Support FXAA in GUI. 2018-09-09 16:41:58 +07:00
Sergey Lipskiy
bb6debf2f7 Support FXAA in mupen64plus config 2018-09-09 16:41:55 +07:00
Sergey Lipskiy
ae67c77c9d Replace direct call of Postprocessor methods by list of available postprocessing functions. 2018-09-09 16:41:37 +07:00
Sergey Lipskiy
9705f5d520 Implement FXAA 2018-09-09 16:36:09 +07:00
Sergey Lipskiy
1e97355882 Code refactor: remove duplication of code in PostProcessor.cpp 2018-09-09 15:34:32 +07:00
Sergey Lipskiy
15188dad16 Fix destX calculation in FrameBufferList::renderBuffer()
Fixed black boarders size in Banjo-Kazooie.
2018-09-08 00:13:43 +07:00
Sergey Lipskiy
be49e9e2e9 Correct check for side-by-side buffers in FrameBufferList::renderBuffer()
Fixed Kirby 64 - screen jumps in full screen. #1750
2018-09-07 23:00:45 +07:00
gizmo98
d4cce52c60 Rewrite ObjCoordinates(const uObjScaleBg * _pObjScaleBg)
gSPBgRect1Cyc() and gSPBgRectCopy() use ObjCoordinates(const
uObjScaleBg * _pObjScaleBg).

This modification fixes bad texture quality in following games:
-Bakuretsu Muteki Bangaioh
-Nintama Randou
-Starcraft
-Command & Conquer
-SD Hiryuu noKen Densetsu

https://github.com/gonetz/GLideN64/pull/1878
2018-09-07 21:25:44 +07:00
Sergey Lipskiy
fef718b8d2 Do not reject tile loading when tile end address is out of RDRAM bound.
Try to load as much as possible instead.

Fixed Bust-A-Move 2 wrong 2D during intro #870
2018-09-07 21:08:37 +07:00
Sergey Lipskiy
22267831e0 Optimize ShaderN64DepthCompare a little bit. 2018-09-06 22:54:07 +07:00
Sergey Lipskiy
9b487453a6 Correct URenderTarget::update()
Depth buffer not cleared if SetDepthImage called after Fillrect.

Fixed Ocarina of Time Link's portrait missing with N64 deph compare #1850
2018-09-06 22:54:00 +07:00
Sergey Lipskiy
83e1ccb72e Remove hack for Banjo-Tooie Groggy Crash #1250 added in 8fbd1d030b
Writes to TMEM protected by masking TMEM write address, so it is not necessary anymore.
Rearrange the code a bit.

Fixed NBA Live 99 messed up textures #1826
2018-09-05 23:20:27 +07:00
Sergey Lipskiy
c53bf689e1 Correct calculation of bytes for 32bit textures in gDPLoadTile
Fixed 1080 Snowboarding title logo regression #1824
2018-09-05 17:23:23 +07:00
Sergey Lipskiy
289edfd148 Fixed missing gfx with native recs option (regression) #1889 2018-09-04 23:46:15 +07:00
Sergey Lipskiy
80ba93413a TexrectDrawer: use RDP.w0, RDP.w1 to get rect coordinates. 2018-09-04 16:54:56 +07:00
Sergey Lipskiy
fac72ddf5a Store texrect command parameters in RDP.w0 and RDP.w1 2018-09-04 16:42:53 +07:00
Sergey Lipskiy
ec54a9a672 Debugger: fixed find polygon with given texture. 2018-09-04 16:16:53 +07:00
Sergey Lipskiy
d8921dfeb6 Debugger: correct rects coordinates 2018-09-04 16:16:08 +07:00
Sergey Lipskiy
40455845ba Dump microcode string to log file. 2018-09-02 16:31:10 +07:00
Sergey Lipskiy
a28b9913f7 Dump microcode info to log file. 2018-08-31 13:40:01 +07:00
Sergey Lipskiy
73189eb958 Implement olivieryuyu proposal to add Early Fast3D games to custom micricodes, #1303
Code refactoring.
2018-08-31 12:53:48 +07:00
Sergey Lipskiy
7036aa0cc6 Enable "no near clipping" mode for F3DFLX2 ucode.
Fixed Near Plane Clipping issue with GLideN64 #1855
2018-08-31 00:08:15 +07:00
Sergey Lipskiy
ae43c0cd39 Enable "no near clipping" mode for "RSP SW Version: 2.0G" ucode.
Fixed AeroFighters Assault GFX issue #289
2018-08-30 14:04:27 +07:00
Sergey Lipskiy
74c0980d44 Enable hack_texrect_shade_alpha for Bottom of the 9th.
Fixed bottom of the 9th: no more intro and main title gfx (regression) #1888
2018-08-28 21:41:16 +07:00
Sergey Lipskiy
b3068d9536 Fix OverscanBuffer::getScaleX() 2018-08-28 20:57:50 +07:00
Sergey Lipskiy
cec0f2fc05 Update end address of the current frame buffer in gDPFullSync().
Fixed Ogre Battle 64 Opening Splash Screens Flicker. #1868

Details

Problem: frame buffer end address set to minimal when buffer is allocated.
It is updated on next call of gDPSetColorImage.
In case of Ogre Battle 64 Opening next call of gDPSetColorImage occurs in next frame.
VI can't find the buffer because REG.VI_ORIGIN points on buffer with some offset,
which in this case is larger than diff between start and end address.
VI allocates new buffer, which eventually replaces the current one and flickering happens.

Solution: update current buffer's end address in gDPFullSync()
to ensure that it will be correct at the moment when VI will search for buffer to draw.
2018-08-28 16:07:31 +07:00
Sergey Lipskiy
62b8103e46 Support FRONT_AND_BACK culling mode.
Fixed Super Smash Brother Gfx issue on Dreamland stage #487
2018-08-24 16:16:06 +07:00
Sergey Lipskiy
3bc17f50f3 Correct texture coordinates calculation in z-sort ucodes.
Fixed Mia Hamm Soccer 64: wrong textures in menu (regression & HLE) #210
2018-08-20 11:54:00 +07:00
Sergey Lipskiy
a14f737c29 GUI: Minor fix in ConfigDialog::on_buttonBox_clicked 2018-08-15 10:58:21 +07:00
Sergey Lipskiy
2f60502c3e GUI: Remove on_customSettingsCheckBox_clicked
This function is useless now because custom settings control is disabled when game is running.
2018-08-15 10:57:52 +07:00
Sergey Lipskiy
7d026f069b Add warning that settings will be applied for the current game only. 2018-08-15 10:54:09 +07:00
Sergey Lipskiy
bd566e67ed Fix custom rom settings save.
Fixed Profiles introduced issues with save/load feature on PJ64. #1879
2018-08-13 22:31:00 +07:00
Sergey Lipskiy
027810ad4a Fix typo: onScreenDispaly => onScreenDisplay 2018-08-13 22:24:32 +07:00
Sergey Lipskiy
43e0ad500f Shift sprite origin Y by -0.5
Fixed Parlor! Pro 64 #133
2018-08-12 16:27:40 +07:00
gizmo98
59ad164258 ObjCoordinates: Implement G_OBJRM_BILERP
-Rewrite lrx, ulx, lry, uly, lrs, uls, lrt, ult calculation
-Implement SHRINKSIZE according to programmers guide
-Implement G_OBJRM_BILERP according to programmers guide
-Worms Armageddon: Menu items, 2D elements and worms are sharp
-Kirby Crystal Shards: Menu is sharp
2018-08-04 20:36:54 +02:00
gizmo98
c76daedfc0 Fix Worms Armageddon
Rewrite
https://github.com/gonetz/GLideN64/commit/feb0e53034d54095464687dbae1785
4c9dc3caa6 to fix Worms Armageddon. If upper left value is zero lower
right value is scaled width minus one scaled texel.

Example:
Width = 10.0f, scale is 1.0f
urx = 0.0f;
lrx = 0.0f + 10.0f/1.0f - 1.0f/1.0f = 9.0f
Resulting range is 0-9 for a 10 texel width texture.
2018-08-03 17:15:24 +07:00
gizmo98
e9becd4b8a rpi: limit m_maxCacheSize to fix texture corruption
Limit m_maxCachSize to fix texture corruption in Yoshi’s Story. I have
tested values between 1500 and 3500. Everything >= 1800
produces texture corruption after a short time.
2018-08-03 17:13:48 +07:00
Sergey Lipskiy
1b17e98941 TexrectDrawer fixes:
* fix issues in _lookAhead
* use integer coordinates to rects side-by-side detection.

Fixed #1856, #1859
2018-07-23 21:56:20 +07:00
Sergey Lipskiy
5186a50597 Init GBI.cmd at G_RDPNOOP.
Fixed UNKNOWN GBI COMMAND log message for SF Rush.
2018-07-22 23:02:27 +07:00
Sergey Lipskiy
d9fad30f04 Change type for "MaxAnisotropy" option from Bool to Int.
Fixed #1867
2018-07-22 20:43:16 +07:00
gizmo98
a6adf6308d gSPInsertMatrix: fix insert fractional part if old value is negativ
s32 integer = static_cast<s32>(-2.5f) = -2
GetFloatMatrixElement(static_cast<s16>(integer), 0x44) = -1,9993286030

Fix:
s32 integer = (-2.5f * 65535.0f) >> 16 = (163837) >> 16 = -3
GetFloatMatrixElement(static_cast<s16>(integer), 0x44) =
-2,999008163576715
2018-07-22 19:58:22 +07:00
Sergey Lipskiy
e0418c3c34 Apply TexrectDrawer if next draw command is also texrect and those texrect is side-by-side with the current one.
It should fix performance issues with particles.
Currently works only in HLE mode.
2018-07-03 21:52:18 +07:00
Sergey Lipskiy
d4b770b2c1 Correct texrect dsdx calculation in COPY mode.
Partially fixes issue with the energy bar in F-Zero multiplayer, #1849
2018-07-02 19:24:18 +07:00
Sergey Lipskiy
9fb63e0460 Validate config after load.
Fixed glitches when 'MSAA' and 'N64 depth compare' both enabled, #1815
2018-06-28 16:18:16 +07:00
Sergey Lipskiy
557851949a Force load hires textures cache file if path to texture pack does not exists.
Fixed load of .htc files distributed without texture packs.
Fixed #1840.
2018-06-23 23:11:54 +07:00
Sergey Lipskiy
2a677a23a8 Implement left offset for source image when VI_ORIGIN address points on non-zero position in scan-line.
Fixed PAL version of International Superstar Soccer 98, #1845
2018-06-23 21:56:10 +07:00
Sergey Lipskiy
a3e34aa426 GUI: import settings from old version of ini file. 2018-06-22 16:38:54 +07:00
Sergey Lipskiy
0a59366936 GUI: clear resolution comboboxes before inserting items. 2018-06-18 16:48:14 +07:00
Sergey Lipskiy
6a1a4b590d Add profiles support to zilmar-spec build.
Details: #1836
2018-06-17 21:21:51 +07:00
Sergey Lipskiy
2322f5f53f Implement Overscan feature.
Remove Crop feature.
Change settings save-load when "per game settings" enabled:
    * When config dialog opens, show custom settings for the running game. If no game run yet, show main settings.
    * When user press OK button, save settings to the custom ini file and to the main ini file.
2018-06-17 20:04:45 +07:00
fzurita
3fe0f5ec67 Fix NEON build 2018-06-16 22:23:30 +07:00
Sergey Lipskiy
3e0c635ad2 Correct mipmap shader for case when max tile is 0.
Up shader storage version.
2018-06-16 18:41:51 +07:00
Sergey Lipskiy
b9bfbf40e8 Indi Particle Optimization hack.
Add F5INDI_PARTICLE_OPT define to enable.
2018-06-16 18:41:50 +07:00
Sergey Lipskiy
b0a575313a Implement Factor5 ucodes for Indiana Jones/Battle of Naboo, task #1259 2018-06-16 18:41:50 +07:00
fzurita
582bfe353f Improve check for buggy fragment shader interlock
Nvidia Drivers greater than or equal to 390.00 don't seem to crash with
it.
2018-06-16 00:13:55 +07:00
Sergey Lipskiy
3ff1478103 Add matix element conversion functions. 2018-06-11 20:12:13 +07:00
gizmo98
b0647a64d1 ZSortBOSS_Audio2(): use absolut value of fraction
fractpart will be cast to u16. Remove sign.
2018-06-09 12:31:35 +02:00
gizmo98
95d5264300 Add better matrix load, insert and store fixed to float logic 2018-06-09 12:29:01 +02:00
gizmo98
35f4ad3b28 gSP.cpp: Replace _FIXED2FLOAT if there is no real fixed to float conversion
Use * recip instead
2018-06-02 21:35:32 +07:00
gizmo98
4750e10076 Use _FIXED2FLOATCOLOR 2018-06-02 21:35:32 +07:00
gizmo98
997820c000 GBI.h: add better color reciproc values 2018-06-02 21:35:32 +07:00
gizmo98
bb00ed3f4f gSPInsertMatrix remove (int) cast and use copysignf
Fraction value gets lost if float is cast to int. Use copysignf to
transfer sign from fraction to newvalue.
2018-06-02 21:35:32 +07:00
gizmo98
a8349418ce Use _FIXED2FLOAT
Replace x/65536 and x*0.00390625f with _FIXED2FLOAT
2018-06-02 21:35:32 +07:00
gizmo98
31ced0362a Use FIXED2FLOATRECIP16
Replace 1.5258789e-05f with FIXED2FLOATRECIP16
2018-06-02 21:35:32 +07:00
gizmo98
16dd8145f8 GBI.h: add better reciproc values 2018-06-02 21:35:32 +07:00
Logan McNaughton
e80577e105 Allow non-0 default framebuffer 2018-05-22 08:25:24 -06:00
Logan McNaughton
44068412f4 Revert "Add the iOS framebuffer binder from @braindx"
This reverts commit ff904fc51e.
2018-05-19 16:08:07 +07:00
fzurita
e3a7acadb2 Fixes build errors with clang 2018-05-09 16:04:33 +07:00
Logan McNaughton
6ddaba8ec5 Remove FB Attachment caching 2018-05-08 16:27:37 +07:00
Sergey Lipskiy
67f797240d Shader noise returns 0.5 when noise emulation disabled.
Fixed Paper Mario - Text from Stars is invisible #1540
2018-05-06 21:28:31 +07:00
Sergey Lipskiy
6725ad474a Fix warnings of 64bit compiler. 2018-05-06 15:54:12 +07:00
Sergey Lipskiy
10710f96ac Fix warnings from compiler and static code analizer. 2018-05-06 15:28:07 +07:00
Logan
bb697c3c28 Add forceDepthBufferClear in custom.ini
For mupen64plus spec
2018-05-02 22:29:27 +07:00
Sergey Lipskiy
8212a1faf6 Fix vertex Y calculation in GraphicsDrawer::_drawThickLine
Fixed smoke direction in Micro Machines 64 Turbo (U) #1725
2018-05-02 20:49:36 +07:00
Sergey Lipskiy
2ef337223e Dump hires textures cache to file right after load from texture pack.
It is more safe than dump when emulator closed.

Fixed Texture cache fails to save to disk #1761
2018-05-02 13:15:42 +07:00
Sergey Lipskiy
035f76e7d3 GLideNHQ code refactor: remove code duplication in TxTexCache and TxHiResCache classes. 2018-05-02 13:12:10 +07:00
Sergey Lipskiy
e317bb5071 Support config.frameBufferEmulation.forceDepthBufferClear setting in UI. 2018-05-01 19:22:39 +07:00
Sergey Lipskiy
2e7c0ecee2 Add forceDepthBufferClear config option.
Enable it for Eikou no Saint Andrews (J) in custom settings.

Fixed Eiko St Andrews: wrong 3d #161
2018-05-01 19:21:30 +07:00
Sergey Lipskiy
725ff742a8 Update viewport when exiting texrect after texturedRectSpecial call.
Fixed Paper Mario zoom-in when Mario approaches screen #1789
2018-05-01 18:01:54 +07:00
Logan McNaughton
9bda0568a8 Copy FBO texture if glTextureBarrier is unsupported 2018-04-20 22:56:17 +07:00
Sergey Lipskiy
75ea06cec7 Code refactoring: fix issues found by static code analizer. 2018-04-19 20:16:21 +07:00
Logan McNaughton
638149fb5c Update xxHash to 0.6.5 2018-04-19 12:16:02 +07:00
Sergey Lipskiy
f26b99a93d Add comment that _glinfo.imageTextures or _glinfo.ext_fetch
must be enabled when config.frameBufferEmulation.N64DepthCompare != 0
2018-04-19 12:13:53 +07:00
Logan McNaughton
1fe9ce3bf9 Fix BAR Fog with N64 Depth Compare 2018-04-19 12:04:39 +07:00
Logan McNaughton
6a10a83d09 Fix RE2 and NFL QB Club 98 on GLES 2018-04-16 21:38:42 +07:00
fzurita
e958eca3ed Disable usage of *_fragment_shader_interlock with tegra
It causes lockups with at least Tegra X1.
2018-04-16 20:51:55 +07:00
Logan McNaughton
7bad64ce70 Only call texture barrier if we are sampling from current FB 2018-04-16 11:35:15 +07:00
Logan McNaughton
c9cf91e8da Add support for ext_shader_framebuffer_fetch 2018-04-16 11:32:35 +07:00
Logan McNaughton
2e227cef53 Rewrite N64 Depth Compare 2018-04-16 11:32:35 +07:00
Sergey Lipskiy
c57eaf5285 Do not upload 2D texture for glyph with null bitmap. 2018-04-14 19:25:10 +07:00
Logan McNaughton
c01c0d5166 use gl_LastFragDepthARM and glTextureBarrier 2018-04-13 21:24:56 +07:00
Logan McNaughton
18e9a73eba Cache SpecialFeatures check 2018-04-07 11:30:33 +07:00
Logan McNaughton
b49ee1dd8b Fix GLESX clipping hack in GraphicsDrawer 2018-04-07 11:30:33 +07:00
Logan McNaughton
9c73fb27b1 Remove Image Texture requirement for some shaders 2018-04-07 11:30:33 +07:00
Logan McNaughton
af6460ff4f Require GL_NV_shader_noperspective_interpolation for GLES depth clamp emulation 2018-04-05 20:21:19 +07:00
fzurita
fd21e0e6bb Improve android logging 2018-04-05 20:17:08 +07:00
Joe Mattiello
9497a9b868 Add iOS system ifdefs and gles includes 2018-03-31 10:54:20 +07:00
Joe Mattiello
ff904fc51e Add the iOS framebuffer binder from @braindx 2018-03-31 10:54:20 +07:00
Joe Mattiello
c0ad5b8f26 Add new iOS files 2018-03-31 10:54:20 +07:00
hissingshark
d84e11e10f Added Vero4k build flags to detect libGLESv2.so path. 2018-03-31 01:18:53 +01:00
Logan McNaughton
ee906a217c Fix GLES2 shader storage support 2018-03-30 10:15:23 +07:00
fzurita
b6b4083982 Add NEON implementation of CRC_OPT.cpp
This comes from
https://github.com/hrydgard/ppsspp/blob/master/GPU/Common/TextureDecoderNEON.cpp
2018-03-29 12:51:58 +07:00
Logan McNaughton
07ec815831 Only write to gl_FragDepth once 2018-03-29 12:50:16 +07:00
gizmo98
a75665c98e rpi: limit m_maxCacheSize to fix texture corruption
Limit m_maxCachSize to fix texture corruption in beetle adventure
racing. I have tested values between 3500 and 8000. Everything >= 4000
produces texture corruption or stuttering after some time.
2018-03-29 12:49:53 +07:00
fzurita
ed5ebe3047 Fix android build after GLideNHQ refactor 2018-03-28 12:34:59 +07:00
Sergey Lipskiy
81d79e3938 GLideNHQ refactor: use graphics::InternalColorFormatParam as type for color format variables. 2018-03-28 12:28:05 +07:00
Logan McNaughton
50998f2f33 Use graphics backend in GLideNHQ 2018-03-27 20:52:56 +07:00
gizmo98
afc41907d5 arm neon: replace neon asm with neon intrinsics
-adds aarch64/arm64 support
-easier to maintain
2018-03-27 13:14:18 +07:00
fzurita
5a45ab6807 Remove unsafe compiler optimizations
They wear causing conflicts with neon
2018-03-27 13:10:57 +07:00
Sergey Lipskiy
e3bd9a0ccf Correct depth render. 2018-03-24 21:27:39 +07:00
Logan McNaughton
bdb0f7ca94 Emulate GL_DEPTH_CLAMP for GLES 2018-03-23 21:52:06 +07:00
Sergey Lipskiy
cbbc83ac96 Fix noise-based effects on texrects in "texrect in native res" mode.
Fixed GLideN64 3.0 Regression (Noise) #1740
2018-03-21 23:07:40 +07:00
Sergey Lipskiy
3289bd378b Update geometrymode after TexrectDrawer::draw()
Fixed Indy Racing 2000 (U) Speedometer broken #1709
2018-03-21 22:20:11 +07:00
Sergey Lipskiy
ed21ec774b Fix TexrectDrawer when frame buffer emulation disabled. 2018-03-21 21:20:57 +07:00
Sergey Lipskiy
5ccc40423f Correct screen coords viewport in TexrectDrawer::draw()
Fixed Mario Golf (U) bug in GLideN64 3.0 regresion #1710
2018-03-21 19:49:36 +07:00
Logan McNaughton
48018bdf4a Use included font.ttf for mupen64plus 2018-03-21 12:23:34 +07:00
Sergey Lipskiy
afb6f7e857 Revert "Adjust font defaults"
This reverts commit 30f56c98bd.

See #1758 for details.
2018-03-19 14:08:29 +07:00
Sergey Lipskiy
09a508ae11 cmake: Rename output folders. 2018-03-18 00:03:56 +07:00
Sergey Lipskiy
7aeb1018ea Fix texture size calculation and texture load.
Fixed Missing Ground Textures in Super Smash Bros. #1716
2018-03-11 14:43:16 +07:00
Logan McNaughton
2fc1b5f462 Use glDrawRangeElements 2018-03-09 20:33:15 +07:00
Logan McNaughton
958758b37a Remove PixelWriteBuffer
And a few other small fixes
2018-03-09 20:32:56 +07:00
Logan McNaughton
a611105e6d Cache glTexParameter calls 2018-03-09 20:32:34 +07:00
Logan McNaughton
91ab96d514 Fix FB attachment caching when texture is deleted 2018-03-09 20:32:34 +07:00
Logan McNaughton
b81dd6a673 Keep track of FB attachments 2018-03-09 20:32:34 +07:00
Sergey Lipskiy
822b098d6a Implement OSD Display: Internal Resolution and Rendering Resolution
Fixed #1733
2018-03-05 22:56:14 +07:00
Sergey Lipskiy
b37200239e Fix display of texrect coordinates in debugger. 2018-03-02 21:22:24 +07:00
Logan McNaughton
fefc4e63a8 Use short, not byte, for element index 2018-02-28 16:55:29 +07:00
Logan McNaughton
d467327349 Reduce some debug GL calls in production
Also only check extension support at init()
2018-02-27 20:30:19 +07:00
Logan McNaughton
cb90bb95ed Cleanup FB Texture caching code 2018-02-26 21:15:51 +07:00
Francisco Zurita
667b3d28ee Make some Android checks only apply to PowerVR 2018-02-26 20:15:15 +07:00
Sergey Lipskiy
08d3bff7ba Process unsupported blend modes only in two cycles mode. 2018-02-23 14:06:09 +07:00
Logan McNaughton
d2d0e9aafc Allow triple buffering in async copy mode 2018-02-23 13:43:30 +07:00
Logan McNaughton
892290b304 Fix flickering in Gauntlet Legends 2018-02-21 10:17:27 +07:00
Sergey Lipskiy
8cb25b1fed Add support for blend modes, which can't be emulated with shader blender.
Add a hack for blend mode 0x0150 in Tony Hawk 2: Spiderman uses the same blend mode,
but has no problems with it.
2018-02-18 20:44:11 +07:00
Sergey Lipskiy
b18ae00bfd Correct next buffer detection in FrameBufferList::renderBuffer().
Fixed flickering in WDC.
2018-02-18 15:33:21 +07:00
Sergey Lipskiy
7080034ddb Fix DebugMsg format string for gDPTextureRectangle. 2018-02-18 12:43:04 +07:00
Bobby Smiles
43a35787f0 Add European version of World Driver Championship. 2018-02-16 00:50:23 +01:00
Logan McNaughton
3e734c7b8b Fix compile for ZSortBOSS 2018-02-13 09:52:16 +07:00
Logan McNaughton
281e900a3f Minor fixes for ZSortBOSS 2018-02-13 09:52:16 +07:00
Tommy Nguyen
30f56c98bd Adjust font defaults 2018-02-12 21:14:58 +07:00
Gillou68310
592c732ef3 Implement BOSS ZSort ucode (WDC, Stunt Racer) 2018-02-12 12:28:58 +01:00
Sergey Lipskiy
1b811e5679 Debugger: fix TriInfo::getScreenX and TriInfo::getScreenY 2018-02-04 21:14:54 +07:00
Sergey Lipskiy
6498795b6d Debugger: implement search for polygons, which use selected texture. 2018-02-04 21:14:18 +07:00
Sergey Lipskiy
ef0b8264a3 Debugger: fix texture cache drawing. 2018-02-04 21:14:18 +07:00
Francisco Zurita
d193168815 Android makefile improvements and cleanup
Also, add more to .gitignore
2018-02-02 07:52:42 -05:00
Sergey Lipskiy
486e041c1b Do not disable aspect settings when fb emulation disabled.
Aspect settings work fine without fb emulation.
2018-01-05 15:46:12 +07:00
Sergey Lipskiy
9b2f50ca67 Fix rendering in widescreen resolutions when fb emulation disabled, #1700 2018-01-05 15:27:19 +07:00
Sergey Lipskiy
210315ec46 Fix texture filtering when mip-mapiing is off, #1699 2018-01-03 17:09:23 +07:00
Sergey Lipskiy
64335733e5 Simplify Calc_invw() for ZSort ucode. 2017-12-25 11:09:53 +07:00
Logan McNaughton
90db9eb4dc Update xxHash to 0.6.4 2017-12-22 08:23:52 -07:00
Francisco Zurita
05295254b6 Fix slow down on Adreno 540 GPUs. 2017-12-21 00:17:27 -05:00
Francisco Zurita
d841854023 Fix texture filter when using GLSL ES. 2017-12-20 00:29:12 -05:00
Sergey Lipskiy
0136966894 Make cache in TxFilter::filter working again. 2017-12-16 15:15:56 +07:00
Sergey Lipskiy
2e53bf19a0 Fix CRC calculation for 32bit textures. 2017-12-16 15:14:46 +07:00
Sergey Lipskiy
4bdc44ce4e Code cleanup: fix cast from float to s16. 2017-12-16 13:15:57 +07:00
Sergey Lipskiy
acc884ac0b Apply Acclaim point lighting for vertices, which also shaded by standard lighting.
Fixed #1683 Turok 2: Seeds of Evil (and maybe other Iguana made games) - Object Dynamic Light Issue
2017-12-16 13:10:15 +07:00
Sergey Lipskiy
509ee7ed10 Code refactor: simplify texture fetching shader parts. 2017-12-15 21:14:25 +07:00
Sergey Lipskiy
dfada113d3 Do not change current draw buffer after OSD drawing.
Fixed mupen64plus messages displayed upside-down.
2017-12-15 13:24:36 +07:00
Sergey Lipskiy
4d59d3ef28 Texrect drawer tuning: rewrite check for test color
Text looks better in Quest64 and Paper Mario.
2017-12-15 12:38:25 +07:00
Sergey Lipskiy
1b6d3cca9a Texrect drawer tuning: do not copy drawer.m_rect 2017-12-15 12:38:22 +07:00
Sergey Lipskiy
fa102a65c9 Do not revert Y for rects. 2017-12-15 12:38:19 +07:00
Sergey Lipskiy
a89486f6bd Fix issue with plugin freeze when emulation ended while plugin is in full screen mode.
Fixed PJ64: End emulation in Full-screen mode is broken #1680
2017-12-15 12:38:16 +07:00
Sergey Lipskiy
4cb2e7d7e8 Minor cleanup for YUVCONVERT_TEX shader 2017-12-15 12:38:13 +07:00
Sergey Lipskiy
5604bb94fa Code refactor: CombinerProgram()::getKey() returns reference instead of object
to avoid copy of the key to temp object when combiner added to combiners map.
2017-12-15 12:38:10 +07:00
Sergey Lipskiy
6a72b09b1f Move texture fetching mode logic out of shader. 2017-12-15 12:38:03 +07:00
Gillou68310
876d7a6273 Fix VS2013 compilation 2017-12-14 17:46:45 +01:00
Gillou68310
cc3e1e6302 Add support for odroid 2017-12-14 17:45:21 +01:00
Gillou68310
6308cc2918 Update m64p api headers 2017-12-14 17:45:20 +01:00
Gillou68310
3e7e943172 Update TxFilterStub.cpp 2017-12-14 17:45:20 +01:00
Sergey Lipskiy
05aaddd600 Fix use of prim depth in shaders.
Fixed Custom Robo graphic glitch in WIP Builds 3 #1678
2017-12-09 22:48:19 +07:00
Sergey Lipskiy
3241d49ee6 Code cleanup: use the same TEX_OFFSET macro for standard and 3point filtering.
OpenGL and GLES3+ shaders.
2017-12-02 12:45:43 +07:00
Sergey Lipskiy
6845116856 Fix bilinear filtering shader for GLES2. 2017-12-02 12:45:39 +07:00
Sergey Lipskiy
37cc010e85 Add special hack for monochrome effect in Zelda games.
Fixed OOT - major graphic glitches in cutscene #1673
2017-11-28 16:32:03 +07:00
Sergey Lipskiy
055591d6d0 Enable txHiresFullAlphaChannel config option by default because
most of modern packs designed to use it.
2017-11-28 16:31:55 +07:00
Aquatakat
f955a181ad UI: New texture path visual adjustment 2017-11-28 16:27:14 +07:00
Francisco Zurita
55f2c02446 Fix rare crash in opengl_BufferedDrawer.cpp 2017-11-27 10:27:26 +07:00
Sergey Lipskiy
d0be5190ba Read "txDumpPath" setting from mupen64plus config. 2017-11-27 09:49:27 +07:00
Aquatakat
d3fbff82f2 UI: Gamma correction moved to emulation tab 2017-11-25 21:01:30 +07:00
Sergey Lipskiy
2da7be29d4 Add 'texture cache path' and 'texture dump path' config option.
Implemented request mult htc support #1383
2017-11-25 21:01:25 +07:00
Sergey Lipskiy
e284f432d1 Do not shutdown TextureFilterHandler on RomClosed() API command.
This avoids hires cache reload on savestates load.

Minor code cleanup (GLideNHQ code is a mess atm).
2017-11-22 14:35:31 +07:00
Logan
a2793ace23 Don't unset DP_STATUS_FREEZE 2017-11-22 11:26:46 +07:00
Francisco Zurita
e2614529c2 Fix check for using the BufferedDrawer 2017-11-21 09:34:54 -05:00
Sergey Lipskiy
adabb40e36 Always detect (RDRAMSize on rom start.
This fixes crash when 8MB game started after 4MB one.
2017-11-20 23:17:14 +07:00
Sergey Lipskiy
942dc78271 Do not run config and about dialogs in separate thread.
I can't find another way to avoid
"QObject::~QObject: Timers cannot be stopped from another thread"
error when emulator closed.
2017-11-20 21:25:22 +07:00
Sergey Lipskiy
426488c88a Disable RSPTHREAD use for zilmar spec build. 2017-11-20 21:11:24 +07:00
Sergey Lipskiy
e068a9dd77 Revert "Change texture coordinates."
This reverts commit 89406223f5.

Commit causes regression in motion blur effect in Zelda MM.
Reverted until further investigation.
2017-11-19 20:41:18 +07:00
Sergey Lipskiy
38dc7ff25f Clear fences list in olorBufferReaderWithBufferStorage::_destroyBuffers()
Fixed memory leak on graphics context destroy.
2017-11-19 19:56:05 +07:00
Sergey Lipskiy
fbd4a9a016 Unbind FBO before clearing frame buffers list.
Fixed memory leak on graphics context destroy.
2017-11-19 19:55:13 +07:00
Sergey Lipskiy
26623cec1f Code cleanup: fix issues in GLideN64 found by static code analyser. 2017-11-18 22:07:27 +07:00
Sergey Lipskiy
67f72e86e5 Code cleanup: fix issues in GLideNHQ found by static code analyser. 2017-11-18 21:43:58 +07:00
Sergey Lipskiy
b6781a420b Fix renderTriangles when polygon culling is disabled.
Fixed Body Harvest Clipping Issue #550
2017-11-18 15:42:16 +07:00
Sergey Lipskiy
737338ca20 Use fixed point calculation for texrect s and t coordinates.
It is impossible to handle integer overflow when coordinates in float format.

Fixed textures in Major League Baseball #146
2017-11-18 15:41:18 +07:00
Sten Appelt
9d735212f0 Rewrite glGetProcAddress for MacOsX 2017-11-18 15:35:38 +07:00
Sergey Lipskiy
e1c7a44593 Force texture wrap/mirror for hires textures when texture size is half of real (load) texture size.
Fixed Majora's Mask - custom textures broken on moon #1662
2017-11-18 15:31:02 +07:00
Sergey Lipskiy
038c74af12 Correct gSPModifyVertex for case when widescreen hack enabled.
Widescreen hack breaks Disney's Tarzan amusingly #1501
(problem with 2D backgrounds in widescreen mode still exists and hardly can be fixed)
2017-11-17 13:45:50 +07:00
Sergey Lipskiy
29c9a778d9 Correct debug output 2017-11-16 18:52:32 +07:00
Sergey Lipskiy
7ad1bae3ee Enable noDepthFrameBuffers hack for Vigilante 8. 2017-11-16 18:51:05 +07:00
Sergey Lipskiy
ddec7aabe6 Revert "Do not use aux depth buffer as hwfbe texture."
This reverts commit bd10c7a788.
2017-11-16 18:32:05 +07:00
Logan McNaughton
a8aa9833e4 Fix chunk copy start address 2017-11-16 09:44:51 +07:00
Sergey Lipskiy
9ab843a9cc Fix copy buffer chunk to RDRAM. 2017-11-16 09:44:48 +07:00
Sergey Lipskiy
4d4a2d18a2 Fix RDRAMtoColorBuffer::copyFromRDRAM with FBInfo 2017-11-16 09:44:44 +07:00
Sergey Lipskiy
60c092ee23 FBInfo fixes 2017-11-16 09:43:08 +07:00
Francisco Zurita
538674da51 Fix Pokemon Snap border flicker
This flicker happens while zooming in to take  a picture while RDRAM to
color buffer and color buffer to RDRAM are both enabled.
2017-11-15 16:17:42 +07:00
Sergey Lipskiy
5a037474a2 Code cleanup: fix compilation warnings. 2017-11-15 15:07:52 +07:00
Logan McNaughton
5f088c70ce Copy 4k block in FBInfo Chunk copies 2017-11-11 13:59:12 -07:00
Sergey Lipskiy
06b995c5f7 Code refactor: use _FIXED2FLOATCOLOR instead of _FIXED2FLOAT for color transformation from int to float. 2017-11-11 21:35:19 +07:00
Sergey Lipskiy
dcdf66dc0b Fix hardware lighting. It was broken when lighting method was rewritten in 6af6e2c17f
Hardware lighting is incompatible with new lighting method.
Model matrix may be different for different vartices, but only latest state of inverted light vectors are loaded to shader.
Thus I reverted calculations of data for hardware lighting.

Minor code cleanup.

Fixed: Zelda OOT, bad lighting with HW per pixel lighting #1652
2017-11-11 21:35:08 +07:00
Sergey Lipskiy
591eda82ba Set PrimDepth to gl_FragDepth when DepthSource set to Primitive.
This makes player's shadow solid in Tony Hawk's Pro Skater 2
2017-11-11 01:30:48 +07:00
Sergey Lipskiy
3c61198043 Hardcode blend mode, which is impossible to emulate with shaders.
Fixed Tony Hawk's Pro Skater 2 Shadow Glitch #1337
2017-11-11 01:01:49 +07:00
Sergey Lipskiy
732c27a07d Do not reset gDP.otherMode.l for Quake.
Fixed Quake 64 depth issues #1169
2017-11-10 18:37:51 +07:00
Sergey Lipskiy
897a100a97 Fix cmake warning "MACOSX_RPATH is not specified for the following targets" 2017-11-09 12:59:26 +07:00
Sergey Lipskiy
706b648991 Fix clang: error: unsupported option '-static-libgcc' 2017-11-09 12:46:13 +07:00
Sergey Lipskiy
76066ecd4c Fix compilation for MSVS 2013 2017-11-09 00:02:49 +07:00
Sergey Lipskiy
a47d9d5840 Save hardware per pixel lighting enabled flag in combiners keys storage.
Use it to set hardware lighting support in GBI.

Fixed New shader cache breaks with hardware per pixel lighting enabled #1650
2017-11-08 17:11:14 +07:00
Sergey Lipskiy
7642758873 Fix shader compilation for combiners, wich use only T1.
Fixed main menu in Paper Mario.
2017-11-07 11:22:12 +07:00
Sergey Lipskiy
dd4fac7230 Set tmu when init hires texture.
Fixed: Zelda: OoT Texture Pack flickers before day/night transition #1470
2017-11-05 22:27:13 +07:00
Sergey Lipskiy
ef56e0da7c Clear hires texture cache if there was an error during load. 2017-11-05 11:56:35 +07:00
Sergey Lipskiy
9d149b33ed Correct TxHiResCache::loadHiResTextures: stop texture load if memory allocation failed.
It is done as an attempt to fix plugin's crash when it loads huge texture pack, such as Zelda OOT Community Retexture Project V7
The attempt is not succeded: plugin may crash after texture pack load because texture cache
consumed almost all available memory and the rest is not enough for plugin's work.
The code is useful anyway.

Note: the problem is heavier with Project64. mupen64plus build has better chance to load huge texture packs.
2017-11-04 22:49:37 +07:00
Sergey Lipskiy
28051387e9 Code refactor: rewrite TxUtil::getNumberofProcessors() 2017-11-04 19:26:50 +07:00
Sergey Lipskiy
fb6d945953 Replace #ifdef WIN32 by #ifdef OS_WINDOWS in GLideNHQ 2017-11-04 19:00:50 +07:00
Sergey Lipskiy
4e36fa07a2 Remove 'Video RAM usage limit' config option. 2017-11-04 18:43:29 +07:00
Sergey Lipskiy
a2ac255710 Fix divide by zero crash when hd texture is less than original one. 2017-11-02 23:39:21 +07:00
Sergey Lipskiy
d1bf2e3979 Fix load hires textures.
Fixed 2 zelda oot problems #1521
2017-11-02 22:59:18 +07:00
Sergey Lipskiy
b4ad1832c4 Write siplified texture read shaders for COPY mode.
Up shaders storage version.

Fixed wrong use of YUV conversion in COPY mode.
2017-11-02 17:08:33 +07:00
Sergey Lipskiy
f94216cf02 MSVS project for mupen64plus x64
Result will be copied to folder pointed by "Mupen64PluginsDir_x64" environment variable.
2017-11-02 11:05:55 +07:00
gizmo98
f29468728b arm neon: Disable hardware lighting for ucodes with custom lighting methods.
https://github.com/gonetz/GLideN64/commit/dcf8784dca047b347d8ec4fc8a0d88
dd8ab9b081
2017-11-01 13:52:28 +01:00
Sergey Lipskiy
184debbd43 Fix gDPLoadTLUT when count > 256
Fixed crash in Vigilante 8: 2nd Offense Menu #1479
2017-11-01 17:45:24 +07:00
Sergey Lipskiy
dcf8784dca Disable hardware lighting for ucodes with custom lighting methods.
Fixed #1542 Turok 2/Turok 3 Per Pixel Lighting Rainbow Weapons.
2017-10-31 17:42:48 +07:00
Sergey Lipskiy
adc2b547e8 Implement YUV-to-RGB color space conversion. See 12.5 of programming manual
Up shader storage version.

Fixed Killer Instinct Gold: Improper Projectile Effects. #1513
2017-10-31 13:27:34 +07:00
Sergey Lipskiy
77ffe6106e Split othermode::textureConvert on 3 bits. 2017-10-31 13:27:34 +07:00
Logan McNaughton
5b297d844a Add some missing items in custom INI reading
for mupen64plus
2017-10-30 07:42:38 -06:00
Sergey Lipskiy
757c3c4f8f Calc FPS as number of color buffer origin changes per second.
Fixed FPS counter not reporting correctly #1510
2017-10-30 15:33:38 +07:00
Sergey Lipskiy
58636fcee6 Do not clear RDRAM after copyFromRDRAM when FBInfo enabled
Fixed FBInfo not working #1559
2017-10-30 15:01:38 +07:00
Sergey Lipskiy
365838eddc Fixed problem with combiners shaders generation:
Parts of shaders code created on start. Some parts depend on config options.
When config changed with GUI shaders updated but code parts not updated.
Thus new shaders do not correspond to current state of config.
2017-10-29 16:49:05 +07:00
Sergey Lipskiy
7d1d3da114 Put UTextureFilterMode uniform creation to the right place. 2017-10-29 15:10:53 +07:00
Sergey Lipskiy
c5c0fbeb6f Use combiners keys when ShaderProgramBinary is not supported and shaders storage con not be created. 2017-10-28 21:48:01 +07:00
Sergey Lipskiy
d035c4da56 Fix compilation on Android. 2017-10-27 13:42:02 +07:00
Sergey Lipskiy
1cdb1754a6 Fill noise textures data only once on plugin's start. 2017-10-27 10:43:14 +07:00
Sergey Lipskiy
f6b0f3446b Fix compilation with gcc. 2017-10-27 10:08:22 +07:00
Francisco Zurita
77a777162c Fix flickering when copy color to RDRAM and RDRAM to color buffer are
enabled.
2017-10-26 14:50:30 +07:00
Sergey Lipskiy
7e4271d991 Display save/load progress for combiners shaders
Display "init noise texture" message. Progress is hard to display because noise textures generated in threads.
2017-10-26 00:37:26 +07:00
Sergey Lipskiy
aba3fefe63 Implement alternative methods of combiners shaders load.
Combiners muxes saved in separate text file.
When shader cache becames invalid, list of shaders muxes used to re-create combiners.
2017-10-26 00:27:52 +07:00
Sergey Lipskiy
bd10c7a788 Do not use aux depth buffer as hwfbe texture.
Fixed black polygons in vigilante 8,  #1639
2017-10-24 20:36:14 +07:00
Sergey Lipskiy
bc1f2d37d4 Code cleanup: remove commented code for blur post filter.
It will not be refactored.
2017-10-24 20:36:08 +07:00
Logan McNaughton
168dccde2a Allow Gauntlet Legends to boot in HLE
Code by LegendOfDragoon
2017-10-24 15:45:37 +07:00
Sergey Lipskiy
35cc66bad4 Code cleanup:
* make RSPInfo::busy and RSPInfo::halt boolean
* remove RSPInfo::close
* rename RSPInfo::bLLE to RSPInfo::LLE
2017-10-24 15:44:37 +07:00
Sergey Lipskiy
977fddf3ea Correct condition for Zelda monochrome buffer.
Fixed Pokemon Puzzle League: missing graphics in game (regression) #1588
2017-10-11 15:06:32 +07:00
gizmo98
7d22828193 gSPNEON.cpp: merge gSPLightVertex_NEON and gSPLightVertex4_NEON 2017-10-10 14:04:37 +07:00
gizmo98
39d4b223c8 arm neon: add gSPInverseTransformVector function
Fix declaration of gSPInverseTransformVector as well. Replace vtx[4]
with vec[3].
2017-10-10 14:04:36 +07:00
Francisco Zurita
762def7dae Fix issues reported by Valgrind 2017-10-09 23:51:16 -04:00
Conn O'Griofa
d8ac5a761c Raspberry Pi: fix vendor library names & add override
* Use new libbrcmEGL/libbrcmGLESv2 names
* Allow RPI autodetection override via -DMESA=On (for VC4 driver)
2017-10-07 08:26:31 +01:00
Sergey Lipskiy
c75985b9d8 Code refactor: rewrite HLE vertices loading.
Enable __VEC4_OPT for Windows release builds.
2017-10-06 17:03:11 +07:00
Sergey Lipskiy
d197db5b90 Rewrite Zelda MM Point Light 2017-10-06 17:03:11 +07:00
Logan McNaughton
daa567ec71 Add support for SP_STATUS_REG and RDRAM_SIZE in mupen64plus API 2017-10-06 14:14:05 +07:00
gizmo98
db18139ca5 Refine fullscreen toggle logic
-Toggle m_bFullscreen if _changeWindow is executed.
-Don’t allow _resizeWindow if m_bFullscreen is true.
-_resizeWindow returns false if fullscreen is enabled.
2017-10-06 14:07:06 +07:00
Sergey Lipskiy
b6c6ac0ae5 Correct SoftwareRender renderTriangles
Fixed Perfect Dark SW Depth Buffer Problem. #1580
2017-10-05 20:55:43 +07:00
Sergey Lipskiy
48a4c2c623 Fix "use unitialized variable" run-time error. 2017-10-04 16:29:09 +07:00
S2S
89406223f5 Change texture coordinates.
Subtracting 1 might not be accurate,
but it is done anyway in the rest of the code regarding sprites.
Just for the record, implementing correct texture coordinate handling
for sprites might need reverting this.
2017-10-04 16:15:46 +07:00
S2S
feb0e53034 Fix sprite sizes
Fixes https://github.com/gonetz/GLideN64/issues/936
2017-10-04 16:15:46 +07:00
Logan McNaughton
54a1c4a65c Use rand_s for MINGW 2017-10-04 16:11:10 +07:00
Francisco Zurita
0c4a86b8c6 Remove majora hack when interlaced mode changes.
The hack is currently breaking the bomber's notebook.
2017-10-04 12:48:26 +07:00
Sergey Lipskiy
deaf61299f Decrease level of mip-map texture if texture with given size and level can't be created by OpenGL.
Fixed shadows of empire: black triangles (regression!) #1612
2017-10-02 16:58:55 +07:00
Sergey Lipskiy
e6ff470fe6 Add freetype headers to project. 2017-10-01 18:37:11 +07:00
Sergey Lipskiy
ce319b26e7 Update pnglib and zlib headers. 2017-10-01 18:30:20 +07:00
Sergey Lipskiy
b20090c06c Add getRevision.bat
Add pre-build step in Visual Studio projects to generate Revision.h
2017-10-01 17:52:27 +07:00
clobber
a3807827c0 Simplified and complete workaround for #1601
This properly worksaround the bug with Intel drivers on the Mac, which initially broke in parts of commits d4dbe7c094 and 231463e368
2017-10-01 14:05:25 +07:00
Sergey Lipskiy
57da967e7c Switch to png screen shot format for zilmar-spec builds. 2017-10-01 11:37:49 +07:00
Sergey Lipskiy
2e71226b71 Update VisualStudio project files.
Note: two environment variables must be set:
* N64PluginsDir points to Plugin folder for zilmar-spec emulators
* Mupen64PluginsDir points to folder with plugins for mupen64plus

Post build step will copy results of building to these folders.
2017-09-30 19:00:11 +07:00
Sergey Lipskiy
e8b03cd599 Make workaround for #1601 Intel-specific.
Fixed Blending changes broke PowerVR devices #1608
2017-09-30 18:01:26 +07:00
Sergey Lipskiy
70c540b073 Rewrite fix for #1539 : keep in tile descriptor start address of frame buffer, not pointer on it.
Should be more safe.
2017-09-29 22:25:56 +07:00
Sergey Lipskiy
203c53307d Reset gDPTile::frameBuffer if it points to removed buffer.
Fixed Paper Mario: Red Station Crashing #1539
2017-09-29 17:20:07 +07:00
clobber
3c8689d848 ShaderBlender: cast to ivec4 where needed. Fixes #1601
This works around a bug with Intel GPU's on macOS where colors can appear wrong.
2017-09-29 14:58:40 +07:00
Sergey Lipskiy
5455604f64 Fix QT error: invalid initialization of non-const reference of type ‘QString&’ from an rvalue of type ‘QString’ 2017-09-28 13:36:46 +07:00
Sergey Lipskiy
2724d83323 Add L3D ucode for Blast Corps into list of specialMicrocodes,
since it can't be correctly detected by ucode string.

Fixed Blast Corps Stage select lines are wrong #1595
2017-09-27 18:53:59 +07:00
Sergey Lipskiy
d404dbfceb Correct UBlendMode2Cycle::update()
Fixed World Driver Championship shadows are.....grey! #1596
2017-09-27 18:21:20 +07:00
Sergey Lipskiy
ee3f4a6962 Partially revert commit 81cc0854 Fix blending when CLR_ON_CVG flag is on.
It will not work without pixel covarage calculation.

Fixed Mario Tennis (USA) - missing character selection icons (regression) #1599
Fixed Android/potential PC regression too: Conker broken FB render/lighting chunks. #1597
2017-09-27 16:19:28 +07:00
Logan
c925b8dd54 Optimize 3point shader 2017-09-26 15:20:46 -06:00
Sergey Lipskiy
a2eefed0a3 Add hack for rect color alpha.
Details in commit d506d6134

Fixed Foresaken 64: wrong intro (regression) #1585
2017-09-26 22:58:05 +07:00
Sergey Lipskiy
57da925a14 Check for overlapping frame buffers in FrameBufferList::removeIntersections()
Fixed Mario Tennis - missing bottom half of scoreboard #1564

Problem:
Top Gear Hyper Bike has overlapping frame buffers.
That is start address of a buffer points on last line in previous buffer.
When new buffer intersects with prevois one, plugin removes old buffer.
That causes black screen in case of Top Gear Hyper Bike.

FrameBuffer::updateEndAddress() was modified in commit 17eb8696ea to fix it.
It sets buffer end address using buffer height - 1.
This fix causes issue with Mario Tennis scoreboard #1564
HW buffer is not detected because end address is wrong.

Solution:
Add another test for intersecting buffers.
It checks that the buffers are not just arbitrary intersected ones,
but it is sequence of two slighly overlapping buffers.
In that case buffer is not removed, but its end address is corrected,
because buffers address space must not intersect.
2017-09-26 16:31:24 +07:00
Sergey Lipskiy
032da85357 Reset m_cleared and m_RdramCopy for depth buffer after software render.
Fixed #1594 Mario Tennis VS screen: line flickers
2017-09-26 15:23:07 +07:00
Francisco Zurita
3790dbe1ed Fix build error in Android build 2017-09-25 00:48:49 -04:00
Sergey Lipskiy
7ae98a2bf9 Optimize TriGen functions in F3DSWRS ucode. 2017-09-25 11:37:57 +07:00
Sergey Lipskiy
597f7a25cf Revert "Remove "Animal Forest" ucodes from specialMicrocodes list. These ucodes successfully detected by ucode string."
This reverts commit 67379aa0fc.
2017-09-24 22:09:06 +07:00
Sergey Lipskiy
497b8dd709 Use legacy blending for DepthFogCombiner.
Fix regression in Beetle Adventure Racing! snow is grey! #1587
2017-09-24 18:55:01 +07:00
Sergey Lipskiy
1266ced083 Code cleaup: remove unused MonochromeCombiner. 2017-09-24 18:51:02 +07:00
Sergey Lipskiy
7ba58fe5b6 Implement CombinerKey() ctor 2017-09-24 18:36:07 +07:00
Sergey Lipskiy
c67e017772 Correct Tri commands for F3DSWRS ucode.
Fixed Star Wars: Rogue Squadron HLE glitches. #1584
2017-09-22 22:39:30 +07:00
Sergey Lipskiy
81cc0854dc Fix blending when CLR_ON_CVG flag is on.
Remove hack for Pilot Wings.
2017-09-21 23:18:35 +07:00
Sergey Lipskiy
a70bc7411b Fix glError in screenshot functions. 2017-09-21 23:18:32 +07:00
Sergey Lipskiy
67379aa0fc Remove "Animal Forest" ucodes from specialMicrocodes list. These ucodes successfully detected by ucode string. 2017-09-21 23:18:29 +07:00
Sergey Lipskiy
231463e368 Optimize blender shaders. Thanks to Logan McNaughton aka loganmc10 and standard-two-simplex for the new code. 2017-09-21 23:18:11 +07:00
Sergey Lipskiy
a2a96f3d92 Set CHANGED_LIGHT|CHANGED_LOOKAT bits when index in modelview stack changes.
Fixed #1417 [HLE] Lighting issue
2017-09-21 21:33:08 +07:00
Sergey Lipskiy
21af2d8ea7 Rename F3DEX2MM ucode to F3DZEX2. Zelda games use modifications of this ucode.
Fixed Zelda: OoT missing fences #1575
2017-09-21 21:33:08 +07:00
Sergey Lipskiy
da2becd57e Fix ShaderBlender1::write method. Up ShaderStorage version.
Fixed #1553 Resetting once breaks rendering via transparency of many textures.
Thanks Logan McNaughton for finding the root of the problem.
2017-09-21 21:33:08 +07:00
Sergey Lipskiy
d4dbe7c094 Correct blending when FORCE_BL flag is off. Up shader storage version.
Fixed F-Zero X wrong borders #639
2017-09-21 21:33:08 +07:00
Sergey Lipskiy
41aa06523e Move ucodes source files to uCodes folder. 2017-09-21 21:33:08 +07:00
Sergey Lipskiy
47d718f287 Add F3DFLX2 ucode for F-Zero. Implement F3DFLX2 lighting method. 2017-09-21 21:33:08 +07:00
Sergey Lipskiy
ef6f470df7 Revert "Fix implementation of 0xD5 (Special_1) command for F3DEX2 ucode."
This reverts commit 8985e38bc0.
2017-09-16 18:44:40 +07:00
Sergey Lipskiy
8985e38bc0 Fix implementation of 0xD5 (Special_1) command for F3DEX2 ucode.
olivieryuyu found that 0xD5 command, when presents in ucode, updates combined matrix.
I could not remeber, which game uses implementation of F3DEX2_Special_1 with gSPDlistCount call.
Probably such game does not exists and this code was added by mistake. I removed it.
2017-09-13 18:01:15 +07:00
Sergey Lipskiy
187f9ef390 Fix Zelda ucodes detection.
Zelda OOT ucode string:
"RSP Gfx ucode F3DZEX.NoN fifo 2.06H Yoshitaka Yasumoto 1998 Nintendo."
Zelda MM ucode string:
"RSP Gfx ucode F3DZEX.NoN fifo 2.08I Yoshitaka Yasumoto/Kawasedo 1999."
2017-09-13 18:01:07 +07:00
Logan McNaughton
528744de19 Init mupen64plus config at PluginStartup 2017-09-13 15:22:29 +07:00
Logan
f567186e01 Only use XXH32 in CRC_OPT 2017-09-13 15:20:39 +07:00
Sergey Lipskiy
21e7cae6aa Implement F3DEX2_Special_1 command for F3DEX 2.0XH ucodes.
Fixed #1562 Pokemon Snap/Kirby 64/Super Smash Bros. unimplemented command
2017-09-12 21:06:38 +07:00
Sergey Lipskiy
9874fa641c Code cleanup: remove unused function from gSP.h 2017-09-12 21:06:38 +07:00
Sergey Lipskiy
6ecdd82ee7 Code cleanup: better names for variables in F3DSWRS.cpp 2017-09-12 15:22:58 +07:00
Sergey Lipskiy
b4400c1d24 Correct next command calculation for F3DSWRS_Tri1 and F3DSWRS_Tri2
Fixed Star Wars Rouge Squadron gfx bug #1546
2017-09-12 15:22:54 +07:00
Francisco Zurita
16d1aa6761 Fix possible memory corruption when reading pixels for G_IM_SIZ_8b
buffers.

Also, improve variable naming.
2017-09-11 10:26:49 +07:00
Francisco Zurita
c5b5364299 Better check when deciding to create a new color buffer texture. 2017-09-11 10:26:49 +07:00
Francisco Zurita
8fbd1d030b Fix memory corruption in Banjo-Tooie 2017-09-11 10:26:49 +07:00
Sergey Lipskiy
1035a0d432 Enable WPO for windows release build. 2017-09-08 20:55:14 +07:00
Logan McNaughton
23642624d4 Enable IPO for Release build 2017-09-06 20:48:11 -06:00
Sergey Lipskiy
bbc7131655 Rewrite TriGen02_PrepareVtxData 2017-08-11 12:23:39 +07:00
Sergey Lipskiy
f95d819a47 Up shader storage version. 2017-08-11 12:23:39 +07:00
Sergey Lipskiy
19b2ed6957 Star Wars Rogue Squadron ucode : code cleanup 2017-08-11 12:23:39 +07:00
Sergey Lipskiy
f0eef7ab31 Implement command 0xBD This command generates texrects for explosions. 2017-08-11 12:23:39 +07:00
Sergey Lipskiy
62eb76e7d9 Correct DebugMsg for gSPMatrix 2017-08-11 12:23:39 +07:00
Sergey Lipskiy
84cf648089 Always call frameBufferList().saveBuffer() from gDPSetColorImage, even if buffer data not changed.
Fixed fb-related issues with Star Wars - Rogue Squadron
2017-08-11 12:23:39 +07:00
Sergey Lipskiy
20c2fb9b5e Fix gSPSWVertex for __VEC4_OPT 2017-08-11 12:23:39 +07:00
Sergey Lipskiy
d37903461c Fix RSP commands dump. 2017-08-11 12:23:39 +07:00
Sergey Lipskiy
1bb170a3c4 Implement command 0x05. This command generates polygons for terrain geometry.
Very large and complex.
2017-08-11 12:23:39 +07:00
Sergey Lipskiy
1fb8653dae Rewrite DL commands. 2017-08-11 12:23:39 +07:00
Sergey Lipskiy
0f99077724 Log SWRS commands 2017-08-11 12:23:39 +07:00
Sergey Lipskiy
e56e45e2da Command 05 - 02 WIP debug 2017-08-11 12:23:39 +07:00
Sergey Lipskiy
02e84b90f2 Command 05 - 02 WIP 2017-08-11 12:23:39 +07:00
Sergey Lipskiy
f0bbfbc84e Add F3DSWRS_SetOtherMode_L_EX command 2017-08-11 12:23:39 +07:00
Sergey Lipskiy
089dd2df0e Fix fog for F3DSWRS 2017-08-11 12:23:39 +07:00
Sergey Lipskiy
a0c2b39a65 Fix texture scale load.
Explanation from olivieryuyu:

1. I do believe that RS ucode has no lighting as I cannot see any code for it! I guess that it was done on the purpose to save power for other matters.

2. G_TEXTURE (command BB) does not set the texture s and t scale. Command BB is composed of two 32 bits words (as for FAST3D) but RS ucode does not use the 2nd 32 bits word. This latter seems to be always nil and should be considered as padding.

3. Movemen (command 0x03) case 82 does not concern light (because there is no light!!!). Actually this case of movemen seems to set the texture s and t scale which is then retrieved by the B4 command and combined with the texture coordinates.
2017-08-11 12:23:39 +07:00
Sergey Lipskiy
a9248c5a26 Port of Lemmy's implementation of SWRS ucode. 2017-08-11 12:23:39 +07:00
Sergey Lipskiy
6bfe0adf0a Fix triangle index calculation for flat shading. 2017-08-11 12:23:39 +07:00
Sergey Lipskiy
24b041b86e Set fullscreen scissor at the end of FrameBufferList::renderBuffer()
Fixed clipped screen issue with OBS studio, #1515
2017-08-08 22:49:28 +07:00
Sergey Lipskiy
3b9f16e8dd Fix regression with blending in A Bug's Life, #1488
Hack alert:
The problem blender is used in two cycles mode, but both cycles are the same:
c_in*a_in + c_mem * 1ma
I have no access to c_mem from shader. Therefore, I use c_in instead of c_mem in the first cycle.
Result of the second cycle will be blended with c_mem by GL blender, as usual.
This is pretty good approximation, no problems noticed.
2017-07-30 22:50:39 +07:00
Sergey Lipskiy
aa2a12b32d Print K4 and K5 in debugger. 2017-07-30 21:21:52 +07:00
Michael Maltese
a09a1f02c4 CMake: fix 'UNIX build requires MUPENPLUSAPI' message 2017-07-23 19:54:53 -07:00
Michael Maltese
df5fc37630 TxInternal: fix include typo on macOS 2017-07-19 19:18:03 -07:00
Stefan
92f5246eb6 armv8 crc32: add license information 2017-07-18 06:26:54 +02:00
Sergey Lipskiy
5691fcbc23 Implement F3DAM ucode.
Decoded by olivieryuyu

Fixed #97 hey you pikachu:hilarious texture bug
2017-07-17 23:08:26 +07:00
gizmo98
a986503133 arm neon: add CopyMatrix function 2017-07-15 10:19:15 +00:00
Francisco Zurita
72abac8a83 Fix build error after latest debug changes. 2017-07-03 20:39:42 +07:00
Sergey Lipskiy
dabbad0ba2 Implement Acclaim point lighting.
Fixed #147 Turok2: missing flashlight
Fixed #381 Armorines - Project S.W.A.R.M. missing lightning effect in HLE mode
2017-06-30 21:56:03 +07:00
Aquatakat
fbd13c3940 UI: Debug spacer fix
Spacers in Qt 5.4 don't work without a size hint. It's fixed in later
versions.
2017-06-25 11:11:56 -06:00
Aquatakat
b71b2699ff UI: Debug tab cleanup 2017-06-25 10:37:41 -06:00
Sergey Lipskiy
2f88a695a6 Add config option for debug dump. 2017-06-25 15:57:20 +07:00
Sergey Lipskiy
c907c3013a Implement Debugger. 2017-06-25 15:35:48 +07:00
Sergey Lipskiy
0f01e1e333 Correct text height calculation in TextDrawer::getTextSize 2017-06-25 15:07:06 +07:00