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.
99 lines
2.7 KiB
99 lines
2.7 KiB
//====== Copyright © 1996-2004, Valve Corporation, All rights reserved. =====//
|
|
//
|
|
// Dme $collisionjoints
|
|
//
|
|
//===========================================================================//
|
|
|
|
#ifndef DMECOLLISIONJOINTS_H
|
|
#define DMECOLLISIONJOINTS_H
|
|
|
|
|
|
#ifdef _WIN32
|
|
#pragma once
|
|
#endif
|
|
|
|
|
|
#include "datamodel/dmattributevar.h"
|
|
#include "mdlobjects/dmecollisionmodel.h"
|
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
// Dme $jointconstrain
|
|
//-----------------------------------------------------------------------------
|
|
class CDmeJointConstrain : public CDmElement
|
|
{
|
|
DEFINE_ELEMENT( CDmeJointConstrain, CDmElement );
|
|
|
|
virtual void OnAttributeChanged( CDmAttribute *pAttribute );
|
|
|
|
public:
|
|
CDmaVar< int > m_nType; // 0: Free, 1: Fixed, 2: Limit
|
|
CDmaVar< float > m_aLimitMin;
|
|
CDmaVar< float > m_aLimitMax;
|
|
CDmaVar< float > m_flFriction;
|
|
|
|
};
|
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
// Dme $animatedfriction
|
|
//-----------------------------------------------------------------------------
|
|
class CDmeJointAnimatedFriction : public CDmElement
|
|
{
|
|
DEFINE_ELEMENT( CDmeJointAnimatedFriction, CDmElement );
|
|
|
|
public:
|
|
CDmaVar< int > m_nMinFriction;
|
|
CDmaVar< int > m_nMaxFriction;
|
|
CDmaVar< DmeTime_t > m_tTimeIn;
|
|
CDmaVar< DmeTime_t > m_tTimeHold;
|
|
CDmaVar< DmeTime_t > m_tTimeOut;
|
|
|
|
};
|
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
//
|
|
//-----------------------------------------------------------------------------
|
|
class CDmeCollisionJoint : public CDmElement
|
|
{
|
|
DEFINE_ELEMENT( CDmeCollisionJoint, CDmElement );
|
|
|
|
#ifndef SWIG
|
|
public:
|
|
#endif // #ifndef SWIG
|
|
|
|
CDmaVar< float> m_flMassBias;
|
|
CDmaVar< float> m_flDamping;
|
|
CDmaVar< float> m_flRotDamping;
|
|
CDmaVar< float> m_flInertia;
|
|
CDmaElement< CDmeJointConstrain > m_ConstrainX;
|
|
CDmaElement< CDmeJointConstrain > m_ConstrainY;
|
|
CDmaElement< CDmeJointConstrain > m_ConstrainZ;
|
|
CDmaStringArray m_JointMergeList;
|
|
CDmaStringArray m_JointCollideList;
|
|
};
|
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
// Dme $collisionjoints
|
|
//-----------------------------------------------------------------------------
|
|
class CDmeCollisionJoints : public CDmeCollisionModel
|
|
{
|
|
DEFINE_ELEMENT( CDmeCollisionJoints, CDmeCollisionModel );
|
|
|
|
#ifndef SWIG
|
|
public:
|
|
#endif // #ifndef SWIG
|
|
|
|
CDmaVar< bool > m_bConcavePerJoint;
|
|
CDmaVar< bool > m_bSelfCollisions;
|
|
CDmaVar< bool > m_bBoneFollower;
|
|
CDmaString m_RootBone;
|
|
CDmaElement< CDmeJointAnimatedFriction> m_AnimatedFriction;
|
|
CDmaStringArray m_JointSkipList;
|
|
CDmaElementArray< CDmeCollisionJoint > m_JointList;
|
|
};
|
|
|
|
|
|
#endif // DMECOLLISIONJOINTS_H
|