Commit Graph

225 Commits

Author SHA1 Message Date
Themaister 211e17250c Major refactor to CGP parsing.
Adds saving functionality for CGPs.
2013-04-01 15:34:02 +02:00
Themaister 50af927de6 Add depth/stencil buffers to HW GL. 2013-03-29 02:50:42 +01:00
Themaister af40f3e9b8 Add initial GL direct rendering test. 2013-03-27 16:15:15 +01:00
Themaister 773c511179 Add floating point FBO support. 2013-03-25 16:42:41 +01:00
twinaphex 15215c47f1 (Grifin) Move griffin to root (to indicate it's no longer console-specific 2013-03-18 05:46:19 +01:00
twinaphex 3bc487be87 Merge branch 'ios' of git://github.com/meancoot/RetroArch 2013-03-15 20:05:15 +01:00
Themaister 63d946c69f Add set_rgui_texture interface to video_poke. 2013-03-10 19:14:28 +01:00
meancoot 9fadca2a54 Merge branch 'master' of https://github.com/Themaister/RetroArch into ios 2013-03-09 20:09:32 -05:00
twinaphex 037edbd247 (360) Build fixes 2013-03-09 01:02:30 +01:00
twinaphex 566a5ebb9c Move FBO enums to gl_common.h 2013-03-06 01:57:30 +01:00
ToadKing d28cb94717 start of RGUI port to Android
currently detects menu button to bring up RGUI, but GL does not draw it
yet and you cannot exit from the (invisible) RGUI menu yet
2013-02-27 20:20:29 -05:00
meancoot a37a19e40d First revision of iOS port. Only tested on simulator thus far. 2013-02-06 10:14:05 -05:00
Themaister eb979732b4 Add alpha modulation to overlays. 2013-01-29 21:51:15 +01:00
Themaister 312980ee30 Add support for full-screen overlays. 2013-01-11 16:23:04 +01:00
twinaphex a6f89670c9 (PS3) No longer needlessly loads RMenu background image three
times in a row
2013-01-06 07:03:17 +01:00
twinaphex 08afcbfa3d (RARCH_CONSOLE) Use void* for param passing type 2013-01-03 03:02:52 +01:00
Themaister e9cfb95900 Add fallback path for RGBA.
This is necessary for GLES devices which do not support BGRA_EXT.
2013-01-03 01:20:35 +01:00
Themaister 0b4cf2d053 Update license headers to 2013. 2013-01-01 01:41:15 +01:00
Themaister 4c27922ab7 Don't rotate overlay if game is rotated. 2012-12-24 00:21:42 +01:00
Themaister 35bf5c82c1 Make OVERLAY optional. 2012-12-23 18:39:01 +01:00
Themaister b4cd58afe7 Rework overlays as a video driver interface. 2012-12-20 11:16:22 +01:00
Themaister 5eb7432fff Add overlay rendering to GL.
This allows e.g. Android to render a keypad overlay for touch.
2012-12-19 13:26:11 +01:00
twinaphex 34951c121b (PS3) Use g_extern.draw_menu instead of block_swap 2012-12-18 08:20:44 +01:00
twinaphex dacab094f0 (RMenu) menu_loop renamed into rmenu_iterate - iterates menu code for one frame 2012-12-15 16:40:02 +01:00
Themaister beca1c44f3 Move all font stuff to gfx/fonts.
Rename stuff so griffin doesn't break.
2012-12-15 00:27:30 +01:00
Themaister b239785038 Context-ize GL font rendering. 2012-12-15 00:07:31 +01:00
Themaister 8501c404f6 Fix CXX_BUILD. 2012-12-14 22:33:04 +01:00
Themaister 5700febb2c Refactor font renderering.
Virtualize for multiple backends, and name files more sanely.
2012-12-14 20:25:40 +01:00
twinaphex 707bcd483f (Android) Some patches for RMenu compatibility 2012-12-14 01:29:01 +01:00
notaz ee112fc375 Manually define GL_BGRA_EXT if needed.
It's missing in imgtec/SGX headers for some reason.
2012-12-13 01:00:50 +02:00
Themaister be0223b501 Use gl->conv_buffer instead of extra buffer. 2012-12-08 12:35:10 +01:00
meancoot 95fa37b178 (OpenGL ES) Pack texture rows manually instead of making multiple calls to glTexSubImage2D. 2012-12-07 02:03:17 -05:00
Themaister ca9f5fd1e8 Break really long lines in gl_common. 2012-12-02 10:49:17 +01:00
twinaphex 3f50384a3b (Android/GL) Avoid some function pointers 2012-12-02 03:30:46 +01:00
Themaister aae7bf60e2 Fix build if FFmpeg is not compiled in. 2012-11-23 10:28:22 +01:00
Themaister 7445e891a8 Use INT_8_8_8_8_REV for readbacks.
Allows use of scaler_ctx, also a lot faster on Intel chips, possibly
others as well.
2012-11-21 22:12:56 +01:00
Themaister 6d4d1f8796 Use asynchronous PBO readbacks when recording.
This *greatly* optimizes GPU recording performance
by making readbacks asynchronous in GL.
This is only enabled for desktop GL and when recording is enabled.
2012-11-21 16:24:28 +01:00
Themaister 28bb46483c Drop video_force_16bit.
This option is silly now.
2012-11-20 23:23:18 +01:00
twinaphex 3bdfb3a011 (PS3/XDK) Get rid of redundant apply_fbo_state_changes function 2012-11-19 00:01:55 +01:00
Themaister f898709b1c Remove useless variable. 2012-11-18 21:34:34 +01:00
Themaister 99326a332d Use correct internal format on PS3. 2012-11-18 18:23:20 +01:00
Themaister 3e77039a42 Rewrite how gl.c interfaces with shader backends. 2012-11-14 22:51:08 +01:00
twinaphex 71f71c909d (Android) Implement macro override calls for Android - for bypassing
several layers of function call indirection
2012-11-03 10:18:08 +01:00
twinaphex a3c14626a4 (GL) Use macro defines for context functions - will override this for
Griffin targets in order to avoid function pinter
2012-11-03 09:18:31 +01:00
Themaister 1908a81e1c Add RETRO_DEVICE_POINTER.
Implemented only for X11 so far.

Also clears up viewport_size call.
Changed to viewport_info to also grab X/Y info.
2012-10-28 00:38:31 +02:00
Themaister e53dd431b4 Begin merging D3D9 driver. 2012-10-26 22:18:26 +02:00
ToadKing 409a482dc5 Add viewport screenshot support to GLES 2012-10-22 19:03:57 -04:00
twinaphex 9bc0f382ab (PS3/RMenu) refactored HAVE_CG_MENU out of existence - now
replaced with HAVE_RMENU - menu code has been moved over to
PS3 context file
2012-10-22 06:12:12 +02:00
twinaphex f37095e994 (PS3) 16bit textures work correctly now - the 'blending' done
on consoles (PS3/Wii) for the ingame menu needs to be done in
software rendering - will also help with RMenu for PC
2012-10-22 03:56:28 +02:00
Themaister 2145d1c4e2 Use RGB565 in VC context. 2012-10-20 21:55:58 +01:00
Themaister cc4e41dafb Merge branch 'master' into rgb565
Conflicts:
	gfx/gl.c
2012-10-20 11:31:38 +02:00
Toad King c7dad59402 Add EGLImage support to GL driver.
On videocore, uploading image textures using OpenVG instead of OpenGL ES saves us about 4.5 milliseconds per frame.
2012-10-19 23:08:53 -04:00
Themaister 93078889cc Begin reworking RGB565 as default pixel format. 2012-10-20 01:12:02 +02:00
Themaister 6d3c12b9bd Use HAVE_GLSL instead of HAVE_XML.
Replace where it makes sense.
2012-10-16 19:43:05 +02:00
twinaphex 9a38d021c2 Rename confusing 'driver' member to 'ctx_driver' in gl struct 2012-10-09 17:47:48 +02:00
Themaister e351dcc59c Should allow fast path for PS3 on glTexImage2D. 2012-10-02 20:16:55 +02:00
Themaister 5b0525d2e2 Drop HAVE_PBO. Use custom conversion routines.
Measured custom 15->32 conversion to be up to 10x faster on my setup.
2012-10-02 01:04:47 +02:00
Themaister 5688f939a7 Use GL_BGRA_EXT on GLES. 2012-09-29 20:06:48 +02:00
TwinAphex51224 accbb57e10 (PS3) Set NO_GL_FF_VERTEX for PSGL-based builds 2012-09-25 04:07:36 +02:00
Themaister d0e220bbf1 Refactor all GL context handling code. 2012-09-25 01:37:23 +02:00
Themaister b2316efe05 No GLES2 extensions are used. Drop header include. 2012-09-16 01:29:45 +02:00
Themaister 759a4c811d Use GL_LUMINANCE_ALPHA for fonts. 2012-09-15 23:15:19 +02:00
Themaister ff60bcb5e5 Add experimental X/EGL support. 2012-09-15 15:17:34 +02:00
Twinaphex 3c8b967008 (GL) Make EGL context file - have PSL1GHT build use eglGetProcAddress
- doesn't currently link
2012-09-14 11:07:50 +02:00
Themaister 4c99652a60 Rework attribute and MVP passing in GL. 2012-09-11 23:32:00 +02:00
Themaister 6f28393c11 Refactor extension handling slightly. Allow a path without GL_UNPACK_ROW_LENGTH. 2012-09-11 12:34:20 +02:00
Twinaphex 079585d428 (GL) Clean up ifdefs - cut down on them (PS3 now uses HAVE_PSGL,
PSL1GHT now uses HAVE_OPENGL_MODERN)
2012-09-11 09:55:03 +02:00
Themaister 756f8fb3db Cleanup PBO handling. Makes it optional via ./configure. 2012-09-10 23:17:48 +02:00
Themaister 9871b8d56f Add preliminary PBO mode for GL. (GLES). 2012-09-10 11:15:48 +02:00
Twinaphex 61b0811501 (Android/GLES) Add HAVE_OPENGLES defines to gl.c - remaining stuff todo -
GL_QUADS not supported on GLES - GL_UNPACK_ROW_LENGTH/GL_PACK_ROW_LENGTH
not supported on GLES without extensions - all client state array
stuff unsupported -
- Query extensions and see if GL_UNPACK_ROW_LENGTH and GL_PACK_ROW_LENGTH
are available (on Tegra SOCs they should)
2012-09-10 00:39:26 +02:00
Themaister 8198927260 Fixup build on Win32. 2012-08-16 10:09:44 +02:00
Themaister 447412c6df Abstract all use of *Pointer() functions to one point. 2012-08-14 23:32:55 +02:00
Themaister a283a54bee Use calculated MVP directly in shader params. 2012-08-09 23:21:59 +02:00
Twinaphex 90c6e9d069 (PSLIGHT) Compile with HAVE_XML and include libxml2 lib 2012-07-01 23:09:34 +02:00
Twinaphex 2ec2b70a72 (PSL1GHT) Add some GL ES 2.0 hooks 2012-07-01 22:44:33 +02:00
Twinaphex 0490e80fb2 (PSL1GHT) Add some ifdef includes 2012-07-01 22:20:59 +02:00
Themaister 613c86be68 Drop useless gl error check. 2012-06-19 23:49:10 +02:00
Twinaphex 4dbfbbfe7f (Android) Preliminary NDK Makefile for compiling retroarch as a
shared library - we will need a separate gles driver
2012-06-19 23:34:19 +02:00
Themaister a0b9e6b55e Fix screenshot crashes. 2012-06-10 11:10:14 +02:00
Themaister 19f0c04021 Add screenshot support from backbuffer. 2012-06-08 22:39:18 +02:00
Twinaphex ec63eb6434 Refactored some code - added 5x scale 2012-06-05 18:11:42 +02:00
Themaister 2d3fed35e7 Avoid ugly #undefs. 2012-05-27 23:33:52 +02:00
Themaister 4e9a5a5360 DOS retardations creep in. 2012-05-27 23:30:00 +02:00
Themaister 72310b6661 Style nit party. 2012-05-27 23:15:02 +02:00
Twinaphex b6131dfcd7 (PS3) PS3 now uses gl.c - ps3_video_psgl.c removed 2012-05-27 22:39:29 +02:00
Twinaphex 1a4c122310 (PS3) Don't use custom type macros in ps3_video_psgl.c anymore 2012-05-27 18:46:20 +02:00
Twinaphex dfb5678ce1 (PS3) Put menu rendering code in gl_frame 2012-05-27 17:03:43 +02:00
Twinaphex d72751956e (PS3) Implement gfx_ctx_swap_buffers 2012-05-27 16:23:01 +02:00
Themaister e1a3bf48fd Use correlating ifdef. 2012-05-27 12:38:07 +02:00
Themaister 8e17f8695e Remove unneeded pre/post calls. 2012-05-27 12:26:43 +02:00
Themaister ca0a5b9f76 Move font stuff to gfx/fonts. 2012-05-27 02:04:50 +02:00
Themaister 9e50b0a8bb Make GL texture types more generic. 2012-05-26 16:29:22 +02:00
Twinaphex 6000bd33e9 (PS3) Cleaned up ps3_video_psgl.c code - added some PS3-specific
ifdefs to gl.c
2012-05-26 15:45:36 +02:00
Themaister 9040e3348f Delete unneeded prototype. 2012-05-26 15:36:42 +02:00
Themaister a10a5badcc Move font code to gl_font. 2012-05-26 15:22:48 +02:00
Twinaphex 6583d8262b Add gl_common.c and move commonly used helper GL functions there 2012-05-26 06:45:55 +02:00
Themaister ce740f8948 More fixups. 2012-04-21 23:31:57 +02:00
Themaister aab8fb6151 ssnes_* => rarch_*. 2012-04-21 23:25:32 +02:00
Themaister 9ab51ad23a SSNES => RetroArch. 2012-04-21 23:17:43 +02:00
Themaister e3a71a8c5b Fixup headers. 2012-04-09 22:05:26 +02:00
Themaister 62c96ea937 Change license header. 2012-04-09 22:03:57 +02:00
Themaister 9698cd7dbd Change headers. 2012-04-09 22:03:57 +02:00
Themaister b50ddfc87a Fix some static analyzer warnings. 2012-02-27 17:29:59 +01:00
Themaister b4248038fb Update license headers. 2012-01-08 01:12:05 +01:00
Themaister 672102d377 Change asserts to ssnes_assert(). 2011-12-25 12:47:47 +01:00
Themaister 33a325a730 Nit. 2011-12-07 01:13:06 +01:00
TwinAphex51224 8171977ed7 Preliminary version of PSGL video driver 2011-11-30 21:54:25 +01:00
TwinAphex51224 f8aaf1df1e (PS3) Some more commits 2011-11-30 18:32:45 +01:00
Themaister 04d0d84d01 Fix up more paths. 2011-11-30 18:31:09 +01:00
Themaister 924848fdad Start working towards SDL 1.2/1.3 compat. 2011-09-13 14:06:49 +02:00
Themaister 508cfdbda7 Start implementing access to previous texture. 2011-07-03 15:39:35 +02:00
Themaister 44c52ca4f8 Add -pedantic for shits 'n giggles.
Fix portability issues with void* -> void (*)(void) casts.
Use a more ... bizarre technique ;)
2011-05-31 15:03:59 +02:00
Themaister eebe0ae5d0 Getting there ... But passN textures aren't set properly ;x 2011-05-23 19:57:52 +02:00
Themaister f9c5c7c8a5 Path to check initial texture with GLSL. 2011-05-23 17:43:29 +02:00
Themaister 5dced40c98 LUT textures work :) 2011-05-22 18:48:43 +02:00
Themaister 2f858b7948 Clean up ugly inline stuff. :\ 2011-05-18 22:40:42 +02:00
Themaister 36d9adbc0f *Shrug* windows. Works at least ... :D 2011-05-18 22:11:34 +02:00
Themaister 936b7f5395 Seems to work now. 2011-03-27 21:21:46 +02:00
Themaister 29808c4421 Start on outscale/size support. 2011-03-27 20:29:47 +02:00
Themaister 56ac7b4649 Something's working :D 2011-03-14 23:48:19 +01:00
Themaister e2daab9ce9 Fetch some scale values (this is not in the standard (yet!)) 2011-03-14 22:51:03 +01:00
Themaister ef19ea7a85 Add fbo structures, ready to implement. :v 2011-03-14 22:09:35 +01:00
Themaister 2267c7d048 Update licensing headers. 2011-01-23 20:29:28 +01:00
Themaister c7e6e73bcb Fix a blooper in headers. 2011-01-17 20:54:58 +01:00
Themaister 7b5969cb55 some common error routine, and more stringent error checking. 2011-01-11 22:13:55 +01:00