1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- //---------------------------------------------------------
- //Native exceptions - legacy methods for direct access to specific postprocesses. Each one is evaluated and handled separately, this just connects them to the system.
- //!g_Game.NightVissionLightParams, does not directly use materials. Controls light multiplication and filmgrain noise intensity (multiplier)
- class PPELightIntensityParamsNative: PPEClassBase
- {
- //g_Game.SetEVValue
- static const int PARAM_LIGHT_MULT = 0;
- static const int PARAM_NOISE_MULT = 1;
-
- static const int L_0_NVG = 100;
- static const int L_0_TOXIC_TINT = 200;
- static const int L_1_NVG = 100;
- static const int L_1_TOXIC_TINT = 200;
-
- override int GetPostProcessEffectID()
- {
- return PPEExceptions.NVLIGHTPARAMS;
- }
-
- override void RegisterMaterialParameters()
- {
- RegisterParameterScalarFloat(PARAM_LIGHT_MULT,"lightIntensityMul",1.0,0.0,50.0); //some reasonable values
- RegisterParameterScalarFloat(PARAM_NOISE_MULT,"noiseIntensity",0.0,0.0,50.0); //some reasonable values
- }
-
- override void ApplyValueChanges()
- {
- if (m_UpdatedParameters.Count() > 0)
- {
- SetFinalParameterValue(-1); //unique handling
- }
-
- m_UpdatedParameters.Clear();
- }
-
- //! Overriden to handle the specific exception
- override void SetFinalParameterValue(int parameter_idx)
- {
- array<float> array_values = new array<float>;
-
- for (int i = 0; i < PARAM_NOISE_MULT + 1; i++)
- {
- Param values = GetParameterCommandData(i).GetCurrentValues();
- float value_var_float = Param1<float>.Cast(values).param1;
- array_values.Insert(value_var_float);
- }
-
- g_Game.NightVissionLightParams(array_values.Get(PARAM_LIGHT_MULT),array_values.Get(PARAM_NOISE_MULT));
-
- //DbgPrnt("PPEDebug | SetFinalParameterValue | PPELightIntensityParamsNative | float val: " + value_var_float);
- }
- }
|