Changes

Jump to navigation Jump to search

CRT-Royale

2,698 bytes added, 02:26, 17 January 2016
This should finish up the section on settings.
[[File:CRT-Royale.png|thumb|298px|CRT-Royale, with default settings at 1080p (view original for full details)]]
'''CRT-Royale''' is a highly advanced multi-pass CRT shader that simulates almost every aspect of the CRT screen. There are tons of parameters to configure, such as phosphor type (aperture grille, slot mask, and EDP shadow mask) and size (i.e. dot pitch), convergence offsets, scanline blooming and many others. Higher resolution is better for this shader, especially with EDP shadow mask phosphor layout and with smaller phosphor dot pitch values. This shader is really complicated compared to most other CRT shaders, reading the README<ref>[https://raw.githubusercontent.com/libretro/common-shaders/master/crt/shaders/crt-royale/README.TXT CRT-Royale README.TXT]</ref> and the documentation in the <code>user-settings.h</code><ref>[https://github.com/libretro/common-shaders/blob/master/crt/shaders/crt-royale/user-settings.h CRT-Royale user-settings.h]</ref> is a must.
==Customization==
Since CRT-Royale has a large number of different settings for customization, this article will only cover those that have the most noticeable effect on the overall image.
CRT-Royale can be customized one of two ways: using the runtime shader parameters from inside [[RetroArch]] or editing the user-setting.h file. In order for the settings in <code>user-settings.h </code> that are marked with <code>_static</code> to take effect, runtime parameters must be disabled by commenting out <code>#define RUNTIME_SHADER_PARAMS_ENABLE</code> in <code>user-settings.h</code>. Doing this will make the runtime parameters non-functional so you will need to reload the shader to apply changesmade in <code>user-settings.h</code>, but it will result in a performance boost since there is less need for expensive branching in the shader code when the settings are static.
There are some settings in user-settings.h that are static only and do not have a runtime parameter, and therefore do not require runtime parameters to be disabled to have an effect.
If <code>mask_specify_num_triads</code> is set to 1.0, then the phosphor mask will be scaled to use the number of triads specified in <code>mask_num_triads_desired</code>. This is disabled by default.
 
===Anti-Aliasing===
aa_subpixel_r_offset_x_runtime = -0.333333
aa_subpixel_r_offset_y_runtime = 0.000000
aa_cubic_c = 0.500000
aa_gauss_sigma = 0.500000
 
These settings affect the anti-aliasing for curvature, overscan, and subpixels that is done to the shader in the last pass. These settings are quite technical and may not have immediately apparent effects. Refer to the documentation in <code>user-settings.h</code> for detailed explanations.
 
===Geometry===
geom_mode_runtime = 0.000000
geom_radius = 2.000000
geom_view_dist = 2.000000
geom_tilt_angle_x = 0.000000
geom_tilt_angle_y = 0.000000
geom_aspect_ratio_x = 432.000000
geom_aspect_ratio_y = 329.000000
geom_overscan_x = 1.000000
geom_overscan_y = 1.000000
 
These are the settings that control the geometry of the simulated CRT.
 
The geometry modes available are 0.0 (Flat), 1.0 ([[CRT-Geom]] style curvature), 2.0 (bulbous curvature), and 3.0 (cylindrical Trinitron curvature). View distance specifies how far the CRT is in the user's field of view. The tilt angle settings control which direction the screen is tilted. The aspect ratio of the simulated screen can also be configured. Overscan affects how much of the image is visible on the simulated CRT, since many consumer TVs did not display the full scan area.
 
Some people may find curvature to be distracting so leaving these settings at default will leave the CRT image perfectly flat.
 
===Border===
border_size = 0.015000
border_darkness = 2.000000
border_compress = 2.500000
 
These settings affect the size and shape of the black border around the CRT. The default settings create a bit of vignetting around the corners; if you dislike this effect, you can set the size and darkness of the border to 0.0.
 
===Interlacing===
interlace_bff = 0.000000
interlace_1080i = 0.000000
 
These settings control how interlacing is handled by the shader. The "bff" setting refers to the order in which each scanline field is displayed, where setting that to 1.0 would make it "bottom frame first" as opposed to "top field first" like default. The 1080i setting specifies whether interlacing is enabled if the input image is 1080 pixels tall, setting it to 1.0 makes it display 1080i instead of 1080p.
 
Interlacing detection can be turned off entirely by editing <code>interlace_detect</code> in <code>user-settings.h</code> to be <code>false</code>. This will make it display 480 pixel tall content as 480p instead of 480i, which will eliminate any flickering, but may result in combing artifacts if the game is interlaced natively. This setting is static only and is not a runtime parameter.
==Notes==
223
edits

Navigation menu