45 void createSheet(
float width,
float height,
int segX,
int segY);
56 void createCurvedSheet(
float width,
float height,
int segX,
int segY,
float curveDepth,
60 void update(
float dt);
62 void setTime(
float seconds);
68 void setFlowSpeed(
float speed);
73 void setTurbulence(
float t);
78 void setStreakCount(
int count);
83 void setStreakScale(
float scale);
88 void setTopFoam(
float v);
92 void setBottomFoam(
float v);
96 void setFoamAmount(
float v);
101 void setWaterColor(
float r,
float g,
float b);
103 void setReflectionIntensity(
float intensity);
107 void setSunIntensity(
float intensity);
132 static int paramCount();
134 static std::string paramName(
int index);
138 Shader *shader_ =
nullptr;
139 Mesh *mesh_ =
nullptr;
142 float flowSpeed_ = 1.4f;
143 float turbulence_ = 0.6f;
144 int streakCount_ = 4;
145 float streakScale_ = 5.f;
146 float topFoam_ = 0.06f;
147 float bottomFoam_ = 0.12f;
148 float foamAmount_ = 0.85f;
149 float waterColor_[3] = {0.05f, 0.22f, 0.30f};
150 float reflectionIntensity_ = 0.55f;
151 float sunIntensity_ = 0.8f;
152 uint64_t captureDrawerToken_ = 0;
153 uint32_t reflectionCaptureMask_ = 0xffffffffu;
154 bool reflectionCaptureEnabled_ =
true;
#define EVENGINE_API_BACKENDS
std::array< float, 3 > scale
GPU mesh handle (+ optional CPU morph targets).
Flowing waterfall (falling water sheet) rendered on a vertical plane.
float getStreakScale() const
Returns the streak scale.
bool getReflectionCaptureEnabled() const
Return whether this waterfall is included in reflection-probe captures.
Shader * getShader() const
Returns the shader.
float getSunIntensity() const
Returns the sun intensity.
int getStreakCount() const
Returns the streak count.
float getFoamAmount() const
Returns the foam amount.
float getTime() const
Returns the time.
Mesh * getMesh() const
Returns the mesh.
float getTurbulence() const
Returns the turbulence.
float getBottomFoam() const
Returns the bottom foam.
float getReflectionIntensity() const
Returns the reflection intensity.
Waterfall(const Waterfall &)=delete
float getTopFoam() const
Returns the top foam.
uint32_t getReflectionCaptureMask() const
Return the reflection-capture visibility layer mask.
void setReflectionCaptureEnabled(bool enabled)
Enable or disable inclusion in reflection-probe captures.
float getFlowSpeed() const
Returns the flow speed.
void setReflectionCaptureMask(uint32_t mask)
Set the reflection-capture visibility layer mask.
Waterfall & operator=(const Waterfall &)=delete
卡牌游戏 UI 工具模块:工厂 + 脚本绑定入口。 功能参考 ycarowr/UiCard:扇形手牌布局、抽牌/洗牌、悬浮放大、拖拽到落牌区、 敌方手牌(背面/偷看)、费用不足置灰,以及可实时调节的布局...
Shader * newWaterfallShader(Graphics *gfx)
Create the embedded waterfall fragment shader (owned by Graphics).