Mame et le HLSL
Publié : 12 avr. 2013 - 20:34
Je vous copie colle ma config perso du HLSL de mame, a copier coller a la place de l'originale dans votre mame.ini
Pour ceux qui ignore ce que c'est, c'est tout simplement un outil genial pour alterer l'image et essayer de la faire coller au plus pret a un ecran cathodique bien old school.
Ca va largement plus loin que la simple generation de scanline puisqu'on peu gerer le fait que l'ecran soit bombé (et donc deformer les affichage en bordure d'ecran) trafiquer les teintes, la saturation, ajouter un tramage a l'image pour simuler les point RGB d'un vieux tube.
Bref c'est excellent, je l'ai decouvert tres recement vu que je suis en pleines configs des differents emus que je met dans mon mini cab (en fait c'est arrivé assez récemment dans mame, et peu s'utiliser du coup dans mess pour pas mal de support).
je vous joint aussi des screen comparatifs (moche pris avec mon telephone mais c'est parlant)
donc la partie a copier coller dans le mame.ini en ayant evidement pris soins d'effacer l'originale :
#
# DIRECT3D-SPECIFIC OPTIONS
#
d3dversion 9
filter 1
#
# DIRECT3D POST-PROCESSING OPTIONS
#
hlsl_enable 1
hlslpath hlsl
hlsl_ini_read 0
hlsl_ini_write 0
hlslini foo
hlsl_prescale_x 0
hlsl_prescale_y 0
hlsl_preset -1
hlsl_write
hlsl_snap_width 2048
hlsl_snap_height 1536
shadow_mask_alpha 0.05
shadow_mask_texture aperture.png
shadow_mask_x_count 320
shadow_mask_y_count 240
shadow_mask_usize 0.093750
shadow_mask_vsize 0.109375
curvature 0.000000
pincushion 0.050000
scanline_alpha 0.600000
scanline_size 1.000000
scanline_height 1.000000
scanline_bright_scale 1.000000
scanline_bright_offset 0.600000
scanline_jitter 0.000000
defocus 1.500000,1.500000
converge_x -0.300000,0.000000,0.000000
converge_y -0.300000,0.000000,0.000000
radial_converge_x 0.000000,0.000000,0.000000
radial_converge_y 0.000000,0.000000,0.000000
red_ratio 1.000000,0.000000,0.000000
grn_ratio 0.000000,1.000000,0.000000
blu_ratio 0.000000,0.000000,1.000000
saturation 1.050000
offset 0.000000,0.000000,0.000000
scale 1.020000,1.020000,1.020000
power 1.300000,1.300000,1.300000
floor 0.020000,0.020000,0.020000
phosphor_life 0.100000,0.100000,0.100000
yiq_enable 0
yiq_cc 3.597545
yiq_a 0.500000
yiq_b 0.500000
yiq_o 0.000000
yiq_p 1.000000
yiq_n 1.000000
yiq_y 6.000000
yiq_i 1.200000
yiq_q 0.600000
yiq_scan_time 52.599998
yiq_phase_count 2
et les shots :

a gauche un binlinear filtering lambda pour que l'image ne soit pas atrocement pixelisées (le truc de base de quasi tout les emulateurs) a gauche mes reglages (ce que vous obtiendrez avec le copier coller dans l'.ini)
Pour ceux qui ignore ce que c'est, c'est tout simplement un outil genial pour alterer l'image et essayer de la faire coller au plus pret a un ecran cathodique bien old school.
Ca va largement plus loin que la simple generation de scanline puisqu'on peu gerer le fait que l'ecran soit bombé (et donc deformer les affichage en bordure d'ecran) trafiquer les teintes, la saturation, ajouter un tramage a l'image pour simuler les point RGB d'un vieux tube.
Bref c'est excellent, je l'ai decouvert tres recement vu que je suis en pleines configs des differents emus que je met dans mon mini cab (en fait c'est arrivé assez récemment dans mame, et peu s'utiliser du coup dans mess pour pas mal de support).
je vous joint aussi des screen comparatifs (moche pris avec mon telephone mais c'est parlant)
donc la partie a copier coller dans le mame.ini en ayant evidement pris soins d'effacer l'originale :
#
# DIRECT3D-SPECIFIC OPTIONS
#
d3dversion 9
filter 1
#
# DIRECT3D POST-PROCESSING OPTIONS
#
hlsl_enable 1
hlslpath hlsl
hlsl_ini_read 0
hlsl_ini_write 0
hlslini foo
hlsl_prescale_x 0
hlsl_prescale_y 0
hlsl_preset -1
hlsl_write
hlsl_snap_width 2048
hlsl_snap_height 1536
shadow_mask_alpha 0.05
shadow_mask_texture aperture.png
shadow_mask_x_count 320
shadow_mask_y_count 240
shadow_mask_usize 0.093750
shadow_mask_vsize 0.109375
curvature 0.000000
pincushion 0.050000
scanline_alpha 0.600000
scanline_size 1.000000
scanline_height 1.000000
scanline_bright_scale 1.000000
scanline_bright_offset 0.600000
scanline_jitter 0.000000
defocus 1.500000,1.500000
converge_x -0.300000,0.000000,0.000000
converge_y -0.300000,0.000000,0.000000
radial_converge_x 0.000000,0.000000,0.000000
radial_converge_y 0.000000,0.000000,0.000000
red_ratio 1.000000,0.000000,0.000000
grn_ratio 0.000000,1.000000,0.000000
blu_ratio 0.000000,0.000000,1.000000
saturation 1.050000
offset 0.000000,0.000000,0.000000
scale 1.020000,1.020000,1.020000
power 1.300000,1.300000,1.300000
floor 0.020000,0.020000,0.020000
phosphor_life 0.100000,0.100000,0.100000
yiq_enable 0
yiq_cc 3.597545
yiq_a 0.500000
yiq_b 0.500000
yiq_o 0.000000
yiq_p 1.000000
yiq_n 1.000000
yiq_y 6.000000
yiq_i 1.200000
yiq_q 0.600000
yiq_scan_time 52.599998
yiq_phase_count 2
et les shots :

a gauche un binlinear filtering lambda pour que l'image ne soit pas atrocement pixelisées (le truc de base de quasi tout les emulateurs) a gauche mes reglages (ce que vous obtiendrez avec le copier coller dans l'.ini)