13#include <easy3d/viewer/viewer.h>
14#include <easy3d/renderer/drawable_triangles.h>
15#include <easy3d/renderer/drawable_lines.h>
16#include <easy3d/renderer/vertex_array_object.h>
17#include <easy3d/core/surface_mesh.h>
18#include <easy3d/fileio/surface_mesh_io.h>
19#include <easy3d/renderer/texture.h>
20#include <easy3d/renderer/texture_manager.h>
21#include <easy3d/renderer/renderer.h>
Manages terrain, ground, and 3D grid elements within the simulation scene.
Definition world.h:34
const float size
Actual grid size for this world instance.
Definition world.h:107
void createGridDrawable(easy3d::Viewer &viewer)
Generates and displays a 3D coordinate grid.
Definition world.cpp:230
static constexpr float DEFAULT_GRID_SIZE
Total size of the grid (length of each axis), in world units.
Definition world.h:78
static constexpr int DEFAULT_NUM_LINES
Number of lines along each axis of the grid.
Definition world.h:96
const int numLines
Number of grid lines for this world instance.
Definition world.h:115
std::vector< easy3d::vec3 > grid_vertices
Vertices defining the grid lines.
Definition world.h:142
easy3d::LinesDrawable * gridDrawable
Pointer to Easy3D's LinesDrawable used to render the grid.
Definition world.h:132
const float offset
Grid offset to displace it from the origin.
Definition world.h:123
void createTerrainWithTexture(easy3d::Viewer &viewer)
Creates a 3D terrain surface and applies a texture image.
Definition world.cpp:133
void createGround(easy3d::Viewer &viewer)
Creates a flat ground surface and adds it to the viewer.
Definition world.cpp:28
static constexpr float DEFAULT_OFFSET
Vertical offset for the grid to visually separate it from objects like aircraft.
Definition world.h:86
std::unique_ptr< easy3d::Texture > terrainTexture
Definition world.h:144
void createTerrain(easy3d::Viewer &viewer)
Creates a basic 3D terrain surface without textures.
Definition world.cpp:76
World()
Constructs a World object with default parameters.
Definition world.cpp:11