Counter Strike : Global Offensive Source Code
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

51 lines
1.2 KiB

  1. //========= Copyright � 1996-2005, Valve Corporation, All rights reserved. ============//
  2. //
  3. // Purpose:
  4. //
  5. //=============================================================================//
  6. #ifndef PARTICLES_LOCALSPACE_H
  7. #define PARTICLES_LOCALSPACE_H
  8. #ifdef _WIN32
  9. #pragma once
  10. #endif
  11. #include "particles_simple.h"
  12. #define FLE_VIEWMODEL 0x00000001
  13. class CLocalSpaceEmitter : public CSimpleEmitter
  14. {
  15. public:
  16. DECLARE_CLASS( CLocalSpaceEmitter, CParticleEffect );
  17. static CSmartPtr<CLocalSpaceEmitter> Create( const char *pDebugName, ClientEntityHandle_t hEntity, int nAttachment, int flags = 0 );
  18. virtual void RenderParticles( CParticleRenderIterator *pIterator );
  19. virtual void SimulateParticles( CParticleSimulateIterator *pIterator );
  20. virtual void SetupTransformMatrix( void );
  21. virtual void Update( float flTimeDelta );
  22. const matrix3x4_t& GetTransformMatrix() const;
  23. protected:
  24. explicit CLocalSpaceEmitter( const char *pDebugName );
  25. ClientEntityHandle_t m_hEntity;
  26. int m_nAttachment;
  27. int m_fFlags;
  28. private:
  29. CLocalSpaceEmitter( const CLocalSpaceEmitter & ); // not defined, not accessible
  30. // This is stored in the ParticleEffectBinding now.
  31. //matrix3x4_t m_matTransform;
  32. //FIXME: Bones here as well...
  33. };
  34. #endif // PARTICLES_LOCALSPACE_H