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

377 Commits

Author SHA1 Message Date
Logan McNaughton
7ef3be1cab Mask VI_ORIGIN address 2020-04-15 11:12:42 +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
S2S
2c51fb096f Magnify clipping space by ClipRatio.
Fixed #190 Cruis'n World: wrong logo
2020-04-06 20:01:53 +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
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
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
Logan McNaughton
85a8635952 Update to XXH3 for CRC_OPT 2020-03-30 21:16:59 +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
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
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
Sergey Lipskiy
495d9f959e Simplify aTexScale calculation in UClampWrapMirrorTex::update 2020-01-12 19:52:42 +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
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
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
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
Sergey Lipskiy
a87f7c4022 Log CoreVideo functions error code. 2019-11-03 23:00:54 +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
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
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
fzurita
4a10c0a7fa Fix incorrect OpenGL function init in Linux 2019-09-30 21:48:36 -04:00