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

1931 Commits

Author SHA1 Message Date
zilmar
5cb23ede3a GLideNUI-wtl: Start to add code for handling profiles 2020-04-22 21:14:15 +07:00
zilmar
5f61dd12a5 GLideNUI: make Gliden64 have rc files 2020-04-22 21:14:15 +07:00
zilmar
f2e32892a3 Add GLideNUI-wtl 2020-04-22 21:13:33 +07:00
Logan
686fa7d108 FlappyBird64 requires CopyFromRDRAM
Fixed #2197 FlappyBird HUD elements not displayed
2020-04-17 19:11:52 +07:00
Sergey Lipskiy
50dd3ed2e0 Set clip ratio to 1 when render image from DRARM.
Fixed #2211 Duplicate image in Dr. Mario
2020-04-16 17:28:07 +07:00
Logan McNaughton
7ef3be1cab Mask VI_ORIGIN address 2020-04-15 11:12:42 +07:00
Sergey Lipskiy
9eddde6e0f Fix "division by zero" issue in gSPObjSprite.
Fixed #2192 Unknown memory action on Magical Tetris Challenge
2020-04-11 14:57:50 +07:00
fzurita
fbd1ad1a5a Fix broken Android compilation with updated xxHash 2020-04-09 15:33:56 +07:00
Sergey Lipskiy
d8f031294a Use linear equation for LOD calculation,
as proposed by standard-two-simplex in #2203
2020-04-09 15:06:59 +07:00
Sergey Lipskiy
a73da69e10 Always use clip ratio 1 for rects and screen-space triangles. 2020-04-06 20:01:54 +07:00
Sergey Lipskiy
2ebfabaf8e Revert "Set clip ratio to 1 in TexrectDrawer."
This reverts commit cd9b5e1c93f0a01a9648982f8ecffcc08919e6f2.
2020-04-06 20:01:54 +07:00
Sergey Lipskiy
2169384245 Set default clip ratio to
- 2 for F3DEX2 and .Rej,
- 1 for F3DEX and other fast3d ucodes, except .Rej
2020-04-06 20:01:54 +07:00
Sergey Lipskiy
aeabfd3912 Set clip ratio to 1 in TexrectDrawer. 2020-04-06 20:01:53 +07:00
Sergey Lipskiy
a2d731b4db Update viewport on clip ratio change. 2020-04-06 20:01:53 +07:00
Sergey Lipskiy
0b8f10f9d6 Set gSP.clipRatio default value to 1 for all ucodes but Rej ones, where it is 2. 2020-04-06 20:01:53 +07:00
S2S
2c51fb096f Magnify clipping space by ClipRatio.
Fixed #190 Cruis'n World: wrong logo
2020-04-06 20:01:53 +07:00
Sergey Lipskiy
0cca2fa2fe Change type for BlueNoiseItem fields from char to signed char.
It should fix compilation on ARM.
2020-04-06 19:58:57 +07:00
Logan McNaughton
c168f53d12 Fix bug introduced by 85a8635952 2020-04-05 11:06:58 +07:00
gizmo98
a96853d559 Dithering settings: add tooltip text 2020-04-05 10:54:12 +07:00
Sergey Lipskiy
827b69816f Add support in GUI 2020-04-02 16:10:08 +07:00
Sergey Lipskiy
219019a39b Enable dithering quantization by default. 2020-04-02 14:53:06 +07:00
Sergey Lipskiy
5ff3ef9649 Dithering shader: correct read threshold value from matrices. 2020-03-31 18:31:44 +07:00
Sergey Lipskiy
a0991dc9cf Refactor shader dithering code: replace mix by switch..case 2020-03-31 18:31:44 +07:00
Sergey Lipskiy
beee2bc368 Use enableHiresNoiseDithering setting. 2020-03-31 18:31:43 +07:00
Sergey Lipskiy
d7e3b4c84b Some dithering shaders refactoring. 2020-03-31 18:31:43 +07:00
Sergey Lipskiy
897fc35d51 Remove ditheringMode and bufferDitheringMode settings.
Add new settings:
- enableHiresNoiseDithering
- enableDitheringPattern
- enableDitheringQuantization
- rdramImageDitheringMode

