mirror of
https://github.com/italicsjenga/slang-shaders.git
synced 2024-11-25 17:01:31 +11:00
7cdc185f8c
Changes: * Guest Advanced updated to crt-guest-advanced-2023-02-25-release1 * Improvements to the new Magic Glow feature * Turn Magic Glow on and Increase the Glow amount to see the effect * New Slot Mask Mitigation option to reduce moire * Added/Restored Guest's Raster Bloom as well as Overscan control * Updated Comments in presets to use # instead of // as per @hunterk's request * Added rotation option for Rotate CRT Tube: * -1 = 90 Degrees Clockwise (or 270 Counter Clockwise) * 0 = No Rotation * 1 = 90 Degrees Counter Clockwise * Added groundwork for the wildcard replacement feature so presets will auto rotate and not flip in the future * Added DREZ presets which keep the horizontal resolution * Helpful for applying to modern games, these two are good to try * `Presets\Base_CRT_Presets_DREZ\MBZ__3__STD__GDV__DREZ_X-VIEWPORT_Y-240p.slangp` * `Presets\Base_CRT_Presets_DREZ\MBZ__3__STD__GDV__DREZ_X-VIEWPORT_Y-480p.slangp` * Also looks good on MVC2, try `Presets\Base_CRT_Presets_DREZ\MBZ__3__STD__GDV__DREZ_X-VIEWPORT_Y-240p.slangp` * Updated preset capability and performance table * Added contrast for signal noise * Added some more Sinden presets for SCREEN-ONLY and POTATO * Added Screen Region to Resolution Debug text * Good for getting the screen region pixel coordinates if you need them * Adjusted Ambient Lighting Scaling when using the Inherit Zoom scale mode * Now when you zoom out it is much less likely to generate a black frame covering the outer parts of the background image * The minimum size of the lighting texture will be close to the height of the current viewport * This reduces the likelihood that we will see the cutoff * ScaleFx: Exposed more of the settings so they can be tweaked * Default Settings changed: * ScaleFx Threshold: now 0.43 (was 0.5) * ScaleFx Filter Corners: now 0 (was 1) * These settings result in a slighly clearer picture and less rounding of square corners * SMOOTH-ADV ntsc presets: ntsc_scale adjusted so it visually matches the regular ADV ntsc presets
971 lines
27 KiB
SourcePawn
971 lines
27 KiB
SourcePawn
/*
|
|
Mega Bezel - Creates a graphic treatment for the game play area to give a retro feel
|
|
Copyright (C) 2019-2022 HyperspaceMadness - HyperspaceMadness@outlook.com
|
|
|
|
Incorporates much great feedback from the libretro forum, and thanks
|
|
to Hunterk who helped me get started
|
|
|
|
See more at the libretro forum
|
|
https://forums.libretro.com/t/hsm-mega-bezel-reflection-shader-feedback-and-updates
|
|
|
|
This program is free software: you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation, either version 3 of the License, or
|
|
(at your option) any later version.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program. If not, see [http://www.gnu.org/licenses/].
|
|
*/
|
|
|
|
layout(std140, set = 0, binding = 0) uniform UBO
|
|
{
|
|
mat4 MVP;
|
|
vec4 SourceSize;
|
|
vec4 OriginalSize;
|
|
vec4 CorePassSize;
|
|
vec4 CorePassFeedbackSize;
|
|
vec4 OutputSize;
|
|
vec4 FinalViewportSize;
|
|
vec4 NegativeCropAddedPassSize;
|
|
vec4 DerezedPassSize;
|
|
int FrameDirection;
|
|
uint FrameCount;
|
|
|
|
float HSM_RESOLUTION_DEBUG_ON;
|
|
float HSM_SINDEN_BORDER_ON;
|
|
float HSM_SINDEN_BORDER_OPACITY;
|
|
float HSM_SINDEN_BORDER_BRIGHTNESS;
|
|
float HSM_SINDEN_AMBIENT_LIGHTING;
|
|
float HSM_SINDEN_BORDER_THICKNESS;
|
|
float HSM_SINDEN_BORDER_EMPTY_TUBE_COMPENSATION;
|
|
float HSM_CACHE_GRAPHICS_ON;
|
|
float HSM_CACHE_UPDATE_INDICATOR_MODE;
|
|
|
|
// Graphics Brightness
|
|
float HSM_GLOBAL_GRAPHICS_BRIGHTNESS;
|
|
float HSM_STATIC_LAYERS_GAMMA;
|
|
|
|
// Night Lighting
|
|
float HSM_AMBIENT_LIGHTING_OPACITY;
|
|
float HSM_AMBIENT1_OPACITY;
|
|
float HSM_AMBIENT2_OPACITY;
|
|
float HSM_AMBIENT_LIGHTING_SWAP_IMAGE_MODE;
|
|
|
|
float HSM_AMBIENT1_HUE;
|
|
float HSM_AMBIENT1_SATURATION;
|
|
float HSM_AMBIENT1_VALUE;
|
|
float HSM_AMBIENT1_CONTRAST;
|
|
float HSM_AMBIENT1_SCALE_KEEP_ASPECT;
|
|
float HSM_AMBIENT1_SCALE_INHERIT_MODE;
|
|
float HSM_AMBIENT1_SCALE;
|
|
float HSM_AMBIENT1_SCALE_X;
|
|
float HSM_AMBIENT1_ROTATE;
|
|
float HSM_AMBIENT1_MIRROR_HORZ;
|
|
float HSM_AMBIENT1_POS_INHERIT_MODE;
|
|
float HSM_AMBIENT1_POSITION_X;
|
|
float HSM_AMBIENT1_POSITION_Y;
|
|
float HSM_AMBIENT1_DITHERING_SAMPLES;
|
|
|
|
float HSM_AMBIENT2_HUE;
|
|
float HSM_AMBIENT2_SATURATION;
|
|
float HSM_AMBIENT2_VALUE;
|
|
float HSM_AMBIENT2_CONTRAST;
|
|
float HSM_AMBIENT2_SCALE_KEEP_ASPECT;
|
|
float HSM_AMBIENT2_SCALE_INHERIT_MODE;
|
|
float HSM_AMBIENT2_SCALE;
|
|
float HSM_AMBIENT2_SCALE_X;
|
|
float HSM_AMBIENT2_ROTATE;
|
|
float HSM_AMBIENT2_MIRROR_HORZ;
|
|
float HSM_AMBIENT2_POS_INHERIT_MODE;
|
|
float HSM_AMBIENT2_POSITION_X;
|
|
float HSM_AMBIENT2_POSITION_Y;
|
|
|
|
// Zoom & Pan
|
|
float HSM_VIEWPORT_ZOOM;
|
|
float HSM_VIEWPORT_POSITION_X;
|
|
float HSM_VIEWPORT_POSITION_Y;
|
|
float HSM_VIEWPORT_ZOOM_MASK;
|
|
|
|
// FLIP & ROTATE
|
|
float HSM_FLIP_VIEWPORT_VERTICAL;
|
|
float HSM_FLIP_VIEWPORT_HORIZONTAL;
|
|
float HSM_FLIP_CORE_VERTICAL;
|
|
float HSM_FLIP_CORE_HORIZONTAL;
|
|
float HSM_ROTATE_CORE_IMAGE;
|
|
|
|
// ASPECT RATIO
|
|
float HSM_ASPECT_RATIO_ORIENTATION;
|
|
float HSM_ASPECT_RATIO_MODE;
|
|
float HSM_ASPECT_RATIO_EXPLICIT;
|
|
|
|
// SCALING
|
|
float HSM_INT_SCALE_MODE;
|
|
float HSM_INT_SCALE_MULTIPLE_OFFSET;
|
|
float HSM_INT_SCALE_MULTIPLE_OFFSET_LONG;
|
|
float HSM_INT_SCALE_MAX_HEIGHT;
|
|
float HSM_VERTICAL_PRESET;
|
|
float HSM_NON_INTEGER_SCALE;
|
|
|
|
float HSM_USE_PHYSICAL_SIZE_FOR_NON_INTEGER;
|
|
float HSM_PHYSICAL_MONITOR_ASPECT_RATIO;
|
|
float HSM_PHYSICAL_MONITOR_DIAGONAL_SIZE;
|
|
float HSM_PHYSICAL_SIM_TUBE_DIAGONAL_SIZE;
|
|
|
|
|
|
// Extended Scale
|
|
float HSM_USE_IMAGE_FOR_PLACEMENT;
|
|
float HSM_PLACEMENT_IMAGE_USE_HORIZONTAL;
|
|
float HSM_PLACEMENT_IMAGE_MODE;
|
|
float HSM_NON_INTEGER_SCALE_OFFSET;
|
|
float HSM_USE_SNAP_TO_CLOSEST_INT_SCALE;
|
|
float HSM_SNAP_TO_CLOSEST_INT_SCALE_TOLERANCE;
|
|
|
|
// Position
|
|
float HSM_SCREEN_POSITION_X;
|
|
float HSM_SCREEN_POSITION_Y;
|
|
|
|
// CROPPING
|
|
float HSM_CROP_MODE;
|
|
float HSM_CROP_PERCENT_ZOOM;
|
|
float HSM_CROP_PERCENT_TOP;
|
|
float HSM_CROP_PERCENT_BOTTOM;
|
|
float HSM_CROP_PERCENT_LEFT;
|
|
float HSM_CROP_PERCENT_RIGHT;
|
|
float HSM_CROP_BLACK_THRESHOLD;
|
|
|
|
// SCANLINES
|
|
float HSM_SCANLINE_DIRECTION;
|
|
|
|
// CORE RES SAMPLING
|
|
float HSM_CORE_RES_SAMPLING_MULT_SCANLINE_DIR;
|
|
float HSM_DOWNSAMPLE_BLUR_SCANLINE_DIR;
|
|
float HSM_CORE_RES_SAMPLING_MULT_OPPOSITE_DIR;
|
|
float HSM_DOWNSAMPLE_BLUR_OPPOSITE_DIR;
|
|
float HSM_CORE_RES_SAMPLING_SHIFT_OPPOSITE_DIR;
|
|
|
|
// INTERLACING
|
|
float HSM_INTERLACE_TRIGGER_RES;
|
|
float HSM_INTERLACE_MODE;
|
|
float HSM_INTERLACE_EFFECT_SMOOTHNESS_INTERS;
|
|
float HSM_INTERLACE_SCANLINE_EFFECT;
|
|
float iscans;
|
|
|
|
// FAKE SCANLINES
|
|
float HSM_FAKE_SCANLINE_MODE;
|
|
float HSM_FAKE_SCANLINE_OPACITY;
|
|
float HSM_FAKE_SCANLINE_RES_MODE;
|
|
float HSM_FAKE_SCANLINE_RES;
|
|
float HSM_FAKE_SCANLINE_INT_SCALE;
|
|
float HSM_FAKE_SCANLINE_ROLL;
|
|
float HSM_FAKE_SCANLINE_CURVATURE;
|
|
float HSM_FAKE_SCANLINE_BRIGHTNESS_CUTOFF;
|
|
|
|
// DUAL SCREEN
|
|
float HSM_DUALSCREEN_MODE;
|
|
float HSM_DUALSCREEN_CORE_IMAGE_SPLIT_MODE;
|
|
float HSM_DUALSCREEN_CORE_IMAGE_SWAP_SCREENS;
|
|
float HSM_DUALSCREEN_CORE_IMAGE_SPLIT_OFFSET;
|
|
float HSM_DUALSCREEN_VIEWPORT_SPLIT_LOCATION;
|
|
float HSM_DUALSCREEN_SHIFT_POSITION_WITH_SCALE;
|
|
float HSM_DUALSCREEN_POSITION_OFFSET_BETWEEN_SCREENS;
|
|
float HSM_2ND_SCREEN_ASPECT_RATIO_MODE;
|
|
float HSM_2ND_SCREEN_INDEPENDENT_SCALE;
|
|
float HSM_2ND_SCREEN_SCALE_OFFSET;
|
|
float HSM_2ND_SCREEN_POS_X;
|
|
float HSM_2ND_SCREEN_POS_Y;
|
|
float HSM_2ND_SCREEN_CROP_PERCENT_ZOOM;
|
|
float HSM_2ND_SCREEN_CROP_PERCENT_TOP;
|
|
float HSM_2ND_SCREEN_CROP_PERCENT_BOTTOM;
|
|
float HSM_2ND_SCREEN_CROP_PERCENT_LEFT;
|
|
float HSM_2ND_SCREEN_CROP_PERCENT_RIGHT;
|
|
|
|
|
|
// CURVATURE
|
|
float HSM_CURVATURE_MODE;
|
|
float HSM_CURVATURE_2D_SCALE_LONG_AXIS;
|
|
float HSM_CURVATURE_2D_SCALE_SHORT_AXIS;
|
|
float HSM_CURVATURE_3D_RADIUS;
|
|
float HSM_CURVATURE_3D_VIEW_DIST;
|
|
float HSM_CURVATURE_3D_TILT_ANGLE_X;
|
|
float HSM_CURVATURE_3D_TILT_ANGLE_Y;
|
|
float HSM_CRT_CURVATURE_SCALE;
|
|
|
|
// SIGNAL NOISE
|
|
float HSM_SIGNAL_NOISE_ON;
|
|
float HSM_SIGNAL_NOISE_AMOUNT;
|
|
float HSM_SIGNAL_NOISE_BLACK_LEVEL;
|
|
float HSM_SIGNAL_NOISE_SIZE_MODE;
|
|
float HSM_SIGNAL_NOISE_SIZE_MULT;
|
|
float HSM_SIGNAL_NOISE_TYPE;
|
|
|
|
// ANTI-FLICKER
|
|
float HSM_ANTI_FLICKER_ON;
|
|
float HSM_ANTI_FLICKER_THRESHOLD;
|
|
|
|
// CRT vs ORIGINAL A/B TESTING
|
|
float HSM_AB_COMPARE_SHOW_MODE;
|
|
float HSM_AB_COMPARE_AREA;
|
|
float HSM_AB_COMPARE_FREEZE_CRT_TUBE;
|
|
float HSM_AB_COMPARE_FREEZE_GRAPHICS;
|
|
float HSM_AB_COMPARE_SPLIT_AREA;
|
|
float HSM_AB_COMPARE_SPLIT_POSITION;
|
|
|
|
// Show Pass
|
|
float HSM_SHOW_PASS_INDEX;
|
|
float HSM_SHOW_PASS_ALPHA;
|
|
float HSM_SHOW_PASS_APPLY_SCREEN_COORD;
|
|
|
|
float HSM_SCREEN_VIGNETTE_ON;
|
|
float HSM_SCREEN_VIGNETTE_DUALSCREEN_VIS_MODE;
|
|
float HSM_SCREEN_VIGNETTE_STRENGTH;
|
|
float HSM_SCREEN_VIGNETTE_POWER;
|
|
float HSM_SCREEN_VIGNETTE_IN_REFLECTION;
|
|
|
|
// Monochrome
|
|
float HSM_MONOCHROME_MODE;
|
|
float HSM_MONOCHROME_BRIGHTNESS;
|
|
float HSM_MONOCHROME_GAMMA;
|
|
float HSM_MONOCHROME_HUE_OFFSET;
|
|
float HSM_MONOCHROME_SATURATION;
|
|
float HSM_MONOCHROME_DUALSCREEN_VIS_MODE;
|
|
|
|
// Reflection Transform
|
|
// float HSM_SCREEN_REFLECTION_FOLLOW_DIFFUSE_THICKNESS;
|
|
float HSM_SCREEN_REFLECTION_SCALE;
|
|
float HSM_SCREEN_REFLECTION_POS_X;
|
|
float HSM_SCREEN_REFLECTION_POS_Y;
|
|
|
|
// float HSM_PHOSPHOR_PERSISTENCE_BLEND;
|
|
// float HSM_PHOSPHOR_PERSISTENCE_RED;
|
|
// float HSM_PHOSPHOR_PERSISTENCE_GREEN;
|
|
// float HSM_PHOSPHOR_PERSISTENCE_BLUE;
|
|
|
|
// TUBE IMAGES
|
|
float HSM_TUBE_DIFFUSE_MODE;
|
|
float HSM_TUBE_DIFFUSE_IMAGE_DUALSCREEN_VIS_MODE;
|
|
float HSM_TUBE_OPACITY;
|
|
float HSM_TUBE_DIFFUSE_IMAGE_AMOUNT;
|
|
float HSM_TUBE_DIFFUSE_IMAGE_HUE;
|
|
float HSM_TUBE_DIFFUSE_IMAGE_COLORIZE_ON;
|
|
float HSM_TUBE_DIFFUSE_IMAGE_SATURATION;
|
|
float HSM_TUBE_DIFFUSE_IMAGE_BRIGHTNESS;
|
|
float HSM_TUBE_DIFFUSE_IMAGE_GAMMA;
|
|
float HSM_TUBE_DIFFUSE_IMAGE_AMBIENT_LIGHTING;
|
|
float HSM_TUBE_DIFFUSE_IMAGE_AMBIENT2_LIGHTING;
|
|
float HSM_TUBE_DIFFUSE_IMAGE_SCALE;
|
|
float HSM_TUBE_DIFFUSE_IMAGE_SCALE_X;
|
|
float HSM_TUBE_DIFFUSE_IMAGE_ROTATION;
|
|
float HSM_TUBE_EMPTY_THICKNESS;
|
|
float HSM_TUBE_EMPTY_THICKNESS_X_SCALE;
|
|
float HSM_TUBE_DIFFUSE_FORCE_ASPECT;
|
|
float HSM_TUBE_EXPLICIT_ASPECT;
|
|
float HSM_SCREEN_CORNER_RADIUS_SCALE;
|
|
|
|
float HSM_TUBE_COLORED_GEL_IMAGE_ON;
|
|
float HSM_TUBE_COLORED_GEL_IMAGE_DUALSCREEN_VIS_MODE;
|
|
float HSM_TUBE_COLORED_GEL_IMAGE_MULTIPLY_AMOUNT;
|
|
float HSM_TUBE_COLORED_GEL_IMAGE_NORMAL_AMOUNT;
|
|
float HSM_TUBE_COLORED_GEL_IMAGE_NORMAL_BRIGHTNESS;
|
|
float HSM_TUBE_COLORED_GEL_IMAGE_NORMAL_VIGNETTE;
|
|
float HSM_TUBE_COLORED_GEL_IMAGE_TRANSPARENCY_THRESHOLD;
|
|
float HSM_TUBE_COLORED_GEL_IMAGE_ADDITIVE_AMOUNT;
|
|
float HSM_SHOW_CRT_ON_TOP_OF_COLORED_GEL;
|
|
|
|
float HSM_TUBE_SHADOW_IMAGE_ON;
|
|
float HSM_TUBE_SHADOW_IMAGE_OPACITY;
|
|
float HSM_TUBE_SHADOW_IMAGE_SCALE_X;
|
|
float HSM_TUBE_SHADOW_IMAGE_SCALE_Y;
|
|
float HSM_TUBE_SHADOW_IMAGE_POS_X;
|
|
float HSM_TUBE_SHADOW_IMAGE_POS_Y;
|
|
float HSM_TUBE_SHADOW_CURVATURE_SCALE;
|
|
|
|
float HSM_TUBE_COLORED_GEL_IMAGE_AMBIENT_LIGHTING;
|
|
float HSM_TUBE_COLORED_GEL_IMAGE_AMBIENT2_LIGHTING;
|
|
float HSM_TUBE_COLORED_GEL_IMAGE_FAKE_SCANLINE_AMOUNT;
|
|
float HSM_TUBE_COLORED_GEL_IMAGE_SCALE;
|
|
float HSM_TUBE_COLORED_GEL_IMAGE_FLIP_HORIZONTAL;
|
|
float HSM_TUBE_COLORED_GEL_IMAGE_FLIP_VERTICAL;
|
|
|
|
// TUBE STATIC REFLECTION
|
|
float HSM_TUBE_STATIC_REFLECTION_IMAGE_ON;
|
|
float HSM_TUBE_STATIC_REFLECTION_IMAGE_DUALSCREEN_VIS_MODE;
|
|
float HSM_TUBE_STATIC_REFLECTION_IMAGE_OPACITY;
|
|
float HSM_TUBE_STATIC_OPACITY_DIFFUSE_MULTIPLY;
|
|
float HSM_TUBE_STATIC_BLACK_LEVEL;
|
|
float HSM_TUBE_STATIC_AMBIENT_LIGHTING;
|
|
float HSM_TUBE_STATIC_AMBIENT2_LIGHTING;
|
|
float HSM_TUBE_STATIC_SCALE;
|
|
float HSM_TUBE_STATIC_SCALE_X;
|
|
float HSM_TUBE_STATIC_POS_X;
|
|
float HSM_TUBE_STATIC_POS_Y;
|
|
float HSM_TUBE_STATIC_SHADOW_OPACITY;
|
|
float HSM_TUBE_STATIC_DITHER_SAMPLES;
|
|
float HSM_TUBE_STATIC_DITHER_DISTANCE;
|
|
float HSM_TUBE_STATIC_DITHER_AMOUNT;
|
|
|
|
// CRT Screen
|
|
// These names are inconsistent with the general naming on purpose
|
|
// They match the namse in Guest's shader
|
|
float HSM_CRT_BLEND_MODE;
|
|
float HSM_CRT_BLEND_AMOUNT;
|
|
float HSM_CRT_SCREEN_BLEND_MODE;
|
|
|
|
// Screen Vignette
|
|
// SCREEN BLACK EDGE
|
|
float HSM_GLOBAL_CORNER_RADIUS;
|
|
float HSM_TUBE_BLACK_EDGE_CORNER_RADIUS_SCALE;
|
|
float HSM_TUBE_BLACK_EDGE_SHARPNESS;
|
|
float HSM_TUBE_BLACK_EDGE_CURVATURE_SCALE;
|
|
float HSM_TUBE_BLACK_EDGE_THICKNESS;
|
|
float HSM_TUBE_BLACK_EDGE_THICKNESS_X_SCALE;
|
|
|
|
// Bezel Independent Scale
|
|
float HSM_BZL_USE_INDEPENDENT_SCALE;
|
|
float HSM_BZL_INDEPENDENT_SCALE;
|
|
float HSM_BZL_USE_INDEPENDENT_CURVATURE;
|
|
float HSM_BZL_INDEPENDENT_CURVATURE_SCALE_LONG_AXIS;
|
|
float HSM_BZL_INDEPENDENT_CURVATURE_SCALE_SHORT_AXIS;
|
|
|
|
// Bezel General
|
|
float HSM_BZL_OPACITY;
|
|
float HSM_BZL_BLEND_MODE;
|
|
float HSM_BZL_WIDTH;
|
|
float HSM_BZL_HEIGHT;
|
|
float HSM_BZL_SCALE_OFFSET;
|
|
float HSM_BZL_INNER_CURVATURE_SCALE;
|
|
float HSM_BZL_INNER_CORNER_RADIUS_SCALE;
|
|
|
|
// Bezel Params not in Screen Scale
|
|
float HSM_BZL_OUTER_CURVATURE_SCALE;
|
|
float HSM_BZL_INNER_EDGE_THICKNESS;
|
|
float HSM_BZL_INNER_EDGE_SHARPNESS;
|
|
float HSM_BZL_OUTER_CORNER_RADIUS_SCALE;
|
|
float HSM_BZL_INNER_EDGE_SHADOW;
|
|
|
|
// Generated Bezel
|
|
float HSM_BZL_COLOR_HUE;
|
|
float HSM_BZL_COLOR_SATURATION;
|
|
float HSM_BZL_COLOR_VALUE;
|
|
float HSM_BZL_NOISE;
|
|
float HSM_BZL_BRIGHTNESS;
|
|
float HSM_BZL_BRIGHTNESS_MULT_TOP;
|
|
float HSM_BZL_BRIGHTNESS_MULT_BOTTOM;
|
|
float HSM_BZL_BRIGHTNESS_MULT_SIDES;
|
|
float HSM_BZL_BRIGHTNESS_MULT_SIDE_LEFT;
|
|
float HSM_BZL_BRIGHTNESS_MULT_SIDE_RIGHT;
|
|
float HSM_BZL_HIGHLIGHT;
|
|
float HSM_BZL_AMBIENT_LIGHTING_MULTIPLIER;
|
|
float HSM_BZL_AMBIENT2_LIGHTING_MULTIPLIER;
|
|
|
|
// Generated Frame
|
|
float HSM_FRM_USE_INDEPENDENT_COLOR;
|
|
float HSM_FRM_COLOR_HUE;
|
|
float HSM_FRM_COLOR_SATURATION;
|
|
float HSM_FRM_COLOR_VALUE;
|
|
float HSM_FRM_NOISE;
|
|
float HSM_FRM_OUTER_CURVATURE_SCALE;
|
|
float HSM_FRM_THICKNESS;
|
|
float HSM_FRM_THICKNESS_SCALE_X;
|
|
float HSM_FRM_OUTER_POS_Y;
|
|
float HSM_FRM_INNER_EDGE_THICKNESS;
|
|
float HSM_FRM_OUTER_EDGE_THICKNESS;
|
|
float HSM_FRM_OUTER_EDGE_SHADING;
|
|
float HSM_FRM_OUTER_CORNER_RADIUS;
|
|
float HSM_BZL_OUTER_POSITION_Y;
|
|
float HSM_FRM_SHADOW_OPACITY;
|
|
float HSM_FRM_SHADOW_WIDTH;
|
|
|
|
// Corner
|
|
float HSM_REFLECT_CORNER_FADE;
|
|
float HSM_REFLECT_CORNER_INNER_SPREAD;
|
|
float HSM_REFLECT_CORNER_OUTER_SPREAD;
|
|
float HSM_REFLECT_CORNER_ROTATION_OFFSET_TOP;
|
|
float HSM_REFLECT_CORNER_ROTATION_OFFSET_BOTTOM;
|
|
float HSM_REFLECT_CORNER_SPREAD_FALLOFF;
|
|
float HSM_REFLECT_CORNER_FADE_DISTANCE;
|
|
|
|
// Reflection
|
|
float HSM_REFLECT_GLOBAL_AMOUNT;
|
|
float HSM_REFLECT_GLOBAL_GAMMA_ADJUST;
|
|
|
|
float HSM_REFLECT_BEZEL_INNER_EDGE_AMOUNT;
|
|
float HSM_REFLECT_BEZEL_INNER_EDGE_FULLSCREEN_GLOW;
|
|
float HSM_REFLECT_FRAME_INNER_EDGE_AMOUNT;
|
|
float HSM_REFLECT_FRAME_INNER_EDGE_SHARPNESS;
|
|
float HSM_REFLECT_SHOW_TUBE_FX_AMOUNT;
|
|
float HSM_REFLECT_DIRECT_AMOUNT;
|
|
float HSM_REFLECT_DIFFUSED_AMOUNT;
|
|
float HSM_REFLECT_FULLSCREEN_GLOW;
|
|
float HSM_REFLECT_FULLSCREEN_GLOW_GAMMA;
|
|
|
|
float HSM_REFLECT_FADE_AMOUNT;
|
|
float HSM_REFLECT_RADIAL_FADE_WIDTH;
|
|
float HSM_REFLECT_RADIAL_FADE_HEIGHT;
|
|
|
|
float HSM_REFLECT_LATERAL_OUTER_FADE_POSITION;
|
|
float HSM_REFLECT_LATERAL_OUTER_FADE_DISTANCE;
|
|
|
|
float HSM_REFLECT_NOISE_AMOUNT;
|
|
float HSM_REFLECT_NOISE_SAMPLES;
|
|
float HSM_REFLECT_NOISE_SAMPLE_DISTANCE;
|
|
|
|
// Blur Stuff
|
|
float HSM_REFLECT_BLUR_NUM_SAMPLES;
|
|
float HSM_REFLECT_BLUR_FALLOFF_DISTANCE;
|
|
float HSM_REFLECT_BLUR_MIN;
|
|
float HSM_REFLECT_BLUR_MAX;
|
|
|
|
float HSM_REFLECT_MASK_IMAGE_AMOUNT;
|
|
float HSM_REFLECT_MASK_FOLLOW_LAYER;
|
|
float HSM_REFLECT_MASK_FOLLOW_MODE;
|
|
float HSM_REFLECT_MASK_BRIGHTNESS;
|
|
float HSM_REFLECT_MASK_BLACK_LEVEL;
|
|
float HSM_REFLECT_MASK_MIPMAPPING_BLEND_BIAS;
|
|
|
|
float HSM_GLASS_BORDER_ON;
|
|
float HSM_REFLECT_VIGNETTE_AMOUNT;
|
|
float HSM_REFLECT_VIGNETTE_SIZE;
|
|
|
|
float HSM_POTATO_SHOW_BG_OVER_SCREEN;
|
|
float HSM_POTATO_COLORIZE_CRT_WITH_BG;
|
|
float HSM_POTATO_COLORIZE_BRIGHTNESS;
|
|
float HSM_STANDARD_DECAL_SCALE_WITH_FRAME;
|
|
float HSM_STANDARD_TOP_SCALE_WITH_FRAME;
|
|
|
|
// Layer Order
|
|
float HSM_BG_LAYER_ORDER;
|
|
float HSM_VIEWPORT_VIGNETTE_LAYER_ORDER;
|
|
float HSM_CRT_LAYER_ORDER;
|
|
float HSM_DEVICE_LAYER_ORDER;
|
|
float HSM_DEVICELED_LAYER_ORDER;
|
|
float HSM_CAB_GLASS_LAYER_ORDER;
|
|
float HSM_DECAL_LAYER_ORDER;
|
|
float HSM_LED_LAYER_ORDER;
|
|
float HSM_TOP_LAYER_ORDER;
|
|
|
|
// Cutout
|
|
float HSM_CUTOUT_ASPECT_MODE;
|
|
float HSM_CUTOUT_EXPLICIT_ASPECT;
|
|
float HSM_CUTOUT_FOLLOW_LAYER;
|
|
float HSM_CUTOUT_FOLLOW_FULL_USES_ZOOM;
|
|
float HSM_CUTOUT_SCALE;
|
|
float HSM_CUTOUT_SCALE_X;
|
|
float HSM_CUTOUT_CORNER_RADIUS;
|
|
float HSM_CUTOUT_POS_X;
|
|
float HSM_CUTOUT_POS_Y;
|
|
|
|
// Background
|
|
float HSM_BG_OPACITY;
|
|
float HSM_BG_HUE;
|
|
float HSM_BG_COLORIZE_ON;
|
|
float HSM_BG_SATURATION;
|
|
float HSM_BG_BRIGHTNESS;
|
|
float HSM_BG_GAMMA;
|
|
float HSM_BG_AMBIENT_LIGHTING_MULTIPLIER;
|
|
float HSM_BG_AMBIENT2_LIGHTING_MULTIPLIER;
|
|
float HSM_BG_APPLY_AMBIENT_IN_ADD_MODE;
|
|
float HSM_BG_BLEND_MODE;
|
|
float HSM_BG_SOURCE_MATTE_TYPE;
|
|
float HSM_BG_MASK_MODE;
|
|
float HSM_BG_CUTOUT_MODE;
|
|
float HSM_BG_DUALSCREEN_VIS_MODE;
|
|
float HSM_BG_FOLLOW_LAYER;
|
|
float HSM_BG_FOLLOW_MODE;
|
|
float HSM_BG_FOLLOW_FULL_USES_ZOOM;
|
|
float HSM_BG_FILL_MODE;
|
|
float HSM_BG_SPLIT_PRESERVE_CENTER;
|
|
float HSM_BG_SPLIT_REPEAT_WIDTH;
|
|
float HSM_BG_SCALE;
|
|
float HSM_BG_SCALE_X;
|
|
float HSM_BG_POS_X;
|
|
float HSM_BG_POS_Y;
|
|
float HSM_BG_WRAP_MODE;
|
|
float HSM_BG_MIPMAPPING_BLEND_BIAS;
|
|
|
|
// Background Vignette
|
|
float HSM_VIEWPORT_VIGNETTE_OPACITY;
|
|
float HSM_VIEWPORT_VIGNETTE_MASK_MODE;
|
|
float HSM_VIEWPORT_VIGNETTE_CUTOUT_MODE;
|
|
float HSM_VIEWPORT_VIGNETTE_FOLLOW_LAYER;
|
|
float HSM_VIEWPORT_VIGNETTE_SCALE;
|
|
float HSM_VIEWPORT_VIGNETTE_SCALE_X;
|
|
float HSM_VIEWPORT_VIGNETTE_POS_X;
|
|
float HSM_VIEWPORT_VIGNETTE_POS_Y;
|
|
|
|
// LED
|
|
float HSM_LED_OPACITY;
|
|
float HSM_LED_HUE;
|
|
float HSM_LED_COLORIZE_ON;
|
|
float HSM_LED_SATURATION;
|
|
float HSM_LED_BRIGHTNESS;
|
|
float HSM_LED_GAMMA;
|
|
float HSM_LED_AMBIENT_LIGHTING_MULTIPLIER;
|
|
float HSM_LED_AMBIENT2_LIGHTING_MULTIPLIER;
|
|
float HSM_LED_APPLY_AMBIENT_IN_ADD_MODE;
|
|
float HSM_LED_BLEND_MODE;
|
|
float HSM_LED_SOURCE_MATTE_TYPE;
|
|
float HSM_LED_MASK_MODE;
|
|
float HSM_LED_CUTOUT_MODE;
|
|
float HSM_LED_DUALSCREEN_VIS_MODE;
|
|
float HSM_LED_FOLLOW_LAYER;
|
|
float HSM_LED_FOLLOW_MODE;
|
|
float HSM_LED_FOLLOW_FULL_USES_ZOOM;
|
|
float HSM_LED_FILL_MODE;
|
|
float HSM_LED_SPLIT_PRESERVE_CENTER;
|
|
float HSM_LED_SPLIT_REPEAT_WIDTH;
|
|
float HSM_LED_SCALE;
|
|
float HSM_LED_SCALE_X;
|
|
float HSM_LED_POS_X;
|
|
float HSM_LED_POS_Y;
|
|
float HSM_LED_MIPMAPPING_BLEND_BIAS;
|
|
|
|
// Device
|
|
float HSM_DEVICE_OPACITY;
|
|
float HSM_DEVICE_HUE;
|
|
float HSM_DEVICE_COLORIZE_ON;
|
|
float HSM_DEVICE_SATURATION;
|
|
float HSM_DEVICE_BRIGHTNESS;
|
|
float HSM_DEVICE_GAMMA;
|
|
float HSM_DEVICE_AMBIENT_LIGHTING_MULTIPLIER;
|
|
float HSM_DEVICE_AMBIENT2_LIGHTING_MULTIPLIER;
|
|
float HSM_DEVICE_APPLY_AMBIENT_IN_ADD_MODE;
|
|
float HSM_DEVICE_BLEND_MODE;
|
|
float HSM_DEVICE_SOURCE_MATTE_TYPE;
|
|
float HSM_DEVICE_MASK_MODE;
|
|
float HSM_DEVICE_CUTOUT_MODE;
|
|
float HSM_DEVICE_DUALSCREEN_VIS_MODE;
|
|
float HSM_DEVICE_FOLLOW_LAYER;
|
|
float HSM_DEVICE_FOLLOW_MODE;
|
|
float HSM_DEVICE_FOLLOW_FULL_USES_ZOOM;
|
|
float HSM_DEVICE_FILL_MODE;
|
|
float HSM_DEVICE_SPLIT_PRESERVE_CENTER;
|
|
float HSM_DEVICE_SPLIT_REPEAT_WIDTH;
|
|
float HSM_DEVICE_SCALE;
|
|
float HSM_DEVICE_SCALE_X;
|
|
float HSM_DEVICE_POS_X;
|
|
float HSM_DEVICE_POS_Y;
|
|
float HSM_DEVICE_MIPMAPPING_BLEND_BIAS;
|
|
|
|
// DEVICELED
|
|
float HSM_DEVICELED_OPACITY;
|
|
float HSM_DEVICELED_HUE;
|
|
float HSM_DEVICELED_COLORIZE_ON;
|
|
float HSM_DEVICELED_SATURATION;
|
|
float HSM_DEVICELED_BRIGHTNESS;
|
|
float HSM_DEVICELED_GAMMA;
|
|
float HSM_DEVICELED_AMBIENT_LIGHTING_MULTIPLIER;
|
|
float HSM_DEVICELED_AMBIENT2_LIGHTING_MULTIPLIER;
|
|
float HSM_DEVICELED_APPLY_AMBIENT_IN_ADD_MODE;
|
|
float HSM_DEVICELED_BLEND_MODE;
|
|
float HSM_DEVICELED_SOURCE_MATTE_TYPE;
|
|
float HSM_DEVICELED_MASK_MODE;
|
|
float HSM_DEVICELED_CUTOUT_MODE;
|
|
float HSM_DEVICELED_DUALSCREEN_VIS_MODE;
|
|
float HSM_DEVICELED_FOLLOW_LAYER;
|
|
float HSM_DEVICELED_FOLLOW_MODE;
|
|
float HSM_DEVICELED_FOLLOW_FULL_USES_ZOOM;
|
|
float HSM_DEVICELED_FILL_MODE;
|
|
float HSM_DEVICELED_SPLIT_PRESERVE_CENTER;
|
|
float HSM_DEVICELED_SPLIT_REPEAT_WIDTH;
|
|
float HSM_DEVICELED_SCALE;
|
|
float HSM_DEVICELED_SCALE_X;
|
|
float HSM_DEVICELED_POS_X;
|
|
float HSM_DEVICELED_POS_Y;
|
|
float HSM_DEVICELED_MIPMAPPING_BLEND_BIAS;
|
|
|
|
// Generated Bezel & Frame
|
|
float HSM_FRM_OPACITY;
|
|
float HSM_FRM_BLEND_MODE;
|
|
float HSM_FRM_TEXTURE_OPACITY;
|
|
float HSM_FRM_TEXTURE_BLEND_MODE;
|
|
|
|
// Decal
|
|
float HSM_DECAL_OPACITY;
|
|
float HSM_DECAL_HUE;
|
|
float HSM_DECAL_COLORIZE_ON;
|
|
float HSM_DECAL_SATURATION;
|
|
float HSM_DECAL_BRIGHTNESS;
|
|
float HSM_DECAL_GAMMA;
|
|
float HSM_DECAL_AMBIENT_LIGHTING_MULTIPLIER;
|
|
float HSM_DECAL_AMBIENT2_LIGHTING_MULTIPLIER;
|
|
float HSM_DECAL_APPLY_AMBIENT_IN_ADD_MODE;
|
|
float HSM_DECAL_BLEND_MODE;
|
|
float HSM_DECAL_SOURCE_MATTE_TYPE;
|
|
float HSM_DECAL_MASK_MODE;
|
|
float HSM_DECAL_CUTOUT_MODE;
|
|
float HSM_DECAL_DUALSCREEN_VIS_MODE;
|
|
float HSM_DECAL_FOLLOW_LAYER;
|
|
float HSM_DECAL_FOLLOW_MODE;
|
|
float HSM_DECAL_FOLLOW_FULL_USES_ZOOM;
|
|
float HSM_DECAL_FILL_MODE;
|
|
float HSM_DECAL_SPLIT_PRESERVE_CENTER;
|
|
float HSM_DECAL_SPLIT_REPEAT_WIDTH;
|
|
float HSM_DECAL_SCALE;
|
|
float HSM_DECAL_SCALE_X;
|
|
float HSM_DECAL_POS_X;
|
|
float HSM_DECAL_POS_Y;
|
|
float HSM_DECAL_MIPMAPPING_BLEND_BIAS;
|
|
|
|
// Cab Glass
|
|
float HSM_CAB_GLASS_OPACITY;
|
|
float HSM_CAB_GLASS_HUE;
|
|
float HSM_CAB_GLASS_COLORIZE_ON;
|
|
float HSM_CAB_GLASS_SATURATION;
|
|
float HSM_CAB_GLASS_BRIGHTNESS;
|
|
float HSM_CAB_GLASS_GAMMA;
|
|
float HSM_CAB_GLASS_AMBIENT_LIGHTING_MULTIPLIER;
|
|
float HSM_CAB_GLASS_AMBIENT2_LIGHTING_MULTIPLIER;
|
|
float HSM_CAB_GLASS_APPLY_AMBIENT_IN_ADD_MODE;
|
|
float HSM_CAB_GLASS_BLEND_MODE;
|
|
float HSM_CAB_GLASS_SOURCE_MATTE_TYPE;
|
|
float HSM_CAB_GLASS_MASK_MODE;
|
|
float HSM_CAB_GLASS_CUTOUT_MODE;
|
|
float HSM_CAB_GLASS_DUALSCREEN_VIS_MODE;
|
|
float HSM_CAB_GLASS_FOLLOW_LAYER;
|
|
float HSM_CAB_GLASS_FOLLOW_MODE;
|
|
float HSM_CAB_GLASS_FOLLOW_FULL_USES_ZOOM;
|
|
float HSM_CAB_GLASS_FILL_MODE;
|
|
float HSM_CAB_GLASS_SPLIT_PRESERVE_CENTER;
|
|
float HSM_CAB_GLASS_SPLIT_REPEAT_WIDTH;
|
|
float HSM_CAB_GLASS_SCALE;
|
|
float HSM_CAB_GLASS_SCALE_X;
|
|
float HSM_CAB_GLASS_POS_X;
|
|
float HSM_CAB_GLASS_POS_Y;
|
|
float HSM_CAB_GLASS_MIPMAPPING_BLEND_BIAS;
|
|
|
|
// Top Image
|
|
float HSM_TOP_OPACITY;
|
|
float HSM_TOP_HUE;
|
|
float HSM_TOP_COLORIZE_ON;
|
|
float HSM_TOP_SATURATION;
|
|
float HSM_TOP_BRIGHTNESS;
|
|
float HSM_TOP_GAMMA;
|
|
float HSM_TOP_AMBIENT_LIGHTING_MULTIPLIER;
|
|
float HSM_TOP_AMBIENT2_LIGHTING_MULTIPLIER;
|
|
float HSM_TOP_APPLY_AMBIENT_IN_ADD_MODE;
|
|
float HSM_TOP_BLEND_MODE;
|
|
float HSM_TOP_SOURCE_MATTE_TYPE;
|
|
float HSM_TOP_MASK_MODE;
|
|
float HSM_TOP_CUTOUT_MODE;
|
|
float HSM_TOP_DUALSCREEN_VIS_MODE;
|
|
float HSM_TOP_FOLLOW_LAYER;
|
|
float HSM_TOP_FOLLOW_MODE;
|
|
float HSM_TOP_FOLLOW_FULL_USES_ZOOM;
|
|
float HSM_TOP_FILL_MODE;
|
|
float HSM_TOP_SPLIT_PRESERVE_CENTER;
|
|
float HSM_TOP_SPLIT_REPEAT_WIDTH;
|
|
float HSM_TOP_SCALE;
|
|
float HSM_TOP_SCALE_X;
|
|
float HSM_TOP_POS_X;
|
|
float HSM_TOP_POS_Y;
|
|
float HSM_TOP_MIRROR_WRAP;
|
|
float HSM_TOP_MIPMAPPING_BLEND_BIAS;
|
|
|
|
float HSM_RENDER_SIMPLE_MODE;
|
|
float HSM_RENDER_SIMPLE_MASK_TYPE;
|
|
float HSM_LAYERING_DEBUG_MASK_MODE;
|
|
|
|
float HSM_INTRO_LOGO_BLEND_MODE;
|
|
float HSM_INTRO_LOGO_FLIP_VERTICAL;
|
|
float HSM_INTRO_NOISE_BLEND_MODE;
|
|
float HSM_INTRO_NOISE_HOLD;
|
|
float HSM_INTRO_NOISE_FADE_OUT;
|
|
float HSM_INTRO_SOLID_BLACK_HOLD;
|
|
float HSM_INTRO_SOLID_BLACK_FADE_OUT;
|
|
float HSM_INTRO_SOLID_COLOR_BLEND_MODE;
|
|
float HSM_INTRO_LOGO_OVER_SOLID_COLOR;
|
|
float HSM_INTRO_LOGO_PLACEMENT;
|
|
float HSM_INTRO_LOGO_HEIGHT;
|
|
float HSM_INTRO_LOGO_POS_X;
|
|
float HSM_INTRO_LOGO_POS_Y;
|
|
float HSM_INTRO_WHEN_TO_SHOW;
|
|
float HSM_INTRO_SPEED;
|
|
float HSM_INTRO_LOGO_WAIT;
|
|
float HSM_INTRO_LOGO_FADE_IN;
|
|
float HSM_INTRO_LOGO_HOLD;
|
|
float HSM_INTRO_LOGO_FADE_OUT;
|
|
float HSM_INTRO_SOLID_COLOR_HUE;
|
|
float HSM_INTRO_SOLID_COLOR_SAT;
|
|
float HSM_INTRO_SOLID_COLOR_VALUE;
|
|
float HSM_INTRO_SOLID_COLOR_HOLD;
|
|
float HSM_INTRO_SOLID_COLOR_FADE_OUT;
|
|
|
|
// Guest-Dr-Venom Params
|
|
float GAMMA_INPUT;
|
|
float gamma_out;
|
|
float post_br;
|
|
float post_br_affect_black_level;
|
|
|
|
float m_glow;
|
|
float m_glow_low;
|
|
float m_glow_high;
|
|
float m_glow_dist;
|
|
float m_glow_mask;
|
|
float smask_mit;
|
|
|
|
float glow;
|
|
float bloom;
|
|
float mask_bloom;
|
|
float bloom_dist;
|
|
float halation;
|
|
|
|
|
|
float TATE;
|
|
float IOS;
|
|
float GDV_RASTER_BLOOM_ON;
|
|
float OS;
|
|
float BLOOM;
|
|
float GDV_OVERSCAN;
|
|
float GDV_OVERSCAN_X;
|
|
float GDV_OVERSCAN_Y;
|
|
float overscanX;
|
|
float overscanY;
|
|
float intres;
|
|
float prescalex;
|
|
float c_shape;
|
|
float sborder;
|
|
float csize;
|
|
float bsize1;
|
|
float warpX;
|
|
float warpY;
|
|
|
|
float gamma_c;
|
|
float brightboost;
|
|
float brightboost1;
|
|
|
|
float blendMode;
|
|
|
|
float gsl;
|
|
float scanline1;
|
|
float scanline2;
|
|
float beam_min;
|
|
float beam_max;
|
|
float beam_size;
|
|
float vertmask;
|
|
float scans;
|
|
float scan_falloff;
|
|
float spike;
|
|
float ring;
|
|
float no_scanlines;
|
|
float scangamma;
|
|
|
|
float rolling_scan;
|
|
|
|
float h_sharp;
|
|
float s_sharp;
|
|
float smart_ei;
|
|
float ei_limit;
|
|
float sth;
|
|
|
|
float barspeed;
|
|
float barintensity;
|
|
float bardir;
|
|
|
|
float shadowMask;
|
|
float maskstr;
|
|
float mcut;
|
|
float maskboost;
|
|
float masksize;
|
|
float masksizeautothreshold;
|
|
float maskDark;
|
|
float maskLight;
|
|
float mask_gamma;
|
|
float slotmask;
|
|
float slotmask1;
|
|
float slotwidth;
|
|
float double_slot;
|
|
float slotms;
|
|
float mclip;
|
|
float smoothmask;
|
|
float mshift;
|
|
float mask_layout;
|
|
|
|
float GDV_DECONVERGENCE_ON;
|
|
float decons;
|
|
float deconrr;
|
|
float deconrg;
|
|
float deconrb;
|
|
float deconrry;
|
|
float deconrgy;
|
|
float deconrby;
|
|
float deconsmooth;
|
|
float dctypex;
|
|
float dctypey;
|
|
float dcscalemode;
|
|
|
|
float GDV_NOISE_ON;
|
|
float addnoised;
|
|
float noisetype;
|
|
float noiseresd;
|
|
float noiseresd4kmult;
|
|
|
|
// Grade Params
|
|
float g_grade_on;
|
|
float wp_temperature;
|
|
float g_satr;
|
|
float g_satg;
|
|
float g_satb;
|
|
|
|
// Grade Afterglow Params
|
|
float AS;
|
|
float asat;
|
|
|
|
// Megatron Parameters
|
|
float hcrt_h_size;
|
|
float hcrt_v_size;
|
|
float hcrt_h_cent;
|
|
float hcrt_v_cent;
|
|
float hcrt_pin_phase;
|
|
float hcrt_pin_amp;
|
|
|
|
} global;
|
|
|
|
/////////////// DEFINES ///////////////
|
|
|
|
// Maximum Negative cropping fron each edge
|
|
// This means that the pass with the negative crop area
|
|
// added needs to have twice this much added in each direction
|
|
#define DEFAULT_CRT_GAMMA 2.4
|
|
#define DEFAULT_SRGB_GAMMA 2.2
|
|
|
|
#define DEFAULT_SCREEN_HEIGHT 0.8297
|
|
#define DEFAULT_SCREEN_HEIGHT_PORTRAIT_MULTIPLIER (DEFAULT_SCREEN_HEIGHT - 0.4792) / DEFAULT_SCREEN_HEIGHT
|
|
|
|
#define SHOW_ON_DUALSCREEN_MODE_BOTH 0
|
|
#define SHOW_ON_DUALSCREEN_MODE_SCREEN_1 1
|
|
#define SHOW_ON_DUALSCREEN_MODE_SCREEN_2 2
|
|
|
|
#define FOLLOW_LAYER_VIEWPORT 0
|
|
#define FOLLOW_LAYER_TUBE_DIFFUSE 1
|
|
#define FOLLOW_LAYER_BEZEL_OUTSIDE 2
|
|
#define FOLLOW_LAYER_BG 3
|
|
#define FOLLOW_LAYER_DEVICE 4
|
|
#define FOLLOW_LAYER_DECAL 5
|
|
#define FOLLOW_LAYER_CAB_GLASS 6
|
|
#define FOLLOW_LAYER_TOP 7
|
|
|
|
float FOLLOW_MODE_SCALE_AND_POS = 0;
|
|
float FOLLOW_MODE_EXACT = 1;
|
|
|
|
#define TEXTURE_ASPECT_MODE_VIEWPORT 0
|
|
#define TEXTURE_ASPECT_MODE_EXPLICIT 1
|
|
#define TEXTURE_ASPECT_MODE_4_3 2
|
|
#define TEXTURE_ASPECT_MODE_3_4 3
|
|
#define TEXTURE_ASPECT_MODE_16_9 4
|
|
#define TEXTURE_ASPECT_MODE_9_16 5
|
|
|
|
float NEGATIVE_CROP_EXPAND_MULTIPLIER = 0.5;
|
|
float MAX_NEGATIVE_CROP = 0.5;
|
|
|
|
// In square coordinate space
|
|
#define DEFAULT_UNCORRECTED_SCREEN_SCALE vec2(1.10585, 0.8296)
|
|
#define DEFAULT_UNCORRECTED_BEZEL_SCALE vec2(1.2050, 0.9110)
|
|
|
|
float DEFAULT_SCREEN_ASPECT = DEFAULT_UNCORRECTED_SCREEN_SCALE.x / DEFAULT_UNCORRECTED_SCREEN_SCALE.y;
|
|
float DEFAULT_BEZEL_ASPECT = DEFAULT_UNCORRECTED_BEZEL_SCALE.x / DEFAULT_UNCORRECTED_BEZEL_SCALE.y;
|
|
|
|
vec2 DEFAULT_SCREEN_SCALE = vec2(0);
|
|
vec2 DEFAULT_BEZEL_SCALE = vec2(0);
|
|
|
|
#define DEFAULT_SCREEN_CORNER_RADIUS 10
|
|
|
|
int INFOCACHE_MAX_INDEX = 4;
|
|
|
|
bool CACHE_INFO_CHANGED = false;
|
|
float CURRENT_FRAME_FROM_CACHE_INFO = 0;
|
|
|
|
float TUBE_DIFFUSE_MASK = 0;
|
|
float TUBE_MASK = 0;
|
|
float BEZEL_MASK = 0;
|
|
float INSIDE_BEZEL_MASK = 0;
|
|
float OUTSIDE_TUBE_MASK_FOR_IMAGE = 0;
|
|
float FRAME_MASK = 0;
|
|
float FRAME_MASK_FOR_IMAGE = 0;
|
|
float OUTSIDE_BEZEL_MASK = 0;
|
|
float OUTSIDE_FRAME_MASK_FOR_IMAGE = 0;
|
|
float OUTSIDE_FRAME_MASK = 0;
|
|
float CUTOUT_MASK = 0;
|
|
|
|
float SCREEN_INDEX = 1;
|
|
|
|
float SCREEN_ASPECT = 1;
|
|
vec2 SCREEN_SCALE = vec2(1);
|
|
vec2 SCREEN_SCALE_WITH_ZOOM = vec2(1);
|
|
vec2 SCREEN_POS_OFFSET = vec2(0.15);
|
|
vec2 SCREEN_SCALE_2ND_SCREEN = vec2(1);
|
|
|
|
vec2 SCREEN_POS_OFFSET_1ST_SCREEN = vec2(0.15);
|
|
vec2 SCREEN_POS_OFFSET_2ND_SCREEN = vec2(0.15);
|
|
|
|
vec2 VIEWPORT_SCALE = vec2(1);
|
|
vec2 VIEWPORT_POS = vec2(1);
|
|
vec2 TUBE_SCALE = vec2(1);
|
|
vec2 TUBE_DIFFUSE_SCALE = vec2(1);
|
|
float TUBE_DIFFUSE_ASPECT = 1;
|
|
|
|
vec2 TUBE_DIFFUSE_SCALE_1ST_SCREEN = vec2(1);
|
|
vec2 TUBE_DIFFUSE_SCALE_2ND_SCREEN = vec2(1);
|
|
|
|
vec2 FRAME_SCALE = vec2(1);
|
|
|
|
vec2 BEZEL_OUTSIDE_SCALE = vec2(0.5);
|
|
vec2 BACKGROUND_SCALE = vec2(0.5);
|
|
vec2 LED_SCALE = vec2(0.5);
|
|
vec2 DEVICE_SCALE = vec2(0.5);
|
|
vec2 DEVICELED_SCALE = vec2(0.5);
|
|
vec2 DECAL_SCALE = vec2(0.5);
|
|
vec2 CAB_GLASS_SCALE = vec2(0.5);
|
|
vec2 TOP_IMAGE_SCALE = vec2(0.5);
|
|
|
|
float AVERAGE_LUMA = 0;
|
|
float USE_VERTICAL_SCANLINES = 0;
|
|
float SAMPLING_SCANLINE_DIR_MULT = 0;
|
|
float SAMPLING_OPPOSITE_DIR_MULT = 0;
|
|
|
|
vec2 CORE_SIZE = vec2(1);
|
|
|
|
vec2 ROTATED_CORE_ORIGINAL_SIZE = vec2(1);
|
|
vec2 ROTATED_CORE_PREPPED_SIZE = vec2(1);
|
|
vec2 ROTATED_DEREZED_SIZE = vec2(1);
|
|
|
|
vec2 CROPPED_ROTATED_SIZE_WITH_RES_MULT = vec2(1);
|
|
vec2 CROPPED_ROTATED_SIZE_WITH_RES_MULT_FEEDBACK = vec2(1);
|
|
vec2 CROPPED_ROTATED_SIZE = vec2(1);
|
|
vec2 SAMPLE_AREA_START_PIXEL_COORD = vec2(1);
|
|
|
|
vec2 SCREEN_SIZE = vec2(1);
|
|
|
|
vec2 VIEWPORT_UNSCALED_COORD = vec2(0.5);
|
|
vec2 SCREEN_COORD = vec2(0.5);
|
|
vec2 TUBE_COORD = vec2(0.5);
|
|
vec2 TUBE_DIFFUSE_COORD = vec2(0.5);
|
|
vec2 TUBE_DIFFUSE_COORD_MIXED_POS = vec2(0.5);
|
|
vec2 BEZEL_OUTSIDE_COORD = vec2(0.5);
|
|
vec2 BACKGROUND_COORD = vec2(0.5);
|
|
vec2 DEVICE_COORD = vec2(0.5);
|
|
vec2 DEVICELED_COORD = vec2(0.5);
|
|
vec2 LED_COORD = vec2(0.5);
|
|
vec2 DECAL_COORD = vec2(0.5);
|
|
vec2 CAB_GLASS_COORD = vec2(0.5);
|
|
vec2 TOP_IMAGE_COORD = vec2(0.5);
|
|
|
|
vec2 SCREEN_CURVED_COORD = vec2(0.5);
|
|
vec2 TUBE_CURVED_COORD = vec2(0.5);
|
|
vec2 TUBE_DIFFUSE_CURVED_COORD = vec2(0.5);
|
|
vec2 BEZEL_OUTSIDE_CURVED_COORD = vec2(0.5);
|
|
vec2 FRAME_OUTSIDE_CURVED_COORD = vec2(0.5);
|
|
|
|
vec2 BACKGROUND_CURVED_COORD = vec2(0.5);
|
|
vec2 LED_CURVED_COORD = vec2(0.5);
|
|
vec2 DEVICE_CURVED_COORD = vec2(0.5);
|
|
vec2 DEVICELED_CURVED_COORD = vec2(0.5);
|
|
vec2 DECAL_CURVED_COORD = vec2(0.5);
|
|
vec2 CAB_GLASS_CURVED_COORD = vec2(0.5);
|
|
vec2 TOP_IMAGE_CURVED_COORD = vec2(0.5);
|
|
|