Flat Overlays (New overlay for most uses)-Updated 2014-01-16

UPDATE 2014-01-16

New version dropped with ~16:9 landscape versions for:

Basic 6+1 button set.

N64 set

Wonderswan set (Force wonderswan games to landscape)

Also:

WIP ~9:16 portrait gameboy (GB) set

See attached .zip below, or follow the “flat” folder on github. https://github.com/OMGsus/RetroArch/tre … rlays/flat

Input is actually welcome! Just try to stay true to the spirit of the goal and original design.


Goal:

Functional, unobtrusive overlay that uses averaged hitboxes for ease of use. These overlays were made by handing an iPhone 5 to “random” people and having them pretend to play a “game”. This app would record the touch inputs. I also took some liberties on which inputs ended up being mapped. For instance, I came up with something I’ll call 6+1 button config that allows you to use “L” with either your left thumb or your right thumb. This is great for not just fighting games, but can also make many other games more playable. I made a version of this using analog sticks as well that changes the right “L” to “Z” for n64. (along with adding the 2 camera buttons).

Contains: (All “Beta” Status)

Basic 6+1 button dpad overlay (with diagonals and coho buttons) - This is great for most cores.

Basic 6+1 button analog overlay (with combo buttons)

Test Portrait GB/GBA overlay (incomplete)

N64 9 button overlay analog w/ switch for 8+1 dpad overlay (no z) mode

Wonderswan overlay (2 dpads with buttons wonderswan style. Lock to landscape)

This is a test for feedback. It has not been normalized yet.

Attached are some labeled layouts for info. flat.zip is also attached if you want to test what’s in so far.

TODO:

  • [cancled. will be a separate help menu] Splash overlay (cool, informative and original. :slight_smile: Coming soon)

  • Normalize Overlays / iPad / ~4:3 versions

  • System buttons/menus

  • Merge appropriate overlays

  • Mouse trackpad/trackball version (awaiting mouse overlay support)

  • keyboard overlay (specific use cases)

Some in game screens…

I love this idea. Very clever!

Wow n64 overlay is perfect for me except its missing the toggle button. Nicely done this is amazing for a beta. makes touch screens perfectly usable. These should be in tetrarch by default when you finish.

These are fixed now and now at a better "release"ish state. Have fun :slight_smile:

(main post updated)

How hard would it be to update these to be proportional on an iPad in portrait?

Not hard. Just need the motivation, and you’ve given me that just now :wink:

Not hard. Just need the motivation, and you’ve given me that just now ;)[/quote]

Sweet! I already worked out the code for the standard included layout. This makes the buttons not look stretched out on the iPad in portrait. If you just make this code match up to your graphics, then you’ve already almost finished.

overlays = 6

overlay0_full_screen = true
overlay0_normalized = true
overlay0_name = "analog-landscape"
overlay0_range_mod = 1.5
overlay0_alpha_mod = 2.0
overlay1_full_screen = true
overlay1_normalized = true
overlay1_name = "digital-landscape"
overlay1_range_mod = 1.5
overlay1_alpha_mod = 2.0
overlay2_full_screen = true
overlay2_normalized = true
overlay2_name = "analog-portrait"
overlay2_range_mod = 1.5
overlay2_alpha_mod = 2.0
overlay3_full_screen = true
overlay3_normalized = true
overlay3_name = "digital-portrait"
overlay3_range_mod = 1.5
overlay3_alpha_mod = 2.0
overlay4_overlay = quickmenu.png
overlay4_name = "menu"
overlay4_full_screen = true
overlay5_full_screen = true
overlay5_normalized = true
overlay5_name = "hide"
overlay5_full_screen = true
overlay5_range_mod = 1.5
overlay5_alpha_mod = 2.0