New settings are not implemented in GUI yet.
2020-03-31 18:31:43 +07:00
Sergey Lipskiy
2600a6bc90 Remove "Enable noise" oprion. Emulation of noise is always enabled. 2020-03-31 18:31:42 +07:00
Sergey Lipskiy
41ecf66e80 Add blue-noise dithering, http://momentsingraphics.de/BlueNoise.html 2020-03-31 18:31:42 +07:00
Sergey Lipskiy
f566c1bc59 Support dithering mode in GUI. 2020-03-31 18:31:41 +07:00
Sergey Lipskiy
d621eb4d34 Add enum DitheringMode for better readability.
Few fixes.
2020-03-31 18:31:41 +07:00
gizmo98
350d791596 -Remove enableDithering setting and use ditheringMode for everything
-Dithering Modes:
0 disabled
1 noise dithering
2 noise dithering with 5Bit quantitzation
3 noise and ordered grid dithering
4 noise and ordered grid dithering with 5Bit quantitzation
-Quantize dithered alpha (5Bit). Removes white remnants in SF Lylat
Wars.
2020-03-31 18:31:40 +07:00
gizmo98
1a6f83aa6c Disable RDRAM dithering if nativeResFactor = 1 and dithering is enabled
Don’t dither twice.
2020-03-31 18:31:40 +07:00
gizmo98
0597632f8a Add dithering options and better color noise dithering
-Add enableDithering option: true - dithering enabled; false -
dithering disabled
-Add ditheringMode option: quantize noise or ordered grid dithered
content like original hardware would do it. true - quantize to 16Bit
colors, false 32Bit colors.
-Add snoiseRGB() and snoiseA() functions. Color dithering needs
different noiese values for r, g and b.
-snoiseRGB() and snoiseA() „double“ noise resolution if uScreenscale is
>= 2.0. So noise not so blocky but still grainy at higher resolutions.
-Increase config version to 28U
2020-03-31 18:31:40 +07:00
gizmo98
6bdcaa0bfa Add RDRAM dithering: Dither image if RGBA16 is written to RDRAM
ColorbufferToRDRAM RGBA to RGBA16 conversion produces color banding.
Implement dithering according to n64 documentation to hide color
banding.
2020-03-31 18:31:39 +07:00
Logan McNaughton
85a8635952 Update to XXH3 for CRC_OPT 2020-03-30 21:16:59 +07:00
Logan
3f55f30ea2 Mask RDRAM address in ProcessRDPList
Avoids a crash in Donkey Kong 64 (U) [f2]
2020-03-29 18:12:16 +07:00
Sergey Lipskiy
225f1414dc Set NoN (no near clipping) flag for all .Rej ucodes.
Fixed wrongly clipped polygons in RE2, Ada's locket cutscene, #2152
2020-03-22 14:00:00 +07:00
Sergey Lipskiy
022b375614 RE2 related fixes:
* fixed gSPModifyVertex for case when primitive depth enabled
* fixed GraphicsDrawer::isRejected for case when coordinates of vertex set by gSPModifyVertex
* fixed writeDepth() shader for RE2

Fixed various issues mentioned in #2152
2020-03-18 14:50:45 +07:00
Logan
be78f2d324 Fix IPO build on Linux 2020-03-18 11:53:00 +07:00
Sergey Lipskiy
8a9d52b41b Fix static noise on screens in Space Station Silicon Valley.
Problem: the static on the screens is the result of alpha test with a random threshold.
The screens use 2 cycle combiner. First cycle for alpha uses "combined" input.
A value for this input is not set yet in the first cycle, so the result of alpha test is usually wrong.

Solution: replace "combined" input in the first cycle by special "half" input.

Fixed #1764
2020-03-08 23:28:54 +07:00
Sergey Lipskiy
1fdd028bc6 Fix conditions to activate texturedRectDepthBufferCopy.
Fixed #2101 Multiplayer camera rotation issue in Conkers Bad Fur Day
2020-03-07 18:27:32 +07:00
Sergey Lipskiy
a28292846c Remove on_n64DepthCompareCheckBox_toggled
Fixed #2185 GLideNUI warning.
2020-03-06 18:51:48 +07:00
fzurita
d053f16bb0 Fix CMake warnings presented by Android Studio 2020-02-26 17:04:05 +07:00
fzurita
0a5216f8e1 Make the hybrid texture filter optional through configuration 2020-02-12 11:51:04 +07:00
Sergey Lipskiy
0692abea4a Re-implement slower N64 depth compare synchronization method,
which requires only core OpenGL 4.2 without shader_interlock extensions.

