489 Commits

Author SHA1 Message Date
Themaister
3029f96511 Add a new "glcore" driver with slang support.
This driver should sunset the old gl2 driver, but that driver will
likely live on to support really ancient and terrible GL stacks.
All the worst legacy cruft has been ripped out, and it's almost a decent
backend now.

Requirements for slang are GL 3.2+ or GLES3.
Some shaders require features which are not directly compatible with
GLES2 or legacy GL.

This driver shares a lot of concepts from the Vulkan driver.
The slang shader stack and SPIRV-Cross are used to implement the shader
spec, and the menu shaders are also shared with Vulkan.
2019-03-09 12:30:49 +01:00
Francisco Javier Trujillo Mata
652300f674 [PS2] Fixed memory leaks in the ps2_font 2019-03-07 00:14:59 +01:00
Francisco Javier Trujillo Mata
0e7d5ed32b Improvements regarding the ps2 font driver 2019-02-26 21:02:29 +01:00
Brad Parker
4f0d61a2ac update copyright 2019-02-22 19:13:36 -05:00
Brad Parker
477d46d52b update copyright 2019-02-22 19:13:36 -05:00
natinusala
631f9e6b8e font driver: expose line height 2019-02-17 16:54:24 +01:00
twinaphex
420f3a171b (GL1) Update - add HAVE_OPENGL1 to MSVC 2005/2008/2010/2012 2019-02-16 21:26:01 +01:00
Brad Parker
5a3a58c8a6 gl1: fix order of non-rgui menu drawing, add proper texture support 2019-02-11 12:05:31 -05:00
Twinaphex
aac14a00a4
Merge pull request #8233 from orbea/sixel
Fix warnings with --enable-sixel.
2019-02-09 00:27:11 +01:00
orbea
78dbe1cef1 Fix warnings with --enable-sixel. 2019-02-08 14:13:02 -08:00
Brad Parker
74fd184097 initial GL1 video driver, only rgui is working currently 2019-02-08 12:14:55 -05:00
orbea
28ff4b391a Clean up white space. 2019-02-03 16:00:50 -08:00
twinaphex
5a45464bb3 Revert "Reimplement video_driver_set_coords"
This reverts commit 93ded925d371253542ae9595dc0b57c8bb53591e.
2019-02-03 19:40:21 +01:00
twinaphex
43884758c5 Revert "(GL) Cleanups"
This reverts commit 5bab7e44605887aa5de62834860a411acb953093.
2019-02-03 19:40:15 +01:00
twinaphex
5bab7e4460 (GL) Cleanups 2019-02-03 18:38:18 +01:00
twinaphex
93ded925d3 Reimplement video_driver_set_coords 2019-02-03 18:29:00 +01:00
twinaphex
dd366cd5c5 Revert "Simplify set_coords"
This reverts commit e10eb51f718aff5e61cf3fa91d865ebe2e21767e.
2019-02-03 18:05:14 +01:00
twinaphex
e10eb51f71 Simplify set_coords 2019-02-03 18:03:07 +01:00
twinaphex
9aa542b1ae * Get rid of video_shader_driver_use
* Get rid of Nuklear - ozone/menu widgets is probably the replacement
for it - Zarch will go next
2019-02-03 04:37:54 +01:00
twinaphex
62bea6ad11 SOme header cleanups 2019-02-02 22:02:24 +01:00
M4xw
c111b4a7f0 Fix double semicolon and format line endings 2019-01-11 23:48:52 +01:00
Francisco Javier Trujillo Mata
29948c0878 Apply guideline styles for PS2 files 2019-01-10 09:37:09 +01:00
Francisco Javier Trujillo Mata
a2db47bead Improve manage of VRAM in the GFX and Font Driver for PS2 2019-01-10 02:25:02 +01:00
Twinaphex
ac04c1bfc5
Merge pull request #7892 from Datamats/libnx_nwindow
libnx: refactor all the code of the now deprecated gfx api over to the new nwindow / framebuffer api
2019-01-08 23:36:20 +01:00
orbea
bfc366decc Squeeze extra blank lines with cat(1).
Example:

