Flyinghead
a808a8f36f
dynamically bind GLES functions
...
Compile with GLES 3.2 headers but no library
split gl_term into generic and platform-/loader-specific stuff
allow full desktop GL context creation with EGL
2019-02-19 17:21:50 +01:00
Flyinghead
9526fada5e
Added RenderLastFrame() to Renderer interface
...
implement screen scaling for per-pixel renderer
fix output FBO not being freed/recreated when GL context is reset
refactor DrawQuad on per-pixel renderer
2019-02-19 11:36:59 +01:00
Flyinghead
810182c4fe
Scale down native resolution setting
2019-02-19 00:49:24 +01:00
Flyinghead
e2c839dde3
GLES: detect gl extensions and use packed depth/stencil buffer for RTT
2019-02-18 17:42:07 +01:00
Flyinghead
e426bc8058
android: call eglMakeCurrent() before rendering or deleting context
...
Flush texture cache and terminate gui before releasing the EGL context
2019-02-18 13:14:12 +01:00
Flyinghead
666205d2a1
Define gl_term for all platforms. Delete all textures on context close.
2019-02-18 09:35:27 +01:00
Flyinghead
5701227e55
build fix
2019-02-18 00:38:11 +01:00
Flyinghead
4c1acfeab1
android: native egl surface
...
fps counter using imgui
restart emulator with new game in same process
2019-02-18 00:25:06 +01:00
Flyinghead
dcbdf3a59d
set glClearStencil to 0 before clearing, just in case
...
fix printf format string
2019-02-16 14:30:08 +01:00
Flyinghead
edba937b6f
Save last rendered frame if gl driver doesn't preserve the swap buffers
...
Fixes flashing screen with nvidia shield when no frame is rendered
2019-02-14 12:40:17 +01:00
Flyinghead
3320669bd4
android: use new input system
...
support for gamepads and mice on android
2019-02-13 20:29:49 +01:00
Marcel Szewczyk
d370fd6709
PR requested changes; Adreno 506 generalized to Adreno
2019-02-11 19:02:52 +01:00
Marcel Szewczyk
7869a84f88
Additional fixes/cleanup
2019-02-10 01:10:51 +01:00
Marcel Szewczyk
8893f97435
Handle odd screen resolution (POCOPHONE fix)
2019-02-08 22:20:02 +01:00
Marcel Szewczyk
a65436cc6c
Handle dynamic resolution change during emulation (LRR mode)
2019-02-08 22:15:45 +01:00
Flyinghead
1802c022fd
UI with ImGui
2019-02-06 19:57:13 +01:00
Marcel Szewczyk
b26b12054b
Merge branch 'master' of https://github.com/reicast/reicast-emulator into mar753/render-to-texture-with-options
2019-02-06 17:39:12 +01:00
Marcel Szewczyk
377fb6ace0
rend.ResolutionPercentage acceptable values are now from 1 to 100; naming fix
2019-01-25 16:43:46 +01:00
Marcel Szewczyk
aa3475738a
Revert "LRR: Support for OpenGL 2 added"
...
This reverts commit c33c0cade8
.
2019-01-20 11:05:53 +01:00
Marcel Szewczyk
c33c0cade8
LRR: Support for OpenGL 2 added
2019-01-18 18:42:46 +01:00
Marcel Szewczyk
f0c4fe6fdc
Additional improvements/fixes
2019-01-18 18:39:48 +01:00
Marcel Szewczyk
82bbe690b1
Stencil support for OpenGL added - requires OpenGL >= 3
2019-01-13 17:33:23 +01:00
Marcel Szewczyk
7e900a4e86
Merge branch 'master' of https://github.com/reicast/reicast-emulator into lowering_rendering_resolution_option
2019-01-09 00:01:03 +01:00
Marcel Szewczyk
e285d7f9ba
Additional improvements to lowering rendering resolution feature
2019-01-08 23:35:48 +01:00
Marcel Szewczyk
8571be39fd
Rendering resolution lowering (horizontal and vertical) is possible from the configuration menu
2019-01-07 23:55:43 +01:00
Marcel Szewczyk
7e26a172f4
Changing screen resolution: Rendering quad created
2019-01-06 22:16:21 +01:00
Flyinghead
15fa475f8a
Move DumpTexture() to CustomTexture and other fixes
2019-01-02 09:33:19 +01:00
Flyinghead
dd280ee24d
Custom textures loading and dumping
2018-12-30 18:42:55 +01:00
Marcel Szewczyk
302bfcd582
Merge branch 'master' into mar753/render-to-texture-with-options
2018-12-30 18:26:31 +01:00
Marcel Szewczyk
7450c247d3
Minor formatting fixes
2018-12-30 12:17:39 +01:00
Marcel Szewczyk
127072ec8d
RTT: Fixed slow rendering of RGBA5551 framebuffer format on Adreno 506
2018-12-30 12:16:34 +01:00
Marcel Szewczyk
e981dd14f8
Render to texture full multipass support added; RTT stride textures support added
2018-12-30 12:08:51 +01:00
Flyinghead
655d36a719
Convert vertex indices to u16 wih GLES2
...
GLES2 doesn't support 32-bit indexes so convert them to u16 when needed
2018-12-13 22:26:25 +01:00
Flyinghead
9fe13e20e8
Clip high z vertices
...
Fixes Soul Calibur intro bogus triangles
2018-12-06 20:46:23 +01:00
Flyinghead
2ef90152c9
GL: add #if in shader for trilinear filtering
2018-11-23 22:33:51 +01:00
Marcel Szewczyk
5f19eb7ae8
Rtt menu options are now handled by GLES
2018-11-11 22:01:18 +01:00
Marcel Szewczyk
4fd9de54ce
Added rtt menu options
2018-11-11 17:55:18 +01:00
Flyinghead
4bce2bbbbf
OSX wants GLSL 1.4 or later
2018-10-30 11:48:44 +01:00
Flyinghead
6177a5b33a
Clear texture cache on exit
2018-10-29 18:02:47 +01:00
Flyinghead
ffb72cd0b6
Texture-based fog table
2018-10-29 00:31:24 +01:00
Flyinghead
96157de639
Enable log2 depth at runtime when supported (GL, GLES 3)
...
Fix issues with pixel scaling and scissoring.
Wacky Races should not be playable.
2018-10-28 22:09:36 +01:00
Marcel Szewczyk
f309a59fac
Render to texture single pass implemented
2018-10-28 20:16:45 +01:00
Flyinghead
77fae1ef09
Backport changes from libretro
2018-10-05 15:07:30 +02:00
Flyinghead
124f920170
Backport GL 2.0 support from libretro core
2018-10-04 22:37:35 +02:00
Flyinghead
7203681202
Less code dup
2018-10-04 14:49:20 +02:00
Flyinghead
b8ae998252
If GL4 renderer is not supported, fall back to default. Fix SDL GL init.
2018-10-04 13:37:45 +02:00
Flyinghead
1dfc9902b7
Share scale_x and scale_y between GL and GL4 renderers. Don't use
...
ShaderUniforms in OSD.
2018-10-04 12:03:00 +02:00
Flyinghead
3f791d6f04
Merge OIT renderer into master
2018-10-04 10:29:23 +02:00
Flyinghead
0627530e33
GL: avoid white lines on the screen sides due to rounding
2018-10-02 12:28:42 -04:00
Flyinghead
5d8d1bd107
GL: Partial redraws. OSD fixes
...
EGL: Request the surface to be preserved between two rendering
Clear the sides of the screen when not rendering widescreen.
Do not re-create GL resources multiple times (android)
2018-09-30 12:39:47 +02:00
Flyinghead
9de8379434
GL: clear gl framebuffer before drawing a direct FB write
2018-09-29 18:10:43 +02:00
Flyinghead
407a579bfc
GL: take pixel scaling into account for OSD buttons and text coords
...
Fixes OSD with Wacky Races and JoJo's Bizarre Adventure
2018-09-29 14:48:18 +02:00
Flyinghead
c49e6c17d0
gl: isinf() issues with GLES3. Use it with GL only
...
Fixes black screen in PSO and Sonic Adventure 2 on Android
2018-09-27 21:45:03 +02:00
Flyinghead
7ce4fccb37
Merge remote-tracking branch 'origin/master' into fh/mymaster
2018-09-20 17:28:41 +02:00
Flyinghead
663b77cee6
Fix OpenGL compile error with VMWare WS14 driver
2018-09-17 13:02:07 +02:00
Flyinghead
2a8591798f
Only clamp color if tsp.ColorClamp is set. Thanks p1pkin
2018-09-12 17:50:42 +02:00
Flyinghead
f202b3b143
Add new ExtraDepthScale setting to scale huge Z values.
...
Use 1e26 for Samurai Shodown 6 (NAOMI)
2018-09-04 18:37:59 +02:00
Flyinghead
228b40136f
Only do color clamp when fog is on
2018-09-02 22:57:59 +02:00
Flyinghead
96e9bce0e0
(Fog) Color clamping support
2018-09-01 12:56:37 +02:00
Flyinghead
e59d7eaf3d
Direct framebuffer writes support
2018-08-26 16:58:10 +02:00
Ender's Games
75215ec0d1
Core: Address some obvious lgtm issues
2018-08-21 02:52:03 -04:00
Abandoned Cart
62837f4db0
Merge pull request #1235 from reicast/fh/alpha-pt-rounding-fix
...
Float math in alpha calculation causes some punch-through textures to…
2018-08-21 00:09:06 -04:00
Ender's Games
8d9d40dffc
Core: Changes provided by Android NDK compiler
2018-08-19 01:54:15 -04:00
Flyinghead
ffb25a470d
Fix Wacky Races missing half screen
2018-08-17 18:33:24 +02:00
Flyinghead
f3bbb06d8c
GL: Missing float precision qualifier in Bump Map calc
2018-08-13 18:21:52 +02:00
Flyinghead
c0c06ed8ff
Renderer: select shader at runtime based on the GL context version
...
The GL renderer now detects the version of the current GL context and
compiles the shaders accordingly. Supports GLES2, GLES3 and desktop GL.
Android: use 8,8,8 framebuffer instead of 5,6,5. Requests a 8-bit
stencil buffer (modifier volumes)
2018-08-07 09:44:52 +02:00
Flyinghead
fddf56c5a2
Fix TA overrun detection. Bump up verts to 2 MB, idx to 120K and TR
...
polys to 8K
2018-08-03 09:55:53 +02:00
Flyinghead
3a7a08f3fb
Do not clear the framebuffer before rendering. Fix scissoring coords.
...
The framebuffer is cleared by the background plane using global clipping
coordinates. This allows multiple rendering to different locations on
the framebuffer.
Fixes flashing menus in Vanishing Point, loading screens in Test Drive
Le Mans and Vigilante 8.
Better rear view mirror in Metropolis Street Racer.
2018-08-02 17:20:18 +02:00
Flyinghead
31d8c1f091
Backport texture upscaling with xBRZ
2018-08-01 19:43:01 +02:00
Flyinghead
63a70e0f62
isinf not available in GLES 2
2018-07-29 19:24:14 +02:00
Flyinghead
b1686a8f6a
Do not allow inf z value in the vertex shader. Clamp w to a very small value.
...
Fixes ground triangles clipping in Soulcalibur intro sequence.
2018-07-24 16:55:48 +02:00
Flyinghead
2e08d7a6c9
round() not available in GLES2. Using floor() instead
2018-07-23 20:55:53 +02:00
Flyinghead
86235bb4a3
Float math in alpha calculation causes some punch-through textures to have alpha noise.
2018-07-23 15:15:05 +02:00
Flyinghead
4b5e863aa7
Use log2 depth scaling in fragment shader when available.
...
Currently a compile time option (!GLES). Fixes many depth issues (Dynamite Cop, Cannon Spike, etc.)
2018-07-23 10:25:55 +02:00
Flyinghead
dc835dd64d
Dump shaders source if compile fails
2018-07-16 16:52:11 +02:00
Flyinghead
0284d635d2
Upscale rendered-to textures
...
Increase the size of RTT textures by a given integer factor. Defaults to
1.
This gives much better quality textures, particularly visible when used
fullscreen for transition or pause screens.
2018-07-16 16:28:48 +02:00
Flyinghead
bb2d860902
Use red channel for fog table in GL but continue using alpha channel in
...
GLES. Alpha channel is supported only in GL compat mode, not core.
2018-07-14 10:48:16 +02:00
Flyinghead
d5d711cf32
Clipping scissor fix: x offset must only be added once
2018-07-11 20:06:43 +02:00
Flyinghead
1be4203ffe
Far plane is at depth 0 in classic renderer.
2018-07-09 23:25:18 +02:00
Flyinghead
c035635341
Clipping scissor Y coordinates must be inverted when rendering to screen
...
Fixes top of screen missing in San Francisco Rush 2049
2018-07-09 23:22:13 +02:00
Flyinghead
a1997637bb
Trilinear filtering limited implementation.
...
Fixes lighter field areas in NFL 2K2
2018-07-03 20:36:13 +02:00
Flyinghead
69263eddc0
Bump mapping support
2018-07-02 15:23:47 +02:00
Flyinghead
295395c680
Flat shading support
2018-07-01 20:25:06 +02:00
Flyinghead
08b8d30589
Implement clipping. Enabled by default.
2018-06-09 18:11:47 +02:00
Flyinghead
2fdcf0d821
Use float constants in GLSL
2018-06-07 18:26:02 +02:00
Flyinghead
b9fe9332cf
GLES 2 fix for fog table: use float only for vars and consts
2018-06-05 13:36:49 +02:00
Flyinghead
828990b926
Texture based fog table
2018-06-05 12:18:09 +02:00
Flyinghead
4c7ffeb520
Per-pixel fog shading. Shaders cleanup.
2018-05-22 13:04:21 +02:00
Flyinghead
8d01bbe145
Increase Z scaling factor to 100k (fixes background menu in VR2). Set
...
depth mask before clearing buffers.
2018-05-21 16:44:18 +02:00
Flyinghead
2d904372a9
Multipass issues: depth mask must be enabled for autosorted tr poly.
...
Depth buffer must NOT be cleared b/w passes, same for stencil I guess.
2018-05-20 14:16:43 +02:00
Flyinghead
c427997269
Enable modifier volumes. Fix for exclusion volumes. Prevent overflow of modifier triangles (JGR).
2018-05-19 10:13:00 +02:00
Flyinghead
d596f988c8
Revert 99bc20220e
2018-05-17 11:17:51 +02:00
Flyinghead
99bc20220e
Simplify clipping
2018-05-17 10:32:52 +02:00
Flyinghead
80c193b3de
Cache texture parameters. Fixed exclusion volume modifiers.
2018-05-16 19:34:45 +02:00
Flyinghead
e73d11d0ab
glHint nicest->fastest, and just once
2018-05-15 22:37:40 +02:00
Flyinghead
b469f05b9d
Fix wrong fog calculation issue
2018-05-15 21:19:58 +02:00
Flyinghead
d8165376be
GL cache fix
2018-05-15 16:09:50 +02:00
Flyinghead
de046c4620
Use OpenGL state cache. Allocate texture ids in bulk. Avoid modifier
...
volumes entirely when not needed.
2018-05-15 15:22:26 +02:00
Flyinghead
2d834c7396
Revert glChecks
2018-05-15 11:54:14 +02:00
Flyinghead
699c2986a5
WIP
2018-05-14 12:48:22 +02:00