CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
TerrainRenderable.hpp
Go to the documentation of this file.
1//
2// CeresEngine - A game development framework
3//
4// Created by Rogiel Sulzbach.
5// Copyright (c) 2018-2023 Rogiel Sulzbach. All rights reserved.
6//
7
8#pragma once
9
11
14
19
20namespace CeresEngine {
21
23 struct TerrainRenderableComponent final : public Component<TerrainRenderableComponent> {
25 struct Accessor;
26
29
32
33 public: // Reflection
36 template<typename Processor> static constexpr void reflect(Processor&& RTTI) { CE_REFL_DATA(seed); }
37 };
38
60
62 class TerrainRenderable final : public TSceneObject<TerrainRenderableComponent> {
63 using TSceneObject<TerrainRenderableComponent>::TSceneObject;
64 };
65
66} // namespace CeresEngine
67
70
73
76
#define CE_EXTERN_COMPONENT(T)
Definition Component.hpp:600
#define CE_ENTITY_OBJECT_HASH(T)
Definition Entity.hpp:784
#define CE_REFLECT_HASH(T)
Definition Hash.hpp:89
#define CE_REFLECTABLE_STRUCT
Definition IReflectable.hpp:47
#define CE_REFL_DATA(N)
Definition Macros.hpp:541
The SceneObject template class is a helper class that EntityObjects might choose to use to provide so...
Definition SceneObject.hpp:323
The Terrain object.
Definition TerrainRenderable.hpp:62
Definition Application.hpp:19
std::uint64_t UInt64
Definition DataTypes.hpp:26
constexpr size_t hash(const T &v)
Generates a hash for the provided type.
Definition Hash.hpp:25
Accessor(const Entity &entity)
Definition Component.hpp:181
Components serve as the base for data storage for an entity.
Definition Component.hpp:68
The accessor class for Terrain component.
Definition TerrainRenderable.hpp:40
const HMaterial & getMaterial() const noexcept
void setMaterial(const HMaterial &material)
The Terrain component.
Definition TerrainRenderable.hpp:23
HMaterial material
Definition TerrainRenderable.hpp:31
UInt64 seed
A seed used to generate the terrain data.
Definition TerrainRenderable.hpp:28
static constexpr void reflect(Processor &&RTTI)
Executes the given processor for every field of the struct.
Definition TerrainRenderable.hpp:36
HTerrain terrain
Definition TerrainRenderable.hpp:30