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) 2022 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  class DtCharacterModelAgent;
23  class DtModelDefinition;
24 
25  namespace EntityStateListener
26  {
27  enum class LifeformState;
28  enum class DamageState;
29  }
30 
42  {
43  public:
46  DtSceneObjectAgent* sceneObject, DtModelSetId modelSet );
47 
50 
53 
56 
57 
59  DtEntityDIGuyStateVisualizer& operator = (const DtEntityDIGuyStateVisualizer&) = delete;
60 
61  public:
62 
64  virtual void initialize() override;
65 
67  virtual void setCharacterPosture(DtCharacterModel::Posture);
69  virtual void setCharacterDamageState(EntityStateListener::DamageState state);
70 
73  virtual void setCharacterModel(const std::string& characterType);
74 
77 
79  virtual void setCharacterAppearance(const std::string& appearance);
81  virtual void setCharacterHeadAppearance(const std::string& headAppearance);
83  virtual void setCharacterItemAppearance(const std::string& itemAppearance);
85  virtual void setCharacterEquipment(const std::string& equipment);
86 
88  virtual void setCharacterUnit( const DtPatchIdentifier& patchId );
90  virtual void setCharacterPersonalUnit( const DtPatchIdentifier& patchId );
92  virtual void setCharacterRank( const DtPatchIdentifier& patchId );
94  virtual void setCharacterName(const DtString& name);
95 
97 
99  virtual void setFlamesPresent(bool state);
101  virtual void setEnginePlume(bool state);
103  virtual void setEngineSmoke(bool state);
105  virtual void setTrailState(bool state);
106 
110  virtual void setLightState(unsigned int light, unsigned int state);
111 
113  virtual void setFlashLightState(unsigned int state);
114 
116  virtual void setIrStrobeLightState(unsigned int state);
117 
119  virtual void setIrIlluminatorLightState(unsigned int state);
120 
121 
123  virtual void beginAppearanceEffect(const std::string& appName, const std::string& linkName, float overrideScale,
124  const DtVector& overrideOffset, float overrideDuration);
126  virtual void endAppearanceEffect(int instantly, const std::string& appName, const std::string& linkName);
127 
129  virtual void executeGesture(const std::string& gestureName, int reps, float overallDuration, float channelAWeight);
131  virtual void endGesture(const std::string& gestureName, float rampDown);
132 
134  virtual void setCharacterScale(const DtVector& scale);
136  virtual void setCharacterWeight(float weightScale);
137 
145  virtual void setCharacterAction(const std::string& action, bool paused, float speed, bool usePositioning,
146  const DtVector& offset, int autoChooseTransitionBehavior, float transitionSpeed);
147  virtual void setCharacterPaused(bool paused);
148 
150  virtual void setCharacterWeaponState(EntityStateListener::WeaponState state);
151 
153  virtual void fireWeapon();
154 
156  virtual void setPartOrientation(int partNumber,
157  const DtTaitBryan& orientation, const DtVector& rotationalVelocity);
158 
160  virtual void setPartTranslation(int partNumber,
161  const DtVector& translation, const DtVector& velocity);
162 
164  virtual void setColorizedColor(float r, float g, float b, float alpha);
165 
167  virtual void setDisableModelScaling(bool b);
168 
170  virtual const DtStateVisualizer::TypeInfo& typeInfo() const override;
171 
173  static const DtStateVisualizer::TypeInfo& theTypeInfo();
174 
178  virtual void setEnableAnimationSmoothing(bool);
179 
181  virtual bool enableAnimationSmoothing() const;
182 
184  virtual void setTextureVariations(std::vector<DtCharacterTextureVariationInfo>& variationArray, bool force);
185 
187  virtual void setLifeformState(EntityStateListener::LifeformState state);
188 
189  protected:
190  virtual void createModelAgents() override;
191  virtual void destroyModelAgents() override;
192 
193  virtual void setModelDefinitionForAgents() override;
194  virtual void resetSpatial();
195  virtual void updateColorBlending();
196  virtual void slot_embarkedStateChanged();
197  virtual void setStationName(const DtStationName name);
198  virtual void setStationNumber(const DtU16 newVal);
199 
201  virtual void slot_setSelected(bool b) override;
202 
205  virtual void connectToListenerSignals() override;
206 
209  virtual void setInitialValuesFromVisualizerDefinition() override;
210 
211  protected:
212 
213  DtCharacterModelAgent* myCharacterModelAgent;
224 
225  std::string myLastAction;
228 
231 
234  unsigned int myCharacterUnit;
235  unsigned int myCharacterRank;
236 
237 
238  };
239 
240 
245 }
246 
bool myColorized
Definition: DtEntityDIGuyStateVisualizer.h:218
unsigned int myCharacterRank
Definition: DtEntityDIGuyStateVisualizer.h:235
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:234
EntityStateListener::DamageState myDamageState
Definition: DtEntityDIGuyStateVisualizer.h:215
Posture
Enumerated postures that can be used in the setPosture method. In the DtDiguyCharacterModel class...
Definition: DtCharacterModel.h:33
bool myLastPaused
Definition: DtEntityDIGuyStateVisualizer.h:226
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:41
DtStateVisualizerCreatorTemplate< DtEntityDIGuyStateVisualizer > DtEntityDIGuyStateVisualizerCreator
Creator that will be registered with the state visualizer factory to create this class.
Definition: DtEntityDIGuyStateVisualizer.h:244
Definition: DtStateVisualizer.h:274
float myColorizedGreen
Definition: DtEntityDIGuyStateVisualizer.h:221
Contains the makVrv::DtCharacterModel class declaration.
DtCharacterModelAgent * myCharacterModelAgent
Definition: DtEntityDIGuyStateVisualizer.h:213
float myColorizedRed
Definition: DtEntityDIGuyStateVisualizer.h:220
bool myEnableAnimationSmoothing
Definition: DtEntityDIGuyStateVisualizer.h:219
DtCharacterModel::Posture myCharacterPosture
Definition: DtEntityDIGuyStateVisualizer.h:214
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:35
DtVector myCharacterScaleVector
Definition: DtEntityDIGuyStateVisualizer.h:229
unsigned int myCharacterPersonalUnit
Definition: DtEntityDIGuyStateVisualizer.h:233
bool myAffectsBounds
Definition: DtEntityDIGuyStateVisualizer.h:217
float myColorizedAlpha
Definition: DtEntityDIGuyStateVisualizer.h:223
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
float myColorizedBlue
Definition: DtEntityDIGuyStateVisualizer.h:222
DtString myCharacterName
Definition: DtEntityDIGuyStateVisualizer.h:232
WeaponState
Definition: DtEntityStateListener.h:101
Contains makVrv:DtEntityStateVisualizer class. Base class for other state visualizers such as articul...
std::string myLastAction
Definition: DtEntityDIGuyStateVisualizer.h:225
EntityStateListener::WeaponState myCharacterWeaponState
Definition: DtEntityDIGuyStateVisualizer.h:216
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:227
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:230
Contains DLL export macros.

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)