Mirrored Cocktail Mode
-
@dankcushions said in Mirrored Cocktail Mode:
there's a shader that does this but it's a manual process right now as i haven't had a chance to test it or add it to the retropie shaders: https://libretro.com/forums/showthread.php?t=6991
if you follow the instructions there it should work, i'm not sure
Thanks for the lead.
I'm going to take some time and give this a go.
I'll report back with my findings. -
@dankcushions
Okay, linux noob coming at you.
As a starting point, how does one get the shader you're starting with in that thread?
Do I simply sudo apt-get that url? -
Alright, I learned about git cloninig and was able to get the shader downloaded from:
https://github.com/hizzlekizzle/glsl-shadersI also enabled the use of shaders from the retropie setup script, as they're apparently disabled by default. Furthermore, I changed the permissions of the .glsl file using 'chmod' to have full rights in linux.
I ended up using the "cocktail-cabinet.glsl" as the 'portrai' version gave me a much worse starting point. The former had both images where they should be, but they just seemed a bit wide. The left most portion of the images were where I expected, and the right side bled over the edge of the screen as it was stretched.
Using Street Fighter II as a test bed (no specific reason, I just like street fighter), I was able to tweak the settings in the .glsl file to get where I needed. The first numbers of the parameters are what I ended up adjusting primarily.
#pragma parameter height "Image Height" -1.145 -6.0 6.0 0.01
#pragma parameter width "Image Width" 1.385 0.0 10.0 0.05
#pragma parameter location_y "Image Location Y" 0.861 -4.0 4.0 0.005
#pragma parameter location_x "Image Location X" -0.5 -4.0 4.0 0.005
#pragma parameter ZOOM "Image Zoom" 0.9625 0.0 2.0 0.005I couldn't get the 'preview shader settings' menu in retroarch(lr-mame2003 ) to work, as each time I attempted to access it, it just quit out of the game. To that end, I just had putty open and had SSHd into the pie and was nano-ing the glsl flie, saving, and reloading the game until I got what I wanted.
I'm assuming these settings are probably pretty specific to this rom, and I'll have to use per game configs, but I need to test further.
As it is, sf2.zip has it's on .cfg file that contains only:
video_shader = /opt/retropie/emulators/retroarch/shader/shaders/cocktail-cabinet.glsl
video_shader_enabled = trueI've attached the end result:
-
Okay, turns out with some more research I'm doing this a bit incorrectly.
First, I need to leave the parameters in the shader alone, not use a .cfg file next to the rom, and instead use a .glslp file in the /opt/retropie/configs/all/retroarch/shaders/presets/(emulator name here)
Also, it seems my numbers were entirely arbitrary and not exactly accurate, however I guess fairly close on accident, lol.
Using information from here...
https://libretro.com/forums/showthread.php?t=1471
...I'm going to work to get accurate scaling numbers for my shader config files.I'll post my findings soon.
-
@RandoCalrisian that's awesome! sorry i wasn't able to help - i had the same problems as you. in fact, you've got further already :)
i hope if we can get a handle on some generic settings (or at least a process on how to tweak it) then i will add the glsl and the glslp to the retropie shader repository, making it installed by default. i think many would find it useful.
thanks again!
-
@dankcushions Definitely. I think there are only a handfull of aspect ratios used, so once a main set is established, these'll work out of the box. Granted, I'm not skilled enough with coding to make it a one size fits all "easy" solution, best I could do is supply a set of predefined configs per aspect ratio.
The only other "obstacle" I've come across so far is due to differences in aspect ratio, more editing is needing.
What do I mean by that?
Okay, so, CPS2 games use a 1.6:1 ratio. They by their "wide" nature more naturally fill the screen side to side.
NeoGeo games, however, are a 1.33:1 ratio. This is a problem because the retroarch emulator has a hard cutoff line based on its inherit ratio. To correctly scale the games up, you're left with the left and right parts of the game not reaching the edges of the screen.I did resolve this, however, but using a "custom" aspect ratio in retroarch and basically scaling it up. The emulator itself actually goes past the edge of the screen, but the game as a result is now touching the edges.
-
@RandoCalrisian said in Mirrored Cocktail Mode:
Okay, so, CPS2 games use a 1.6:1 ratio. They by their "wide" nature more naturally fill the screen side to side.
actually they're 4:3 :) some emulators don't respect this and them as a 1:1 PAR, which assumes all pixels are square, but this isn't the case here. if you look up an actual street fighter 2 cabinet, it's a standard 4:3 CRT screen, not a wide(ish) screen.
@UDb23 create some really useful files that show all the aspect ratios for mame2003/fbalpha games - check it out: https://retropie.org.uk/forum/topic/5285/mame2003-0-78u6-generic-arcade-bezel-for-every-game-with-crt-pi-curvate-vertical-horizontal/20
-
Hello guys! 8 month have passed since you talked about mirroring screen on mame. Are there any new changes to make it easier, because I am not a programmer and have nothing common with all these commands you are talking about:(
COCKTAIL PICTURE
Thats what I want to do with my arcade barrel on raspberry pi 3 but still no success:( -
@vokitak Sorry, I'm only familiar with doing it using standard MAME. I used to have a 10:16 cocktail setup on my 1900x1200 16:10 monitor; they're perfect for this. :) I even created a few overlays for this purpose, which I compiled into MAME so it would use them by default. I'm not very familiar with RetroArch though. :(
-
@vokitak this is all the information we have.
-
I've just completed making my arcade barrel using Raspberry Pie 3b and RetroPie.
That how it looks like:)
Can I make Retropie interface looks rotated 90 degrees so player 1 can see it in front? -
Is it possible to play MAME on Retropie using cocktail mirroring mode? How to do this?
-
@vokitak The answer is YES, it is possible, but to do it, you will have to scroll up to the top of this thread and read how it was done using custom shaders. There is no easier way. You say you have nothing in common with the commands, but that is how it was done.
Your barrel build project looks great, by the way!
-
@vokitak Hrmmm... I've been toying with the idea of a cocktail and trying to figure out the best way to handle aspect ratios (and flipping). This barrel idea gives me an idea - what if you can make the monitor under the glass be pivot-able? Nothing crazy, just from portrait up to landscape left or something? That round base and glass would work great with that. Thanks for the inspiration!
-
@theissdev said in Mirrored Cocktail Mode:
This barrel idea gives me an idea - what if you can make the monitor under the glass be pivot-able? Nothing crazy
Why not crazy? Like a servo mechanism tied to the game running?
By the way, great build. o/
-
I know this is an old thread. I recently did something just like this thread is talking about. I made a tutorial on another forum (i'm happy to recreate it on here if you guys need) addressing this.
https://www.reddit.com/r/RetroPie/comments/97x016/tutorial_split_screen_cocktail_mode_on_retropie/
Also, in MAME2010 UMK3 can go into a cocktail mode in the options. However, it is slow using that core. I had better results using the above method with the mame2003 core and the MK3 speed hack enabled.
Here's a pic of my setup with the split screen shaders in place.:
-
This shader has recently been rewritten by the amazing hunterk at libretro to create this effect at a very low processing cost in mame2003. You might have to tweak the parameters a bit in the retroarch menu or the code. It works great, and scales to fit the screen just like cocktail mode in mame2010.
https://github.com/libretro/glsl-shaders/blob/master/misc/cocktail-cab-portrait.glsl
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.