Jump to content
LaunchBox Community Forums

Mame GLSL vs HLSL


Lordmonkus

Recommended Posts

A few months ago when I got back into Mame after not really playing with it for a good many years I started reading about the HLSL and GLSL shaders and at that time GLSL was by far the superior shader. Lottes CRT was and still is amazing but there is one downside to using it. You need to set the normal Lottes for horizontal oriented games and the vertical version of the shader for the vertical oriented games. As you can guess this can be quite time consuming to go through your collection and set each game. Now obviosuly one way around this is to have 2 separate installs of Mame with each set for a the 2 different orientations but that gets messy. Now I said that GLSL was superior by far and it was up until recently. With version 172 of Mame the HLSL shader has improved massively to the point it very much so rivals GLSL and Lottes with the added bonus of not needing to set each game for vertical or horizontal. HLSL simply adjusts automatically for the games orientation making life so much easier. There is still one problem with HLSL however and it is that out of the box it still look like a dogs regurgitated dinner. This can be rectified however but tinkering with it is not easy and can be a pretty big pain in the ass if you do not know what you are doing. HLSL also has the added benefit of extra tweaking to personal taste where as GLSL you are more or less locked in on what the shader gives you. I certainly do not know what I am doing but I found a great video with some settings you can copy paste into your mame.ini file. I find these settings to be just as good as Lottes GLSL shader without the hassle of setting each game for vertical or horizontal as needed. Settings: http://pastebin.com/hwF96kkG

 

 

Link to comment
Share on other sites

I remember coming up with something mostly satisfactory based on some settings posted over on shmups forum. I've found that site to be a pretty good resource for this because they're extremely picky about this sort of thing haha. I haven't done any tweaking in a while - I'll probably mess around with it some tonight.
Link to comment
Share on other sites

@Zombeaver Yeah i'm always poking around over on the shmups forums as well. I don't post there but there's lots of good reading material to be had. @Drybonz I think they made the improvements with 172 but I could be mistaken about the exact version. It used to be that you had to tinker and fiddle with the settings on a game by game basis. There was no way to get a decent consistent look across every game. Late last night I was doing some extra reading and decided to give 174 a shot with the settings from the video I posted and I was very impressed with it. I wouldn't necessarily say that it is better or worse than Lottes GLSL shader but it most certainly good enough with the added benefit of not needing to adjust for vertical and horizontal games.
Link to comment
Share on other sites

Yeah, I have been using GLSL for several versions, so it would all be new to me. I have different setups for horizontal and vertical games using different RL setups now, which works fine, but I would definitely like it if I could use one shader for all games.
Link to comment
Share on other sites

I would say download Mame 174 if you haven't already or make a separate install and toy around with it and go through the settings along with the video and tinker with the settings if you do not like the ones posted and see if you get something to your liking and then decide. I think I have about 6 different Mame installs on my hard drive right now for different testing and tinkering purposes lol.
Link to comment
Share on other sites

  • 1 month later...
