DayZ 1.24
Loading...
Searching...
No Matches
PPELightIntensityParamsNative Class Reference

g_Game.NightVissionLightParams, does not directly use materials. Controls light multiplication and filmgrain noise intensity (multiplier) More...

Inheritance diagram for PPELightIntensityParamsNative:
[legend]
Collaboration diagram for PPELightIntensityParamsNative:
[legend]

Private Member Functions

override int GetPostProcessEffectID ()
 
override void RegisterMaterialParameters ()
 
override void ApplyValueChanges ()
 
override void SetFinalParameterValue (int parameter_idx)
 Overriden to handle the specific exception.
 
- Private Member Functions inherited from PPEClassBase
void PPEClassBase (string mat_path_override="")
 
void Init (string mat_path_override="")
 
void CreateMaterial ()
 
Material GetMaterial ()
 
void CreateDataStructure ()
 
void RegisterMaterialParameters ()
 inserted into associative array by parameter int value, parameter registration order does not matter (still ordered, though)
 
void RegisterParameterScalarBool (int idx, string parameter_name, bool default_value)
 
void RegisterParameterScalarInt (int idx, string parameter_name, int default_value, int min, int max)
 
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 the renderer can handle! When in doubt, try some higher/lower values...
 
void RegisterParameterScalarFloatEx (int idx, string parameter_name, float default_value, float min, float max, typename type)
 WARNING - min/max values are usually taken from Workbench defaults, may not be actual min/max values the renderer can handle! When in doubt, try some higher/lower values...
 
void RegisterParameterColor (int idx, string parameter_name, float r, float g, float b, float a)
 WARNING - min/max values are usually taken from Workbench defaults, may not be actual min/max values the renderer can handle! When in doubt, try some higher/lower values...
 
void RegisterParameterColorEx (int idx, string parameter_name, float r, float g, float b, float a, typename type)
 WARNING - min/max values are usually taken from Workbench defaults, may not be actual min/max values the renderer can handle! When in doubt, try some higher/lower values...
 
void RegisterParameterVector (int idx, string parameter_name, array< float > default_values)
 
void RegisterParameterTexture (int idx, string parameter_name, string default_path)
 
void RegisterParameterResource (int idx, string parameter_name, string default_path)
 
void InsertParamValueData (PPERequestParamDataBase request_data)
 Distributes requester data to the material class structure and links them to appropriate parameter.
 
void RemoveRequest (int req_idx)
 unused, see 'RemoveActiveRequestFromMaterials' for more info
 
void OnUpdate (float timeslice, int order)
 generic update method, take care when overriding!
 
void SetFinalParameterValue (int parameter_idx)
 Clamps the values being set to defaults, if there is no request setting non-zero values on the parameter.
 
void ApplyValueChanges ()
 
void InsertUpdatedParameter (int mat_id)
 
void ParamUpdateRemove (int parameter_idx)
 Queue selected parameter for removal from the update queue.
 
void SetParameterUpdating (int order, int parameter_id)
 Queue specific parameter of this material to update.
 
void ParamUpdateQueueCleanup (int order)
 
string GetDefaultMaterialPath ()
 override this if you want to use different path by default; '.emat' is appended automatically
 
void ChangeMaterialPathUsed (string path)
 
string GetCurrentMaterialPath ()
 
int GetPostProcessEffectID ()
 Overriden in all material classes!
 
PPEMatClassParameterCommandData GetParameterCommandData (int parameter_idx)
 Some PP effects are handled as hard-coded exceptions, outside of material system. Default == PPEExceptions.NONE (systemic behaviour)
 
void DbgPrnt (string text)
 

Static Private Attributes

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
 

Additional Inherited Members

- Private Attributes inherited from PPEClassBase
PPEManager m_Manager
 
string m_MaterialPath = ""
 
Material m_Material
 
ref map< int, ref array< int > > m_ParameterUpdateQueueMap
 
ref array< intm_ParameterRemovalQueue
 
ref array< intm_UpdatedParameters
 
ref map< int, ref PPEMatClassParameterCommandDatam_MaterialParamMapStructure
 

Detailed Description

g_Game.NightVissionLightParams, does not directly use materials. Controls light multiplication and filmgrain noise intensity (multiplier)

