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

2236 Commits

Author SHA1 Message Date
Sergey Lipskiy
46c58576e2 Code refactor. add calcShiftScaleS and calcShiftScaleT
Remove code duplication.
2021-11-06 17:14:24 +07:00
Rosalie
9ebb11f37b osal_files_unix: fix osal_search_dir_read_next crash 2021-11-03 13:02:49 +07:00
Sergey Lipskiy
472eef6c67 Fixes for txHiResUploadLimit 2021-11-01 15:32:49 +07:00
Rosalie Wanders
9479dfa6e9 Introduce txHiResUploadLimit 2021-11-01 15:32:27 +07:00
Sergey Lipskiy
9a6f9f6d69 Implement load of 16bit I textures.
Fixed #2340 Zelda Majora's Mask - Town Shooting Gallery Missing Effects
2021-10-31 00:04:33 +07:00
Sergey Lipskiy
d328ea50c7 Correct include in TxFilterStub.cpp
Follow up commit 71788c
2021-10-30 13:02:13 +07:00
Sergey Lipskiy
cc6fdb4670 Rename txWidestringWrapper.h to txWidestringHelper.h
Correct #include
2021-10-24 18:44:16 +07:00
Sergey Lipskiy
71788c320d Rename Ext_TxFilter.h to TxFilterExport.h
Correct #include
2021-10-24 18:44:10 +07:00
Rosalie Wanders
22f50fafb5 GLideNHQ: cleanup 2021-10-24 18:43:26 +07:00
Sergey Lipskiy
ada73c60ee Code cleanup 2021-10-24 15:04:34 +07:00
fzurita
3d5a39e647 Add a new "fast" shader path that doesn't use texelFetch in glsl 2021-10-17 10:27:44 -04:00
fzurita
466401cd02 Update from C++11 to C++17 2021-10-12 20:30:22 +07:00
s2s
aea67fb370 Do not apply the texture coordinate offset to background textures.
Fixes #2594
2021-10-12 20:27:33 +07:00
s2s
e6d754a5d1 Make the hack for Conker's shadow and Mario Tennis game specific.
Fixes #2585 Mario Golf: background shifted
2021-10-04 22:00:17 +07:00
Sergey Lipskiy
4911bd7eb5 Init hdRatio for depth buffer texture.
Fixes #2577 Mario Golf: Animated effects render in front of course
2021-10-02 20:44:52 +07:00
fzurita
21eb341b8d Fix some shader compilation errors 2021-10-02 17:42:06 +07:00
Sergey Lipskiy
8a3939aa70 Rewrite mipmap shader for GLES 2.0 2021-10-02 17:42:04 +07:00
Sergey Lipskiy
6f9b2f95b3 Use sliced texture atlas for mipmap textures to avoid possible texture size limitations. 2021-10-02 17:42:01 +07:00
Sergey Lipskiy
23ce26dbc4 Do not load mip-map levels if current combiner does not use LOD.
Workaround for grass in Mario Tennis intro.
2021-10-02 17:41:58 +07:00
s2s
c7701d16c3 Force lod=1.0 when the most detailed texture is desired by the user. 2021-10-02 17:41:55 +07:00
s2s
dd64b42081 Remove needReplaceTex1byTex0() 2021-10-02 17:41:53 +07:00
s2s
134aa31e61 LOD: tile selection and lod_frac calculation changes 2021-10-02 17:41:50 +07:00
Sergey Lipskiy
539e3b0ad4 Rewrite mip-maps load:
* load all but the first mip-map tiles as 1D texture atlas, that is array of texels.
  all tiles loaded as rgba32.
  first 8 texels contain information about tile's width, height and offset, 1 texel per tile.
* mipmap shader corrected to fetch texels from the atlas.

