19 me.configureDialog(me);
25 if(
cvar(
"r_shadow_realtime_dlight"))
26 if(
cvar(
"r_shadow_realtime_dlight_shadows"))
28 if(
cvar(
"r_shadow_realtime_world"))
29 if(
cvar(
"r_shadow_realtime_world_shadows"))
38 effectsApplyButton.disableOnClick =
true;
43 if(
cvar(
"developer") > 0)
46 e.applyButton = effectsApplyButton;
49 e.applyButton = effectsApplyButton;
51 e.applyButton = effectsApplyButton;
53 e.applyButton = effectsApplyButton;
55 e.applyButton = effectsApplyButton;
57 e.applyButton = effectsApplyButton;
58 if(
cvar(
"developer") > 0)
61 e.applyButton = effectsApplyButton;
64 me.gotoRC(me, 1.25, 0);
67 _(
"Change the smoothness of the curves on the map")));
68 e.addValue(e,
ZCTX(_(
"DET^Lowest")),
"16");
69 e.addValue(e,
ZCTX(_(
"DET^Low")),
"8");
70 e.addValue(e,
ZCTX(_(
"DET^Normal")),
"4");
71 e.addValue(e,
ZCTX(_(
"DET^Good")),
"3");
72 e.addValue(e,
ZCTX(_(
"DET^Best")),
"2");
73 e.addValue(e,
ZCTX(_(
"DET^Insane")),
"1");
74 e.configureXonoticTextSliderValues(e);
75 e.applyButton = effectsApplyButton;
79 e.addValue(e,
ZCTX(_(
"PDET^Low")),
"4");
80 e.addValue(e,
ZCTX(_(
"PDET^Medium")),
"3");
81 e.addValue(e,
ZCTX(_(
"PDET^Normal")),
"2");
82 e.addValue(e,
ZCTX(_(
"PDET^Good")),
"1");
83 e.addValue(e,
ZCTX(_(
"PDET^Best")),
"0");
84 e.configureXonoticTextSliderValues(e);
85 e.applyButton = effectsApplyButton;
90 if(
cvar(
"developer") > 0)
91 e.addValue(e,
ZCTX(_(
"RES^Leet")),
"1337");
92 e.addValue(e,
ZCTX(_(
"RES^Lowest")),
"3");
93 e.addValue(e,
ZCTX(_(
"RES^Very low")),
"2");
94 e.addValue(e,
ZCTX(_(
"RES^Low")),
"1");
95 e.addValue(e,
ZCTX(_(
"RES^Normal")),
"0");
96 e.addValue(e,
ZCTX(_(
"RES^Good")),
"-1");
97 e.addValue(e,
ZCTX(_(
"RES^Best")),
"-2");
98 e.configureXonoticTextSliderValues(e);
100 e.applyButton = effectsApplyButton;
110 me.TD(me, 1, 2.8, e =
makeXonoticCheckBox(1,
"r_texture_dds_load", _(
"Avoid lossy texture compression")));
112 e.applyButton = effectsApplyButton;
115 me.TD(me, 1, 2.8, e =
makeXonoticCheckBox(1,
"r_texture_dds_load", _(
"Avoid lossy texture compression")));
117 e.applyButton = effectsApplyButton;
120 me.TD(me, 1, 2.8, e =
makeXonoticCheckBox(1,
"r_texture_dds_load", _(
"Avoid lossy texture compression")));
123 e.applyButton = effectsApplyButton;
129 me.TD(me, 1, 1, e =
makeXonoticCheckBoxEx_T(1, 0,
"r_sky", _(
"Show sky"), _(
"Disable sky for performance and visibility")));
130 if(
cvar(
"developer") > 0)
133 _(
"Disable textures completely for very slow hardware. This gives a huge performance boost, but looks very ugly.")));
137 _(
"Use high resolution lightmaps, which will look pretty but use up some extra video memory")));
138 e.applyButton = effectsApplyButton;
140 _(
"Use per-pixel lighting effects")));
143 _(
"Enable the use of glossmaps on textures supporting it")));
144 setDependentAND3(e,
"vid_gl20", 1, 1,
"mod_q3bsp_nolightmaps", 0, 0,
"r_glsl_deluxemapping", 1, 1);
147 _(
"Offset mapping effect that will make textures with bumpmaps appear like they \"pop out\" of the flat 2D surface")));
149 me.TD(me, 1, 1, e =
makeXonoticCheckBox_T(0,
"r_glsl_offsetmapping_reliefmapping", _(
"Relief mapping"),
150 _(
"Higher quality offset mapping, which also has a huge impact on performance")));
154 _(
"Reflection and refraction quality, has a huge impact on performance on maps with reflecting surfaces")));
157 _(
"Resolution of reflections/refractions")));
158 e.addValue(e, _(
"Blurred"),
"0.25");
159 e.addValue(e,
ZCTX(_(
"REFL^Good")),
"0.5");
160 e.addValue(e, _(
"Sharp"),
"1");
161 e.configureXonoticTextSliderValues(e);
165 _(
"Enable decals (bullet holes and blood)")));
173 _(
"Decals further away than this will not be drawn")));
180 _(
"Time in seconds before decals fade away")));
186 e.addValue(e,
ZCTX(_(
"DMGFX^Disabled")),
"0");
187 e.addValue(e, _(
"Skeletal"),
"1");
188 e.addValue(e,
ZCTX(_(
"DMGFX^All")),
"2");
189 e.configureXonoticTextSliderValues(e);
191 me.gotoRC(me, 1.25, 3.2); me.setFirstColumn(me, me.currentColumn);
193 _(
"Enable corona flares around certain lights")));
196 _(
"Enable faster but uglier dynamic lights by rendering bright coronas instead of real dynamic lights")));
200 _(
"Enable rendering of dynamic lights such as explosions and rocket lights")));
203 _(
"Enable rendering of shadows from dynamic lights")));
206 me.TD(me, 1, 2, e =
makeXonoticCheckBox_T(0,
"r_shadow_realtime_world", _(
"Realtime world lighting"),
207 _(
"Enable rendering of full realtime world lighting on maps that support it. Note that this might have a big impact on performance.")));
209 _(
"Enable rendering of shadows from realtime world lights")));
214 _(
"Enable use of directional shading on textures")));
215 setDependentOR(e,
"r_shadow_realtime_dlight", 1, 1,
"r_shadow_realtime_world", 1, 1);
220 me.TD(me, 1, 2.8, e =
makeXonoticCheckBox_T(0,
"r_coronas_occlusionquery", _(
"Fade corona according to visibility"),
221 _(
"Fade coronas according to visibility")));
226 _(
"Enable bloom effect, which brightens the neighboring pixels of very bright pixels. Has a big impact on performance.")));
227 me.TD(me, 1, 2, e =
makeXonoticCheckBoxEx_T(0.5, 0,
"hud_postprocessing_maxbluralpha", _(
"Extra postprocessing effects"),
228 _(
"Enables special postprocessing effects for when damaged or under water or using a powerup")));
233 _(
"Motion blur strength - 0.4 recommended"));
235 if(s.value != e.savedValue)
242 _(
"Particles effects at all spawn points and whenever a player spawns")));
243 makeMulti(e,
"cl_spawn_event_particles");
250 _(
"Multiplier for amount of particles. Less means less particles, which in turn gives for better performance")));
257 _(
"Particles further away than this will not be drawn")));
260 me.gotoRC(me, me.rows - 1, 0);
261 me.TD(me, 1, me.columns, effectsApplyButton);
entity makeXonoticTextLabel(float theAlign, string theText)
entity makeXonoticTextSlider_T(string theCvar, string theTooltip)
entity makeXonoticPicmipSlider()
float someShadowCvarIsEnabled(entity box)
entity makeXonoticCheckBoxEx_T(float theYesValue, float theNoValue, string theCvar, string theText, string theTooltip)
entity makeXonoticSlider_T(float theValueMin, float theValueMax, float theValueStep, string theCvar, string theTooltip)
entity makeXonoticCheckBox_T(float isInverted, string theCvar, string theText, string theTooltip)
entity makeXonoticSliderCheckBox(float theOffValue, float isInverted, entity theControlledSlider, string theText)
entity makeXonoticTextSlider(string theCvar)
entity makeXonoticCheckBox(float isInverted, string theCvar, string theText)
entity makeXonoticEffectsSettingsTab()
void XonoticEffectsSettingsTab_fill(entity me)