VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtCharacterModel.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2023 MAK Technologies, Inc.
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCore/DtModel.h>
13 
15 
16 namespace makVrv
17 {
18  namespace EntityStateListener
19  {
20  enum class WeaponState;
21  }
22 
26  {
27  public:
28 
33  enum Posture
34  {
44  Wading
45  };
46 
48  DtCharacterModel( DtDe& de, DtUniqueID id );
49 
51  virtual ~DtCharacterModel();
52 
53  private:
54 
56  DtCharacterModel( const DtCharacterModel& ) = delete;
57 
59  DtCharacterModel& operator = ( const DtCharacterModel& ) = delete;
60 
61  public:
62 
64 
65 
69  virtual void setCharacterModel(const std::string& characterType) = 0;
70 
73 
75  virtual void setDefaultAppearance(const std::string& appearanceName) = 0;
77  virtual void setAppearance(const std::string& appearanceName) = 0;
78 
80  virtual void setHeadAppearance(const std::string& appearanceName) = 0;
82  virtual void setItemAppearance(const std::string& appearanceName) = 0;
84  virtual void setCharacterEquipment( const std::string& appearanceName ) = 0;
85 
86 
88  virtual void setUnit( unsigned short country, unsigned char service, unsigned short patch, bool setPersonal ) = 0;
90  virtual void setPersonalUnit( unsigned short country, unsigned char service, unsigned short patch ) = 0;
92  virtual void setRank( unsigned short country, unsigned char service, unsigned short patch ) = 0;
94  virtual void setCharacterName( const std::string& name ) = 0;
95 
97 
99  virtual void setFlamesPresent(bool val) = 0;
101  virtual void setEnginePlume(bool val) = 0;
103  virtual void setEngineSmoke(bool val) = 0;
105  virtual void setTrailState(bool val) = 0;
107  virtual void setLightState(unsigned int light, unsigned int lightState) = 0;
108 
110  virtual void beginAppearanceEffect(const std::string& effect, const std::string& overrideLink,
111  float overrideScale, const DtVector& overrideOffset, float overrideDuration) = 0;
113  virtual void endAppearanceEffect(int instantly, const std::string& effect, const std::string& overrideLink) = 0;
114 
116  virtual void executeGesture(const std::string& gestureName, int reps, float overallDuration, float channelAWeight) = 0;
118  virtual void endGesture(const std::string& gestureName, float rampDown) = 0;
119 
120 
124  virtual void setEnableAnimationSmoothing(bool) = 0;
125 
127  virtual void setDesiredAction(const std::string& action, float speed) = 0;
128 
130  virtual void fireWeapon() = 0;
131 
134  virtual void forceAction(const std::string& action, float speed, bool usePositioning,
135  const DtVector& offset, int autoChooseTransitionBehavior, float transitionSpeed) = 0;
136 
138  virtual void forceTemporaryAction(const std::string& action, double duration) = 0;
139 
142  virtual void unforceAction() = 0;
143 
145  virtual void setSpeed(float speed) = 0;
146 
148  virtual void setPosture(int posture) = 0;
149 
151  virtual bool weaponDeployed() const = 0;
152 
154  virtual EntityStateListener::WeaponState weaponState() const = 0;
155 
157  virtual void setWeaponState(EntityStateListener::WeaponState deployed) = 0;
158 
159 
162  virtual void die(const std::string& deathAction) = 0;
163 
165  virtual void revive(const std::string& aliveAction) = 0;
166 
168  virtual void setPaused(bool paused) = 0;
169 
172  virtual const std::string& className() const;
173 
176  virtual void setModelScalingEnabled(bool b) = 0;
177 
179  virtual void setEmbarked(bool b) = 0;
180 
182  virtual void setStationName(int name) = 0;
183 
185  virtual void setStationNumber(DtU16 number) = 0;
186 
187  virtual void setScale(const DtVector& scale) = 0;
188  virtual void setWeight(float weightScale) = 0;
189 
191  virtual void setPartOrientation(int partNumber,
192  const DtTaitBryan& orientation, const DtVector& rotationalVelocity) = 0;
193 
195  virtual void setPartTranslation(int partNumber,
196  const DtVector& translation, const DtVector& velocity) = 0;
197 
199  virtual void setPartVisibility(int partNumber, bool visible) = 0;
200 
201  virtual void setSelected(bool value) = 0;
202  virtual void setTextureVariations(std::vector<DtCharacterTextureVariationInfo>& varationInfoArray, int force) = 0;
203 
205  virtual void setDynamicSensorRegion(const std::string& region, bool state) = 0;
206 
208  virtual void setUseTransitions(bool use) = 0;
209 
211  virtual void setIsOccupant(bool occupant) = 0;
212 
214  virtual void setEnabled(bool enabled) = 0;
215 
217 
218  };
219 
220 }
Definition: DtCharacterModel.h:41
Definition: DtCharacterModel.h:36
Posture
Enumerated postures that can be used in the setPosture method. In the DtDiguyCharacterModel class...
Definition: DtCharacterModel.h:33
DtCharacterTextureVariationInfo class.
A special human character model.
Definition: DtCharacterModel.h:25
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
Definition: DtCharacterModel.h:42
Definition: DtCharacterModel.h:40
Definition: DtCharacterModel.h:39
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
Contains makVrv::DtModel class.
WeaponState
Definition: DtEntityStateListener.h:101
Definition: DtCharacterModel.h:37
A model which owns a single model instance. A DtModel is a managing container for a single DtModelIns...
Definition: DtModel.h:56
Definition: DtCharacterModel.h:38
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:72
voidpf uLong offset
Definition: ioapi.h:42
Definition: DtCharacterModel.h:43
Definition: DtCharacterModel.h:35

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)