RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login

    Game List Z-index fun

    Scheduled Pinned Locked Moved Projects and Themes
    themetechniqueselectorz-indexgamelist
    41 Posts 13 Posters 15.2k 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.
    • FlyingTomahawkF
      FlyingTomahawk
      last edited by

      Is there a video of this? Would love to see this in action, especially when reaching the end of the gamelist.

      mattrixkM 1 Reply Last reply Reply Quote 1
      • mattrixkM
        mattrixk @FlyingTomahawk
        last edited by

        @FlyingTomahawk I was thinking the same thing. I'd also like to see an example of the theme.xml as I'm having trouble wrapping my head around it.

        @RWM79 I too would like to know how @ruckage got the border on the marquee, but I wouldn't put it passed them to have done each one by hand.

        @ruckage This theme looks awesome!

        My ES themes: MetaPixel | Spare | Io | Indent

        FlyingTomahawkF 1 Reply Last reply Reply Quote 1
        • HexH
          Hex
          last edited by Hex

          @ruckage Can you show some of the limitations that are broken due to Z-index feature. I am sure that some of us and I dont understand what this is and what is it making possible.

          Sent from 20,000 leagues under the sea.

          Powersaver Emulation station : https://github.com/hex007/EmulationStation
          ES dev script : https://github.com/hex007/es-dev/blob/master/es-tests.sh

          S 1 Reply Last reply Reply Quote 0
          • S
            Syhles @Hex
            last edited by

            @Hex
            I know this wasn't directed at mean but what are you asking exactly? I understand that your asking how this is being done but I'm kind of lost with the broken comment. Also I apologise if this seems rude.

            1 Reply Last reply Reply Quote 0
            • HexH
              Hex
              last edited by Hex

              @Syhles I am looking for things not possible before this was implemented or how it made themes easier, by comparison.

              Also it was supposed to be "limitations broken" and not "limitations not broken", I apologise for that.

              Sent from 20,000 leagues under the sea.

              Powersaver Emulation station : https://github.com/hex007/EmulationStation
              ES dev script : https://github.com/hex007/es-dev/blob/master/es-tests.sh

              S 1 Reply Last reply Reply Quote 1
              • FlyingTomahawkF
                FlyingTomahawk @mattrixk
                last edited by FlyingTomahawk

                @mattrixk

                About the marquee border, my guess is he edited each marquee image.
                Regarding that select bar, just load it as image, position it over the gamelist and make sure the z-index is lower than the gamelist.
                The select bar is static and won't move.

                1 Reply Last reply Reply Quote 2
                • S
                  Syhles @Hex
                  last edited by Syhles

                  @Hex
                  We used to need to theme around how things were layered (or drawn) on screen, we weren't able to choose how low or high an object was layered (it's z-index).

                  This is purely speculation on my part until @ruckage tells me if I'm wrong or right.

                  These examples seem to be done by setting the overlay to a higher z-index then the gamelist, and it's an overlay specifically for the selector bar, that has been specifically made to match up with the gamelist boxes background and fit perfectly over each place a games name can be seen in the gamelist.

                  Think of the z-index like you're​ looking down on a pizza. The order it is on the z-index determines it's height (sort of).

                  Say this is how a pizza normally is (each number is a Z-index)

                  1. Dough or crust
                  2. Sauce
                  3. Cheese
                  4. Pepperoni​

                  In this order you see the edges of the crust, the sauce may poke through in certain areas, the rest is cheese, and on top there's pepperonis covering part of the cheese from view.

                  Now let's say we changed the order of our pizza layers (our z-index)

                  1. Dough or crust
                  2. Sauce
                  3. Pepperoni
                  4. Cheese

                  Now when we look down on the pizza we can still see the crust at the edges, the sauce is still poking through the cheese here and there, now the pepperonis are covered from view from the most part, and the top layer is entirely cheese.

                  I'm not entirely sure of all the applications we can use the z-index for it's something for the themers to experiment and get inventive with.

                  Like @ruckage did with this selector bar. I didn't think of using the z-index like this and I completely understand what the z-indexs purpose was.

                  Sorry for derailing your thread @ruckage
                  and hoped this helped @Hex

                  Also sorry for the wall of text I'm long-winded and over explain.

                  Z 1 Reply Last reply Reply Quote 2
                  • Z
                    Zigurana @Syhles
                    last edited by

                    @Syhles
                    </waits patiently for @TMNTturtlguy to make a suitable pizza-pie reference...>

                    If tetris has thought me anything, it's that errors pile up and that accomplishments dissappear.

                    S lilbudL TMNTturtlguyT 3 Replies Last reply Reply Quote 3
                    • S
                      Syhles @Zigurana
                      last edited by

                      @Zigurana
                      As someone who understands ES way better then I do was my explanation on the z-index correct?

                      Z 1 Reply Last reply Reply Quote 0
                      • Z
                        Zigurana @Syhles
                        last edited by

                        @Syhles Sure, I think it makes sense like that.
                        Looking at it from a procedural point of view:
                        ES will render the elements ranked by their z-index, starting with the lowest value (i.e. 0 for background images), and elements with higher z-values can blot out elements with lower z-indexes when they overlap on the screen.
                        See also here.

                        If tetris has thought me anything, it's that errors pile up and that accomplishments dissappear.

                        1 Reply Last reply Reply Quote 2
                        • ruckageR
                          ruckage
                          last edited by

                          Wow, didn't expect to wake up to this many replies. I'll be back shortly to answer your questions and show a video of it action.

                          SNES mini/Nes mini/Famicom mini theme developer.

                          If you'd like to support my work you can donate here: Donate

                          FlyingTomahawkF 1 Reply Last reply Reply Quote 2
                          • FlyingTomahawkF
                            FlyingTomahawk @ruckage
                            last edited by FlyingTomahawk

                            @ruckage

                            You never cease to amaze us.
                            Looking really forward to that video.

                            1 Reply Last reply Reply Quote 0
                            • lilbudL
                              lilbud @Zigurana
                              last edited by

                              @Zigurana I got it
                              alt text

                              1 Reply Last reply Reply Quote 3
                              • TMNTturtlguyT
                                TMNTturtlguy @Zigurana
                                last edited by

                                @Zigurana said in Game List Z-index fun:

                                @Syhles
                                </waits patiently for @TMNTturtlguy to make a suitable pizza-pie reference...>

                                Sorry! I was actually sleeping for a few hours or I would have been on it for sure! Now I am trying to get the kids to daycare! It isn't easy being green. (Wait is the Kermit the frog.....ohhhhh well. I made a funny!)

                                lilbudL 1 Reply Last reply Reply Quote 2
                                • ruckageR
                                  ruckage
                                  last edited by

                                  Below is a video showing the gamelist working. It also shows it working with a patterned background (slightly more complicated but the same principle).

                                  @Syhles is correct, everything is layered. So the setup is you set the gamelist z-index to render at the back, next you have the overlay image rendering on top of that (z index higher than gamelist), and in my example the background renders above everything else (zindex higher than both the game-list and overlay.

                                  The actual overlay image in my first examples is a graphic designed to cover exactly a single line in the game-list, however I use the <tile>true</tile> tag to repeat it vertically 9 times.

                                  This works well if the background is a single colour but things get slightly more complicated if you have an image or pattern in the background. To make that work your overlay needs to be a duplicate of the backgound but with transparent areas for the game-list to show through.

                                  So first you would have your background:

                                  0_1496401398500_pattern_back.png

                                  Next the gamelist

                                  0_1496401839557_gamelist.png

                                  And on top of those your overlay (copy of background with alpha transparency.

                                  0_1496401496087_pattern1.png

                                  I hope that explains it better.

                                  The z-index is a really useful addition, so many possibilities. You may have noticed the preview screenshots have scanlines - that is also an overlay.

                                  Regarding the border around 'marquee images', they are all edited to have that as I wanted an outline on them for this particular theme.

                                  SNES mini/Nes mini/Famicom mini theme developer.

                                  If you'd like to support my work you can donate here: Donate

                                  1 Reply Last reply Reply Quote 4
                                  • lilbudL
                                    lilbud @TMNTturtlguy
                                    last edited by

                                    @TMNTturtlguy said in Game List Z-index fun:

                                    Kermit the frog

                                    0_1496402954142_a8445590-3c87-4e74-9f37-109e25f4ebff-image.png

                                    ruckageR 1 Reply Last reply Reply Quote 1
                                    • ruckageR
                                      ruckage @lilbud
                                      last edited by ruckage

                                      @lilbud
                                      I'm going to be an old grump now but would you mind not cluttering up the topic with pictures of Kermit the frog.

                                      SNES mini/Nes mini/Famicom mini theme developer.

                                      If you'd like to support my work you can donate here: Donate

                                      lilbudL 1 Reply Last reply Reply Quote 2
                                      • lilbudL
                                        lilbud @ruckage
                                        last edited by

                                        This post is deleted!
                                        1 Reply Last reply Reply Quote 0
                                        • S
                                          Syhles
                                          last edited by

                                          @ruckage
                                          Yay I was correct it seems.

                                          On a more serious note, it would be nice if you made a more in-depth step by step tutorial for this, I followed how to do this, also didn't think of the patterned background working that easily.

                                          Thanks for sharing how to do cool things.

                                          ruckageR 1 Reply Last reply Reply Quote 0
                                          • HexH
                                            Hex
                                            last edited by

                                            @ruckage Thanks for clearing that up. I am sure it is jusk like Andoid z index. The only difference is android draws shadows below to show z-index thus giving it an awesome feel

                                            Sent from 20,000 leagues under the sea.

                                            Powersaver Emulation station : https://github.com/hex007/EmulationStation
                                            ES dev script : https://github.com/hex007/es-dev/blob/master/es-tests.sh

                                            1 Reply Last reply Reply Quote 1
                                            • 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.