Main > Driving & Racing Cabinets

What would you guys want in a Racing Cab FE?

<< < (5/14) > >>

BadMouth:
In all honesty, I wouldn't put much time into this right now.  Let people create the artwork first.

If I had unlimited time, I would like to create a list of all the arcade driving games that it's possible to run and ensure that there are good snapshots, marquees (even if not original) and videos for all of them.  A lot of the videos out there are pretty bad.  The cars are twitchy because the person recording them originally was playing with a keyboard.  I have no such time though, nor a PC powerful enough to do the video capture.  I bought a video capture card with s-vid in for the purpose of making new gameplay vids for the old cab, but I'm not sure people would be happy with the 4:3 format or the quality.

Howard_Casto:
Well it's purely for personal reasons.  If I can ever get my head straightened up (ugh.... wisdom teeth get pulled at the end of the month so I'm miserable until then) I've got to cut the metal beams that'll hold my dash box and then my rig is in a playable state.  I need something to put on there.  DK is too outdated, hyperspin is a pain in the butt, ect....

So I just want to release something that works and then you guys can have at it. I can add in the other features later. I did all the logos for my pacman cab over the course of a week or so.... I think there were around 100 of those. 

The main reason I was fooling with vids was to see what works.  Mp4 decidedly does NOT work.  I looked into it and most people working in directX have run into similar issues.  I think the reason it's being used is because hyperspin is flash based and flash has all these nice little functions that let you interface videos to it.  I believe that I can create a custom socket to make it work, but in all honesty it's not a good format to be working in to begin with.  The only benefit you get out of a mp4 container is a small frame size. 

Just for the record a png series (rip from mng) takes up around 4.3 megs for around 18 second of video.  So that's about 14.33 megs for a minute loop, not counting the audio of course (which we can compress to mp3 or ogg).  So it's pretty large file size wize, but considering the relatively small gamelist I don't think it would be an issue.  Let's say you have 300 games on your cab ... that's 4.5 gigs. 

You can see how nice png series works in the pacfe vid I posted.  The load is instant, there's no loss in frames and no slowdowns.  That's because any video card made in the last 10 years can load a single texture under 512x512 in a millisecond or two.  On the other hand, rendering a video, grabbing a frame and converting a frame to an image that can be loaded as a texture, that takes some time. 

I just realize how much a pain in the butt making videos would be.  So unless someone has a command-line mp4 2 png/mng tool that we could use for batch conversion, it would be impractical for a FE I'm intentionally trying to make easy to set up.   

I used to do intro videos for 3darcade back in the day btw.... it was a colossal pain in the butt so I can understand why every vid isn't great.  That being said we always took special care to make sure each vid was a tight attract mode loop... I don't think they do that anymore. 


It would be nice if mame had at start/stop option for writemng.  It doesn't really effect performance in the game so if I had that I could just automatically record the first 3 minutes or so of vid when a game launches without a video.  When you came back the extraction batch could run in the background and in a minute or two you'd have a vid. 