I have done some tweaking to the settings in the video and I think they are better. There are 2 files you need to edit, the first is the mame.ini, here are the settings: # # DIRECT3D POST-PROCESSING OPTIONS # hlslpath hlsl hlsl_enable 1 hlsl_oversampling 0 hlsl_write hlsl_snap_width 2048 hlsl_snap_height 1536 shadow_mask_tile_mode 0 shadow_mask_alpha 0.0 shadow_mask_texture shadow-mask.png shadow_mask_x_count 6 shadow_mask_y_count 4 shadow_mask_usize 0.1875 shadow_mask_vsize 0.20 shadow_mask_uoffset 0.0 shadow_mask_voffset 0.0 curvature 0.0 round_corner 0.0 smooth_border 0.0 reflection 0.0 vignetting 0.25 scanline_alpha 0.50 scanline_size 1.0 scanline_height 1.40 scanline_variation 1.0 scanline_bright_scale 1.0 scanline_bright_offset 0.0 scanline_jitter 0.0 hum_bar_alpha 0.0 defocus 0.8,0.0 converge_x 0.0,0.0,0.0 converge_y 0.0,0.0,0.0 radial_converge_x 0.0,0.0,0.0 radial_converge_y 0.0,0.0,0.0 red_ratio 1.0,0.0,0.0 grn_ratio 0.0,1.0,0.0 blu_ratio 0.0,0.0,1.0 saturation 1.2 offset 0.0,0.0,0.0 scale 1.0,1.0,1.0 power 1.0,1.0,1.0 floor 0.0,0.0,0.0 phosphor_life 0.0,0.0,0.0 The 2nd file to change is the raster.ini file located in the "mame\ini\presets" folder: # # DIRECT3D POST-PROCESSING OPTIONS # shadow_mask_tile_mode 0 shadow_mask_alpha 0.25 shadow_mask_texture shadow-mask.png shadow_mask_x_count 12 shadow_mask_y_count 6 shadow_mask_usize 0.5 shadow_mask_vsize 0.5 shadow_mask_uoffset 0.0 shadow_mask_voffset 0.0 distortion 0.0 cubic_distortion 0.0 distort_corner 0.0 round_corner 0.0 smooth_border 0.0 reflection 0.0 vignetting 0.0 scanline_alpha 0.50 scanline_size 1.0 scanline_height 1.0 scanline_variation 1.0 scanline_bright_scale 2.0 scanline_bright_offset 0.0 scanline_jitter 0.0 defocus 0.75,0.0 converge_x 0.0,0.0,0.0 converge_y 0.0,0.0,0.0 radial_converge_x 0.0,0.0,0.0 radial_converge_y 0.0,0.0,0.0 red_ratio 1.05,0.00,0.10 grn_ratio -0.10,1.00,0.25 blu_ratio -0.25,0.25,1.25 saturation 1.20 offset -0.30,-0.20,-0.05 scale 1.15,1.05,0.90 power 0.90,0.90,1.15 floor 0.0,0.0,0.0 phosphor_life 0.0,0.0,0.0 # # NTSC POST-PROCESSING OPTIONS # yiq_enable 0 # # BLOOM POST-PROCESSING OPTIONS # bloom_blend_mode 0 bloom_scale 0.20 bloom_overdrive 1.00,1.00,1.00 bloom_lvl0_weight 1.00 bloom_lvl1_weight 0.64 bloom_lvl2_weight 0.32 bloom_lvl3_weight 0.16 bloom_lvl4_weight 0.08 bloom_lvl5_weight 0.06 bloom_lvl6_weight 0.04 bloom_lvl7_weight 0.02 bloom_lvl8_weight 0.01 If you watched the video and saw the person using the sliders to change settings you would be led to believe that those settings are automatically saved to an ini file but they are not. You have to go into the mame.ini and / or raster.ini file and manually make the changes. The one complaint I did have with the settings in the video was that the blacks were not black, they were a dark grey. Simply changing the "floor" setting in the raster.ini to 0.0,0.0,0.0 made the blacks black again. There were a few more minor tweaks I made as well but they were based on personal preference and my monitor.
Link to comment
Share on other sites

I use the GLSL shaders in Mame 175, and set the settings for all vertical and horizontal games in properties of each section. Make sure you don't have any ini files created for a particular game and for example all vertical games will read the vertical.ini it creates when you do it this way. For me I'm happy with GLSL and how easy it is to set up and get going. Here's pic a took showing the properties and marked in red.mame-vertical-settings.jpg
Link to comment
Share on other sites

Yes, you could do that but honestly I think that a good HLSL setup actually looks better. You can fine tune it to get get the look you like a lot easier and custmize it for your specific monitor. I was a GLSL Lottes shader fan up until the Mame devs fixed HLSL and now I am a convert :)
Link to comment
Share on other sites

Just a couple of screen shots from Ghouls N Ghosts to show what my settings look like. I may have to make some adjustments since it seems the reds might be a little high but that's something easily tweaked. Click and view in full screen, also keep in mind I play on a 27" 2560 x 1440 monitor. http://i.imgur.com/2EoxdEg.png http://i.imgur.com/oxyzZGl.png
Link to comment
Share on other sites

After some late night tweaking I managed to tone down the redness by dialing back the saturation just a tad and bumping the gamma by an equal tad. This is why I think HLSL is now the better choice, it is much easier to fine tune the settings to personal preference and monitor. I don't think GLSL shaders are as easy to tweak, they are sort of hard coded by the shader code itself (I may be wrong on this though).
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...