Плавное затемнение Indigo

Забаненный
Забаненный
Статус
Оффлайн
Регистрация
12 Апр 2017
Сообщения
375
Реакции
71
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Можно ли сделать плавное затемнение для индиго?
Если же да, то подскажите цикл для Alpha? :^)

(Подскажите цикл для Alpha, пжжжж).

Код:
Expand Collapse Copy
  g_pRender->DrawFillBox(0, 0, iScreenWidth, iScreenHeight, Color(0, 0, 0, Alpha));

И да, какого типа должна быть переменная Alpha?
 
Зачем цикл?
Код:
Expand Collapse Copy
float alpha = 0.0f;
if(alpha != 1.0f)
alpha++;
// в WndProc при открытии меню сбрасывай значение alpha до 0.0f
 
if(alpha != 1.0f) alpha++;
На вещественные типы никогда не делай проверку на точное значение. При инкременте может возникнуть ситуация, когда значение float будет ~= 0.99999999, которое не подойдёт по условиям.
 
Код:
Expand Collapse Copy
static constexpr auto frequency = 1 / 0.55f;

flAlpha = clip(flAlpha + frequency * io.DeltaTime, 0.f, 1.f);

//
float clip(float n, float lower, float upper) {
  return std::max(lower, std::min(n, upper));
}
И да, какого типа должна быть переменная Alpha?
Посмотри какой тип используется в imgui.
 
Назад
Сверху Снизу