BVB Source Codes

CRYENGINE Show AttachmentProxy.h Source code

Return Download CRYENGINE: download AttachmentProxy.h Source code - Download CRYENGINE Source code - Type:.h
  1. // Copyright 2001-2016 Crytek GmbH / Crytek Group. All rights reserved.
  2.  
  3. #pragma once
  4.  
  5. #include "Skeleton.h"
  6.  
  7. class CAttachmentManager;
  8. class CModelMesh;
  9.  
  10. class CProxy : public IProxy
  11. {
  12. public:
  13.  
  14.         CProxy()
  15.         {
  16.                 m_nPurpose = 0;
  17.                 m_nHideProxy = 0;
  18.                 m_nJointID = -1;
  19.                 m_ProxyAbsoluteDefault.SetIdentity();
  20.                 m_ProxyRelativeDefault.SetIdentity();
  21.                 m_ProxyModelRelative.SetIdentity();
  22.                 m_params(0, 0, 0, 0);
  23.                 m_pAttachmentManager = 0;
  24.                 m_ProxyModelRelativePrev.SetIdentity();
  25.         }
  26.  
  27.         virtual const char*  GetName() const                                  { return m_strProxyName.c_str(); }
  28.         virtual uint32       GetNameCRC() const                               { return m_nProxyCRC32; };
  29.         virtual uint32       ReName(const char* strNewName, uint32 nNewCRC32) { m_strProxyName.clear(); m_strProxyName = strNewName; m_nProxyCRC32 = nNewCRC32; return 1; };
  30.         virtual uint32       SetJointName(const char* szJointName);
  31.         virtual uint32       GetJointID() const                               { return m_nJointID; }
  32.         virtual const QuatT& GetProxyAbsoluteDefault() const                  { return m_ProxyAbsoluteDefault; };
  33.         virtual const QuatT& GetProxyRelativeDefault() const                  { return m_ProxyRelativeDefault; };
  34.         virtual const QuatT& GetProxyModelRelative() const                    { return m_ProxyModelRelative; };
  35.         virtual void         SetProxyAbsoluteDefault(const QuatT& qt)         { m_ProxyAbsoluteDefault = qt; ProjectProxy(); }
  36.         virtual uint32       ProjectProxy();
  37.         virtual void         AlignProxyWithJoint();
  38.         virtual Vec4         GetProxyParams() const         { return m_params; }
  39.         virtual void         SetProxyParams(const Vec4& p)  { m_params = p; }
  40.         virtual int8         GetProxyPurpose() const        { return m_nPurpose; }
  41.         virtual void         SetProxyPurpose(int8 p)        { m_nPurpose = p; }
  42.         virtual void         SetHideProxy(uint8 nHideProxy) { m_nHideProxy = nHideProxy; }
  43.  
  44.         f32                  GetDistance(const Vec3& p) const;
  45.         f32                  GetDistance(const Vec3& p, f32 r) const;
  46.         f32                  TestOverlapping(const Vec3& p0, Vec3 dir, f32 sl, f32 sr) const;
  47.         Vec3                 ShortvecTranslationalProjection(const Vec3& ipos, f32 sr) const;
  48.         f32                  DirectedTranslationalProjection(const Vec3& ipos, const Vec3& idir, f32 sl, f32 sr) const;
  49.         Vec3                 ShortarcRotationalProjection(const Vec3& ipos, const Vec3& idir, f32 sl, f32 sr) const;
  50.         Vec3                 DirectedRotationalProjection(const Vec3& ipos, const Vec3& idir, f32 sl, f32 sr, const Vec3& iha) const;
  51.         void                 Draw(const QuatTS& qt, const ColorB clr, uint32 tesselation, const Vec3& vdir);
  52.  
  53.         uint8               m_nPurpose;   //0-auxiliary / 1-cloth / 2-ragdoll
  54.         uint8               m_nHideProxy; //0-visible / 1-hidden
  55.         int16               m_nJointID;
  56.         Vec4                m_params;               //parameters for bounding volumes
  57.         QuatT               m_ProxyRelativeDefault; //proxy location relative to the face/joint in default pose;
  58.         QuatT               m_ProxyAbsoluteDefault; //proxy location relative to the default pose of the model  (=relative to Vec3(0,0,0))
  59.         QuatT               m_ProxyModelRelative;   //proxy location relative to the animated pose of the model (=relative to Vec3(0,0,0))
  60.         string              m_strJointName;
  61.         string              m_strProxyName;
  62.         uint32              m_nProxyCRC32;
  63.         QuatT               m_ProxyModelRelativePrev;
  64.         CAttachmentManager* m_pAttachmentManager;
  65. };
  66.  
downloadAttachmentProxy.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