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) 2025 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 
19  namespace EntityStateListener
20  {
21  enum class WeaponState;
22  }
23 
27  {
28  public:
29 
34  enum Posture
35  {
45  Wading
46  };
47 
49  DtCharacterModel( DtDe& de, DtUniqueID id );
50 
52  virtual ~DtCharacterModel();
53 
54  private:
55 
57  DtCharacterModel( const DtCharacterModel& ) = delete;
58 
60  DtCharacterModel& operator = ( const DtCharacterModel& ) = delete;
61 
62  public:
63 
65 
66 
70  virtual void setCharacterModel(const std::string& characterType) = 0;
71 
74 
76  virtual void setDefaultAppearance(const std::string& appearanceName) = 0;
78  virtual void setAppearance(const std::string& appearanceName) = 0;
79 
81  virtual void setHeadAppearance(const std::string& appearanceName) = 0;
83  virtual void setItemAppearance(const std::string& appearanceName) = 0;
85  virtual void setCharacterEquipment( const std::string& appearanceName ) = 0;
86 
87 
89  virtual void setUnit( unsigned short country, unsigned char service, unsigned short patch, bool setPersonal ) = 0;
91  virtual void setPersonalUnit( unsigned short country, unsigned char service, unsigned short patch ) = 0;
93  virtual void setRank( unsigned short country, unsigned char service, unsigned short patch ) = 0;
95  virtual void setCharacterName( const std::string& name ) = 0;
96 
98 
100  virtual void setFlamesPresent(bool val) = 0;
102  virtual void setEnginePlume(bool val) = 0;
104  virtual void setEngineSmoke(bool val) = 0;
106  virtual void setTrailState(bool val) = 0;
108  virtual void setLightState(unsigned int light, unsigned int lightState) = 0;
109 
111  virtual void beginAppearanceEffect(const std::string& effect, const std::string& overrideLink,
112  float overrideScale, const DtVector& overrideOffset, float overrideDuration) = 0;
114  virtual void endAppearanceEffect(int instantly, const std::string& effect, const std::string& overrideLink) = 0;
115 
117  virtual void executeGesture(const std::string& gestureName, int reps, float overallDuration, float channelAWeight) = 0;
119  virtual void endGesture(const std::string& gestureName, float rampDown) = 0;
120 
121 
125  virtual void setEnableAnimationSmoothing(bool) = 0;
126 
128  virtual void setDesiredAction(const std::string& action, float speed) = 0;
129 
131  virtual void fireWeapon() = 0;
132 
135  virtual void forceAction(const std::string& action, float speed, bool usePositioning,
136  const DtVector& offset, int autoChooseTransitionBehavior, float transitionSpeed) = 0;
137 
139  virtual void forceTemporaryAction(const std::string& action, double duration) = 0;
140 
143  virtual void unforceAction() = 0;
144 
146  virtual void setSpeed(float speed) = 0;
147 
149  virtual void setPosture(int posture) = 0;
150 
152  virtual bool weaponDeployed() const = 0;
153 
155  virtual EntityStateListener::WeaponState weaponState() const = 0;
156 
158  virtual void setWeaponState(EntityStateListener::WeaponState deployed) = 0;
159 
160 
163  virtual void die(const std::string& deathAction) = 0;
164 
166  virtual void revive(const std::string& aliveAction) = 0;
167 
169  virtual void setPaused(bool paused) = 0;
170 
173  virtual const std::string& className() const;
174 
177  virtual void setModelScalingEnabled(bool b) = 0;
178 
180  virtual void setEmbarked(bool b) = 0;
181 
183  virtual void setStationName(int name) = 0;
184 
186  virtual void setStationNumber(DtU16 number) = 0;
187 
188  virtual void setScale(const DtVector& scale) = 0;
189  virtual void setWeight(float weightScale) = 0;
190 
192  virtual void setPartOrientation(int partNumber,
193  const DtTaitBryan& orientation, const DtVector& rotationalVelocity) = 0;
194 
196  virtual void setPartTranslation(int partNumber,
197  const DtVector& translation, const DtVector& velocity) = 0;
198 
200  virtual void setPartVisibility(int partNumber, bool visible) = 0;
201 
203  virtual void removePart( unsigned int partNumber ) = 0;
204 
205  virtual void setSelected(bool value) = 0;
206  virtual void setTextureVariations(std::vector<DtCharacterTextureVariationInfo>& varationInfoArray, int force) = 0;
207 
209  virtual void setDynamicSensorRegion(const std::string& region, bool state) = 0;
210 
212  virtual void setUseTransitions(bool use) = 0;
213 
215  virtual void setIsOccupant(bool occupant) = 0;
216 
218  virtual void setEnabled(bool enabled) = 0;
219 
221 
222  };
223 
224 }
Definition: DtCharacterModel.h:42
Definition: DtCharacterModel.h:37
Posture
Enumerated postures that can be used in the setPosture method. In the DtDiguyCharacterModel class...
Definition: DtCharacterModel.h:34
DtCharacterTextureVariationInfo class.
A special human character model.
Definition: DtCharacterModel.h:26
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
Definition: DtCharacterModel.h:43
Definition: DtCharacterModel.h:41
Definition: DtCharacterModel.h:40
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
Contains makVrv::DtModel class.
WeaponState
Definition: DtEntityStateListener.h:101
Definition: DtCharacterModel.h:38
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:39
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:76
voidpf uLong offset
Definition: ioapi.h:42
Definition: DtCharacterModel.h:44
Definition: DtCharacterModel.h:36

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)