Я пытаюсь найти прозрачное решение для остановок отладки, которые постоянно попадают в мою игру.
Для тривиального примера; скажем, у меня остановка в моем рендере, который сообщает мне, когда я пытаюсь использовать NULL материал. Мой рендерер справляется с этим нормально, но я все еще хочу знать, что я делаю неправильно.
Эта остановка будет действовать каждый кадр, если я не отключу его вручную.
Это идентификатор кода, который нужно превратить в макрос (или что-то еще такое же прозрачное, как и переносимое)
#define HALT(errorMsg) printf(errorMsg);__asm { int 3 };
satic bool hitOnce = false;
if (!hitOnce)
{
hitOnce = true;
HALT("its all gone wrong!")
}
У меня была идея сделать макрос, который создавал этот код, каждый раз с уникальной переменной bool. Проблема, с которой я столкнулся до сих пор, заключается в том, что я не могу увеличивать числа во время компиляции, чтобы генерировать уникальные статические значения bool для каждого HALT_ONCE.