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

1981 Commits

Author SHA1 Message Date
Sergey Lipskiy
d494806186 Revert "Rewrite fog coordinate calculation:"
This reverts commit 7d4d0f282e.
2020-05-04 19:47:57 +07:00
Sergey Lipskiy
7d4d0f282e Rewrite fog coordinate calculation:
move it from vertex shaders to fragment ones.

Fixed #2234 SM64 Weird Shading on sand texture in Joly Roger Bay
2020-05-03 18:41:20 +07:00
Sergey Lipskiy
87274437cb [Debugger] Fix display of vertex alpha in HLE mode. 2020-05-03 15:14:25 +07:00
Sergey Lipskiy
c8cbafff71 Use the second color section of the Light structure for vertices with odd index (1, 3, ...).
Both color sections of the Light structure must store the same color,
but it is not so for SM64.

Fixed #2212 SM64 koopa's shorts are not correct in hle
2020-05-03 12:10:09 +07:00
zilmar
f525f8fdc0 GLideNUI-wtl: Return current font if fonts are not selected 2020-04-30 18:06:03 +07:00
zilmar
4750a268ae GLideNUI-wtl: Set config.font.name to arial if empty on load 2020-04-30 18:06:03 +07:00
zilmar
3acf3b6f75 Make sure config.font.name is not empty 2020-04-30 18:06:03 +07:00
zilmar
e692509f6e Reset g_face and g_ft 2020-04-30 18:06:03 +07:00
zilmar
47013e2473 Set buffer to nullptr after free 2020-04-28 15:50:37 +07:00
Sergey Lipskiy
a3af1a88e2 Correct LLETriangle ctor 2020-04-27 17:05:43 +07:00
Sergey Lipskiy
415cde8c52 LLETriangle: use m_flushed flag properly. 2020-04-27 17:05:43 +07:00
Sergey Lipskiy
acaa0d9fba Correct LLETriangle::start - set gSP.texture.tile to tile set for the triangle.
It is necessary since texture loading code uses gSP.texture.tile.

Fixed textures load in Supercross 2000.
2020-04-27 17:05:43 +07:00
Sergey Lipskiy
5b765ba874 LLETriangle : force flush triangles if tile is changed.
Fixed wrong textures is C&C intro.
2020-04-27 17:05:43 +07:00
Sergey Lipskiy
e3f0354565 LLETriangle::draw: correct Z for G_ZS_PRIM mode. 2020-04-27 17:05:43 +07:00
Sergey Lipskiy
0d0c47fb84 Replace doubles by 32bit floats in LLETriangle::draw. 2020-04-27 17:05:42 +07:00
Sergey Lipskiy
1d5fdf123e LLE triangle: set vertex depth to 0 when triangle command does not use depth.
Fixed depth compare issue with snow in Polaris SnoCross
2020-04-27 17:05:42 +07:00
Sergey Lipskiy
0bc6cf7a11 New LLE render. 2020-04-27 17:05:42 +07:00
oddMLan
84e92d1240 GLideNUI-wtl: Fix MSAA saving and Dithering checkboxes 2020-04-27 17:05:09 +07:00
oddMLan
01a1e05432 GLideNUI-wtl: Fix save to custom ini 2020-04-27 17:05:09 +07:00
zilmar
115399aa4b GLideNUI-wtl: Do not flush on each change, so turn off auto flush 2020-04-27 11:48:51 +07:00
zilmar
29bd0d10ab GLideNUI-wtl: Save to custom.ini 2020-04-27 11:41:26 +07:00
zilmar
bc69499b62 GLideNUI-wtl: fix white space 2020-04-27 11:41:15 +07:00
zilmar
bea0403d2c GLideNUI-wtl: Make sure clearing of selected font on load 2020-04-27 11:41:15 +07:00
zilmar
1934062d65 GLideNUI-wtl: in loading language, replacing new line was only replacing \ 2020-04-27 11:27:53 +07:00
oddMLan
0d68c25143 GLideNUI-wtl: Fix a couple oversights 2020-04-27 09:32:31 +07:00
oddMLan
3dc78e8852 GLideN64-wtl: Fix MSAA 2020-04-27 09:32:31 +07:00
oddMLan
93659a2207 GLideNUI-wtl: Fix windowed resolution handling 2020-04-27 09:32:31 +07:00
oddMLan
f326715bf8 Update project files
-Added N64PluginsDir-wtl and N64PluginsDir-wtl_x64 environment variables for zilmar-spec-wtl
-Updated appveyor.yml to support wtl configurations
 -Split artifacts into individual 7z files for each configuration instead of a single archive holding them all together
