for(unsigned i=0; i<2; ++i)
{
tex[i].set_min_filter(NEAREST);
+ tex[i].set_wrap(CLAMP_TO_EDGE);
tex[i].storage(RGB16F, w, h);
}
void Bloom::set_radius(float r)
{
if(r<=0.0f)
- throw out_of_range("Bloom::set_radius");
+ throw invalid_argument("Bloom::set_radius");
int size = min(static_cast<int>(r*3.0f), 9);
blur_shdata_common.uniform("size", size);
void Bloom::set_strength(float s)
{
if(s<0.0f || s>1.0f)
- throw out_of_range("Bloom::set_strength");
+ throw invalid_argument("Bloom::set_strength");
combine_shdata.uniform("strength", s);
}