BVB Source Codes

CRYENGINE Show GroundEffect.h Source code

Return Download CRYENGINE: download GroundEffect.h Source code - Download CRYENGINE Source code - Type:.h
  1. // Copyright 2001-2016 Crytek GmbH / Crytek Group. All rights reserved.
  2.  
  3. #ifndef __GROUNDEFFECT_H__
  4. #define __GROUNDEFFECT_H__
  5.  
  6. #include "../IEffectSystem.h"
  7. #include "CryActionPhysicQueues.h"
  8.  
  9. struct IParticleEffect;
  10.  
  11. class CGroundEffect : public IGroundEffect
  12. {
  13. public:
  14.  
  15.         CGroundEffect(IEntity* pEntity);
  16.         virtual ~CGroundEffect();
  17.  
  18.         // IGroundEffect
  19.         virtual void SetHeight(float height);
  20.         virtual void SetHeightScale(float sizeScale, float countScale);
  21.         virtual void SetBaseScale(float sizeScale, float countScale, float speedScale = 1.0f);
  22.         virtual void SetInterpolation(float speed);
  23.         virtual void SetFlags(int flags);
  24.         virtual int  GetFlags() const;
  25.         virtual bool SetParticleEffect(const char* pName);
  26.         virtual void SetInteraction(const char* pName);
  27.         virtual void Update();
  28.         virtual void Stop(bool stop);
  29.         // ~IGroundEffect
  30.  
  31.         void OnRayCastDataReceived(const QueuedRayID& rayID, const RayCastResult& result);
  32.  
  33. protected:
  34.  
  35.         void        SetSpawnParams(const SpawnParams& params);
  36.         void        Reset();
  37.  
  38.         inline bool DebugOutput() const
  39.         {
  40.                 static ICVar* pVar = gEnv->pConsole->GetCVar("g_groundeffectsdebug");
  41.  
  42.                 CRY_ASSERT(pVar);
  43.  
  44.                 return pVar->GetIVal() > 0;
  45.         }
  46.  
  47.         inline bool DeferredRayCasts() const
  48.         {
  49.                 static ICVar* pVar = gEnv->pConsole->GetCVar("g_groundeffectsdebug");
  50.  
  51.                 CRY_ASSERT(pVar);
  52.  
  53.                 return pVar->GetIVal() != 2;
  54.         }
  55.  
  56.         IEntity*         m_pEntity;
  57.  
  58.         IParticleEffect* m_pParticleEffect;
  59.  
  60.         int              m_flags, m_slot, m_surfaceIdx, m_rayWorldIntersectSurfaceIdx;
  61.         QueuedRayID      m_raycastID;
  62.  
  63.         string           m_interaction;
  64.  
  65.         bool             m_active                 : 1;
  66.  
  67.         bool             m_stopped                : 1;
  68.  
  69.         bool             m_validRayWorldIntersect : 1;
  70.  
  71.         float            m_height, m_rayWorldIntersectHeight, m_ratio;
  72.  
  73.         float            m_sizeScale, m_sizeGoal;
  74.  
  75.         float            m_countScale;
  76.  
  77.         float            m_speedScale, m_speedGoal;
  78.  
  79.         float            m_interpSpeed;
  80.  
  81.         float            m_maxHeightCountScale, m_maxHeightSizeScale;
  82. };
  83. #endif //__GROUNDEFFECT_H__
  84.  
downloadGroundEffect.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