Sergey Lipskiy
e09d153233
Do not test values of 8bit buffer before write them to RDRAM.
...
Fixed copy of 8bit aux buffers to RDRAM.
refs #2461
2021-02-21 15:41:56 +07:00
fzurita
35554dabf0
Fix N64 Depth compare with Adreno
2021-02-17 16:58:28 +07:00
Sergey Lipskiy
442d4ed894
Fix near-palne clipping for GLES.
...
Fixes #2449 Cruis'n world invisible car
2021-02-14 01:00:10 +07:00
s2s
090b38e2d3
Optimize coverage computation algorithm
2021-02-13 15:26:25 +07:00
Sergey Lipskiy
7a0dd7ff1a
Fixes in software clipping:
...
fixed culling when viewport is negative.
Fixed Graphical issues in Diddy Kong Racing #2447
2021-02-07 18:47:12 +07:00
fzurita
f48b158c0d
Fix usage of GL extension GL_EXT_draw_elements_base_vertex
2021-02-07 11:39:19 +07:00
fzurita
dc6340bfff
Fix issue where the barycoords vertex attribute was not being disabled
2021-02-04 20:06:43 +07:00
fzurita
c92d13c094
Improve the draw elemenets base vertex check
2021-02-04 20:05:13 +07:00
Rosalie Wanders
31b38a7a2b
GLideNHQ: add wildcard support
2021-02-02 17:55:14 +07:00
Sergey Lipskiy
88e606de95
Another fix for texrect lower y. Follow-up 1e915af
.
...
Fixed #2402 Wave race, black lines in texrects [Regression].
2021-01-31 21:25:27 +07:00
Sergey Lipskiy
7d237650ef
Correct texture coordinates calculation in gSPSprite2DBase.
...
Fixed WipEout 64 Texture Pack #2423
2021-01-24 19:40:47 +07:00
fzurita
85ad11bbdd
GLideN64 soft vertex clipping performance improvement for Adreno GPUs
2021-01-22 15:14:46 +07:00
fzurita
e129d66c22
Compile shader from keys if shader storage binary is invalid
2021-01-20 22:47:33 +07:00
Sergey Lipskiy
402cf6f8b6
Implement software vertex clipping.
2021-01-20 17:07:23 +07:00
fzurita
8b75b5dc96
Fix incorrect width used for sync color buffer reads with EGLImage
2021-01-20 16:42:35 +07:00
S2S
eb8ac40136
Revert 538674d
...
Fixes Oak's Check with CopyColorFromRDRAM enabled
2021-01-08 23:00:42 +07:00
Sergey Lipskiy
1c7b8914bc
Revert cmake version back to 2.6 for GLideNHQ because it don't compile on Mac with 3.9
2021-01-06 12:30:42 +07:00
Sergey Lipskiy
a44b58add1
Fix warnings.
...
refs #2428
2021-01-05 14:17:58 +07:00
fzurita
2aa18a8ac7
Fix recently introduced GLES 2.0 GLSL compilation errors
2021-01-05 13:40:47 +07:00
Sergey Lipskiy
ad272060f7
Disable coverage by default.
...
Fixes #2426
2021-01-03 21:55:08 +07:00
Rosalie Wanders
66051912c5
TextDrawer::drawText: add setScissor
2020-12-31 11:44:45 +07:00
Sergey Lipskiy
955c2f3b17
Add isHWLSupported bit to CombinerKey.
...
A game may use several microcodes, where some microcodes support HW lighting and others are not.
The same combiner can be used for both cases. isHWLSupported bit helps to resolve that problem.
2020-12-28 16:18:18 +07:00
Sergey Lipskiy
f9ef2bd8fb
Remove old LLE code.
2020-12-27 21:48:45 +07:00
Jj0YzL5nvJ
1ccdec39af
Avoid more problems with spaces and drop AWK
2020-12-27 15:56:32 +07:00
oddMLan
af0b9382fe
[UI-wtl] Fix texture dir saving
...
Also: Attempt to mkdir directory if typed/copied to the edit field (ported from 6d47fa5c48
)
Fixes issue #2330
2020-12-27 15:51:02 +07:00
oddMLan
3d5311d180
Add pixel coverage checkbox to GLideN64-wtl
2020-12-27 13:11:38 +07:00
Sergey Lipskiy
ca68dc3675
Do not fail if indices of barycoords attributes are greater or equal to max vertex attributes.
2020-12-27 13:11:32 +07:00
S2S
2f8372c113
Cleanup coverage calculation
2020-12-27 12:20:46 +07:00
S2S
a214ab822e
Standarize the number of barycentric coordinate vertex attributes.
...
Use only two coordinates as vertex attributes for triangles to match the number of coordinates rectangles use. The third one can be computed in the vertex shader.
2020-12-27 12:20:42 +07:00
Sergey Lipskiy
47054eabc0
Add enableCoverage setting.
...
Not implemented for GLideNUI-wtl yet.
2020-12-27 12:20:39 +07:00
Sergey Lipskiy
2233cf9f04
Support 'barycoords' vertex attribute in unbuffered drawer.
2020-12-27 12:20:35 +07:00
S2S
61172283c1
Update blender to use coverage
2020-12-27 12:20:19 +07:00
S2S
fa848dc3f9
Fix issue with dual source blending
2020-12-27 12:01:16 +07:00
S2S
fdf3bc4f21
Compute coverage value
2020-12-27 12:01:16 +07:00
S2S
486cf59614
Load barycentric coordinates as vertex attributes
2020-12-27 12:01:16 +07:00
Sergey Lipskiy
192317955e
Limit maxMSAALevel by 16.
2020-12-26 10:24:00 +07:00
Rosalie Wanders
ddec3866a7
Implement cross-platform max MSAA level detection
2020-12-26 10:23:54 +07:00
Sergey Lipskiy
f04ac8296d
Implement max MSAA level detection.
...
Zilmar spec and Windows only.
Fixes #2216 MSAA max not 16x in UI
2020-12-26 09:51:32 +07:00
Rosalie Wanders
deb84826e4
Implement linux support for OSD font settings
2020-12-25 20:19:54 +07:00
Rosalie Wanders
6d47fa5c48
GLideNUI: attempt to mkdir texture pack directories
2020-12-25 20:03:52 +07:00
Rosalie Wanders
1833971dc5
GLideNUI: correct macro in saveCustomRomSettings
2020-12-25 19:59:42 +07:00
Sergey Lipskiy
8d028a9eaf
Add debug option to force enable unbuffred drawer.
2020-12-23 17:09:55 +07:00
fzurita
3b6aa38b14
Disable "draw_elements_base_vertex" extension if renderer is PowerVR and
...
GLES is < 3.2
2020-12-21 12:02:04 +07:00
fzurita
c39df6b8c2
Fix issues with post processing and scaling changes
2020-12-20 18:38:20 +07:00
fzurita
8f387f2d08
Enable blast corps hack for frame buffer fetch blending
2020-12-20 18:26:58 +07:00
fzurita
02e6ccb3ef
Fix missing check for frame buffer fetch in unemulated blending modes
2020-12-20 18:26:58 +07:00
fzurita
895401f981
Cleanup unneeded code
2020-12-17 17:57:37 +07:00
Sergey Lipskiy
8500bc08e2
Add hotkey for "force gamma correction" setting.
...
Fixed #2318 Request: Keyboard shortcut to enable Custom Gamma Correction Levels
2020-12-05 17:35:02 +07:00
Sergey Lipskiy
22842a56fc
Disable all hotkey by default.
...
Fixes #2394 Can't disable or change default hotkeys for GLideN64
2020-12-05 16:02:06 +07:00
Sergey Lipskiy
93524b65f7
Fix compilation of GLideNUI-WTL.
...
Hotkeys are not supported in wtl ui yet.
2020-12-02 18:14:08 +07:00
Rosalie Wanders
1e07bbcbb0
osal_keys_unix: add linux support
2020-12-02 18:14:08 +07:00
Sergey Lipskiy
abb9108f14
Implement configurable hotkeys.
2020-12-02 18:14:08 +07:00
Sergey Lipskiy
7a38e80448
Correct TxFilter::TxFilter - remove colon in rom name.
2020-11-25 16:58:48 +07:00
dankcushions
cb76d2f39d
Added check for GL_EXT_draw_elements_base_vertex
2020-11-25 12:49:27 +07:00
dankcushions
0e228e9109
Removed GLES version check for glBufferStorage, allowing for any device that supports it.
2020-11-25 12:47:03 +07:00
Rosalie Wanders
3df9b2c312
DisplayWindowMupen64plus: disable WithRate function on any failure
2020-11-23 14:51:28 +07:00
Rosalie Wanders
07ce8f7bcb
FrameBuffer: don't resolve multisampled texture when m_pResolveTexture is null
2020-11-23 14:48:58 +07:00
Rosalie Wanders
5f1803ab29
Introduce pluginNameWithRevision
2020-11-19 16:50:32 +07:00
S2S
bb05409c16
Disable clamping for special textures
2020-11-16 10:40:47 +07:00
fzurita
e89f5fedcc
Fix build error and warning with Android
2020-11-16 10:39:10 +07:00
Sergey Lipskiy
78c89fbbfd
Fix some of PVS-Studio warnings.
2020-11-14 20:00:19 +07:00
Sergey Lipskiy
46c65776a0
Code refactor and cleanup:
...
* type cast fixes
* signed/unsigned fixes
* code formatting fixes
* class members initialization fixes
2020-11-14 16:54:28 +07:00
Sergey Lipskiy
ddd93673d8
Fixed some undefined behaviour errors found in #2364
2020-11-14 16:50:50 +07:00
gizmo98
ec02cc722f
Spread bayer matrix
...
Multiplay matrix values with 2.0f so values are better spread between
1.0 and 0.0.
2020-11-13 10:08:04 +07:00
gizmo98
93ddc890e2
Use angrylion's magic square matrix
...
We use a precalculated matrix for float color values. It’s angrylion’s
matrix divided bei 16.0f * 2.0f.
2020-11-13 10:08:04 +07:00
fzurita
9aec59056f
Fix some shader compilation issues
2020-11-11 13:34:45 +07:00
S2S
ff62e3cf18
Cleanup blending code
...
Abstract extension specific code to fragment shader header
2020-11-11 13:34:45 +07:00
fzurita
f01405bc75
Implement N64 blending using framebuffer fetch extensions
2020-11-11 13:34:45 +07:00
fzurita
d509758b6f
Disable dual source blending for Adreno, it causes GPU driver crashes
2020-11-11 13:34:45 +07:00
fzurita
1b70d5b145
Fix shader compilation errors with Adreno GPUs with hybrid filter
2020-11-11 13:34:45 +07:00
Sergey Lipskiy
e81022ad71
Correct _calculateCRC:
...
tile tmem address can be set to a value greater than 512, that is above TMEM size.
It should be used with proper mask for tileTmemInBytes calculation.
Fixed #2360 Castlevania 64 Crash
2020-11-10 15:41:35 +07:00
Sergey Lipskiy
b6e030c8b8
[Code cleanup] Fix spaces.
2020-10-31 15:40:03 +07:00
gizmo98
e5d59a6394
Use angrylion's bayer matrix
...
https://github.com/gonetz/GLideN64/issues/2359
We use a precalculated matrix for float color values. It’s angrylion’s
matrix divided bei 16.0f.
https://github.com/project64/angrylion-rdp/blob/093754a4a53437925824317a
b22ce6a56748fe14/n64video.cpp#L2509
2020-10-31 13:55:10 +07:00
purplemarshmallow
909cf172b9
correct "remove hack_texrect_shade_alpha"
...
fix regression #2369
2020-10-31 12:18:57 +07:00
gizmo98
4981503bfc
Code refactor: add vi status constants
2020-10-29 16:55:37 +07:00
Logan
cf7b3c84ce
Protect against addressing nullptr
2020-10-29 16:51:27 +07:00
fzurita
c7144d0775
Fix issues with EGL image with Intel GPUs
2020-10-18 12:23:45 +07:00
Logan McNaughton
42c196c30a
Update xxHash to 0.8.0
2020-10-12 13:25:53 +07:00
S2S
5fa66762b3
Define STVEC in an Intel friendly way.
2020-10-12 12:58:14 +07:00
Jj0YzL5nvJ
b5a6b3b1e2
Avoid problem with spaces
2020-10-12 12:56:14 +07:00
Rosalie Wanders
b200b33b84
DisplayWindow: introduce _restart()
...
DisplayWindowMupen64plus: m_resize{Width,Height} moved from _resizeWindow() to _restart()
2020-10-08 16:13:24 +07:00
purplemarshmallow
9a69fe8e58
remove hack_texrect_shade_alpha
2020-10-08 15:57:35 +07:00
Rosalie Wanders
00dac336f8
GLideNUI: detect application instance dynamically
2020-10-02 17:08:31 +07:00
Rosalie Wanders
4f5a763666
getRevision: silence error if Revision.h doesn't exist
2020-10-01 18:09:20 +07:00
Rosalie Wanders
80ecddd574
GLideNUI: Fix sprintf deprecation warning
2020-10-01 18:06:44 +07:00
Sergey Lipskiy
3dfa0e7622
[Code cleanup] Fix code formatting in mupen64plus_DisplayWindow.cpp in accordance with the rest of the code.
2020-10-01 18:05:24 +07:00
Rosalie Wanders
3179b37e8a
Fix _resizeWindow for M64P_GLIDENUI
2020-10-01 18:00:30 +07:00
Rosalie Wanders
1f5f9874d9
Correctly implement FindPluginPath for Windows
2020-09-19 21:53:24 +07:00
Rosalie Wanders
229a6bc788
Correctly implement FindPluginPath for Linux
2020-09-16 19:05:17 +07:00
Rosalie Wanders
366ff85de3
Allow GLideNUI to work with mupen64plus
...
* Update the mupen64plus API headers
* Add the new video extension functions in the opengl wrappers
* Pull new headers from upsteam mupen64plus-core
* Modify CMakeLists.txt
* Add GLideNUI source files
* Expose new MUPENPLUSAPI_GLIDENUI option
* This allows you to compile GLideN64 for mupen64plus with GLideNUI
* NOTE that this only works with front-ends which call PluginConfig
* Move src/windows/Config_windows.cpp to src/GLideNUI/Config_GLideNUI.cpp
* This makes more sense because it's not windows-exclusive anymore
* Add src/GLideNUI/fullscreenresolutions_mupen64plus.cpp
* This allows GLideNUI to enumerate the fullscreen refresh rates and resolutions
* Modify src/Graphics/OpenGLContext/mupen64plus/mupen64plus_DisplayWindow.cpp
* This modification allows mupen64plus with GLideNUI to use the selected fullscreen resolution and refresh rates
* Expose a new PluginConfig function which calls Config_DoConfig()
* NOTE that this only works with front-ends which call this function
* NOTE that this technically breaks the mupen spec
2020-09-16 19:02:46 +07:00
Sergey Lipskiy
35567da2ad
Modifications for mip-mapped textures load.
...
Treat specail case for Southern Swamp grass texture, Zelda MM, #2315
2020-09-16 18:50:55 +07:00
Sergey Lipskiy
1e915af002
Correct gDPTextureRectangle:
...
use ceil(lry) instead of max(lry, uly + 1.0f)
It fixes the issue with zero height rectangles,
which often contain a garbage, see #2157
2020-09-16 18:49:53 +07:00
Sergey Lipskiy
15cbdc6593
[Code refactor] Remove redundant code.
2020-08-31 11:53:50 +07:00
Sergey Lipskiy
76d72f77b7
[Code refactor] Correct TextureCache::_load:
...
add RAII holder for texture data.
2020-08-31 11:53:41 +07:00
oddMLan
1111a7636c
Add missing settings to Zilmar-spec from Mupen-spec
...
This allow testing these settings more easily with a Zilmar-spec emulator by just editing the ini
2020-08-14 17:29:04 +07:00
oddMLan
38fd50414f
Fix downscaling aliasing caused by 2f5280c
2020-08-14 17:29:04 +07:00
oddMLan
d7d68c4667
GLideN64.sln: Add TinyXML++ and ts2lang projects
...
This will allow seamless translation from .ts to .Lang files compatible with the WTL GUI
2020-07-17 21:44:08 +07:00
oddMLan
e808510b86
[GLideNUI-wtl] Always use internal English strings (ignore gliden64_en.Lang)
2020-07-17 21:44:08 +07:00
oddMLan
1f4912469a
[GLideNUI-wtl] Update Language class
2020-07-17 21:44:08 +07:00
oddMLan
18dd3ad662
[GLideNUI-wtl] m_Gama -> m_Gamma
2020-07-17 21:44:08 +07:00
oddMLan
2dc2810408
[GLideN64-wtl] Move util.h to util/util.h
2020-07-17 21:44:08 +07:00
S2S
d13a3d7890
Perform hdRatio division with floating point precision. Allows non-integer scaled HD textures, but their use is discouraged.
2020-07-17 20:26:32 +07:00
S2S
65ad89ae3a
Delay texcoord correction until multiplying by hdratio
2020-07-17 20:26:32 +07:00
Sergey Lipskiy
2f5280c8ac
Correct texture filters in rendering frame buffer to main color buffer.
2020-07-01 22:01:14 +07:00
Sergey Lipskiy
5907cff6c7
FrameBufferList::renderBuffer(): fix dstScaleX when overscan enabled in native-res mode.
2020-07-01 21:59:51 +07:00
Sergey Lipskiy
30e7b83e43
Correct GraphicsDrawer::_updateScreenCoordsViewport
...
Fixed starcraft intro movie in OnePiece bg mode.
2020-06-28 18:22:21 +07:00
Sergey Lipskiy
80b219effa
Correct vertex Z calculation in GraphicsDrawer::_drawThickLine
...
Note: viewport transformation of Z coordinate performed in fragment shader.
Fixed #2237 Mario Artist - Polygon Studio: line3D bug (HLE)
2020-06-28 17:36:20 +07:00
Sergey Lipskiy
1b36d5740b
Debug dump cmd in LLE mode.
2020-06-28 11:06:37 +07:00
Sergey Lipskiy
7b6e304d84
Fix OSD info in fullscreen mode.
...
It was broken by commit 156171be
.
2020-06-25 16:30:11 +07:00
Sergey Lipskiy
0a755614a0
Correct UTextureEngine::update() for background textures.
...
Fixed #2251 Zelda: OnePiece backgrounds broken
2020-06-21 18:15:53 +07:00
oddMLan
cbc0dfd90e
Toggle AA state like Qt GUI
2020-06-16 16:59:44 +07:00
oddMLan
9bf9202c47
Fix profile load when GLideN64.ini doesn't exist The logic looked incorrect here, but Qt loaded the profile correctly somehow. I tested this change and it doesn't change anything in the Qt version (which is good)
2020-06-16 16:59:44 +07:00
oddMLan
d00cf9f214
Fix profile load when GLideN64.ini doesn't exist
2020-06-16 16:59:44 +07:00
oddMLan
32dbfe1d1f
Language: Escape quotes
2020-06-16 16:59:43 +07:00
oddMLan
91287c2e4c
Reload config on SaveSettings
2020-06-16 16:59:43 +07:00
oddMLan
71afc19427
Separate "Dump" and "Reload" options Continuation of commit 7228d0d5db
2020-06-16 16:59:43 +07:00
Sergey Lipskiy
f7b6f158b3
Up shader storage version.
2020-06-16 16:59:43 +07:00
Sergey Lipskiy
0c5d036395
Correct _calculateCRC:
...
calculated texture size in bytes can be too large to fit TMEM.
It leads to out-of-bounds reads in checksum calculations and thus random checksum.
Example:
Fixed Unplayable performance with any kind of texture enhancement. #2279
2020-06-16 16:57:47 +07:00
Sergey Lipskiy
7228d0d5db
Separate "Dump" and "Reload" options.
2020-06-14 15:52:09 +07:00
Sergey Lipskiy
156171bebd
Set viewport in TextDrawer::drawText
...
Fixed text messages not shown in some games.
2020-06-14 15:52:05 +07:00
Sergey Lipskiy
ed1648c438
Disable dual blending in Texrect Drawer Mode.
2020-06-14 11:51:33 +07:00
S2S
c48841cfeb
Implement dual source blending.
...
Fixes Donkey Kong 64: Gate textures change from a distance. #585
Fixes Pokemon Stadium wrong transparency in warning sign #728
2020-06-14 11:51:33 +07:00
S2S
3df3df9964
Make glBlendFuncSeparate() available
2020-06-14 11:51:33 +07:00
paradadf
4c8a40c6d8
Fix type cast error for 64bit compilation
...
RSP_LoadMatrixX86.cpp:92:28: error: cast from 'u8* {aka unsigned char*}' to 'int' loses precision [-fpermissive]
2020-06-14 11:50:57 +07:00
M4xw
4f58d66e96
Fix regressions in GLES 2.0 support introduced by a405ad8
...
- IOS compiler also doesn't like the vec2 as return Type, thus it's made a out param
2020-05-31 21:07:48 +07:00
S2S
46d170e5fb
Fix error introduced by c14ae30
2020-05-19 11:51:13 +07:00
S2S
c14ae30c6d
Fix out of bounds texel fetch. Remove Mario Tennis workaround.
2020-05-17 20:39:47 +07:00
Sergey Lipskiy
4974f64a56
Correct precision in shaders. Follow up 1a9d37053
2020-05-13 09:32:20 +07:00
S2S
1a9d370530
fix floating point precision issue
2020-05-13 09:21:53 +07:00
Sergey Lipskiy
499ba7dc1a
Set inverted Y to false for Vivid Dolls microcode.
...
Fixed #2238 vivid dolls: upside down gfx (HLE)
2020-05-12 18:03:41 +07:00
S2S
f5ee3523ef
Fix out of bounds texel fetch issues.
...
Fixes #2257 Dark Rift background issue
2020-05-12 10:44:54 +07:00
Sergey Lipskiy
2616ba9587
Code cleanup.
2020-05-11 18:17:46 +07:00
Sergey Lipskiy
be2f2244a2
Correct UTextureEngine::Update for special textures.
...
Fixed #2258 space silicon valley: first screen does not show
2020-05-11 17:48:18 +07:00
Sergey Lipskiy
edf5f9ac30
Fix load of 16bit RGBA textures when TLUT mode is TT_IA16
...
Fixed #2218 Taz express: little bug
2020-05-10 20:14:53 +07:00
Sergey Lipskiy
b505d29838
[Debugger] Fix textures display.
2020-05-10 19:34:21 +07:00
Sergey Lipskiy
3f9911ab9d
Up shader storage version.
...
Fix some compilation warnings.
2020-05-10 16:40:20 +07:00
S2S
bb2221d55f
Preliminary GLES2 implementation
2020-05-10 16:24:29 +07:00
S2S
d3720145e3
Add workaround for issue with Mario Tennis Intro
2020-05-10 16:24:29 +07:00
S2S
4834359ec1
Delay texture coordinate normalization. Adapt texture filter to texture engine.
2020-05-10 16:24:28 +07:00
S2S
a405ad8659
Create Texture Engine unit
2020-05-10 16:22:36 +07:00
Sergey Lipskiy
a140f0a989
Disable cull_face in GraphicsDrawer::drawScreenSpaceTriangle
...
It was removed by mistake in 0bc6cf7a11
Fixed #2251 Zelda: OnePiece backgrounds broken
2020-05-10 15:56:47 +07:00
zilmar
5f816d2a3d
GLideNUI-wtl: fix read game prilfe setting in init
2020-05-10 15:56:44 +07:00
zilmar
64c7af548a
GLideNUI-wtl: OnFullScreenChanged selects the last refresh rate, manually add refresh rates and select the correct one
2020-05-10 15:56:41 +07:00
Sergey Lipskiy
af906c8419
Use FILTER_NEAREST if enableHybridFilter is disabled
...
follow up ee0de5e66ce
2020-05-10 15:56:38 +07:00
oddMLan
4532209d43
Use FILTER_NEAREST if enableHybridFilter is disabled
...
Bilinear by itself looks ugly and it's only necessary to use it for the hybrid filter
2020-05-10 15:56:36 +07:00
oddMLan
d62a653e83
Replace if statements in hybridFilter
...
if statements are bad for performance in GLSL
2020-05-10 15:56:33 +07:00
oddMLan
2b42e02e69
Fix shader compilation errors in GLSL ES
...
-Added missing precisions
-Removed explicit floats
-Explicit cast get_texture_size to vec2
2020-05-10 15:56:30 +07:00
oddMLan
8b5509bb8f
GLideNUI-wtl: Implement hiding MSAA Depth Warning
2020-05-10 15:56:25 +07:00
oddMLan
591d5d586d
GLideNUI-wtl: Fix Fbinfo
2020-05-10 15:56:20 +07:00
oddMLan
c43cee1c03
GLideNUI-wtl: Focus Save and Close button
...
This makes it so you can press enter to save
2020-05-10 15:56:17 +07:00
Sergey Lipskiy
1cfdb4787d
Use hybrid filter for upscale buffer copy and plain bilinear filter for downscale one.
...
Related to PR #2242
2020-05-10 15:56:09 +07:00
oddMLan
438bcc460f
Update Hybrid Shader
...
This version doesn't use texel_fetch, hopefully fixes any slowdowns in mobile devices.
Also it offloads the bilinear filtering to the hardware.
2020-05-05 11:56:02 +07:00
Sergey Lipskiy
03b404bd4e
Use noperspective shade color only for triangles with screen-space coordinates.
...
noperspective works incorrect for polygons, which are partially out of view.
Fixed #2240 SM64 strange green textures
2020-05-04 20:20:58 +07:00
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