SVG format for EmulationStation
-
@mattrixk best way to check is to test it out. the way the svg is drawn may potentially affect it from what @Rookervik alluded to but I'm really not sure, it takes vram to display on the screen either way, though I've found that forcing a lower resolution helps with that but I havent done extensive testing to know one way or the other.
-
@herb_fargus Okay, thanks. I don't know anything about vram (how it works, what it does, what it is etc), but from what I've gathered, the smaller the image, the fewer resources it uses, which makes sense.
Also, that you can load an image and no matter how big you scale it, it uses the same amount of resources, so you can use a tiny image and scale it up, but then it would be pixelated, which works fine for the Pixel themes, or blurry images, but not so much if you want crystal clear images.
-
Yeah, that's pretty much correct. Smaller images take smaller resources.
The thing you have to remember is that SVGs scale indefinitely. They're vector, not bitmap. So a PNG and a SVG, displayed at the exact same size on screen, will take up exactly the same VRAM. It's when you start stretching the PNG larger than full size that you start seeing performance boosts. No matter how far you scale that PNG (and how bad it looks doing so) it will always take the same VRAM. Whatever size a SVG is displayed at is what VRAM it's going to use.
if you take a 1kb SVG and stretch it to a full 1920x1080, it will take the same VRAM as a full size uncompressed 1080p PNG. Even though the size of the SVG was very small. But if you take a 1kb PNG that's normally 8x8 pixels and stretch it to full screen, it doesn't take any more VRAM than it did at 8x8. That's the difference between bitmap graphics (png), and vector graphics (svg).
From what I've seen, PNGs are a lot lighter on system resources than SVGs. It shouldn't really matter once those pictures are loaded into VRAM - from there the graphics does the work... but it sure seems SVGs lag the system more than PNG.
-
Thanks @Rookervik. That was really well explained.
So it basically boils down to personal choice and experimentation, but png/jpg are better for some uses and svg is better for others.
-
The only benefit for SVG is that is scales indefinitely. Sometimes you can get some nice small file sizes if the vector is fairly simple. So, in 30 years when we're all using 16k TVs and still using EmulationStation, Carbon will still look sharp. Even though... the Pi can't handle a screen that big, nor does it have enough VRAM to display a SVG of that size. Hehehe. So I guess Carbon will be broken at that size, but Pixel will still be cranking. :D
-
@Rookervik Ahh, but in 30 years we'll be using a Pi 5, or maybe even 6. They may have even worked out perfect N64 and Dreamcast emulation by then.
-
@mattrixk Hahaha, perfect n64 emulation. That's a laugh. Not even in 30 years. :D Isn't Pi finished? Can't we have something other than this graphics chip? LOL. I don't even think Broadcom knows how to use it.
-
@Rookervik well they are definitely going to need a new chip if they want to support more than 1 GB of RAM. They are sort of getting opengl working but I'm sure there is much room for improvement on that front.
-
@herb_fargus OpenGL would make the linux desktop environment completely usable, wouldn't it? I'd be really excited for that. Probably get us an awesomely accelerated Quake 1 and maybe even Quake 2. Throw several 3D emulators into the 60fps range with HD resolutions. Ahh dreams...
-
@mattrixk In general main reason for using vector image formats, like SVG, is that
image is resolution independent = image is always sharp whatever screen (or print) resolution/size you use. File size is also usually smaller than equivalent bitmap image.
Due to their nature vectors are mostly used for graphic images/logos; they are not suitable for pictures. -
@UDb23 Well, it makes sense when you put it that way :D
-
@Riverstorm All mame version specific logos basically ready.
I did some additional testing on ES's svg support. As I imagined ES does not support 'advanced' svg functions like blurring; this means gradients and shadows are quite difficult to create.
It makes sense of course as ES is not supposed to be a graphic editor and probably, even if supported, they would slow down rendering of the ES menu.Also checked official logo on the FBA website; it's quite different that the fba logo provided as standard in ES. The current official bitmap logo uses textures that cannot be recreated easily.
Still tried to make a 'simplified' svg version; result so far is this:
Size of the file is bigger than usual system logos in ES but it is rendered correctly with no noticeable delay in displaying the menu ( on Pi3).Will upload the new mame system logos tomorrow.
-
@UDb23 said in SVG format for EmulationStation:
Also checked official logo on the FBA website; it's quite different that the fba logo provided as standard in ES. The current official bitmap logo uses textures that cannot be recreated easily. Still tried to make a 'simplified' svg version.
I think it looks great! After looking at the official logo a few times back and forth I prefer the one you made. It's a fun logo. I do like the glowing bloom effect on the stars/bursts of the original but I think it would throw off the nice clean look. I am a fan of drop shadows but yours looks sharper and just seems to fit the whole scheme better with the other logos but still pays homage to the original. I do like the color palette used too. :)
-
@Riverstorm New Logo pack is available for download -> updated link in post below.
It also includes VIC-20 logo (Fixed colors of the SVG I found with google + added separate german VC-20 version).
FInal burn alpha's finalized new logo is this:
In the ES menu it actually looks much better than here ;-)The pack includes both new and standard FBA logo (the one provided with ES) and their variations.
The standard logo has been optimized as it included some duplicate objects.I'm not fully satisfied with the Mame4all logo as due to its height it results in a quite small logo in ES menu. Suggestions & feedback welcome.
-
@UDb23 I tried to grab your download pack with the new FBA logo but the page displays an invalid link. I have the original pack from the same link or has it changed?
-
@Riverstorm its a new link. it works for me. Just tested.
-
@UDb23 said in SVG format for EmulationStation:
@Riverstorm its a new link. it works for me. Just tested.
Sorry I posted at the same minute. The new link works fine.
I was just perusing Google images to see what others were doing. Well I found two and your new logo is one of them. ;) I completely shooting in the dark but what about running it more horizontal then. Something like "mame 4 all" and keep the Libretro similar to the 2003 and 2010 logo in the upper left that way Libretro cores have a visual consistency. I just don't know what a person could do with the "Multiple Arcade Machine Emulator" text below so it's balanced underneath.
-
@Riverstorm horizontal is a good suggestion, will check. The text "multiple..." is part of the official mame logo so it must be kept.
Concerning lr-mame2003 and lr-mame2010 sharing the same folder, as you probably know, you do can create separate folders and create dedicated systems in the es_systems.cfg file, changing the path to the new specific ROM folder for the system you added. Same for Mame4all or any other new system.
That's what I did for the Vic-20 System as in standard ES it shares the same folder with commodore 64. -
@UDb23 said in SVG format for EmulationStation:
@Riverstorm The text "multiple..." is part of the official mame logo so it must be kept.
I thought about that at lunch. This is where that good artistic eye comes in to play on how to get that uniform-ish height but still have a professional polish across Libretro cores. I see a lot of times iTunes apps have the company "brand" in the corner of the app icon which makes it easy to identify.
Concerning lr-mame2003 and lr-mame2010 sharing the same folder, as you probably know, you do can create separate folders and create dedicated systems in the es_systems.cfg file, changing the path to the new specific ROM folder for the system you added. Same for Mame4all or any other new system.
I like this idea but keep throwing it to the side but I do have a bunch of onesie-twosie's that only seem to work in one emulator or the other. I was reading in another thread and I think Buzz is going to be adding another MAME emulator (newer ROM set) soon.
Do you think it would be helpful to have the install instructions in the archive even though they could be used for many different applications. Oh and you haven't given yourself credit for the work in the readme.txt. I always read that boring stuff at the end like revisions, credits, etc. ;)
-
@Riverstorm Horizontal Mame4all logos added. As suggested also included instructions and, minimal, boring stuff :-)
New download link: see post at bottom
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.