Add mipmap calculation function

This commit is contained in:
Nikita Lisitsa 2021-07-05 12:18:15 +03:00
parent 25153001c0
commit fe4dd717f1

View file

@ -399,4 +399,20 @@ namespace psemek::gfx
: id_{0}
{}
template <std::size_t D>
std::size_t mipmap_count(geom::vector<std::size_t, D> const & size)
{
std::size_t s = 0;
for (std::size_t i = 0; i < D; ++i)
s = std::max(s, size[i]);
std::size_t result = 1;
while (s > 1)
{
s /= 2;
++result;
}
return result;
}
}