All hacks, which were necessary to load N64 mip-maps into OpenGL texture are removed.
2021-10-02 17:41:41 +07:00
fzurita
576c82185b Force software vertex clipping to enabled for GLES 2021-09-26 12:12:07 -04:00
fzurita
f2a69be96f Remove CLIP control hack for GLES
It's not longer needed due to software vertex clipping.
2021-09-26 12:12:07 -04:00
Rosalie Wanders
bfe3c36e73 WindowsWGL: use adaptive vsync when supported 2021-09-26 17:47:11 +07:00
Rosalie Wanders
e2ae3a3e4e GLideNHQ: remove unsupported dds code 2021-09-07 20:42:04 +07:00
Rosalie Wanders
32312e0b05 GLideNUI: allow loading default settings from GLideN64.default.ini 2021-09-07 20:34:58 +07:00
Sergey Lipskiy
153caeec74 Correct Config_LoadConfig() for mupen64plus:
Add hot keys to the list of enabled keys.

Fixed #2560 Hotkeys not working with mupen64plus CUI
2021-08-28 15:57:12 +07:00
GhostlyDark
ee9f47d077 Revert "GLideNUI: introduce Config{Init,Cleanup}"
This reverts commit 0ebc545c93.
2021-08-25 11:41:53 +07:00
Sergey Lipskiy
10b6817613 Correct special shader for fog in Beetle Adventure Racing.
fixes #2556 Beetle Adventure Racing. Fog is broken.
2021-08-24 23:04:06 +07:00
GhostlyDark
911ef68994 Config_mupenplus: Improve comments text
Typo and grammar fixes.
2021-08-24 21:42:55 +07:00
Sergey Lipskiy
329502f3da Fix IA31_RGBA8888 conversion. 2021-08-24 18:28:19 +07:00
Rosalie Wanders
0afcd176d9 TxHiResCache: save cache in reload() 2021-08-18 15:37:09 +07:00
Rosalie Wanders
ecd6863864 TxHiResCache: fix texture pack not loading 2021-08-17 21:13:26 +07:00
Rosalie Wanders
4a9e1260ce GLideNHQ: Introduce TxHiResNoCache 2021-08-16 19:07:28 +07:00
Rosalie Wanders
b78df0b002 GLideNUI: remove screenshot type selection 2021-08-14 19:02:42 +07:00
Rosalie Wanders
70a9213d69 ScreenShot: move to common windows implementation 2021-08-14 19:02:42 +07:00
Rosalie Wanders
532eff450e GLideNUI: implement hotkeys in saveCustomRomSettings 2021-08-14 13:50:22 +07:00
Rosalie Wanders
0577580fc3 GLideNUI: correct default value for enabledKeys 2021-08-14 13:50:22 +07:00
Sergey Lipskiy
4ec006f57d Debug print TextureDetail mode in gSPSetOtherMode_H 2021-08-07 22:21:34 +07:00
Rosalie Wanders
0ebc545c93 GLideNUI: introduce Config{Init,Cleanup} 2021-08-07 21:26:50 +07:00
Rosalie Wanders
60c07f5b60 GLideNUI: move to static Qt5.15 build 2021-08-07 14:22:06 +07:00
Rosalie Wanders
c36ffa97f7 GLideNUI: introduce config.hotkeys.enabledKeys 2021-07-29 15:44:56 +07:00
Rosalie Wanders
50fe71dc4c osal_keys_linux: remove unneeded #ifdef 2021-07-29 15:44:56 +07:00
Rosalie Wanders
cc7eb614d1 osal_keys: remove osal_keycode_name 2021-07-29 15:44:56 +07:00
Rosalie Wanders
16aff7aa9d GLideNUI: introduce HIDKeyToName 2021-07-29 15:44:56 +07:00
Sergey Lipskiy
44e809ed13 Revert "Change LOD calculation formula. Use the maximum value of the change of S and T per change in X and Y."
This reverts commit 73b2d0060b.
2021-07-29 15:29:03 +07:00
s2s
0c30bdf4e2 Increment shader storage version number 2021-07-29 14:06:33 +07:00
s2s
47aaf2fc99 Cleanup uniforms no longer used 2021-07-29 14:06:33 +07:00
s2s
7e8265bf20 Apply texture shift and offset on a per pixel basis. Clean texture engine code. 2021-07-29 14:06:33 +07:00
s2s
73b2d0060b Change LOD calculation formula. Use the maximum value of the change of S and T per change in X and Y. 2021-07-27 18:14:58 +07:00
Rosalie Wanders
1ad662092d Fix building zilmar-spec with cmake with mingw 2021-07-23 12:29:36 +07:00
Rosalie Wanders
4a55160770 GLideNUI: add Qt6 compatibility 2021-07-23 12:27:02 +07:00
oddMLan
61ff59d24b Add OSD Statistics checkbox to WTL 2021-07-23 12:24:13 +07:00
oddMLan
a59bd2eb00 Fix oversight in OSD statistics (GLideNUI-Qt)
It wasn't saving the setting properly with custom game settings.
2021-07-23 12:24:13 +07:00
Sergey Lipskiy
5072ec8ee8 Fix anisotropic filtering.
Fixed #2527 Is anisotropic filtering always ON
2021-07-22 22:17:07 +07:00
Rosalie Wanders
14229b93ba Fix Project64 when statusbar is hidden 2021-07-21 19:58:15 +07:00
s2s
81ac29a04f Fix an overlook in 213c10d 2021-07-21 19:56:11 +07:00
Rosalie Wanders
94dd897b5d GLideNUI: fix multisampling causing odd UI behavior
Fixes #2524
2021-07-21 19:55:07 +07:00
s2s
213c10d6de Restore equivalent to old code for nativeResFactor=0 2021-06-13 21:54:52 +07:00
s2s
ce1fb27cf7 Fix detection of native-res texture rectangle when computing the texture coordinate offset. 2021-06-13 21:54:52 +07:00
Sergey Lipskiy
66e8ff3c00 Drop render state after drawing a primitive, in gDPFullSync() and
GraphicsDrawer::copyTexturedRect to avoid wrong use of TexCoordBounds heuristics.

