Sergey Lipskiy
57ad2e96c6
Fix DepthBufferList::clearBuffer() for image textures.
2018-10-17 15:52:53 +07:00
Sergey Lipskiy
d2bca602a1
Use roundup for viewport and scissor coordinates. Fixes some issues when screen resolution is not multiple of original resolution.
2018-10-17 15:52:52 +07:00
Sergey Lipskiy
5538c7b4bb
Add support for frame buffers, which are inside of some other frame buffer.
...
Fixed Superbowling: black screen in menu and game #116
2018-10-17 15:52:51 +07:00
Sergey Lipskiy
3d46293376
Correct condition for depth buffer copy hack for Perfect dark.
...
Fixed Perfect Dark high-res mode issues #1807
Fixed Perfect Dark No text/notifications in multiplayer #1930
2018-10-16 00:07:19 +07:00
Sergey Lipskiy
e4b6224218
Disable CULL_BOTH for NON microcodes.
...
Need to find better criteria.
Fixed Black screen in mortal kombat 4 #1929
2018-10-13 19:25:32 +07:00
Sergey Lipskiy
8b9d955f7a
Fix depth buffer clear for Zelda MM.
...
Fixed Legend of Zelda: Majora's Mask Issue #1921
2018-10-05 23:57:56 +07:00
Sergey Lipskiy
9f936be57e
Correct condition for texture filtering: remove (gSP.objRendermode&G_OBJRM_BILERP) != 0 from the condition.
...
It seems that flag G_OBJRM_BILERP in objRendermode does not mean that texture will be filtered.
2018-09-30 18:03:46 +07:00
Sergey Lipskiy
6ac8efe081
Use frame buffer from input parameters when call
...
_updateScreenCoordsViewport from GraphicsDrawer::drawTexturedRect.
Fixed incorrect picture size when color buffer copied from RDRAM.
Buffer copy uses drawTexturedRect
2018-09-26 13:48:42 +07:00
Sergey Lipskiy
5e1c8a6b58
Do not use clearDepthBuffer in FillRect. Use drawRect only.
2018-09-24 22:02:25 +07:00
Sergey Lipskiy
62b8103e46
Support FRONT_AND_BACK culling mode.
...
Fixed Super Smash Brother Gfx issue on Dreamland stage #487
2018-08-24 16:16:06 +07:00
Sergey Lipskiy
e0418c3c34
Apply TexrectDrawer if next draw command is also texrect and those texrect is side-by-side with the current one.
...
It should fix performance issues with particles.
Currently works only in HLE mode.
2018-07-03 21:52:18 +07:00
Sergey Lipskiy
2322f5f53f
Implement Overscan feature.
...
Remove Crop feature.
Change settings save-load when "per game settings" enabled:
* When config dialog opens, show custom settings for the running game. If no game run yet, show main settings.
* When user press OK button, save settings to the custom ini file and to the main ini file.
2018-06-17 20:04:45 +07:00
Sergey Lipskiy
b0a575313a
Implement Factor5 ucodes for Indiana Jones/Battle of Naboo, task #1259
2018-06-16 18:41:50 +07:00
Logan McNaughton
e80577e105
Allow non-0 default framebuffer
2018-05-22 08:25:24 -06:00
Sergey Lipskiy
8212a1faf6
Fix vertex Y calculation in GraphicsDrawer::_drawThickLine
...
Fixed smoke direction in Micro Machines 64 Turbo (U) #1725
2018-05-02 20:49:36 +07:00
Sergey Lipskiy
725ff742a8
Update viewport when exiting texrect after texturedRectSpecial call.
...
Fixed Paper Mario zoom-in when Mario approaches screen #1789
2018-05-01 18:01:54 +07:00
Logan McNaughton
18e9a73eba
Cache SpecialFeatures check
2018-04-07 11:30:33 +07:00
Logan McNaughton
b49ee1dd8b
Fix GLESX clipping hack in GraphicsDrawer
2018-04-07 11:30:33 +07:00
Logan McNaughton
9c73fb27b1
Remove Image Texture requirement for some shaders
2018-04-07 11:30:33 +07:00
Joe Mattiello
9497a9b868
Add iOS system ifdefs and gles includes
2018-03-31 10:54:20 +07:00
Logan McNaughton
bdb0f7ca94
Emulate GL_DEPTH_CLAMP for GLES
2018-03-23 21:52:06 +07:00
Sergey Lipskiy
5ccc40423f
Correct screen coords viewport in TexrectDrawer::draw()
...
Fixed Mario Golf (U) bug in GLideN64 3.0 regresion #1710
2018-03-21 19:49:36 +07:00
Sergey Lipskiy
822b098d6a
Implement OSD Display: Internal Resolution and Rendering Resolution
...
Fixed #1733
2018-03-05 22:56:14 +07:00
Sergey Lipskiy
b37200239e
Fix display of texrect coordinates in debugger.
2018-03-02 21:22:24 +07:00
Sergey Lipskiy
08d3bff7ba
Process unsupported blend modes only in two cycles mode.
2018-02-23 14:06:09 +07:00
Sergey Lipskiy
8cb25b1fed
Add support for blend modes, which can't be emulated with shader blender.
...
Add a hack for blend mode 0x0150 in Tony Hawk 2: Spiderman uses the same blend mode,
but has no problems with it.
2018-02-18 20:44:11 +07:00
Sergey Lipskiy
9b2f50ca67
Fix rendering in widescreen resolutions when fb emulation disabled, #1700
2018-01-05 15:27:19 +07:00
Sergey Lipskiy
dfada113d3
Do not change current draw buffer after OSD drawing.
...
Fixed mupen64plus messages displayed upside-down.
2017-12-15 13:24:36 +07:00
Sergey Lipskiy
fa102a65c9
Do not revert Y for rects.
2017-12-15 12:38:19 +07:00
Sergey Lipskiy
26623cec1f
Code cleanup: fix issues in GLideN64 found by static code analyser.
2017-11-18 22:07:27 +07:00
Sergey Lipskiy
737338ca20
Use fixed point calculation for texrect s and t coordinates.
...
It is impossible to handle integer overflow when coordinates in float format.
Fixed textures in Major League Baseball #146
2017-11-18 15:41:18 +07:00
Sergey Lipskiy
5a037474a2
Code cleanup: fix compilation warnings.
2017-11-15 15:07:52 +07:00
Sergey Lipskiy
3c61198043
Hardcode blend mode, which is impossible to emulate with shaders.
...
Fixed Tony Hawk's Pro Skater 2 Shadow Glitch #1337
2017-11-11 01:01:49 +07:00
Sergey Lipskiy
7e4271d991
Display save/load progress for combiners shaders
...
Display "init noise texture" message. Progress is hard to display because noise textures generated in threads.
2017-10-26 00:37:26 +07:00
Sergey Lipskiy
35cc66bad4
Code cleanup:
...
* make RSPInfo::busy and RSPInfo::halt boolean
* remove RSPInfo::close
* rename RSPInfo::bLLE to RSPInfo::LLE
2017-10-24 15:44:37 +07:00
Sergey Lipskiy
70c540b073
Rewrite fix for #1539 : keep in tile descriptor start address of frame buffer, not pointer on it.
...
Should be more safe.
2017-09-29 22:25:56 +07:00
Sergey Lipskiy
ee3f4a6962
Partially revert commit 81cc0854
Fix blending when CLR_ON_CVG flag is on.
...
It will not work without pixel covarage calculation.
Fixed Mario Tennis (USA) - missing character selection icons (regression) #1599
Fixed Android/potential PC regression too: Conker broken FB render/lighting chunks. #1597
2017-09-27 16:19:28 +07:00
Sergey Lipskiy
032da85357
Reset m_cleared and m_RdramCopy for depth buffer after software render.
...
Fixed #1594 Mario Tennis VS screen: line flickers
2017-09-26 15:23:07 +07:00
Sergey Lipskiy
497b8dd709
Use legacy blending for DepthFogCombiner.
...
Fix regression in Beetle Adventure Racing! snow is grey! #1587
2017-09-24 18:55:01 +07:00
Sergey Lipskiy
c67e017772
Correct Tri commands for F3DSWRS ucode.
...
Fixed Star Wars: Rogue Squadron HLE glitches. #1584
2017-09-22 22:39:30 +07:00
Sergey Lipskiy
81cc0854dc
Fix blending when CLR_ON_CVG flag is on.
...
Remove hack for Pilot Wings.
2017-09-21 23:18:35 +07:00
Sergey Lipskiy
1bb170a3c4
Implement command 0x05. This command generates polygons for terrain geometry.
...
Very large and complex.
2017-08-11 12:23:39 +07:00
Sergey Lipskiy
e56e45e2da
Command 05 - 02 WIP debug
2017-08-11 12:23:39 +07:00
Sergey Lipskiy
6bfe0adf0a
Fix triangle index calculation for flat shading.
2017-08-11 12:23:39 +07:00
Sergey Lipskiy
c907c3013a
Implement Debugger.
2017-06-25 15:35:48 +07:00
Sergey Lipskiy
64c59fc20d
Implement GraphicsDrawer::showMessage Use it to show OSD message about logging start and stop.
2017-06-25 15:02:45 +07:00
Sergey Lipskiy
a6babb418f
Rewrite monochrome effect for Zeldas.
...
Fixed #1505 OoT Ending Screen Freeze Effect Color Wrong
2017-06-19 21:44:40 +07:00
Sergey Lipskiy
5e51b386f1
Make Resident Evil 2 playable.
2017-04-02 12:02:38 +07:00
Sergey Lipskiy
7d47207d34
Fix viewport Y for negative scale.
...
Fixed #1426 , regression in eiko st andrews
2017-03-18 23:16:07 +07:00
Sergey Lipskiy
0775d28065
Remove FrameBuffer::m_scaleY
2017-03-16 18:50:15 +07:00
Sergey Lipskiy
b00a593da0
Correct GraphicsDrawer::copyTexturedRect.
...
Fixed slide effect in BAR
2017-03-16 18:50:15 +07:00
Sergey Lipskiy
cebca46e0a
Do not update viewport for rects in GraphicsDrawer::_updateStates
2017-03-16 18:50:15 +07:00
Sergey Lipskiy
811dea1d77
Rewrite viewport for polygons with screen coords.
2017-03-16 18:50:14 +07:00
Sergey Lipskiy
d4617b309a
Code cleanup: remove unused variable in GraphicsDrawer::updateScissor
2017-03-16 18:50:14 +07:00
Sergey Lipskiy
e6811b4d4f
Move gDP.colorImage.height update to FrameBufferList::setBufferChanged.
2017-03-16 18:50:14 +07:00
Sergey Lipskiy
c8e6644bd7
Use software render to calculate frame buffer height.
2017-03-16 18:50:14 +07:00
Sergey Lipskiy
bca21ed071
Invert y coordinate to align image origin with frame origin.
2017-03-16 18:50:14 +07:00
Sergey Lipskiy
8ea0cddbec
Disable texcoord attribs for fillrect.
...
Fixed fillrects in Pokemon Stadium 2.
2017-03-11 12:46:40 +07:00
Sergey Lipskiy
1c72ef16fd
Code refactor: move gDP.rectColor initialization to gDP.cpp
2017-03-01 11:49:58 +07:00
Sergey Lipskiy
eebdd32932
Replace rectAttrib::color by uniform.
2017-02-28 15:48:14 +07:00
Sergey Lipskiy
01cd2a59e9
Revert "Code cleanup: remove unused variable in GraphicsDrawer::updateScissor"
...
This reverts commit 87f1ab79a0
.
2017-02-28 14:14:05 +07:00
Sergey Lipskiy
87f1ab79a0
Code cleanup: remove unused variable in GraphicsDrawer::updateScissor
2017-02-27 21:03:54 +07:00
Sergey Lipskiy
873a830d88
Always render to FBO, even when frame buffer emulation is disabled.
2017-02-25 14:08:26 +07:00
Sergey Lipskiy
827b6bb9cd
Code refactor: replace graphics::ObjectHandle() by graphics::ObjectHandle::null
2017-02-22 16:45:27 +07:00
Sergey Lipskiy
5b3b2920bc
Do not set sampler states for multisampled textures:
...
"GL_INVALID_ENUM is generated if the effective target is either GL_TEXTURE_2D_MULTISAMPLE or GL_TEXTURE_2D_MULTISAMPLE_ARRAY, and pname is any of the sampler states."
Fixed HWFBE when MSAA enabled.
Correct code formatting.
2017-02-18 21:40:41 +07:00
Sergey Lipskiy
85239acc36
Fix GraphicsDrawer::drawLine
2017-02-14 15:01:26 +07:00
Sergey Lipskiy
97acd7d071
TextDrawer must be inited before TextureFilterHandler.
2017-02-12 15:06:31 +07:00
Sergey Lipskiy
2483903b74
Refactor TextDrawer: remove direct use of OpenGL
...
Remove DummyTextDrawer.
2017-02-12 14:27:26 +07:00
Francisco Zurita
1319687f86
Replace ANDROID macro definition with OS_ANDROID
2017-02-09 20:38:27 +07:00
matto
2b4b82a7d2
Fixing compiling issue
...
cmath needs to be included explicitly, at least in gcc.
2017-01-30 22:56:34 -05:00
Sergey Lipskiy
df4a81bfea
Add special Parameter classes to make parametrs usage more safe.
2017-01-28 16:52:09 +07:00
Sergey Lipskiy
3fdbed8f5e
Finaly remove OpenGL.h, OpenGL.cpp and other obsolete files.
2017-01-26 19:54:51 +07:00
Sergey Lipskiy
5ad454cebf
Fix GraphicsDrawer::_initStates() call.
2017-01-25 21:58:17 +07:00
Sergey Lipskiy
9107c15f06
Correct scissor enable in GraphicsDrawer::copyTexturedRect
2017-01-25 21:39:44 +07:00
Sergey Lipskiy
602e1dd859
Correct cmake project file. Fix compilation on Linux.
2017-01-25 21:01:21 +07:00
Sergey Lipskiy
80ed169e24
Remove use of OpenGL.h
2017-01-22 20:43:05 +07:00
Sergey Lipskiy
4e459c7645
Change type of CachedTexture name to graphics::ObjectHandle
2017-01-21 19:48:02 +07:00
Sergey Lipskiy
0887dda647
Rewrite post-processor gamma correction and orientation correction.
...
TODO: Bloom.
2017-01-18 22:39:10 +07:00
Sergey Lipskiy
41be8a20e8
Correct texturedRectShadowMap() and texturedRectMonochromeBackground()
2017-01-17 21:52:28 +07:00
Sergey Lipskiy
c5e2575722
Fixes
2017-01-16 20:56:13 +07:00
Sergey Lipskiy
e83c3489a3
Replace OGLVideo by DisplayWindow
...
Replace OGLRender by GraphicsDrawer
2017-01-16 20:56:11 +07:00
Sergey Lipskiy
06749dcf9e
Remove GraphicsDrawer::_getTextSize
2017-01-16 20:56:08 +07:00
Sergey Lipskiy
4bdf22cac1
Implement GraphicsDrawer::_initData() GraphicsDrawer::_destroyData() GraphicsDrawer::_setSpecialTexrect()
2017-01-16 20:56:06 +07:00
Sergey Lipskiy
809987b515
Implement GraphicsDrawer::_initStates()
2017-01-16 20:56:04 +07:00
Sergey Lipskiy
5e67d79ae7
Implement Context::blitFramebuffers
2017-01-14 17:08:02 +07:00
Sergey Lipskiy
704378777d
Implement GraphicsDrawer::copyTexturedRect
2017-01-14 15:58:14 +07:00
Sergey Lipskiy
52aa260153
Move GraphicsDrawer and TextDrawer interfaces to OpenGLContext
2017-01-12 22:22:53 +07:00
Sergey Lipskiy
fa3e7a0584
GraphicsDrawer WIP
2017-01-11 17:07:20 +07:00
Sergey Lipskiy
f92dd70d36
Rename Drawer to GraphicsDrawer
2017-01-11 13:08:05 +07:00