ppeexposurenative.c 1.2 KB

123456789101112131415161718192021222324252627282930313233343536
  1. //---------------------------------------------------------
  2. //Native exceptions - legacy methods for direct access to specific postprocesses. Each one is evaluated and handled separately, this just connects them to the system.
  3. //!EV postprocess, does not directly use materials
  4. class PPEExposureNative: PPEClassBase
  5. {
  6. //g_Game.SetEVValue
  7. static const int PARAM_INTENSITY = 0;
  8. static const int L_0_NVG_OPTIC = 100;
  9. static const int L_0_NVG_GOGGLES = 200;
  10. static const int L_0_NVG_OFF = 300;
  11. static const int L_0_FLASHBANG = 400;
  12. static const int L_0_BURLAP = 500;
  13. static const int L_0_DEATH = 1000;
  14. override int GetPostProcessEffectID()
  15. {
  16. return PPEExceptions.EXPOSURE;
  17. }
  18. override void RegisterMaterialParameters()
  19. {
  20. RegisterParameterScalarFloat(PARAM_INTENSITY,"Intensity",0.0,-100.0,100.0); //no real range, it seems. -100..100 used
  21. }
  22. //! Overriden to handle the specific exception
  23. override void SetFinalParameterValue(int parameter_idx)
  24. {
  25. Param values = GetParameterCommandData(parameter_idx).GetCurrentValues();
  26. float value_var_float = Param1<float>.Cast(values).param1;
  27. g_Game.SetEVValue(value_var_float);
  28. //DbgPrnt("PPEDebug | SetFinalParameterValue | PPEExposureNative | float val: " + value_var_float);
  29. }
  30. }