Fixed flickering in the starcraft intro when it transitions from picture to picture.
2021-06-06 18:57:33 +07:00
Gillou68310
c8a25914bc Fix wrong buffer height in PostProcessor 2021-06-05 21:06:32 +07:00
Francisco Zurita
15668b9064 Wait for buffer to be empty before reallocating memory 2021-05-26 23:02:15 +07:00
Francisco Zurita
e9d08c33bd Temporary fix for NVidia shaking on Windows 2021-05-26 23:02:15 +07:00
Sergey Lipskiy
be851a3b45 Fix rect coordinates in TexrectDrawer::draw()
Fixed #2501 Blending issue with native-res texrects enabled.
2021-05-23 22:57:53 +07:00
s2s
acfb569dea Use a 640x640 bounding box for screen coordinates.
A smaller bounding box allows rendering in higher resolutions. It should be made bigger if geometry is clipped.
2021-05-15 23:31:10 +07:00
Sergey Lipskiy
7abf593da3 Set m_cleared to false in FrameBuffer::copyRdram().
m_cleared means that the RDRAM buffer contains only fillcolor.
It should be false after copyRdram() since from now the buffer validity check should work with m_RdramCopy.

It Fixes Kirby 64 broken level selection, #2491
Without this fix, the level selection is broken when copy color to RDRAM is disabled
2021-05-15 20:44:07 +07:00
fzurita
f4a0019acf Fix GLES 2.0 GLSL shader compilation error. 2021-05-02 18:24:11 +07:00
fzurita
f5e73a8081 Bind to the current frame buffer FBO when copying auxiliary buffers to
RDRAM
2021-05-02 18:24:11 +07:00
fzurita
6ee8c71bf0 Only try to use an EGLImage if initialization of it was successful 2021-05-02 18:24:11 +07:00
fzurita
0cf810416b Destroy EGL image after we are done with it 2021-05-02 18:24:11 +07:00
Sergey Lipskiy
d93efe0c30 Fixed #2488 compilation on Fedora 34 2021-05-02 17:07:08 +07:00
fzurita
c5d942b436 Fix crash when trying to delete invalid frame buffer 2021-05-01 17:02:28 +07:00
Sergey Lipskiy
4049f7d1ff Fix culling with software clipping.
fixes #2485 Invisible textures in Fighting Force 64 (USA)
      #2447 Graphical issues in Diddy Kong Racing
