Class RidgeMesh
Defined in File ridge_mesh.h
Inheritance Relationships
Base Type
public sota::TileMesh(Class TileMesh)
Derived Types
public sota::HillMesh(Class HillMesh)public sota::MountainMesh(Class MountainMesh)public sota::PlainMesh(Class PlainMesh)public sota::WaterMesh(Class WaterMesh)
Class Documentation
-
class RidgeMesh : public sota::TileMesh
Subclassed by sota::HillMesh, sota::MountainMesh, sota::PlainMesh, sota::WaterMesh
Public Functions
-
RidgeMesh() = default
-
inline std::pair<float, float> get_min_max_height() const
-
void set_plain_noise(Ref<FastNoiseLite> plain_noise)
-
void set_ridge_noise(Ref<FastNoiseLite> ridge_noise)
-
void set_shift_compress(float y_shift, float y_compress)
-
void calculate_corner_points_distances_to_border(DiscreteVertexToDistance &distance_map, int divisions)
-
void calculate_initial_heights()
-
virtual void calculate_final_heights(DiscreteVertexToDistance &distance_map, float diameter, int divisions) = 0
-
inline void calculate_normals()
-
inline void update()
-
inline void recalculate_all_except_vertices()
-
inline void init()
-
inline virtual int get_id() override
Protected Functions
-
inline RidgeMesh(Hexagon hex, RidgeHexMeshParams params)
-
inline RidgeMesh(Pentagon pentagon, RidgePentagonMeshParams params)
-
void shift_compress()
-
void calculate_ridge_based_heights(std::function<double(double, double, double)> interpolation_func, float ridge_offset, DiscreteVertexToDistance &distance_map, int divisions)
Protected Attributes
-
Vector3Array _initial_vertices
-
Ref<FastNoiseLite> _plain_noise
-
Ref<FastNoiseLite> _ridge_noise
-
float _min_height = std::numeric_limits<float>::max()
-
float _max_height = std::numeric_limits<float>::min()
-
float _y_shift = 0.0f
-
float _y_compress = 1.0f
-
std::unique_ptr<MeshProcessor> _processor
Protected Static Functions
-
static void _bind_methods()
-
RidgeMesh() = default