13 lines
480 B
C++
13 lines
480 B
C++
#pragma once
|
|
#include "FluidSim/AudioProcessing.hpp"
|
|
#include <algorithm>
|
|
#include <cmath>
|
|
namespace fluidsim::port::desktop {
|
|
// Fixed absolute scale: vacuum blue, atmosphere green, >=1 MPa red.
|
|
inline Vec3 pressure_tint(float pressure) {
|
|
if(pressure<=101325) {float t=std::clamp(pressure/101325,0.f,1.f);return {.05f,.15f+.70f*t,1-.95f*t};}
|
|
float t=std::sqrt(std::clamp((pressure-101325)/(1000000-101325),0.f,1.f));
|
|
return {.05f+.95f*t,.85f-.80f*t,.05f-.03f*t};
|
|
}
|
|
}
|