Howard_Casto:
Eh I did a couple of MNGs just to test (it's been a few years).



Turns out, since I did it you can start/stop recording via shift+f12.... so it isn't as difficult to do a good loop. 

As you can see, the png sequences play nice and smooth. 

What kind of dumbstruck me though was the file size difference.  Pole Position and it's sequel are 8 bit games.  When I extract the pngs I convert them to 8 bit and remove the alpha channel.  The resulting minute or so of animation is around 13 megs... not bad.  Crus'n on the other hand... it's minute and a half attract sequence was 283 megs!  I guess the splitter can't compress it as well because it's 3d and full color. 

BadMouth:
I'm feeling the urge to do another skin, or at least a mockup of one.

What size and file type is the background?
Can we make the selected game larger than the outside ones?


Is there a standardized size and format for each thing that makes the most sense?  (also asking everyone else's opinion)
No sense in creating things larger than they need to be.

For the marquees, I would like to start with a template and create new marquees that are all the same size.

A 640x480  video is still pretty good size on a 1080 screen.
Actual video on top with sound would be best IMO.  No need for it to be layered underneath anything.
Most of these games as well as the console games were 4:3 format, so maybe we're better off having 4:3 vids anyway.
I don't like the attract modes.  I want video that captures what the gameplay is really like.

For the snapshots I'm thinking either the first frame of the video so they just look paused when not highlighted.

Howard_Casto:
How big of a texture you want to use is really dependent upon  your video card and how well it uses large textures.  That being said, I measure the size a texture will be displayed and scale it as I load it, so aside from a long load time (unlikely) there's no drawback to using 1080p as a base. PNGs are the preferred image format... 24 bit color, lossless and an alpha channel available so you only have to make them once. 

Now as for snaps and stuff, they are loaded on the fly as you scroll through the list, so making them 1080p probably isn't a good idea considering most arcade games are only 240p anyway.  Again, how well your video card loads textures will vastly effect the performance on loading.  Most modern cards advertise that they can handle 1024x1024 pretty well... in practice 512x512 is a safer bet.  That being said, for created artwork, as big as possible is preferred.  Afterall we can shrink it, but making it larger would require re-doing it.   

Maybe a brief explanation of how the FE works is in order.  Again, I've been at this for a while so I've realized that giving a resolution change option for a FE is pointless.  It was useful back in the day because emulators were poorly written and didn't always return you to the desktop resolution... but now this isn't a problem.  That being said each skin still has resolution entries for setting the resolution of the skin itself.  Like the Pac-FE vid I posted... that was captured on my pc with a horizontal monitor, but I set the resolution to 768x1024 so that it wouldn't look distorted.... I just get black bars on either side.  Long story short, if you want to do a 4:3 skin or a 16:9 it doesn't matter... it will be displayed the same on any monitor. 

Anyway, since I doubt I'll ever fully document this FE, let me just post a skin file and explain it a little:

-----------------------------------------------------
background|0|0|100|100|5|100|100,100,100
logo|3.5|0.3|93.4|9.4|5|100|100,100,100
infoart|0|0|100|100|5|100|100,100,100
list1|-31.75|34.4|28.1|39.4|5|100|100,100,100
list2|2.1|34.4|28.1|39.4|5|100|100,100,100
list4|70.3|34.4|28.1|39.4|5|100|100,100,100
list5|104.15|34.4|28.1|39.4|5|100|100,100,100
list3|35.95|34.4|28.1|39.4|5|100|100,100,100
mlist|0|5|150|150|5|100|100,100,100
cursor|0|0|105|105|5|100|100,100,100
snap|28.8|18.5|42.7|20|5|100|100,100,100
overlay|0|0|100|100|5|100|100,100,100
listeffect|2|30
booteffect|2|2
snappath|\list\
logopath|\logo\
gamelistpath|c:\mame\snap\
animationtime|66
musicvolume|100
loopgamelist|0
streamsnap|0
streambackground|0
streamoverlay|0
streamlogo|0
streamlist|1
streamskip|1
---------------------------------------------------------------------

The format is pretty basic... each element has a few options, x, y, width, height, blend mode (color keyed, solid, alpha channel, ect), alpha value and rgb color tint values.  Numbers are in percentage of the screen.  In photoshop you can turn on the info window, set it to show percentage and then as you move the cursor around your background image you can get the x/y percent and if you make a box with the selection tool it'll show the width and height of the selection in percent.  So yeah, I use photoshop to write the skin files.  ;)  The zorder is determined by the order of the skin file.  Stuff at the top are in the back of the screen, while stuff at the bottom are in front. 

As you can see, each list element has it's own sizing options, so yes, you can size them all differently.  You'll notice there are 5 list elements in the skin even though only three are shown.  This is so you have a image off-screen on either side to scroll in as the list scroll kicks in.  Also note "mlist" and cursor.  Mlist replaces the middle list element when you aren't moving.  So while scrolling all elements should be uniform size (looks better) but as so as you stop it can zoom in or what have you.  Also the cursor (image around the middle list element) disappears while scrolling.... I might change that one. 

List and boot effect are just some very basic special effects you can use when moving to another list or up bootup/return from the emulator.  I think I've got fades and horizontal/vertical scrolls implemented.  Fade looks best for booting while the scroll outs look good when changing lists. 

The path stuff is so you can use different elements with any image you choose... traditionally I would put that stuff in the main settings file but I actually find it more flexible this way as different skins can use different image paths.  I probably need to add a few more elements btw.  For Pac-FE I didn't need a lot, but for this I can see needing at least one more element. 

I think music volume and loop game list are pretty self-explanatory.

All the stream stuff just means enabling animation for that element.  *EDIT*  Oops!  it's been a while since I wrote this code.  ALL elements have animations turned on all the time, but if you turn on the "stream" setting, the animation is loaded a frame at a time on the fly, instead of all at once.  Since a split mng could have thousands of frames, this is a good thing. ;) *EDIT*  Animation time is just a global setting to default all the animations to.  Here it's set to one frame every 66 milliseconds, or roughly 30 fps.  That can be over-ridden via a "settings.txt" in a animation's folder though. 

Streamskip is frame skipping for the animations only.  A setting of 1 means render every frame... 2 would mean every second frame, ect... it's similar to mame.  So if your vid card can't handle loading the videos at 60fps not to worry, you can easily change it to 30fps or even 15fps and it should still look good.  For the record, Pac-FE is on an old P4 in my pacman cab (without a video card) and it can handle 30fps... so as long as you have something decent, you should be ok. 

*EDIT2*

I should also mention that each list can have custom images.  You'll see that in the PAC-FE video.  It's simple stuff... each gamelist is named with a number (gamelist1.txt ect)  If you name your image with that number at the end, it'll load for that list.  So overlay.png loads for all lists... overlay1.png only loads for list #1, ect...  Works for animations as well. 

I decided against full-blown custom skins for each list though... it takes a while to load and is visually confusing.  Color coding like I did with the my pacman cab totally makes sense though.  It lets you know you are on a different list, while at the same time everything is in the same place so you aren't confused while navigating. 

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version