Fixed N64 depth compare with older AMD GPU.
2020-02-09 19:03:53 +07:00
Logan McNaughton
3d93752b61 Update xxHash 2020-02-06 17:48:13 +07:00
Sergey Lipskiy
495d9f959e Simplify aTexScale calculation in UClampWrapMirrorTex::update 2020-01-12 19:52:42 +07:00
Sergey Lipskiy
cfa3ded934 Correct tile size calculation.
Fixed #2156 Tony Hawk's Pro Skater 3- Missing Characters on Copyright Screen
2020-01-02 20:36:35 +07:00
Sergey Lipskiy
b949958874 Disable ThreadedVideo on MacOsX, see #2159 2020-01-02 16:41:18 +07:00
Sergey Lipskiy
c823047f99 Prevent config dialog from being opened twice.
Fixed #2158 Project 64 Crashes if you open GlideN64 Video Settings when they are already open.
2020-01-02 14:44:01 +07:00
Sergey Lipskiy
e676dafb7a Fix languages names in GUI. 2020-01-02 14:35:24 +07:00
fzurita
de7547727b Don't generate a new Revision.h file if revision hasn't changed
This prevent CMake from forcing a build of everything that depends on
that file.
2019-12-16 14:21:44 +07:00
fzurita
3daf1c0e49 Use a different library name when building for Android 2019-12-16 14:21:44 +07:00
fzurita
cda2dcf2a3 Remove Android makefile and use CMakeLists for Android instead 2019-12-02 18:41:41 +07:00
Sergey Lipskiy
028133bb5c Correct gDP.loadTile->loadHeight calculation again.
Fixed #2143 Yoshi's Story level backgrounds regression
which was broken by b261f34b0
2019-11-30 22:48:23 +07:00
Tim Wanders
80f1d9d021 Fix Log.h 2019-11-30 22:40:00 +07:00
fzurita
44ce554d5f Fix issues with EGL image public API on GLES 2.0 2019-11-30 15:54:59 +07:00
Sergey Lipskiy
d52d402d76 Do not use hybrid filer for GLES 2.0 due to poor performance.
Shader and code simplifications.
2019-11-30 15:54:54 +07:00
Sergey Lipskiy
25b270492e Revert "Don't use glGetTexLevelParameteriv to determine texture size"
This reverts commit b31e510932.
2019-11-30 15:31:43 +07:00
fzurita
49bdffb954 Fix shader compilation errors with Adreno devices 2019-11-30 15:30:50 +07:00
fzurita
6ac44db414 Don't use glFlushMappedBufferRange in debug mode, the performance
penalty is too high
2019-11-29 11:55:57 -05:00
fzurita
b31e510932 Don't use glGetTexLevelParameteriv to determine texture size 2019-11-29 15:56:22 +07:00
fzurita
a2fbea9086 Fix GLSL ES 1.0 compilation error 2019-11-29 15:50:34 +07:00
fzurita
0abaad4aee Fix shader compilation errors in GLSL 3.0 2019-11-29 15:02:35 +07:00
Sergey Lipskiy
2b5e8786d1 Add support for TEXTUREMODE_BGIMAGE in UClampWrapMirrorTex::update()
Fixed #2107 Majora's Mask OnePiece backgrounds broken
Fixed #2141 RE2 corrupt video
2019-11-28 19:13:26 +07:00
Sergey Lipskiy
558c465d02 Debugger fixes. 2019-11-28 19:11:31 +07:00
Francisco Zurita
9c4653a148 Throw an exception if a buffer greater than the ring buffer pool max size is allocated instead of dead locking forever. 2019-11-28 17:33:56 +07:00
Sergey Lipskiy
f918a909c7 Remove opacity check from hybridFilter shader. 2019-11-28 12:31:31 +07:00
Sergey Lipskiy
488d52de16 Use hybrid texture filter to draw frame buffer image on screen.
Related to #2088
2019-11-27 19:25:19 +07:00
Sergey Lipskiy
bc05d5f0d8 Make optimization implemented in e0418c3c34 as optional.
S. F. Rush looks much better without the optimization.

