BVB Source Codes

CRYENGINE Show MaterialEffectsDebug.h Source code

Return Download CRYENGINE: download MaterialEffectsDebug.h Source code - Download CRYENGINE Source code - Type:.h
  1. // Copyright 2001-2016 Crytek GmbH / Crytek Group. All rights reserved.
  2.  
  3. // ----------------------------------------------------------------------------------------
  4. //  File name:   MaterialEffectsDebug.h
  5. //  Description: MaterialEffects debug utility class
  6. //
  7. ////////////////////////////////////////////////////////////////////////////////////////////
  8.  
  9. #ifndef _MATERIAL_EFFECTS_DEBUG_H_
  10. #define _MATERIAL_EFFECTS_DEBUG_H_
  11.  
  12. #pragma once
  13.  
  14. #include <CryAction/IMaterialEffects.h>
  15.  
  16. class CMaterialEffects;
  17.  
  18. namespace MaterialEffectsUtils
  19. {
  20.  
  21. #ifdef MATERIAL_EFFECTS_DEBUG
  22.  
  23. class CVisualDebug
  24. {
  25. private:
  26.  
  27.         struct SDebugVisualEntry
  28.         {
  29.                 SDebugVisualEntry()
  30.                         : lifeTime(0.0f)
  31.                         , fxId(InvalidEffectId)
  32.                         , materialName1("")
  33.                         , materialName2("")
  34.                 {
  35.  
  36.                 }
  37.  
  38.                 CryFixedStringT<32> materialName1;
  39.                 CryFixedStringT<32> materialName2;
  40.  
  41.                 Vec3                fxPosition;
  42.                 Vec3                fxDirection;
  43.  
  44.                 float               lifeTime;
  45.  
  46.                 TMFXEffectId        fxId;
  47.         };
  48.  
  49.         struct SLastSearchHint
  50.         {
  51.                 SLastSearchHint()
  52.                 {
  53.                         Reset();
  54.                 }
  55.  
  56.                 void Reset()
  57.                 {
  58.                         materialName1 = "";
  59.                         materialName2 = "";
  60.                         fxId = InvalidEffectId;
  61.                 }
  62.  
  63.                 CryFixedStringT<32> materialName1;
  64.                 CryFixedStringT<32> materialName2;
  65.  
  66.                 TMFXEffectId        fxId;
  67.         };
  68.  
  69. public:
  70.  
  71.         CVisualDebug()
  72.                 : m_nextHit(0)
  73.         {
  74.  
  75.         }
  76.  
  77.         void AddLastSearchHint(const TMFXEffectId effectId, const int surfaceIndex1, const int surfaceIndex2);
  78.         void AddLastSearchHint(const TMFXEffectId effectId, const char* customName, const int surfaceIndex2);
  79.         void AddLastSearchHint(const TMFXEffectId effectId, const IEntityClass* pEntityClass, const int surfaceIndex2);
  80.  
  81.         void AddEffectDebugVisual(const TMFXEffectId effectId, const SMFXRunTimeEffectParams& runtimeParams);
  82.         void Update(const CMaterialEffects& materialEffects, const float frameTime);
  83.  
  84. private:
  85.  
  86.         const static uint32 kMaxDebugVisualMfxEntries = 48;
  87.  
  88.         SLastSearchHint     m_lastSearchHint;
  89.  
  90.         SDebugVisualEntry   m_effectList[kMaxDebugVisualMfxEntries];
  91.         uint32              m_nextHit;
  92. };
  93.  
  94. #endif //MATERIAL_EFFECTS_DEBUG
  95.  
  96. }
  97.  
  98. #endif // _MATERIAL_EFFECTS_DEBUG_H_
  99.  
downloadMaterialEffectsDebug.h Source code - Download CRYENGINE Source code
Related Source Codes/Software:
postal - 2017-06-11
reactide - Reactide is the first dedicated IDE for React web ... 2017-06-11
rkt - rkt is a pod-native container engine for Linux. It... 2017-06-11
uWebSockets - Tiny WebSockets https://for... 2017-06-11
realworld - TodoMVC for the RealWorld - Exemplary fullstack Me... 2017-06-11
CRYENGINE - CRYENGINE is a powerful real-time game development... 2017-06-11
goreplay - GoReplay is an open-source tool for capturing and ... 2017-06-10
pyenv - Simple Python version management 2017-06-10
redux-saga - An alternative side effect model for Redux apps ... 2017-06-10
angular-starter - 2017-06-10

 Back to top