overlay0_descs = 15
overlay0_desc0 = "start,0.498,0.8,radial,0.0375,0.0625"
overlay0_desc0_overlay = start.png
overlay0_desc1 = "r2|b,0.83625,0.68333333333,radial,0.0325,0.05416666666667"
overlay0_desc1_overlay = downc.png
overlay0_desc2 = "a,0.75,0.814583333333,radial,0.0425,0.0708"
overlay0_desc2_overlay = a.png
overlay0_desc3 = "b,0.665,0.65516666667,radial,0.0425,0.0708"
overlay0_desc3_overlay = b.png
overlay0_desc4 = "r2|x,0.83625,0.47,radial,0.03,0.05"
overlay0_desc4_overlay = upc.png
overlay0_desc5 = "r2|y,0.7675,0.57,radial,0.03,0.05"
overlay0_desc5_overlay = leftc.png
overlay0_desc6 = "r2|a,0.905,0.57,radial,0.03,0.05"
overlay0_desc6_overlay = rightc.png
overlay0_desc7 = "l2,0.0625,0.052083333333,rect,0.0625,0.052083333333"
overlay0_desc7_overlay = z.png
overlay0_desc8 = "r,0.9375,0.052083333333,rect,0.0625,0.052083333333"
overlay0_desc8_overlay = r.png
overlay0_desc9 = "overlay_next,0.5,0.94533333333,rect,0.0234375,0.04166666667"
overlay0_desc9_overlay = next.png
overlay0_desc9_next_target = "menu"
overlay0_desc14 = "analog_left,0.16845,0.70208333333,radial,0.083,0.136"
overlay0_desc14_overlay = thumbstick-pad.png
overlay0_desc14_range_mod = 3.5
overlay0_desc14_pct = 0.75
overlay0_desc14_movable = true
overlay0_desc11 = "menu_toggle,0.5,0.11708333333334,radial,0.025,0.04166666666"
overlay0_desc11_overlay = rgui.png
overlay0_desc12 = "overlay_next,0.30125,0.11708333333334,radial,0.025,0.04166666666"
overlay0_desc12_overlay = rotate.png
overlay0_desc12_next_target = "analog-portrait"
overlay0_desc13 = "overlay_next,0.70125,0.11708333333334,radial,0.025,0.04166666666"
overlay0_desc13_overlay = digital-icon.png
overlay0_desc13_next_target = "digital-landscape"
overlay0_desc10 = "nul,0.16845,0.70208333333,radial,0.127575,0.212625"
overlay0_desc10_overlay = thumbstick-background.png

overlay1_descs = 22
overlay1_desc0 = "left,0.09375,0.70208333333,radial,0.0525,0.0875"
overlay1_desc1 = "right,0.24375,0.70208333333,radial,0.0525,0.0875"
overlay1_desc2 = "up,0.16845,0.57708333333,radial,0.0525,0.0875"
overlay1_desc3 = "down,0.16845,0.82708333333,radial,0.0525,0.0875"
overlay1_desc4 = "start,0.498,0.8,radial,0.0375,0.0625"
overlay1_desc4_overlay = start.png
overlay1_desc5 = "r2|b,0.83625,0.68333333333,radial,0.0325,0.05416666666667"
overlay1_desc5_overlay = downc.png
overlay1_desc6 = "a,0.75,0.814583333333,radial,0.0425,0.0708"
overlay1_desc6_overlay = a.png
overlay1_desc7 = "b,0.665,0.65516666667,radial,0.0425,0.0708"
overlay1_desc7_overlay = b.png
overlay1_desc8 = "r2|x,0.83625,0.47,radial,0.03,0.05"
overlay1_desc8_overlay = upc.png
overlay1_desc9 = "r2|y,0.7675,0.57,radial,0.03,0.05"
overlay1_desc9_overlay = leftc.png
overlay1_desc10 = "r2|a,0.905,0.57,radial,0.03,0.05"
overlay1_desc10_overlay = rightc.png
overlay1_desc11 = "overlay_next,0.5,0.94533333333,rect,0.0234375,0.04166666667"
overlay1_desc11_overlay = next.png
overlay1_desc11_next_target = "menu"
overlay1_desc12 = "left|down,0.09375,0.8270833333333,radial,0.03125,0.0520833333333"
overlay1_desc13 = "right|up,0.24375,0.57708333333,radial,0.03125,0.0520833333333"
overlay1_desc14 = "up|left,0.09375,0.57708333333,radial,0.03125,0.0520833333333"
overlay1_desc15 = "down|right,0.24375,0.8270833333333,radial,0.03125,0.0520833333333"
overlay1_desc16 = "nul,0.16845,0.70208333333,rect,0.127575,0.212625"
overlay1_desc16_overlay = dpad.png
overlay1_desc17 = "menu_toggle,0.5,0.11708333333334,radial,0.025,0.04166666666"
overlay1_desc17_overlay = rgui.png
overlay1_desc18 = "overlay_next,0.30125,0.11708333333334,radial,0.025,0.04166666666"
overlay1_desc18_overlay = rotate.png
overlay1_desc18_next_target = "digital-portrait"
overlay1_desc19 = "overlay_next,0.70125,0.11708333333334,radial,0.025,0.04166666666"
overlay1_desc19_overlay = analog-icon.png
overlay1_desc19_next_target = "analog-landscape"
overlay1_desc20 = "l,0.0625,0.052083333333,rect,0.0625,0.052083333333"
overlay1_desc20_overlay = l.png
overlay1_desc21 = "r,0.9375,0.052083333333,rect,0.0625,0.052083333333"
overlay1_desc21_overlay = r.png

