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

2979 Commits

Author SHA1 Message Date
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