DayZ 1.24
Loading...
Searching...
No Matches
PPESSAO.c
Go to the documentation of this file.
1
3{
4 static const int POSTPROCESS_OPTION_VALUE_LOW = 0;
5 static const int POSTPROCESS_OPTION_VALUE_MEDIUM = 1;
6 static const int POSTPROCESS_OPTION_VALUE_HIGH = 2;
7 static const int POSTPROCESS_OPTION_VALUE_HIGHEST = 3;
8
9 static const int PARAM_NUMPASSES = 0;
10 static const int PARAM_INTENSITY = 1;
11 static const int PARAM_RADIUSNEAR = 2;
12 static const int PARAM_RADIUSFAR = 3;
13 static const int PARAM_COSANGLE0 = 4;
14 static const int PARAM_COSANGLE1 = 5;
15 static const int PARAM_MAXDISTANCE = 6;
16 static const int PARAM_MAXBLURDISTANCE = 7;
17 static const int PARAM_NEARINTENSITY = 8;
18 static const int PARAM_FARINTENSITY = 9;
19 static const int PARAM_FARINTENSITYDIST = 10;
20 static const int PARAM_NUMBLURPASSES = 11;
21 static const int PARAM_BLURSIZE = 12;
22 static const int PARAM_COLORAMOUNT = 13;
23 static const int PARAM_COLORSSAOAMOUNT = 14;
24
26 {
27 return PostProcessEffectType.SSAO;
28 }
29
30 override string GetDefaultMaterialPath()
31 {
32 //return "Graphics/Materials/postprocess/hbao"; //"default-default", with no option taken into account (c++)
34
35 ListOptionsAccess loa = ListOptionsAccess.Cast(options.GetOptionByType(OptionAccessType.AT_POSTPROCESS_EFFECTS));
36 string ret = "";
37 switch (loa.GetIndex())
38 {
40 ret = "Graphics/Materials/postprocess/hbao_low";
41 break;
42
44 ret = "Graphics/Materials/postprocess/hbao_medium";
45 break;
46
48 ret = "Graphics/Materials/postprocess/hbao_high";
49 break;
50
52 ret = "Graphics/Materials/postprocess/hbao_highest";
53 break;
54 }
55 return ret;
56 }
57
58 //TODO - defaults are taken from c++ directly, instead of material files! Add support for options switching
60 {
61 RegisterParameterScalarInt(PARAM_NUMPASSES, "NumPasses", 2, 2, 8);
62 RegisterParameterScalarFloat(PARAM_INTENSITY, "Intensity", 15.0, 0.0, 1000.0);
63 RegisterParameterScalarFloat(PARAM_RADIUSNEAR, "RadiusNear", 60.0, 0.0, 200.0);
64 RegisterParameterScalarFloat(PARAM_RADIUSFAR, "RadiusFar", 5.0, 0.0, 200.0);
65 RegisterParameterScalarFloat(PARAM_COSANGLE0, "CosAngle0", 0.1, 0.0, 2.0);
66 RegisterParameterScalarFloat(PARAM_COSANGLE1, "CosAngle1", 1.0, 0.0, 2.0);
67 RegisterParameterScalarFloat(PARAM_MAXDISTANCE, "MaxDistance", 1.5, 0.0, 10000.0);
68 RegisterParameterScalarFloat(PARAM_MAXBLURDISTANCE, "MaxBlurDistance", 0.2, 0.0, 10.0);
69 RegisterParameterScalarFloat(PARAM_NEARINTENSITY, "NearIntensity", 0.2, 0.0, 1.0);
70 RegisterParameterScalarFloat(PARAM_FARINTENSITY, "FarIntensity", 5.0, 0.0, 20.0);
71 RegisterParameterScalarFloat(PARAM_FARINTENSITYDIST, "FarIntensityDistance", 20.0, 0.0, 1000.0);
72 RegisterParameterScalarInt(PARAM_NUMBLURPASSES, "NumBlurPasses", 1, 0, 8);
73 RegisterParameterScalarInt(PARAM_BLURSIZE, "BlurSize", 1.0, 1.0, 4.0);
74 RegisterParameterScalarFloat(PARAM_COLORAMOUNT, "ColorAmount", 0.5, 0.0, 1.0);
75 RegisterParameterScalarFloat(PARAM_COLORSSAOAMOUNT, "ColorSsaoAmount", 0.25, 0.0, 1.0);
76 }
77};
Created once, on manager init. Script-side representation of C++ material class, separate handling.
void RegisterParameterScalarFloat(int idx, string parameter_name, float default_value, float min, float max)
WARNING - min/max values are usually taken from Workbench defaults, may not be actual min/max values ...
void RegisterParameterScalarInt(int idx, string parameter_name, int default_value, int min, int max)
SSAO - PostProcessEffectType.SSAO.
Definition PPESSAO.c:3
override string GetDefaultMaterialPath()
Definition PPESSAO.c:30
static const int PARAM_RADIUSFAR
Definition PPESSAO.c:12
static const int PARAM_NEARINTENSITY
Definition PPESSAO.c:17
static const int POSTPROCESS_OPTION_VALUE_HIGH
Definition PPESSAO.c:6
static const int PARAM_RADIUSNEAR
Definition PPESSAO.c:11
static const int PARAM_NUMPASSES
Definition PPESSAO.c:9
static const int PARAM_COSANGLE1
Definition PPESSAO.c:14
override int GetPostProcessEffectID()
Definition PPESSAO.c:25
static const int PARAM_FARINTENSITYDIST
Definition PPESSAO.c:19
static const int POSTPROCESS_OPTION_VALUE_LOW
Definition PPESSAO.c:4
static const int PARAM_BLURSIZE
Definition PPESSAO.c:21
static const int POSTPROCESS_OPTION_VALUE_MEDIUM
Definition PPESSAO.c:5
static const int PARAM_COSANGLE0
Definition PPESSAO.c:13
static const int PARAM_INTENSITY
Definition PPESSAO.c:10
static const int PARAM_MAXDISTANCE
Definition PPESSAO.c:15
static const int POSTPROCESS_OPTION_VALUE_HIGHEST
Definition PPESSAO.c:7
static const int PARAM_MAXBLURDISTANCE
Definition PPESSAO.c:16
static const int PARAM_COLORAMOUNT
Definition PPESSAO.c:22
static const int PARAM_FARINTENSITY
Definition PPESSAO.c:18
static const int PARAM_NUMBLURPASSES
Definition PPESSAO.c:20
override void RegisterMaterialParameters()
Definition PPESSAO.c:59
static const int PARAM_COLORSSAOAMOUNT
Definition PPESSAO.c:23
OptionAccessType
C++ OptionAccessType.
Definition gameplay.c:1182
PostProcessEffectType
Post-process effect type.
Definition EnWorld.c:72