Fixed #2068 S. F. Rush and Rush 2 - Regressions
2019-11-27 17:32:21 +07:00
Sergey Lipskiy
a8f23045fd Enable threadedVideo option by default.
Fixed #2126 Problem with Project64 1.6.1 when close emulator
2019-11-23 12:55:22 +07:00
Sergey Lipskiy
89bcb61c02 Correct frame buffer usage check.
Fixed Pokémon Stadium 2 - Cut off pokémon portraits #2110
2019-11-22 16:23:25 +07:00
Sergey Lipskiy
a01718d2cf Correct needMirror condition in clampWrapMirror shader.
Fixed Blast Corps regression #2113
2019-11-21 17:25:57 +07:00
Sergey Lipskiy
27128fe505 Correct error output in DisplayWindowMupen64plus::_getDisplaySize(). 2019-11-20 12:40:53 +07:00
Sergey Lipskiy
517723d308 Up shader storage version. 2019-11-14 11:46:51 +07:00
S2S
49604f0c16 Write wrap function. Cleanup of combiner code. 2019-11-14 11:46:46 +07:00
S2S
a42e34f1b8 Write macros for reading a vector or matrix without hurting performance. Cleanup blender code. 2019-11-14 11:46:32 +07:00
Sergey Lipskiy
9dff907f15 Do not shift texture coordinates for frame buffer textures.
Fixed #2112 Conker black line following your shadow
2019-11-12 10:54:56 +07:00
Sergey Lipskiy
09764fead7 Fix TxFileStorage initialization when cache compression disabled.
Fixed Textures do not load from uncompressed HTS files #2120
2019-11-04 21:49:48 +07:00
Sergey Lipskiy
f3b83d2c8b Fix formatting in TxCache.cpp 2019-11-04 19:49:09 +07:00
Sergey Lipskiy
ad85856ee7 Replace printf by LOG.
Fixed #2123
2019-11-04 18:27:01 +07:00
fzurita
17b8e34799 Add logging of OpenGL profiling data 2019-11-04 15:03:36 +07:00
fzurita
d7996329c1 Added more GL functions to threaded GL implementation 2019-11-04 14:54:05 +07:00
fzurita
e333dea890 Fix GL errors when using EGL image to read pixel from texture 2019-11-04 14:30:37 +07:00
fzurita
9059bb38d3 Add GL function glDebugMessageCallback and glDebugMessageControl 2019-11-03 23:07:05 +07:00
fzurita
686c7799db Fix some incorrectly set android makefile options 2019-11-03 23:07:05 +07:00
Sergey Lipskiy
a87f7c4022 Log CoreVideo functions error code. 2019-11-03 23:00:54 +07:00
Sergey Lipskiy
5484972b37 Correct tile size calculation.
Fixed regression in Paper Mario caused by commit 5c5c218e4.
2019-10-28 20:16:24 +07:00
Sergey Lipskiy
2b0e1e64c2 Temporal workaround for crashes in TextureCache::_loadHiresTexture when mip-mapped textures loaded.
See #1711 for details.
2019-10-26 18:57:28 +07:00
fzurita
ffaaf1f664 Fix incorrect OpenGL function init in iOS 2019-10-25 11:17:14 +07:00
fzurita
3c875ef3a6 Fix incorrect OpenGL function init in MacOS 2019-10-25 11:17:14 +07:00
Sergey Lipskiy
98d906d4e0 Correct tile height calculation.
Fixed Neon Genesis Evangelion glitches #2102
2019-10-16 13:43:50 +07:00
Sergey Lipskiy
0338f27225 Do not shift texture coordinates by 0.5 for point-sampled textures.
Attempt to fix texture mapping issue from #2097.
2019-10-14 14:11:24 +07:00
fzurita
1384584af6 Fix threaded OpenGL lockup when trying to remove invalid buffer 2019-10-14 14:10:08 +07:00
Sergey Lipskiy
b261f34b0d Fix gDP.loadTile->loadHeight calculation.
Fixed Zelda 64 Skybox duplicates #2094.
2019-10-13 13:03:28 +07:00
Sergey Lipskiy
cffeab2f0f Fixed backgrounds load in Bakuretsu Muteki Bangaioh (J). 2019-10-12 23:57:10 +07:00
Sergey Lipskiy
5bab3c155f Fix crashes in Bakuretsu Muteki Bangaioh (J) 2019-10-12 01:03:14 +07:00
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