26struct sdf_r8 :
public snorm_r8 {
33 constexpr static float one_over_max_distance = 1.0f /
max_distance;
35 sdf_r8() noexcept = default;
36 sdf_r8(sdf_r8 const& other) noexcept = default;
37 sdf_r8(sdf_r8&& other) noexcept = default;
38 sdf_r8& operator=(sdf_r8 const& other) noexcept = default;
39 sdf_r8& operator=(sdf_r8&& other) noexcept = default;
42 sdf_r8(
float rhs) noexcept : snorm_r8(rhs * one_over_max_distance) {}
44 sdf_r8& operator=(
float rhs)
noexcept
46 snorm_r8::operator=(rhs *one_over_max_distance);
50 operator float() const noexcept
52 return (snorm_r8::operator
float()) * max_distance;
55 void repair() noexcept
57 *
this = -
static_cast<float>(*this);