2021-04-28 19:20:44 +07:00
s2s
02d12d180d Change heuristic when using non-multiple-of-native rendering resolutions.
The games behave unpredictably at random rendering resolutions, so a simpler heuritic is used.

Fixes #2482
2021-04-28 17:37:12 +07:00
Sergey Lipskiy
827cc2294f Set video.threadedVideo off by default (except for Android), as suggested in #2479 2021-04-21 11:02:49 +07:00
Sergey Lipskiy
e85e0f4a5f Fix issues in ColorBufferToRDRAM::_prepareCopy:
* remove an optimization: don't update current buffer if it is the same for the current frame.
This optimization causes crash in Zelda OOT pause screen with "aux buffer copy" enabled.
* fix width calculation for aux buffers when "aux buffer copy" enabled.
2021-04-20 23:32:27 +07:00
Sergey Lipskiy
fe869cf5d2 Add hotkey to toggle 2D texrects in native resolution. 2021-04-19 21:55:00 +07:00
Sergey Lipskiy
370e57b131 Add hotkey for "EnableTexCoordBounds" setting. 2021-04-19 21:55:00 +07:00
s2s
e70c9bfcd7 fix native rects 2021-04-19 21:55:00 +07:00
s2s
4aa7fe9fc2 Change heuristic to render texture rectangles 2021-04-19 21:55:00 +07:00
s2s
f94ffe2b9d Increment shader storage version number 2021-04-19 21:55:00 +07:00
Sergey Lipskiy
aa6e549e17 Support "enableTexCoordBounds" config option in Qt GUI. 2021-04-19 21:55:00 +07:00
s2s
4e0a0186f5 Add config option for texture coordinate bounds 2021-04-19 21:55:00 +07:00
s2s
cdd1dcc438 Use texture coordinate bounds for non-native resolutions 2021-04-19 21:55:00 +07:00
s2s
acf26e613d Apply a vertex position or texture coordinate shift to approximate N64 rasterization rules 2021-04-19 21:55:00 +07:00
s2s
39153304e1 Workaround for framebuffer textures 2021-04-19 21:55:00 +07:00
s2s
fe244c5560 Update widescreen hack 2021-04-19 21:55:00 +07:00
Sergey Lipskiy
3d67ac4630 Fix clipping 2021-04-19 21:55:00 +07:00
Sergey Lipskiy
e2e0214719 Fix texrect drawer. 2021-04-19 21:55:00 +07:00
s2s
81318c5445 Use screen coordinates to render primitives 2021-04-19 21:55:00 +07:00
fzurita
1d90610782 Fix EGL image being broken at 1x native resolution factor 2021-04-19 21:50:55 +07:00
fzurita
43a5d16905 Keep a color copy FBO and texture per N64 frame buffer 2021-04-19 21:50:55 +07:00
fzurita
5f7a7cadc2 Stop using predefined texture sizes introduced for Android
For Android we use EGL image for async copies and for sync copies and
devices that don't support EGL image, the fixed texture sizes don't seem
to improve performance.
2021-04-19 21:50:55 +07:00
Logan
7a6289b270 Fix N64 Depth Compare on Intel PC 2021-04-14 21:07:22 +07:00
Sergey Lipskiy
d27ce4781f Fix calculation of clamping parameters for texture engine:
use integer part of tile coordinates to calculate tile dimensions.

Fixed texture glitches io topgear overdrive, #2464
2021-03-18 16:35:57 +07:00
Sergey Lipskiy
e31b7b7045 Fix issues in renderAndDrawTriangles.
Fixed regression with Paper Mario Lantern Ghost Boss Fight #2468
2021-03-16 00:20:31 +07:00
Sergey Lipskiy
92c9bd8408 Fix issues with software clipping:
* fixed max screen Y calculation. It fixes bug in Top Gear Overdrive, #2450
* fixed typo in rasterise().
2021-03-02 21:44:07 +07:00