-Move icons to Resources folder to avoid duplicate assets
 -Updated icon.qrc
 -Updated GLideNUI.rc
-Update GLideN64.sln
 -Fix very serious overlook in x64 builds

This should fix AppVeyor issues
Use variable names from 3fe5f50
2020-04-25 23:26:17 +07:00
oddMLan
a97b387c68 GLideN64-wtl: Add English entry to Language combobox when translation file list is empty 2020-04-25 23:26:17 +07:00
oddMLan
311433749c GlideNUI-wtl: Increase Tooltip delay 2020-04-22 21:14:17 +07:00
oddMLan
4f5963b2f2 GLideNUI-wtl: Fix mistakes in translation files 2020-04-22 21:14:17 +07:00
oddMLan
29e0da3eb6 GLideNUI-wtl: Lazy load Fonts treeview of OSD tab
Speeds up dialog creation a little bit.
Fix bug in which creating a new profile would give a font with zeroed parameters
2020-04-22 21:14:17 +07:00
zilmar
b0cf0ede8e GLideNUI-wtl: Move overscan control to top because it was not being displayed 2020-04-22 21:14:17 +07:00
oddMLan
d153645b11 GLideNUI: Hide Debug tab in Release builds 2020-04-22 21:14:17 +07:00
oddMLan
af1ed549f4 GLideNUI: Add custom windowed resolution by editable combobox
Also fixed bug in which switching profiles would cause the Windowed resolution list to load more than once.
2020-04-22 21:14:17 +07:00
zilmar
5caa533580 GLideNUI-wtl: Change spaces to tabs 2020-04-22 21:14:16 +07:00
zilmar
5a1569f7bc GLideNUI-wtl: Add translation to about 2020-04-22 21:14:16 +07:00
zilmar
c7049dad42 GlideNUI-wtl: Add debug tab language 2020-04-22 21:14:16 +07:00
zilmar
d83a06a75e GlideNUI-wtl: Add On-screen display tab 2020-04-22 21:14:16 +07:00
zilmar
ba7a84c2d1 GLideNUI-wtl: Add language for texture tab 2020-04-22 21:14:16 +07:00
zilmar
e2bb100244 GLideNUI-wtl: Add language for frame buffer 2020-04-22 21:14:16 +07:00
zilmar
dc5ac40007 GLideNUI-wtl: Add language translation for emulation tab 2020-04-22 21:14:16 +07:00
zilmar
c185cecb01 GLideNUI-wtl: Add language translation to config-video 2020-04-22 21:14:16 +07:00
zilmar
6c4b18266e GLideNUI-wtl: Generate Screen shot 2020-04-22 21:14:16 +07:00
zilmar
02fcbf9b88 GLideNUI-wtl: Handle changing/adding/removing profile 2020-04-22 21:14:15 +07:00
zilmar
512544ca67 GLideNUI-wtl: change resolution to a combo box 2020-04-22 21:14:15 +07:00
zilmar
f802d0fd51 GLideNUI-wtl: Add dithering options 2020-04-22 21:14:15 +07:00
zilmar
f6bc760e28 GLideNUI-wtl: dpi is not a pointer 2020-04-22 21:14:15 +07:00
oddMLan
14edd21541 GLideNUI-wtl: Match Qt GUI 1:1
Based on commit c168f53d12
With some minor improvements/differences over Qt GUI
- Fully DPI aware
- Dithering is in the Video tab instead of Emulation, some wording differences

Observations:
- "Windowed resolution" is an editable combobox now. Need to parse custom resolution as well suggest some default ones
- "Enable noise" has been removed since it's permanently enabled in latest master
- Need to sync with upstream to connect the Dithering stuff with the config system
- Warning under Antialiasing section needs to hide if N64-depth compare is disabled, but might be difficult to do

Further suggestions:
- "Save" button should be an "Apply" button that applies the settings to current game without pausing. Might be out of the scope of this refactor though.
- Need to test GUI in Windows XP, Windows Vista/7/8.1 to make sure nothing looks out of place
2020-04-22 21:14:15 +07:00
oddMLan
66175d82de GLideNUI-wtl: Add DPI-aware icon handling code
Other: Minor layout fixes
2020-04-22 21:14:15 +07:00
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