-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathObjectMaterialFaceGroup.h
More file actions
40 lines (33 loc) · 1.47 KB
/
ObjectMaterialFaceGroup.h
File metadata and controls
40 lines (33 loc) · 1.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
//
// Created by rthier on 2016.06.21..
//
#ifndef NFTSIMPLEPROJ_MATERIALFACEGROUP_H
#define NFTSIMPLEPROJ_MATERIALFACEGROUP_H
#include "TextureDataHoldingMaterial.h"
#include "NopTexturePreparationLibrary.h"
#include "FaceElement.h"
#include <string>
namespace ObjMaster {
/**
* Groups together those faces that share the same material in the same object/group.
*
* BEWARE: This class contains bare pointers to the faces of the embedding Obj object so they
* have a shared life-cycle and Obj "owns" this object instance then. You are not
* entitled to cache a reference to this class or copy it for your own usage!
*/
struct ObjectMaterialFaceGroup {
/** The name of the object-group - in case of no group, this becomes the empty string */
std::string objectGroupName;
/**
* The material for the faces in the group - texture data should not be loaded here!
* We do not own the pointed object, it is owned by the parent object our life-cycle is
* bound to (for example an object with class Obj or some object with the same life-span)
*/
TextureDataHoldingMaterial textureDataHoldingMaterial;
/** Index of the first faceElement for this object name and material */
int faceIndex;
/** Defines how many faces are in the group with this material after the pointed address */
int meshFaceCount;
};
}
#endif //NFTSIMPLEPROJ_MATERIALFACEGROUP_H