find . -type f -iname '*.c' | while read -r i; do
  cat -s "$i" > "$i.new"
  mv "$i.new" "$i"
done
2019-01-08 11:04:58 -08:00
Francisco Javier Trujillo Mata
cd764ac37b Remove not needed free in the FONT driver 2019-01-07 23:02:01 +01:00
Francisco Javier Trujillo Mata
26ce69694f Create Font driver for PS2 2019-01-07 21:51:48 +01:00
Mats
462a4b24fd libnx: refactor all the code of the now deprecated gfx api over to the new nwindow / framebuffer api 2019-01-07 15:03:44 +01:00
Brad Parker
2517670f80 gdi: remove unused variable 2018-10-10 17:54:38 -04:00
twinaphex
04cc181771 Cleanups 2018-10-10 16:18:29 +02:00
Brad Parker
b9699f4780 gdi: texture load support, fix menu text alignment, support multi-line messages 2018-10-10 09:58:49 -04:00
twinaphex
0158bbe4aa Add switch_nx_gfx.c 2018-09-12 21:44:53 +02:00
twinaphex
eb345019c2 Don't implement bind_block/flush_block for drivers that
don't implement it
2018-07-15 20:16:40 +02:00
twinaphex
0d39701145 Get rid of double void argument 2018-07-14 00:54:14 +02:00
Stuart Carnie
167ad3b57d fix(Metal): Various Metal fixes
* OSD message background
* clear glui background
* add Metal to configuration
* added optional config to compile Metal build without OpenGL
* fixed fill_pathname_join_delim; if out_path and dir are same, don't
  strlcpy, as the results are undefined.
2018-07-12 21:33:18 -07:00
Brad Parker
ab27b7c85f initial SIXEL video driver 2018-07-12 16:55:08 -04:00
twinaphex
22d6930488 Some MSVC 2010 360 buildfixes 2018-07-06 04:45:52 +02:00
Stuart Carnie
5240efc857 chore(Metal): fix compiler warnings when targeting newer macOS versions 2018-07-04 00:24:04 -07:00
Stuart Carnie
a0900ec433 feat(Metal): full xmb pipeline support
Menu TODOs:

* understand why ribbon does not look the same as GL
* add clear support to `MenuDisplay` for glui
2018-07-03 22:32:12 -07:00
Stuart Carnie
4a101734a1 More cleanup
* use single render command encoder for display for better performance
* Context handles all rendering and presentation
2018-07-03 22:32:12 -07:00
Stuart Carnie
5e1f991e32 feat(Metal): initial xmb and glui menu support
TODOs

* menu shader pipeline effects
* refactor / optimize graphics rendering
2018-07-03 22:32:12 -07:00
Stuart Carnie
367c15f488 feat(Metal): font rendering
* FPS and other OSD messages render correctly
* add autoreleasepool around entire render loop to avoid memory leaks
2018-06-23 23:54:23 -07:00
Twinaphex
fd11b205da Silence bunch of warnings 2018-06-21 07:52:01 +02:00
Stuart Carnie
411bcf8bdd feat(apple): Metal support for macOS
* includes rgui
* shader support

This is a work-in-progress and there are some bugs and visual artifacts
still to be fixed.
2018-06-20 21:33:45 -07:00
twinaphex
6a9b39da3f Get rid of d3d.h and xdk_defines.h 2018-05-14 03:57:27 +02:00
twinaphex
8beed4c1ec (360) Buildfix 2018-05-14 01:50:58 +02:00
twinaphex
82ebb9576f Create d3d9_video_t and d3d8_video_t 2018-05-03 22:03:12 +02:00
twinaphex
c4a03b6b45 (xdk360_fonts.cpp) Cleanups 2018-05-03 21:39:25 +02:00
twinaphex
789ef63dee (360) Don't bake in HAVE_XUI anymore; buildfixes for C++ 2018-04-23 17:35:36 +02:00
twinaphex
32c92a9a22 Rename d3dxbuffer_release 2018-04-23 15:04:19 +02:00