|
FhSim
3.1.0
Marine systems simulation
|
#include <VisualSettings.h>
Collaboration diagram for visual::VisualSettings:Public Types | |
| enum | VisualQuality { Fast , Fair , Nice } |
| Visual quality levels. More... | |
Public Member Functions | |
| VisualQuality | QualityFromInt (int quality) |
| VisualSettings (ISimObjectCreator *creator, const environment::EnvironmentConfig &config) | |
| std::string | OceanMaterial () |
| std::string | OceansidesMaterial () |
| std::string | SeafloorMaterial () |
| bool | OceanVertexshaderUsesTime () |
| SkyMaterialSpec | SkySpec () |
Public Attributes | |
| std::shared_ptr< marenv::wave::WaveField > | waves |
| Wave field for rendering. | |
| std::shared_ptr< marenv::seafloor::BathymetryWaves > | bathymetry |
| Sum-of-sines bathymetry (the GPU seabed; also the seabed for the "SumOfSines" model) | |
| std::shared_ptr< marenv::seafloor::BathymetryField > | visualSeafloor |
| double | seafloorMinDepth = 0.0 |
Minimum seabed depth over the visual domain [m] (sampled around domain.centre from the seabed the picture shows). | |
| double | seafloorMaxDepth = 0.0 |
Maximum seabed depth over the visual domain [m] (sampled around domain.centre from the seabed the picture shows). | |
| bool | visualizeWaves = false |
| Enable wave visualization. | |
| std::vector< int > | vertexCounts = {100, 130} |
| Vertex counts [u, v]. | |
| bool | seafloorAsMesh = false |
Whether the seabed is drawn as a sampled mesh (true) or by the projected shader (false); from Visual.SeafloorMode (Visual.SeafloorMode). | |
| VisualDomain | domain |
The visual domain, read once (Visual.WorldRadius, Bathymetry.VisualExtent, Bathymetry.VisualCenter, Bathymetry.VisualVertices). | |
| double | worldRadius = 1000.0 |
World rendering radius [m]; domain.worldRadius. | |
| int | visualQuality |
| Visual quality level. | |
The visual settings of the Environment: quality, sky, materials, the visual domain and the seabed the picture shows.
Reads the Visual.* parameters, and takes the waves and the seabeds from the physics set-up (environment::EnvironmentConfig), which it does not change.
| visual::VisualSettings::VisualSettings | ( | ISimObjectCreator * | creator, |
| const environment::EnvironmentConfig & | config | ||
| ) |
Construct the visual settings.
| [in] | creator | Pointer to object creator. |
| [in] | config | The physics set-up, already built from the same creator. |
| std::string visual::VisualSettings::OceanMaterial | ( | ) |
Get ocean material name.
| std::string visual::VisualSettings::OceansidesMaterial | ( | ) |
Get ocean sides material name.
| bool visual::VisualSettings::OceanVertexshaderUsesTime | ( | ) |
Check if ocean vertex shader uses time.
| VisualQuality visual::VisualSettings::QualityFromInt | ( | int | quality | ) |
Convert integer to visual quality.
| [in] | quality | Integer quality value [0-10]. |
| std::string visual::VisualSettings::SeafloorMaterial | ( | ) |
Get seafloor material name.
| SkyMaterialSpec visual::VisualSettings::SkySpec | ( | ) |
Get sky specification.
| std::shared_ptr<marenv::seafloor::BathymetryField> visual::VisualSettings::visualSeafloor |
The seabed the picture shows: EnvironmentConfig::seafloor, except for a NetCDF seabed in a visual build, where it is a copy with terrain over the land cells (owner ruling D18, seeded from RandomSeed). Never used for physics.