Input needed: ES theming improvements
-
@Zigurana I guess he means more of a drag n drop theme creator
-
No, not even a drag and drop theme creator, just a more robust template engine. Right now, you basically just have to select the elements that you want to display and where, with no way to customize them.
What would be nice, is, say for example, you wanted to be able to style the game list in each menu separately, all the way down to the game title level. For example, instead of just saying this menu is a 'fan', 'carousel', 'coverflow', etc, you have the ability to, using loops or whatever, cycle through each game in the list, or each menu as a whole separately, and style it however you want, using whatever animations you want.
Something like this for example in a template file:
if (%gameList)
// style for entire game menu
for (%gameList as %game)
// Individual style for each game in the game list
endfor
endifAnd when I spoke to Aloshi, it was before 2015. He was just starting work on GridView from what I remember.
-
@mattrixk
Twig and Blade are Very powerful HTML templating engines. I understand that EmulationStation isn't HTML, but the concepts are still very similar, and it doesn't even need to be as powerful, just more powerful. I may be be wrong now as it's been over a year since I've looked at the themeing for ES, but last time I looked at it, it was very limited what you could do, and it basically meant that all themes looked the same layout wise, they just had different colors and backgrounds. To me, that's a skin not a template, as a template allows you to completely customize the look and feel.For example, the game list in the systems view. It was very generic, and could only look one way, with only the background and text color allowed to be changed. In a templating engine, you'd be allowed to change the font, color, overlay, even animations etc of each individual game in the list, not just the entire list as a whole, as well as potentially position each game in the list in a different position. It would allow for extreme flexibility in each template or system view.
With an engine, you wouldn't have to worry about a developer making a custom 'view' like the grid view, for example, as the theme designer/developer would be styling how it looks, and how it's presented on the screen. The software developer would just need to provide the tools to interpret what the designer used.
-
It sounds like you want EmulationStation to be more like AttractMode. But given that AM also can run on retropie (in the experiemental packages if I'm not mistaken) then there isnt much of a reason to over complicate ES. Best to keep it elegant and simple IMO.
-
@Capeman I wish AttractMode had its own controller setup option. So once you built it, you didn't have to start EmulationStation first to setup your controller before switching to AttractMode.
-
@Capeman From what I have read, AttractMode is reliant on ES, or has some requirements for it that you setup in ES and use in AttractMode, so no, that doesn't really help. It would be nice for the more advanced system to have the more advanced features.
-
@masteryoer the way it is integrated yes it assumes a basic config from ES I think- feel free to correct me if im wrong. but if you are just running attract mode standalone ES is not a requirement (would you really expect people on PC to download ES just to run attract mode?)
Anyway the automatic integration with retropie through the experimental menu is still preliminary/experimental, and I don't know if controller hooks are implemented for generating RetroArch configs, that may still need to be done manually But you shouldn't HAVE to use ES to use your controller, as I'm sure attract mode has a function for it somehow.
-
Just to Update: The PR for System Carousel theming got accepted!
-
-
@lilbud Ha! That used to be my ringtone! But 15 minutes of it? Damn!
-
-
@Zigurana I'm stealing that idea.
-
Could someone give me a working example of the code? There's quite a few different examples in this thread and I haven't gotten one to work yet :(
-
The theme documentation on github has been updated with the details.
https://github.com/jrassa/EmulationStation/blob/master/THEMES.md#carousel
Here is working example:
<feature supported="carousel"> <view name="system"> <carousel name="systemcarousel"> <type>horizontal</type> <pos>0 0.42</pos> <size>1 0.2325</size> <color>ffffff</color> <logoScale>1.5</logoScale> <logoSize>0.125 0.155</logoSize> <maxLogoCount>5</maxLogoCount> </carousel> <text name="systemInfo"> <backgroundColor>dddddd00</backgroundColor> <color>000000ff</color> <fontPath></fontPath> <fontSize>0.035</fontSize> </text> </view> </feature>
I also just released an updated build for windows to GitHub.
https://retropie.org.uk/forum/topic/9094/updated-emulationstation-for-windows/
-
@robertybob This file i've been using in a theme called dev. This was basically pixel, but with all references to pixel.xml changed into dev.xml. (You could also rename this one file into pixel.xml).
Inside you'll find two variations (one commented out) of the horizontal and vertical carousel respectively.
Let me know how you fare!
-
@Zigurana pixel has a non-modifying clause: https://github.com/ehettervik/es-theme-pixel
i think releasing even an example might be unfair really.
-
@dankcushions I can't speak for @Rookervik, but I believe that he was mostly concerned with derivative themes using his artwork. Since this is only an xml file and intended as an example of how to modify a theme to use this new feature, I would like to think that he would be OK with it.
-
@jdrassa sorry for the question, I haven't been following the threads for the carousel modifications and just came across it now. I tried to scroll through related threads and there is a lot of info, but I am unclear on this update. Is there an ES update for raspberry pi that is coming out that allows the carousel settings to be applied to the theme .xml? Or will it work on my current install? I see there is an update of ES for windows. Thanks
-
@TMNTturtlguy The carousel modifications just landed today in the RetroPie repository. You can use RetroPie-Setup to update your pi. You may need to use the "update from source" option, I am not sure how often they update the binary. I pushed out the updated Windows build and posted about it since many of the theme developers use it while working on their themes.
-
Thanks guys, works great!!
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.