mirror of
https://github.com/AxioDL/metaforce.git
synced 2025-12-09 08:27:42 +00:00
Work on CFluidPlaneCPU
This commit is contained in:
@@ -1,5 +1,28 @@
|
||||
#include "CRipple.hpp"
|
||||
#include "CRandom16.hpp"
|
||||
|
||||
namespace urde
|
||||
{
|
||||
CRipple::CRipple(TUniqueId, const zeus::CVector3f&, float) {}
|
||||
static CRandom16 sRippleRandom(0xABBA);
|
||||
|
||||
CRipple::CRipple(TUniqueId id, const zeus::CVector3f& center, float intensity)
|
||||
: x0_id(id), x8_center(center)
|
||||
{
|
||||
if (intensity >= 0.f && intensity <= 1.f)
|
||||
{
|
||||
float tmp =
|
||||
2.f * std::min(1.f, std::max(0.f, intensity * (sRippleRandom.Float() - 0.5f) * 2.f * 0.1f + intensity));
|
||||
x14_timeFalloff = 0.5f * tmp + 1.5f;
|
||||
x18_distFalloff = 4.f * tmp + 8.f;
|
||||
x1c_frequency = 2.f + tmp;
|
||||
x20_ = 0.15f * tmp + 0.1f;
|
||||
x24_amplitude = x20_ / 255.f;
|
||||
}
|
||||
|
||||
x28_ooTimeFalloff = 1.f / x14_timeFalloff;
|
||||
x2c_ooDistFalloff = 1.f / x18_distFalloff;
|
||||
x30_ooPhase = x18_distFalloff / 2.5f;
|
||||
x34_phase = 1.f / x30_ooPhase;
|
||||
x38_lookupPhase = 256.f * x34_phase;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user