Rigs of Rods 2023.09
Soft-body Physics Simulation
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Loading...
Searching...
No Matches
Terrn2FileFormat.h
Go to the documentation of this file.
1/*
2 This source file is part of Rigs of Rods
3 Copyright 2016-2017 Petr Ohlidal
4
5 For more information, see http://www.rigsofrods.org/
6
7 Rigs of Rods is free software: you can redistribute it and/or modify
8 it under the terms of the GNU General Public License version 3, as
9 published by the Free Software Foundation.
10
11 Rigs of Rods is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with Rigs of Rods. If not, see <http://www.gnu.org/licenses/>.
18*/
19
20#pragma once
21
24
25#include "ForwardDeclarations.h"
26#include "SimConstants.h"
27
28#include <string>
29#include <list>
30
31#include <OgreColourValue.h>
32#include <OgreDataStream.h>
33#include <OgreVector3.h>
34
35namespace RoR {
36
38{
39 std::string type;
40 std::string name;
41};
42
44{
45 Ogre::Vector3 position;
46 std::string name;
47};
48
50{
51 std::string name;
53 Ogre::ColourValue ambient_color = Ogre::ColourValue::White;
54 int category_id = -1;
55 Ogre::Vector3 start_position = Ogre::Vector3::ZERO;
56 Ogre::Degree start_rotation = Ogre::Degree(0.f);
58 std::string guid;
59 int version = 1;
61 float water_height = 0.f;
63 std::list<Terrn2Author> authors;
64 std::list<std::string> tobj_files;
65 std::list<std::string> as_files;
66 std::list<std::string> assetpack_files;
67 std::list<std::string> ai_presets_files;
68 std::list<Terrn2Telepoint> telepoints;
69 std::string caelum_config;
72 std::string cubemap_config;
73 bool has_water = false;
74 std::string hydrax_conf_file;
75 std::string skyx_config;
76 std::string traction_map_file;
78 std::string teleport_map_image;
79};
80
82{
83public:
84 Terrn2DocumentPtr LoadTerrn2(Ogre::DataStreamPtr &ds);
85
86private:
88};
89
90} // namespace RoR
Global forward declarations.
Adds direct parsing of custom types.
Definition ConfigFile.h:38
void ProcessTeleport(Terrn2DocumentPtr def, RoR::ConfigFile *file)
Terrn2DocumentPtr LoadTerrn2(Ogre::DataStreamPtr &ds)
static const float DEFAULT_GRAVITY
earth gravity
std::shared_ptr< Terrn2Document > Terrn2DocumentPtr
std::string hydrax_conf_file
std::string teleport_map_image
std::list< std::string > tobj_files
std::list< std::string > ai_presets_files
std::list< std::string > assetpack_files
std::list< Terrn2Telepoint > telepoints
std::list< std::string > as_files
Ogre::Vector3 start_position
std::string custom_material_name
std::string ogre_ter_conf_filename
std::string traction_map_file
std::list< Terrn2Author > authors
Ogre::ColourValue ambient_color
Ogre::Degree start_rotation
< Teleport drop location