Definition at line 5 of file PPELightIntensityParamsNative.c.

Member Function Documentation

◆ ApplyValueChanges()

override void PPELightIntensityParamsNative::ApplyValueChanges ( )
inlineprivate

Definition at line 27 of file PPELightIntensityParamsNative.c.

28 {
29 if (m_UpdatedParameters.Count() > 0)
30 {
31 SetFinalParameterValue(-1); //unique handling
32 }
33
34 m_UpdatedParameters.Clear();
35 }
ref array< int > m_UpdatedParameters
override void SetFinalParameterValue(int parameter_idx)
Overriden to handle the specific exception.

References PPEClassBase::m_UpdatedParameters, and SetFinalParameterValue().

◆ GetPostProcessEffectID()

override int PPELightIntensityParamsNative::GetPostProcessEffectID ( )
inlineprivate

Definition at line 16 of file PPELightIntensityParamsNative.c.

17 {
18 return PPEExceptions.NVLIGHTPARAMS;
19 }
PPEExceptions

◆ RegisterMaterialParameters()

override void PPELightIntensityParamsNative::RegisterMaterialParameters ( )
inlineprivate

Definition at line 21 of file PPELightIntensityParamsNative.c.

22 {
23 RegisterParameterScalarFloat(PARAM_LIGHT_MULT, "lightIntensityMul", 1.0, 0.0, 50.0); //some reasonable values
24 RegisterParameterScalarFloat(PARAM_NOISE_MULT, "noiseIntensity", 0.0, 0.0, 50.0); //some reasonable values
25 }
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 ...

References PARAM_LIGHT_MULT, PARAM_NOISE_MULT, and PPEClassBase::RegisterParameterScalarFloat().

◆ SetFinalParameterValue()

override void PPELightIntensityParamsNative::SetFinalParameterValue ( int parameter_idx)
inlineprivate

Overriden to handle the specific exception.

Definition at line 38 of file PPELightIntensityParamsNative.c.

39 {
41
42 for (int i = 0; i < PARAM_NOISE_MULT + 1; i++)
43 {
45 float value_var_float = Param1<float>.Cast(values).param1;
47 }
48
49 g_Game.NightVissionLightParams(array_values.Get(PARAM_LIGHT_MULT), array_values.Get(PARAM_NOISE_MULT));
50
51 //DbgPrnt("PPEDebug | SetFinalParameterValue | PPELightIntensityParamsNative | float val: " + value_var_float);
52 }
DayZGame g_Game
Definition DayZGame.c:3528
PPEMatClassParameterCommandData GetParameterCommandData(int parameter_idx)
Some PP effects are handled as hard-coded exceptions, outside of material system. Default == PPEExcep...
Param GetCurrentValues()
Careful, only actual values, WITHOUT string.
Base Param Class with no parameters. Used as general purpose parameter overloaded with Param1 to Para...
Definition param.c:12

References g_Game, PPEMatClassParameterCommandData::GetCurrentValues(), PPEClassBase::GetParameterCommandData(), PARAM_LIGHT_MULT, and PARAM_NOISE_MULT.

Referenced by ApplyValueChanges().

Member Data Documentation

◆ L_0_NVG

const int PPELightIntensityParamsNative::L_0_NVG = 100
staticprivate

◆ L_0_TOXIC_TINT

const int PPELightIntensityParamsNative::L_0_TOXIC_TINT = 200
staticprivate

Definition at line 12 of file PPELightIntensityParamsNative.c.

◆ L_1_NVG

const int PPELightIntensityParamsNative::L_1_NVG = 100
staticprivate

◆ L_1_TOXIC_TINT

const int PPELightIntensityParamsNative::L_1_TOXIC_TINT = 200
staticprivate

Definition at line 14 of file PPELightIntensityParamsNative.c.

◆ PARAM_LIGHT_MULT

const int PPELightIntensityParamsNative::PARAM_LIGHT_MULT = 0
staticprivate

◆ PARAM_NOISE_MULT

const int PPELightIntensityParamsNative::PARAM_NOISE_MULT = 1
staticprivate

The documentation for this class was generated from the following file: