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

    How to change button icons? [DONE]

    Scheduled Pinned Locked Moved Projects and Themes
    themesretropieiconschange
    65 Posts 15 Posters 28.0k 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.
    • M
      masteryoer @jacobfk20
      last edited by masteryoer

      @jacobfk20

      Ahh, that explains a lot. I take it, if the older version doesnt support 32 or 64 bit, I won't be able to use that version on my windows machine? Or no?

      Thanks for the info.

      Hmm. I went all the way back to the earliest release he has available, 0.3 beta, here: https://github.com/HorstBaerbel/res2h/releases

      using the precompiled windows binary, and it's still doing it. At this point, I am not sure what's going on, or how to fix it. Perhaps it needs to be compiled and built on the raspberry pi?

      1 Reply Last reply Reply Quote 0
      • J
        jacobfk20
        last edited by

        @masteryoer You can! It'll work just fine :) That 32/64 bit update just allows the archive to be stored in something bigger than an 8 bit const char array.

        M 1 Reply Last reply Reply Quote 0
        • M
          masteryoer @jacobfk20
          last edited by

          @jacobfk20

          I am an idiot, completely. It's late and i've been looking at code all day. So the problem, it appears, is that if you dont remove everything from your 'converted' folder before you run it, it tries to convert that stuff too, and it makes duplicates with the 16/32 bit stuff in it.

          I deleted the entire folder and re-ran res2h, and it created the correct files, using the correct const unsigned char* like it's supposed to..

          now to test if it works.

          1 Reply Last reply Reply Quote 1
          • M
            masteryoer
            last edited by

            Okay, something is seriously wrong. That res2h application is not working, regardless of what you do. As soon as you change a resource and run the application to convert it, it breaks the entire source and it fails to compile. I've given up trying to figure out what's wrong with it.

            1 Reply Last reply Reply Quote 0
            • J
              jacobfk20
              last edited by

              @masteryoer Well, good on ya for trying. Send me the file you want converted and I'll see if I can get it for ya.

              M 1 Reply Last reply Reply Quote 0
              • M
                masteryoer @jacobfk20
                last edited by

                @jacobfk20

                There would be more than one of them, I am just trying to test out how it would look. I am not sure how I want the UI to look yet, so it would be nice to compile it myself as I go along and make changes. It looks like there's the option to NOT compile into the source, but I am not sure how to enable that.

                There are checks in the ResourcesUtil.cpp to see if the 'resources' were compiled in, and if not load them from the path.

                M 1 Reply Last reply Reply Quote 0
                • M
                  masteryoer @masteryoer
                  last edited by

                  @masteryoer if that's could be enabled somehow, I think it would make it a lot easier for me, as well as theme builders and modders, to include ES menu elements

                  1 Reply Last reply Reply Quote 0
                  • ohmycommodoreO
                    ohmycommodore
                    last edited by

                    Sure would be nice for the kids (and us old forgetful guys) to see a pic of the buttons we have to push :) Good idea, at least for those of us with PS controllers.

                    1 Reply Last reply Reply Quote 1
                    • J
                      jacobfk20
                      last edited by jacobfk20

                      @masteryoer Use the Beta release 0.3.2. It outputs the headers and source identical to the original ES resources. This is the exact command I used as well.
                      res2h resources converted -h Resources.h -u ResourceUtil.cpp -s
                      *This was done in windows.

                      It matched ES's original resource.h and resourceUtil.cpp exactly, though some files were in different orders.

                      M 1 Reply Last reply Reply Quote 0
                      • M
                        masteryoer @jacobfk20
                        last edited by

                        @jacobfk20

                        Okay, I will give that a try. Doesn't it compile for you?

                        1 Reply Last reply Reply Quote 0
                        • J
                          jacobfk20
                          last edited by

                          I Haven't gotten that far yet :)

                          M 1 Reply Last reply Reply Quote 0
                          • J
                            jacobfk20
                            last edited by

                            @masteryoer It compiled fine.
                            I replaced the resources.h and resourceUtil.cpp with the newly generated ones and replaced all converted images.

                            1 Reply Last reply Reply Quote 0
                            • M
                              masteryoer @jacobfk20
                              last edited by

                              @jacobfk20

                              I got it!! Thanks for the help! (using your command, but there's t ypo it should be ResourceUtil.cpp not ResourcesUtil.cpp), and disabling Thumbs.db in windows, I was able to get a working build with my new UI changes in it

                              Now I can continue to theme my xcade system :)

                              1 Reply Last reply Reply Quote 1
                              • J
                                jacobfk20
                                last edited by

                                @masteryoer Glad you were able to get it :)

                                So you used beta 0.3.2 right?

                                1 Reply Last reply Reply Quote 0
                                • M
                                  masteryoer
                                  last edited by

                                  Yes'sir. Now to dig deep into the bowls of the source code to find out where the font and select list highlight colors are changed at, as well as the background on the menu items. That's the next kicker!

                                  Thanks for the help!

                                  1 Reply Last reply Reply Quote 0
                                  • J
                                    jacobfk20
                                    last edited by

                                    Alright. I actually did a fork a while back that allows for more themeing of ES such as changing fonts, font color, window color, window background image and certain component properties. It allows for list color changing I think. /core/components/ComponentList.cpp Is a good start if you want to do your own thing. (I know my way around the source ;) )
                                    Here is a link to my fork that does the extra theme stuff (it's out dated)

                                    M 1 Reply Last reply Reply Quote 0
                                    • M
                                      masteryoer @jacobfk20
                                      last edited by

                                      @jacobfk20

                                      Yep that's exactly where I was looking. Looks like around line:

                                      	Renderer::drawRect(0.0f, mSelectorBarOffset, mSize.x(), selectedRowHeight, wTheme->highlight_color,
                                      		GL_ONE, GL_ONE);
                                      

                                      If I can find where wTheme->highlight_color is declared

                                      1 Reply Last reply Reply Quote 0
                                      • J
                                        jacobfk20
                                        last edited by

                                        wTheme is from my fork and not apart of the retropie fork. It assigns theme properties from an XML file.

                                        Renderer::drawRect(0.0f, mSelectorBarOffset, mSize.x(), selectedRowHeight, 0x777777FF, GL_ONE, GL_ONE);
                                        

                                        This is what you'll see in the main branch. You can just change 0x7777777 to whatever color you want.

                                        M 1 Reply Last reply Reply Quote 0
                                        • M
                                          masteryoer @jacobfk20
                                          last edited by

                                          @jacobfk20

                                          Yes'sir, I found it. I am working on it now :) Thanks for helping get this going for me. I hope to post screenshots up both the console and the UI/theme once I am finished with it.

                                          I am starting to get used to where everything is in the code, so hopefully I can figure the rest of the stuff out :)

                                          1 Reply Last reply Reply Quote 0
                                          • hansolo77H
                                            hansolo77
                                            last edited by

                                            Has any attempt or progress been made on including an option to change the button layout per user selection from within EmulationStation? I followed the thread a bit, and it looks like the OP was able to get it fixed by recompiling the binary with the changes. This would cause any future updates to revert back to the defaults. I really think it would help a lot of people out if we came up with a solution that allows users to pick their controller from within ES, and have the icons change accordingly. Probably on some form of "wish list" in the RetroPie Git, but I have no idea where to find that. :)

                                            Who's Scruffy Looking?

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