VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtTexturesRemapper.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 #include <vrvOsg/vrvOsg.h>
14 
15 #include <mutex>
16 
17 namespace makVrv
18 {
19  class DtModelDefinition;
20  class DtOsgArticulatedModel;
21  class DtTexturesVariantIndexParser;
22 
29  {
30  public:
33 
35  virtual ~DtTexturesRemapper();
36 
37  public:
39  virtual void configure(DtOsgArticulatedModel* osgArticulatedModel, const rapidjson::Value& jsonData);
40 
41  public:
42  // @{
44  static const char* theFeatureName;
45  // @}
46  private:
48  DtTexturesRemapper() = delete;
49 
51  DtTexturesRemapper(const DtTexturesRemapper& orig) = delete;
52 
54  DtTexturesRemapper& operator=(const DtTexturesRemapper) = delete;
55  protected:
57  virtual void fillVariantNames(std::vector<std::string>& modelTextureVariants, const rapidjson::Value& jsonData, bool skipNull);
58 
60  virtual bool isNull(const std::string& variant);
61  protected:
63  std::string myFeatureName;
64 
66  std::string myAtlasFile;
67 
69  };
70 
74  {
75 
76  public:
79 
81  virtual ~DtTexturesRemapperCreator();
82  public:
84  virtual DtTexturesRemapper* create(DtDe& de, osg::Node* node, DtOsgArticulatedModel* osgArticulatedModel,
85  const rapidjson::Value& jsonObject, const std::string& modelDefName,
86  const DtElementID elementId, const DtUniqueID id
87  , const unsigned int nodeTypeIndex);
88  };
89 }
Like the DtTextureAtlasMapper, this class operates on appearance changes Right now, it operates on the camouflage bit changes in the entity appearance set from vrf It first registers all the texture variants (if it is the first time coming through here), if possible Then, for the incoming variant, it will ask the articulated model instance to change it&#39;s texture variant.
Definition: DtTexturesRemapper.h:28
std::string myAtlasFile
The path to the atlas file in the .meta file.
Definition: DtTexturesRemapper.h:66
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
An articulated model manipulator for controlling an articulated model. Supports indirect rendering of...
Definition: DtOsgArticulatedModel.h:67
DtUniqueID DtElementID
The ElementID is a specific type of unique ID used to represent VR-Vantage uniquely defined elements...
Definition: DtUniqueID.h:23
std::string myFeatureName
The name of the feature in the .meta file.
Definition: DtTexturesRemapper.h:63
static const char * theFeatureName
Strings to get the different parts of the meta file.
Definition: DtTexturesRemapper.h:44
Contains makVrv::DtVirtualBaseClass class.
IMGUI_API void Value(const char *prefix, bool b)
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
DtTextureAtlasMapperCreator class.
Definition: DtTexturesRemapper.h:73
Contains DLL export macros.
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
DtDe & myDe
Definition: DtTexturesRemapper.h:68
Contains makVrv::DtMetaObjectCreator class.
Abstract dynamic feature creator class. A dynamic feature retrieves data from a .meta file and applie...
Definition: DtMetaObjectCreator.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)