Pioneer
Loading...
Searching...
No Matches
LoaderDefinitions.h
Go to the documentation of this file.
1// Copyright © 2008-2023 Pioneer Developers. See AUTHORS.txt for details
2// Licensed under the terms of the GPL v3. See licenses/GPL-3.txt
3
4#ifndef _LOADERDEFINITIONS_H_
5#define _LOADERDEFINITIONS_H_
6/*
7 * Data strcutrures used by Loader
8 */
9#include "libs.h"
10namespace SceneGraph {
11
13 MaterialDefinition(const std::string &n) :
14 name(n),
15 tex_diff(""),
16 tex_spec(""),
17 tex_glow(""),
18 tex_ambi(""),
19 tex_norm(""),
20 diffuse(Color::WHITE),
21 specular(Color::WHITE),
22 ambient(Color::BLANK),
23 emissive(Color::BLANK),
24 shininess(100),
25 opacity(100),
26 alpha_test(false),
27 unlit(false),
28 use_pattern(false)
29 {}
30 std::string name;
31 std::string tex_diff;
32 std::string tex_spec;
33 std::string tex_glow;
34 std::string tex_ambi;
35 std::string tex_norm;
40 unsigned int shininess; //specular power, 0-128
41 unsigned int opacity; //0-100
43 bool unlit;
45 };
46
48 LodDefinition(float size) :
49 pixelSize(size)
50 {}
51 float pixelSize;
52 std::vector<std::string> meshNames;
53 };
54
56 AnimDefinition(const std::string &name_, double start_, double end_, bool loop_) :
57 name(name_),
58 start(start_),
59 end(end_),
60 loop(loop_)
61 {}
62 std::string name;
63 double start;
64 double end;
65 bool loop;
66 };
67
69 std::string name;
70 std::vector<LodDefinition> lodDefs;
71 std::vector<MaterialDefinition> matDefs;
72 std::vector<std::string> collisionDefs;
73 std::vector<AnimDefinition> animDefs;
74 };
75
76} // namespace SceneGraph
77
78#endif
Definition CityOnPlanet.h:31
Definition Color.h:66
Definition LoaderDefinitions.h:55
AnimDefinition(const std::string &name_, double start_, double end_, bool loop_)
Definition LoaderDefinitions.h:56
bool loop
Definition LoaderDefinitions.h:65
double end
Definition LoaderDefinitions.h:64
double start
Definition LoaderDefinitions.h:63
std::string name
Definition LoaderDefinitions.h:62
Definition LoaderDefinitions.h:47
LodDefinition(float size)
Definition LoaderDefinitions.h:48
float pixelSize
Definition LoaderDefinitions.h:51
std::vector< std::string > meshNames
Definition LoaderDefinitions.h:52
Definition LoaderDefinitions.h:12
bool use_pattern
Definition LoaderDefinitions.h:44
Color specular
Definition LoaderDefinitions.h:37
std::string tex_ambi
Definition LoaderDefinitions.h:34
std::string name
Definition LoaderDefinitions.h:30
std::string tex_glow
Definition LoaderDefinitions.h:33
Color diffuse
Definition LoaderDefinitions.h:36
unsigned int opacity
Definition LoaderDefinitions.h:41
MaterialDefinition(const std::string &n)
Definition LoaderDefinitions.h:13
unsigned int shininess
Definition LoaderDefinitions.h:40
Color ambient
Definition LoaderDefinitions.h:38
std::string tex_diff
Definition LoaderDefinitions.h:31
std::string tex_spec
Definition LoaderDefinitions.h:32
bool unlit
Definition LoaderDefinitions.h:43
std::string tex_norm
Definition LoaderDefinitions.h:35
Color emissive
Definition LoaderDefinitions.h:39
bool alpha_test
Definition LoaderDefinitions.h:42
Definition LoaderDefinitions.h:68
std::vector< LodDefinition > lodDefs
Definition LoaderDefinitions.h:70
std::vector< std::string > collisionDefs
Definition LoaderDefinitions.h:72
std::vector< MaterialDefinition > matDefs
Definition LoaderDefinitions.h:71
std::string name
Definition LoaderDefinitions.h:69
std::vector< AnimDefinition > animDefs
Definition LoaderDefinitions.h:73