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

68 Commits

Author SHA1 Message Date
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
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
S2S
eb8ac40136 Revert 538674d
Fixes Oak's Check with CopyColorFromRDRAM enabled
2021-01-08 23:00:42 +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
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
41ecf66e80 Add blue-noise dithering, http://momentsingraphics.de/BlueNoise.html 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
1a6f83aa6c Disable RDRAM dithering if nativeResFactor = 1 and dithering is enabled
Don’t dither twice.
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
fzurita
44ce554d5f Fix issues with EGL image public API on GLES 2.0 2019-11-30 15:54:59 +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
462dd2a9bc FIx EGL image compatibility with mali devices 2019-10-05 22:41:33 +07:00
Sergey Lipskiy
2d712f2ae0 Rewrite textures loading and mapping:
- use RiceVideo method for texture size calculation.
  RiceVideo uses the same method for texture dumping.
- rewrite texture mapping.
  Texture Clamp-Wrap-Mirror implemented in shaders.

Problem explanation:
https://github.com/gonetz/GLideN64/issues/1885#issuecomment-485136358

Fixed various glitches with HD textures, #1885
2019-06-19 19:02:52 +07:00
Sergey Lipskiy
993960f9ea Do not attempt to copy image to RDRAM when copyToRDRAM option set to "Disabled".
Fixed crash when open sub-screen in Zelda MM with copyToRDRAM disabled.
2019-05-22 20:16:10 +07:00
Sergey Lipskiy
03022db791 Check that RDRAM area is writable before writing buffer data into it.
Fixed Problem with Project64's protect memory option #764
2019-03-16 18:37:05 +07:00
Logan McNaughton
e80577e105 Allow non-0 default framebuffer 2018-05-22 08:25:24 -06:00
Sergey Lipskiy
6725ad474a Fix warnings of 64bit compiler. 2018-05-06 15:54:12 +07:00
Sergey Lipskiy
75ea06cec7 Code refactoring: fix issues found by static code analizer. 2018-04-19 20:16:21 +07:00
Logan McNaughton
cb90bb95ed Cleanup FB Texture caching code 2018-02-26 21:15:51 +07:00
Logan McNaughton
a8aa9833e4 Fix chunk copy start address 2017-11-16 09:44:51 +07:00
Sergey Lipskiy
9ab843a9cc Fix copy buffer chunk to RDRAM. 2017-11-16 09:44:48 +07:00
Francisco Zurita
538674da51 Fix Pokemon Snap border flicker
This flicker happens while zooming in to take  a picture while RDRAM to
color buffer and color buffer to RDRAM are both enabled.
2017-11-15 16:17:42 +07:00
Logan McNaughton
5f088c70ce Copy 4k block in FBInfo Chunk copies 2017-11-11 13:59:12 -07:00
Francisco Zurita
762def7dae Fix issues reported by Valgrind 2017-10-09 23:51:16 -04:00
Francisco Zurita
c5b5364299 Better check when deciding to create a new color buffer texture. 2017-09-11 10:26:49 +07:00
Sergey Lipskiy
0eeba0ec51 Fix ColorBufferToRDRAM::_prepareCopy for 1x native resolution.
Fixed Original N64 Resolution" breaks Majora's Mask (E) #1396
2017-03-19 20:20:05 +07:00
Sergey Lipskiy
c6feb32931 Revert changes in subscreen hack. 2017-03-18 22:16:53 +07:00
Sergey Lipskiy
4ed6495a21 Fix buffer size check in ColorBufferToRDRAM::_prepareCopy 2017-03-16 18:50:15 +07:00
Sergey Lipskiy
291500c312 Correct max_height in ColorBufferToRDRAM::_copy 2017-03-16 18:50:15 +07:00
Sergey Lipskiy
0775d28065 Remove FrameBuffer::m_scaleY 2017-03-16 18:50:15 +07:00
Sergey Lipskiy
1191b29ea7 Fix buffer height in ColorBufferToRDRAM::_prepareCopy 2017-03-16 18:50:14 +07:00
Sergey Lipskiy
a4edd92ea7 Fix texture allocation for ColorBufferToRDRAM 2017-03-16 18:50:14 +07:00
Sergey Lipskiy
456459be68 Add FrameBuffer::m_isMainBuffer flag. 2017-03-16 18:50:14 +07:00
Sergey Lipskiy
4a2f5f7e7f Rewrite buffer height calculation in ColorBufferToRDRAM 2017-03-16 18:50:14 +07:00
Sergey Lipskiy
827b6bb9cd Code refactor: replace graphics::ObjectHandle() by graphics::ObjectHandle::null 2017-02-22 16:45:27 +07:00
Sergey Lipskiy
cebf20bf4a Merge remote-tracking branch 'remotes/origin/master' into refactor_graphics
Conflicts:
	projects/msvc12/GLideN64.vcxproj
	projects/msvc12/GLideN64.vcxproj.filters
	src/BufferCopy/ColorBufferToRDRAM.cpp
	src/CMakeLists.txt
	src/GLideNUI/ConfigDialog.cpp
	src/GLideNUI/configDialog.ui
	src/mupen64plus-video-gliden64.mk
2017-02-21 12:51:00 +07:00
Francisco Zurita
1319687f86 Replace ANDROID macro definition with OS_ANDROID 2017-02-09 20:38:27 +07:00
Sergey Lipskiy
184ff8f017 Correct ColorBufferToRDRAM::_prepareCopy
Code cleanup.
2017-01-28 21:44:04 +07:00
Sergey Lipskiy
df4a81bfea Add special Parameter classes to make parametrs usage more safe. 2017-01-28 16:52:09 +07:00
Sergey Lipskiy
5ba4588752 Rewrite ColorBufferToRDRAM 2017-01-25 20:58:05 +07:00
Sergey Lipskiy
a94bac0dd0 Buffers to RDRAM rewrite WIP 2017-01-23 21:20:48 +07:00
Sergey Lipskiy
4e459c7645 Change type of CachedTexture name to graphics::ObjectHandle 2017-01-21 19:48:02 +07:00
Sergey Lipskiy
e83c3489a3 Replace OGLVideo by DisplayWindow
Replace OGLRender by GraphicsDrawer
2017-01-16 20:56:11 +07:00
Sergey Lipskiy
09a5b414c4 Remove FBOTextureFormats usage 2017-01-16 20:56:01 +07:00
Sergey Lipskiy
43e8aef6ea Remove old-style code. 2017-01-09 11:21:06 +07:00
Sergey Lipskiy
dcf1065957 Add textureIndices parameters 2017-01-08 17:49:47 +07:00
Francisco Zurita
893af29512 Fix runtime library loading errors with GLES 3.0.
Some devices with GLES 3.0 support only are not tolerant of GLES 3.1
specific calls.
2017-01-05 00:25:40 -05:00