Input needed: ES theming improvements
-
After i've managed it to get this on my Pi, i did some testing over the past few days. I can't spot any massive Bugs but there are two small things i noticed.
1: It has to be
<text name = "systemInfo">
Whereas every other tag doesn't need to have the spaces before and after the equal sign.
2: It has to be<view name="system"> <image name="background_image" extra="true">
Maybe it needs to be an extra image, but i would prefer it if i could simplify my theme by using something like this:
<view name="system"> <image name="background_image" extra="true"> <path>./_inc/system.png</path> </image> <view name="system, basic, detailed, video"> <image name="background"> <path>./_inc/background.png</path> <origin>0 0</origin> <pos>0 0</pos> <size>1 1</size> </image> </system
instead of:
<view name="system"> <image name="background_image" extra="true"> <path>./_inc/system.png</path> <origin>0 0</origin> <pos>0 0</pos> <size>1 1</size> </image> </system> <view name="system, basic, detailed, video"> <image name="background"> <path>./_inc/background.png</path> <origin>0 0</origin> <pos>0 0</pos> <size>1 1</size> </image> </system
But maybe that's not possible, i just wanted to mention it. Great work anyways!
-
Hi
I'm really impressive and happy that you add this feature to ES :D
So cool, we can now make a skin like we want ;)For my part i will adapt my xBox Skin to Pi with your new Carrousel option <3
It take me many month of my life to release it with my little hands, Cyberlink Power Director and Photoshop :)
And all in 1080p full HD !It is an old preview and i don't know why Youtube remove my last one two years ago ...
My last version share by a fan :
But i have two request please to help me to release :
- Can you update the ES Theme Wiki or post some where all the new XML we can use to do it ?
Like i know some one add the VIDEO MAXSIZE and not document it in the wiki :(
https://github.com/retropie/retropie-setup/wiki/Creating-Your-Own-EmulationStation-Theme
- Can you add the video support to the SYSTEM SELECT SCREEN ?
Because like you can see on my skin i use it and it is really better i think :)
Thanks a lot
- Can you update the ES Theme Wiki or post some where all the new XML we can use to do it ?
-
@darknior said in Input needed: ES theming improvements:
Can you update the ES Theme Wiki or post some where all the new XML we can use to do it ?
Like i know some one add the VIDEO MAXSIZE and not document it in the wiki :(Once the Carousel Mod has been accepted into RetroPie Core, then I can add it to the Theme Wiki. I'll also add the Video Preview stuff when I get the chance. I'm not sure if <maxSize> is part of Core yet or not though.
-
@mattrixk <maxSize> for video was accepted yesterday and should be included if you update from source.
FYI, I did update the theme documentation within EmulationStation with details for the video element and video view. The pull request for the carousel will include corresponding updates as well.
https://github.com/RetroPie/EmulationStation/blob/master/THEMES.md
-
@mattrixk @jdrassa Thanks guys you are the best :)
I see it this afternoon for MAXSIZE ;)
https://github.com/RetroPie/EmulationStation/pull/104 -
@jdrassa Great news about <maxSize>. Unfortunately I'm still using Fieldofcow's older Windows build of ES, so it won't have <maxSize> available. If anyone wants to build a fresh Windows ES with all the new features I wouldn't mind.
-
@mattrixk +1 for that.
-
@mattrixk @Nismo I have been trying to setup a CI build for Windows using appveyor.com, but I am still working through some issues. Not sure if I will get it working, but I am hopeful.
-
@jdrassa said in Input needed: ES theming improvements:
but I am hopeful.
So are we :D
Not to mention appreciative!
-
Um, have there been any major changes been made? I had to rebuild it from source today and it doesn't work anymore on my Pi.
Edit: Nvm, build it again, rebooted and it works again.
-
Perhaps the most useful feature would be an actual templating engine. For example, like twig or blade. One where each window, dialogue box, system can be themed completely independent of each other.
I emailed the original es author and asked about working with him on it, but didn't really get a positive response.
Would be nice to set up individual templates that are easily created or modified (for example an HTML file), with placeholders for all of the data you want to place %gamesList% for example. Then you could position the elements anywhere on the screen, any way you wanted to, and would provide a vast increase in possibilities for theming.
-
@masteryoer Sorry mate, but I'm having trouble seeing how what you've suggested is really any different from how theme making is currently done.
Also, what are twig and blade?
-
@masteryoer said in Input needed: ES theming improvements:
Perhaps the most useful feature would be an actual templating engine. For example, like twig or blade. One where each window, dialogue box, system can be themed completely independent of each other.
I emailed the original es author and asked about working with him on it, but didn't really get a positive response.
That is not surprising, as Aloshi has not contributed to ES since March 2015.
Would be nice to set up individual templates that are easily created or modified (for example an HTML file), with placeholders for all of the data you want to place %gamesList% for example. Then you could position the elements anywhere on the screen, any way you wanted to, and would provide a vast increase in possibilities for theming.
Can you be more specific as to the elements you would want to be able to place/position/theme, but are unable to now?
-
@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.
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.