overlay2_descs = 15
overlay2_desc0 = "start,0.495,0.69625,radial,0.0518982229402262,0.0375"
overlay2_desc0_overlay = start.png
overlay2_desc1 = "r2|b,0.84,0.82,radial,0.0363287560581583,0.02625"
overlay2_desc1_overlay = downc.png
overlay2_desc2 = "b,0.6495833333333,0.815,radial,0.0587903069466882,0.0425"
overlay2_desc2_overlay = b.png
overlay2_desc3 = "a,0.7470833333333,0.89375,radial,0.0587903069466882,0.0425"
overlay2_desc3_overlay = a.png
overlay2_desc4 = "r2|x,0.84,0.71,radial,0.0363287560581583,0.02625"
overlay2_desc4_overlay = upc.png
overlay2_desc5 = "r2|y,0.770333333,0.765,radial,0.0363287560581583,0.02625"
overlay2_desc5_overlay = leftc.png
overlay2_desc6 = "r2|a,0.91241666666667,0.765,radial,0.0363287560581583,0.02625"
overlay2_desc6_overlay = rightc.png
overlay2_desc7 = "overlay_next,0.50125,0.95833333333,rect,0.0345988152879483,0.0234375"
overlay2_desc7_overlay = next.png
overlay2_desc7_next_target = "menu"
overlay2_desc9 = "menu_toggle,0.50125,0.59708333333334,radial,0.0345988152879483,0.025"
overlay2_desc9_overlay = rgui.png
overlay2_desc8 = "nul,0.21875,0.82275,radial,0.1743780290791599,0.13"
overlay2_desc8_overlay = thumbstick-background.png
overlay2_desc11 = "overlay_next,0.70125,0.59708333333334,radial,0.0345988152879483,0.025"
overlay2_desc11_overlay = digital-icon.png
overlay2_desc11_next_target = "digital-portrait"
overlay2_desc12 = "l2,0.0625,0.602083333333,rect,0.0768093699515347,0.032083333333"
overlay2_desc12_overlay = z.png
overlay2_desc13 = "r,0.9375,0.602083333333,rect,0.0768093699515347,0.032083333333"
overlay2_desc13_overlay = r.png
overlay2_desc10 = "analog_left,0.21875,0.82275,radial,0.1129305331179321,0.083"
overlay2_desc10_overlay = thumbstick-pad.png
overlay2_desc10_range_mod = 3.5
overlay2_desc10_pct = 0.75
overlay2_desc10_movable = true
overlay2_desc14 = "overlay_next,0.30125,0.59708333333334,radial,0.0345988152879483,0.025"
overlay2_desc14_overlay = rotate.png
overlay2_desc14_next_target = "analog-landscape"

