2 CLASS(NexuizVideoSettingsTab) EXTENDS(NexuizTab)
3 METHOD(NexuizVideoSettingsTab, fill, void(entity))
4 ATTRIB(NexuizVideoSettingsTab, title, string, "Video")
5 ATTRIB(NexuizVideoSettingsTab, intendedWidth, float, 0.9)
6 ATTRIB(NexuizVideoSettingsTab, rows, float, 15)
7 ATTRIB(NexuizVideoSettingsTab, columns, float, 6.5)
8 ENDCLASS(NexuizVideoSettingsTab)
9 entity makeNexuizVideoSettingsTab();
13 entity makeNexuizVideoSettingsTab()
16 me = spawnNexuizVideoSettingsTab();
17 me.configureDialog(me);
20 void fillNexuizVideoSettingsTab(entity me)
25 me.TD(me, 1, 1, e = makeNexuizTextLabel(0, "Resolution:"));
26 me.TD(me, 1, 2, e = makeNexuizResolutionSlider());
28 me.TD(me, 1, 1, e = makeNexuizTextLabel(0, "Color depth:"));
29 me.TD(me, 1, 2, e = makeNexuizSlider(16, 32, 16, "vid_bitsperpixel"));
31 me.TD(me, 1, 1, e = makeNexuizCheckBox(0, "vid_fullscreen", "Full screen"));
32 me.TD(me, 1, 2, e = makeNexuizCheckBox(0, "vid_vsync", "Vertical synchronization"));
37 me.TD(me, 1, 3, e = makeNexuizCheckBox(0, "r_glsl", "Use OpenGL 2.0 shaders (GLSL)"));
39 me.TD(me, 1, 3, e = makeNexuizCheckBox(0, "gl_vbo", "Use Vertex Buffer Objects (VBO)"));
41 me.TD(me, 1, 1.5, e = makeNexuizTextLabel(0, "Texture compression"));
42 me.TD(me, 1, 0.5, e = makeNexuizRadioButton(1, "gl_texturecompression", "0", "None"));
43 me.TD(me, 1, 0.5, e = makeNexuizRadioButton(1, "gl_texturecompression", "1", "Fast"));
44 me.TD(me, 1, 0.5, e = makeNexuizRadioButton(1, "gl_texturecompression", "2", "Good"));
49 me.TD(me, 1, 1, e = makeNexuizTextLabel(0, "Depth first:"));
50 me.TD(me, 1, 2, e = makeNexuizTextSlider("r_depthfirst"));
51 e.addValue(e, "Disabled", "0");
52 e.addValue(e, "World", "1");
53 e.addValue(e, "All", "2");
54 e.configureNexuizTextSliderValues(e);
57 if(cvar_defstring("apple_multithreadedgl") != "") // FIXME can this check against string_null too?
58 me.TD(me, 1, 3, e = makeNexuizCheckBox(1, "apple_multithreadedgl", "Disable multithreaded OpenGL"));
61 me.TD(me, 1, 3, e = makeNexuizCheckBox(0, "gl_finish", "Wait for GPU to finish each frame"));
66 me.TD(me, 1, 3, e = makeNexuizCheckBox(0, "showfps", "Show frames per second"));
68 me.gotoXY(me, 0, 3.5); me.setFirstColumn(me, me.currentColumn);
69 me.TD(me, 1, 1, e = makeNexuizTextLabel(0, "Brightness:"));
70 me.TD(me, 1, 2, e = makeNexuizSlider(0.0, 0.5, 0.02, "v_brightness"));
72 me.TD(me, 1, 1, e = makeNexuizTextLabel(0, "Contrast:"));
73 me.TD(me, 1, 2, e = makeNexuizSlider(1.0, 3.0, 0.05, "v_contrast"));
75 me.TD(me, 1, 1, e = makeNexuizCheckBox(0, "v_hwgamma", "HW Gamma:"));
76 me.TD(me, 1, 2, e = makeNexuizSlider(0.5, 2.0, 0.05, "v_gamma"));
77 setDependent(e, "v_hwgamma", 1, 1);
81 me.TD(me, 1, 1, e = makeNexuizTextLabel(0, "Ambient lighting:"));
82 me.TD(me, 1, 2, e = makeNexuizSlider(0, 20.0, 1.0, "r_ambient"));
84 me.TD(me, 1, 1, e = makeNexuizTextLabel(0, "Scene brightness:"));
85 me.TD(me, 1, 2, e = makeNexuizSlider(0.5, 2.0, 0.05, "r_hdr_scenebrightness"));
87 me.TD(me, 1, 1, e = makeNexuizTextLabel(0, "Contrast boost:"));
88 setDependent(e, "r_glsl", 1, 1);
89 me.TD(me, 1, 2, e = makeNexuizSlider(1.0, 5.0, 0.1, "r_glsl_contrastboost"));
90 setDependent(e, "r_glsl", 1, 1);
92 me.gotoXY(me, me.rows - 1, 0);
93 me.TD(me, 1, me.columns, makeNexuizCommandButton("Apply immediately", '0 0 0', "vid_restart", COMMANDBUTTON_APPLY));