• Recent
  • Tags
  • Popular
  • Home
  • Docs
  • Register
  • Login
RetroPie forum home
  • Recent
  • Tags
  • Popular
  • Home
  • Docs
  • Register
  • Login
Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

Cocktail Shader Rotation

Scheduled Pinned Locked Moved Help and Support
shaderscocktail tablerotation
14 Posts 3 Posters 4.4k Views
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • C
    chirpy
    last edited by 18 Apr 2017, 16:26

    Hi all, i have an unusual problem i need help with.

    What i would like to know, is it possible to make give a command to make a shader rotate. Or to stop it from rotating.

    I have a cocktail table that i have placed a Pi 3 into (controls either side), and have an image running attract mode, and have assigned two buttons to select different shaders. The purpose of this is to switch between full screen 1 player mode and mirrored mode for 2 players.
    (deleting all but two glslp files accomplishes this)

    For two players i use the cocktail shader incuded in the retroarch download area. but when applied, it automatically rotates the screen 90 degrees. (i assume it does this to fill the screen completly) Thus pointing the screens to the ends of the table that have no controllers.

    I realize that the default answer for this could be to go into the retroarch settings and rotate the screen to the desired angle, however this would also rotate the 1 player image.

    I have also tried disabling the rotation whatsoever in the config files. but this has no effect.

    So....
    Can i edit either shader to rotate?
    Can i edit the cocktail table shader not to rotate?
    Is there any other way around this problem i haven't thought of?

    I'd appreciate any help i can get, thanks for your time. :-)

    Chirpy.

    C 1 Reply Last reply 18 Apr 2017, 17:01 Reply Quote 0
    • C
      caver01 @chirpy
      last edited by 18 Apr 2017, 17:01

      @chirpy If it is indeed the shader that does the rotate, seems like you could edit the shader code and stop it from doing so.

      My 4-player cocktail style cabinet built as a custom "roadcase"

      1 Reply Last reply Reply Quote 0
      • C
        chirpy
        last edited by 18 Apr 2017, 19:28

        Thanks for the reply, but unfortunately my knowledge of these things are limited.
        I've opened the cocktail-cabinet.glsl file and taken a look, but even though the word rotation is featured several times, i dont see any obvious way to understand it, let alone change it. :-(

        C 1 Reply Last reply 18 Apr 2017, 19:36 Reply Quote 0
        • C
          caver01 @chirpy
          last edited by 18 Apr 2017, 19:36

          @chirpy May I ask, what are you trying to achieve with the shader you downloaded?

          I built my cabinet which is basically a 4 player cocktail setup. It has controls on the opposite vertical ends and two controls along a horizontal edge. The design allows side-by-side gaming along the third, long-edge panel, but mostly, it is intended to be used in true "cocktail" mode for classics like PacMan and Donkey Kong with player1 and player2 on opposite ends. There is no need for a special shader.

          My 4-player cocktail style cabinet built as a custom "roadcase"

          C 1 Reply Last reply 18 Apr 2017, 19:37 Reply Quote 0
          • C
            caver01 @caver01
            last edited by 18 Apr 2017, 19:37

            @caver01 Oh, I see, you want mirrored gameplay.

            My 4-player cocktail style cabinet built as a custom "roadcase"

            C 1 Reply Last reply 18 Apr 2017, 19:39 Reply Quote 0
            • C
              caver01 @caver01
              last edited by 18 Apr 2017, 19:39

              @caver01 What emulator are you using? With MAME, you can usually configure the ROM's DIP switch for Cocktail Mode so it will actually FLIP the image for player 2. Using this, I don't ever need to use any mirroring. Of course, this is exclusive to arcade games.

              My 4-player cocktail style cabinet built as a custom "roadcase"

              1 Reply Last reply Reply Quote 0
              • C
                chirpy
                last edited by 18 Apr 2017, 19:43

                I have looked at this option using mame2010. But i've been searching for a more 'universal' option for not just arcade games.
                It'd be great for the function to go mirrored on everything from metal slug to nes games. :-)

                C 1 Reply Last reply 18 Apr 2017, 20:01 Reply Quote 0
                • C
                  caver01 @chirpy
                  last edited by caver01 18 Apr 2017, 20:01

                  @chirpy Understood. What about deploying your shader (I assume via retroarch.cfg files), but then adding a line in the config to rotate it back? The configs could be per-rom, so you aren't changing it on the fly, but a custom config per game.

                  My 4-player cocktail style cabinet built as a custom "roadcase"

                  1 Reply Last reply Reply Quote 0
                  • C
                    chirpy
                    last edited by 18 Apr 2017, 20:30

                    Sounds interesting. What would the correct 'line in the config' be?

                    C 1 Reply Last reply 18 Apr 2017, 22:30 Reply Quote 0
                    • C
                      caver01 @chirpy
                      last edited by 18 Apr 2017, 22:30

                      @chirpy

                      # Forces a certain rotation of the screen.
                      # The rotation is added to rotations which the libretro core sets (see video_allow_rotate).
                      # The angle is <value> * 90 degrees counter-clockwise.
                      
                      video_rotation = 0
                      

                      So, basically you set the value of this line to 1, 2 or 3, and with a little trial and error, you can get the rotation the way you need.

                      My 4-player cocktail style cabinet built as a custom "roadcase"

                      1 Reply Last reply Reply Quote 0
                      • C
                        chirpy
                        last edited by 18 Apr 2017, 22:55

                        It didnt work. The rotation command did work. but it rotated both shaders, meaning 1 of them were always pointing to the side.
                        Is there any command to refer directly to a shader?

                        C 1 Reply Last reply 19 Apr 2017, 06:48 Reply Quote 0
                        • C
                          caver01 @chirpy
                          last edited by 19 Apr 2017, 06:48

                          @chirpy probably within the shader. Sorry. You will have to learn OpenGL shader code I think. There are resources online (I searched for them once) but it is beyond my abilities. It may be worth asking on retroarch/libretro forums. It's not really a RetroPie thing.

                          My 4-player cocktail style cabinet built as a custom "roadcase"

                          1 Reply Last reply Reply Quote 0
                          • C
                            chirpy
                            last edited by 19 Apr 2017, 12:00

                            Fair enough, i'll give that a try. If i get any solutions i'll be sure to post back here anyway.
                            Thanks for your time.

                            1 Reply Last reply Reply Quote 0
                            • T
                              Thought
                              last edited by 1 Jul 2017, 02:13

                              Any luck? Also, (I'm new to RetroPie) what are the steps you took to get the cocktail shader? I've been looking around, but have yet to figure out how to find it, let alone get it running. Help?

                              1 Reply Last reply Reply Quote 0
                              • First post
                                Last post

                              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.

                                This community forum collects and processes your personal information.
                                consent.not_received