VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtEntityDIGuyStateVisualizer.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2025 MAK Technologies, Inc.
3  * All rights reserved.
4  ****************************************************************************/
5 
11 
12 #pragma once
13 #include <vrvCore/vrvCore.h>
14 
17 #include <vrvUtil/signalslib.h>
18 #include <vlpi/patchIdentifier.h>
19 #include <vlpi/disEnums.h>
20 namespace makVrv
21 {
22 
23  class DtCharacterModelAgent;
24  class DtModelDefinition;
25 
26  namespace EntityStateListener
27  {
28  enum class LifeformState;
29  enum class DamageState;
30  }
31 
43  {
44  public:
45 
48  DtSceneObjectAgent* sceneObject, DtModelSetId modelSet );
49 
52 
55 
58 
59 
61  DtEntityDIGuyStateVisualizer& operator = (const DtEntityDIGuyStateVisualizer&) = delete;
62 
63  public:
64 
66  virtual void initialize() override;
67 
69  virtual void setCharacterPosture(DtCharacterModel::Posture);
71  virtual void setCharacterDamageState(EntityStateListener::DamageState state);
72 
75  virtual void setCharacterModel(const std::string& characterType);
76 
79 
81  virtual void setCharacterAppearance(const std::string& appearance);
83  virtual void setCharacterHeadAppearance(const std::string& headAppearance);
85  virtual void setCharacterItemAppearance(const std::string& itemAppearance);
87  virtual void setCharacterEquipment(const std::string& equipment);
88 
90  virtual void setCharacterUnit( const DtPatchIdentifier& patchId );
92  virtual void setCharacterPersonalUnit( const DtPatchIdentifier& patchId );
94  virtual void setCharacterRank( const DtPatchIdentifier& patchId );
96  virtual void setCharacterName(const DtString& name);
97 
99 
101  virtual void setFlamesPresent(bool state);
103  virtual void setEnginePlume(bool state);
105  virtual void setEngineSmoke(bool state);
107  virtual void setTrailState(bool state);
108 
112  virtual void setLightState(unsigned int light, unsigned int state);
113 
115  virtual void setFlashLightState(unsigned int state);
116 
118  virtual void setIrStrobeLightState(unsigned int state);
119 
121  virtual void setIrIlluminatorLightState(unsigned int state);
122 
123 
125  virtual void beginAppearanceEffect(const std::string& appName, const std::string& linkName, float overrideScale,
126  const DtVector& overrideOffset, float overrideDuration);
128  virtual void endAppearanceEffect(int instantly, const std::string& appName, const std::string& linkName);
129 
131  virtual void executeGesture(const std::string& gestureName, int reps, float overallDuration, float channelAWeight);
133  virtual void endGesture(const std::string& gestureName, float rampDown);
134 
136  virtual void setCharacterScale(const DtVector& scale);
138  virtual void setCharacterWeight(float weightScale);
139 
147  virtual void setCharacterAction(const std::string& action, bool paused, float speed, bool usePositioning,
148  const DtVector& offset, int autoChooseTransitionBehavior, float transitionSpeed);
149  virtual void setCharacterPaused(bool paused);
150 
152  virtual void setCharacterWeaponState(EntityStateListener::WeaponState state);
153 
155  virtual void fireWeapon();
156 
158  virtual void setPartRemoved( unsigned int partNumber );
159 
161  virtual void setPartOrientation(int partNumber,
162  const DtTaitBryan& orientation, const DtVector& rotationalVelocity);
163 
165  virtual void setPartTranslation(int partNumber,
166  const DtVector& translation, const DtVector& velocity);
167 
169  virtual void setColorizedColor(float r, float g, float b, float alpha);
170 
172  virtual void setDisableModelScaling(bool b);
173 
175  virtual const DtStateVisualizer::TypeInfo& typeInfo() const override;
176 
178  static const DtStateVisualizer::TypeInfo& theTypeInfo();
179 
183  virtual void setEnableAnimationSmoothing(bool);
184 
186  virtual bool enableAnimationSmoothing() const;
187 
189  virtual void setTextureVariations(std::vector<DtCharacterTextureVariationInfo>& variationArray, bool force);
190 
192  virtual void setLifeformState(EntityStateListener::LifeformState state);
193 
194  protected:
195 
196  virtual void createModelAgents() override;
197  virtual void destroyModelAgents() override;
198 
199  virtual void setModelDefinitionForAgents() override;
200  virtual void resetSpatial();
201  virtual void updateColorBlending();
202  virtual void slot_embarkedStateChanged();
203  virtual void setStationName(const DtStationName name);
204  virtual void setStationNumber(const DtU16 newVal);
205 
207  virtual void slot_setSelected(bool b) override;
208 
211  virtual void connectToListenerSignals() override;
212 
215  virtual void setInitialValuesFromVisualizerDefinition() override;
216 
217  protected:
218 
219  DtCharacterModelAgent* myCharacterModelAgent;
230 
231  std::string myLastAction;
234 
237 
240  unsigned int myCharacterUnit;
241  unsigned int myCharacterRank;
242 
243  };
244 
245 
250 
251 }
bool myColorized
Definition: DtEntityDIGuyStateVisualizer.h:224
unsigned int myCharacterRank
Definition: DtEntityDIGuyStateVisualizer.h:241
Base class for entity state visualizers (using the DtModelVisualizer schema)
Definition: DtEntityStateVisualizer.h:22
DamageState
Definition: DtEntityStateListener.h:64
unsigned int myCharacterUnit
Definition: DtEntityDIGuyStateVisualizer.h:240
EntityStateListener::DamageState myDamageState
Definition: DtEntityDIGuyStateVisualizer.h:221
Posture
Enumerated postures that can be used in the setPosture method. In the DtDiguyCharacterModel class...
Definition: DtCharacterModel.h:34
bool myLastPaused
Definition: DtEntityDIGuyStateVisualizer.h:232
State visualizer for DI-Guy characters Controls an instance of DtCharacterModelAgent. Receives signals from DtEntityStateListener, which are passed on to the model agent.
Definition: DtEntityDIGuyStateVisualizer.h:42
DtStateVisualizerCreatorTemplate< DtEntityDIGuyStateVisualizer > DtEntityDIGuyStateVisualizerCreator
Creator that will be registered with the state visualizer factory to create this class.
Definition: DtEntityDIGuyStateVisualizer.h:249
Definition: DtStateVisualizer.h:274
float myColorizedGreen
Definition: DtEntityDIGuyStateVisualizer.h:227
Contains the makVrv::DtCharacterModel class declaration.
DtCharacterModelAgent * myCharacterModelAgent
Definition: DtEntityDIGuyStateVisualizer.h:219
float myColorizedRed
Definition: DtEntityDIGuyStateVisualizer.h:226
bool myEnableAnimationSmoothing
Definition: DtEntityDIGuyStateVisualizer.h:225
DtCharacterModel::Posture myCharacterPosture
Definition: DtEntityDIGuyStateVisualizer.h:220
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:35
DtVector myCharacterScaleVector
Definition: DtEntityDIGuyStateVisualizer.h:235
unsigned int myCharacterPersonalUnit
Definition: DtEntityDIGuyStateVisualizer.h:239
bool myAffectsBounds
Definition: DtEntityDIGuyStateVisualizer.h:223
float myColorizedAlpha
Definition: DtEntityDIGuyStateVisualizer.h:229
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
float myColorizedBlue
Definition: DtEntityDIGuyStateVisualizer.h:228
DtString myCharacterName
Definition: DtEntityDIGuyStateVisualizer.h:238
WeaponState
Definition: DtEntityStateListener.h:101
Contains makVrv:DtEntityStateVisualizer class. Base class for other state visualizers such as articul...
std::string myLastAction
Definition: DtEntityDIGuyStateVisualizer.h:231
EntityStateListener::WeaponState myCharacterWeaponState
Definition: DtEntityDIGuyStateVisualizer.h:222
DtModelSetId
Definition: DtModelSetEnums.h:19
voidpf uLong offset
Definition: ioapi.h:42
The DtStateListener is an abstract class. Subclasses implement functionality that will allow data to ...
Definition: DtStateListener.h:26
bool myDisableModelScaling
Definition: DtEntityDIGuyStateVisualizer.h:233
Struct to hold metadata about each functional visualizer type This allows users of the factory to get...
Definition: DtStateVisualizer.h:54
LifeformState
Definition: DtEntityStateListener.h:109
double myCharacterScaleWeight
Definition: DtEntityDIGuyStateVisualizer.h:236
Contains DLL export macros.

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)