3#include "Resources/Resources.h"
5#include "../../EntityDefinition.h"
13 enum struct BasicOceanWaves
19 enum struct BasicOceanReflection
26 enum struct BasicOceanBeliefSystem
47 glm::vec4
color = glm::vec4(0.f, 0.11f, 0.18f, 1.f);
49 BasicOceanWaves waves = BasicOceanWaves::Default;
51 BasicOceanBeliefSystem beliefSystem = BasicOceanBeliefSystem::FlatEarth;
53 BasicOceanReflection reflection = BasicOceanReflection::Planar;
66 int fftTileResolutionLog2 = 7;
68 float significantWaveHeight = 4.f;
69 float dominantWavePeriod = 25.f;
70 float windSpeed = 10.f;
71 float windDirection = 0.f;
73 std::string reflectionTexFormat;
77 static void registerType();
82template<>
inline Cogs::StringView getName<Cogs::Core::BasicOceanComponent>() {
return "BasicOceanComponent"; }
84template<>
inline Cogs::StringView getName<Cogs::Core::BasicOceanWaves>() {
return "BasicOceanWaves"; }
86template<>
inline Cogs::StringView getName<Cogs::Core::BasicOceanBeliefSystem>() {
return "BasicOceanBeliefSystem"; }
88template<>
inline Cogs::StringView getName<Cogs::Core::BasicOceanReflection>() {
return "BasicOceanReflection"; }
Base class for Component instances.
float reflectionBrightness
Multiplicative factor reflection.
float seaLevel
Vertical displacement of average sea height.
float transparency
Transparency of water.
glm::vec4 color
Color of water. Alpha taken from transparency component.
Provides a weakly referenced view over the contents of a string.
std::shared_ptr< ComponentModel::Entity > EntityPtr
Smart pointer for Entity access.
Contains all Cogs related functionality.