overlay3_descs = 22
overlay3_desc0 = "left,0.09375,0.81875,radial,0.0726575121163166,0.0525"
overlay3_desc1 = "right,0.34375,0.81875,radial,0.0726575121163166,0.0525"
overlay3_desc2 = "up,0.21875,0.74375,radial,0.0726575121163166,0.0525"
overlay3_desc3 = "down,0.21875,0.89375,radial,0.0726575121163166,0.0525"
overlay3_desc4 = "start,0.495,0.69625,radial,0.0518982229402262,0.0375"
overlay3_desc4_overlay = start.png
overlay3_desc5 = "r2|b,0.84,0.82,radial,0.0363287560581583,0.02625"
overlay3_desc5_overlay = downc.png
overlay3_desc6 = "b,0.6495833333333,0.815,radial,0.0587903069466882,0.0425"
overlay3_desc6_overlay = b.png
overlay3_desc7 = "a,0.7470833333333,0.89375,radial,0.0587903069466882,0.0425"
overlay3_desc7_overlay = a.png
overlay3_desc8 = "r2|x,0.84,0.71,radial,0.0363287560581583,0.02625"
overlay3_desc8_overlay = upc.png
overlay3_desc9 = "r2|y,0.770333333,0.765,radial,0.0363287560581583,0.02625"
overlay3_desc9_overlay = leftc.png
overlay3_desc10 = "r2|a,0.91241666666667,0.765,radial,0.0363287560581583,0.02625"
overlay3_desc10_overlay = rightc.png
overlay3_desc11 = "overlay_next,0.50125,0.95833333333,radial,0.0345988152879483,0.0234375"
overlay3_desc11_overlay = next.png
overlay3_desc11_next_target = "menu"
overlay3_desc12 = "left|down,0.09375,0.89375,radial,0.0432485191168524,0.03125"
overlay3_desc13 = "right|up,0.34375,0.74375,radial,0.0432485191168524,0.03125"
overlay3_desc14 = "up|left,0.09375,0.74375,radial,0.0432485191168524,0.03125"
overlay3_desc15 = "down|right,0.34375,0.89375,radial,0.0432485191168524,0.03125"
overlay3_desc16 = "nul,0.21875,0.82275,radial,0.1743780290791599,0.13"
overlay3_desc16_overlay = dpad.png
overlay3_desc17 = "menu_toggle,0.50125,0.59708333333334,radial,0.0345988152879483,0.025"
overlay3_desc17_overlay = rgui.png
overlay3_desc18 = "overlay_next,0.30125,0.59708333333334,radial,0.0345988152879483,0.025"
overlay3_desc18_overlay = rotate.png
overlay3_desc18_next_target = "digital-landscape"
overlay3_desc19 = "overlay_next,0.70125,0.59708333333334,radial,0.0345988152879483,0.025"
overlay3_desc19_overlay = analog-icon.png
overlay3_desc19_next_target = "analog-portrait"
overlay3_desc20 = "l,0.0625,0.602083333333,rect,0.0768093699515347,0.032083333333"
overlay3_desc20_overlay = l.png
overlay3_desc21 = "r,0.9375,0.602083333333,rect,0.0768093699515347,0.032083333333"
overlay3_desc21_overlay = r.png

overlay4_descs = 11
overlay4_desc0 = "load_state,270,90,rect,120,30"
overlay4_desc1 = "save_state,270,170,rect,120,30"
overlay4_desc3 = "state_slot_increase,270,250,rect,120,30"
overlay4_desc2 = "state_slot_decrease,270,330,rect,120,30"
overlay4_desc6 = "reset,250,410,rect,100,30"
overlay4_desc4 = "rewind,530,90,rect,120,30"
overlay4_desc5 = "slowmotion,530,170,rect,120,30"
overlay4_desc7 = "toggle_fast_forward,530,250,rect,120,30"
overlay4_desc9 = "shader_prev,530,330,rect,120,30"
overlay4_desc8 = "shader_next,550,410,rect,100,30"
overlay4_desc10 = "overlay_next,400,460,rect,40,20"
overlay4_desc10_next_target = "hide"

overlay5_descs = 1
overlay5_desc0 = "overlay_next,0.5,0.94533333333,rect,0.0234375,0.04166666667"
overlay5_desc0_overlay = next.png

edited to enclose in

 blocks -hunterk

Looks good. I’ll have to make some tweaks. I just got back and did a bunch of comfort tests on button placement on an ipad mini. I don’t have a full size ipad…

I’ll also get off my lazy butt and convert to the new standardized coords format. I was working on some cool integrated menus too but they are getting bulky and some people said they were kind of annoying but I cant really do what I want because of the current overlay limitations.

OMGsus - could you please come on IRC (freenode - #retroarch) and help me with getting the MFIWrapper to compile? I could really need your help on this.