Математика и физика › Переходы, случайность, числа
Числа в компьютере: целые, float и точность
Внутри компьютера каждое число — ряд переключателей «да или нет», и их всегда конечное количество. Отсюда странности чисел в играх: счёт, который после максимума становится отрицательным, 0.1 + 0.2, не равное 0.3, часы, отстающие за сутки на сорок минут, дрожание моделей вдали от центра мира и чёрные квадраты на экране. Разберём, как хранятся целые и дробные числа и какие правила из этого следуют.
Зачем это
Игра всё время считает: позиции, время, золото, цвет пикселей. Почти всегда числа ведут себя как в тетради. Но у каждого числа в компьютере есть предел и шаг, и когда игра до них добирается, ошибка выглядит мистикой: предмет дрожит, таймер врёт, проверка «равно» не срабатывает, экран чернеет. Кто знает устройство, узнаёт такие ошибки с первого взгляда.
Это последний урок курса «Математика на пальцах». Из прошлых уроков понадобится только нормализация вектора.