Ищем Leak методом отсеков
Leak - пожалуй самая досадная и распространенная ошибка!
Что же делать если на карте есть дырка, но карта очень большая и мы не имеем не малейшего понятия откуда начинать ее поиски.
Для того, что бы облегчить себе задачу, наилучшем способом будет применить метод отсеков.
Сразу скажу, что от данного метода будет прок, только если карта уже наполнена по всему периметру различными энстати-обьектами. Без энтити-обьектов данный метод будет бесполезен.
И так, откроем наш исходный вариант карты, на которой где-то запряталась дырка и условно для себя ее разделим пополам, к примеру по вертикали, на две стороны, левую и правую. Делаем это на виде сверху (top).

Теперь мы создадим большой цельный браш окрашенный в произвольную текстуру и полностью закроем им всю левою сторону карты. Вся левая сторона карты должна оказаться внутри нашего браша, как на виде сверху (top), так и на виде сбоку (front\side).



Теперь сохраняем карту в формат .map и пробуем скомпилировать.
В итоге мы получим два возможных исхода:
1. - начнется компиляция без каких либо проблем. Это значит, что мы заблокировали дырку нашем брашем и теперь смело можем сказать, что дырку стоит искать именно в левой стороне карты. Правую сторону, теперь будем игнорировать. Искомый периметр сузился.
*ждать конца компиляции не надо, компиляцию можно прервать.
2. - компиляция резко прервется, выдав нам злополучную ошибку - LEAK. Значит, дырка не в левой стороне карты, а в правой. Теперь мы будем игнорировать левою сторону карты и сосредоточим поиск только на правой ее стороне.
Предположим, что в нашем случае компиляторы не обнаружили ошибок и наша дырка в левой стороне. Теперь нам эту сторону, так же надо поделить на два части, к примеру по горизонтали и снова заблокировать одну из частей цельным брашем.


Повторно сохраняем в .map и снова пробуем компилировать. Снова получаем два варианта развития событий и исходя из них, определяем в какой стороне дырка.
Наша задача проделывать подобную операцию, раз за разом, пока мы не сузим область в которой находится дырка до минимума. В минимальной области мы наконец токи сможем обнаружить ту самую злосчастную дырку уже без всяких проблем!
Думаю более менее понятно объяснил.
Внимание! некоторые нюансы.
Возможно, что вы заблокируете левую сторону карты цельным брашем и у вас выскочит Leak-ошибка при компиляции, а потом правую и у вас все равно выскочит при компиляции Leak-ошибка. Это будет свидетельствовать о том, что у вас как минимум две дырке на карте, а может даже и больше!
Помните, что Leak случается не только из-за дырки, возможно у вас просто какая-та энтити за пределами карты или пол\потолок\стена граничащие с "космосом" превращен\превращены в энтити обьекты.
Leak - пожалуй самая досадная и распространенная ошибка!
Что же делать если на карте есть дырка, но карта очень большая и мы не имеем не малейшего понятия откуда начинать ее поиски.
Для того, что бы облегчить себе задачу, наилучшем способом будет применить метод отсеков.
Сразу скажу, что от данного метода будет прок, только если карта уже наполнена по всему периметру различными энстати-обьектами. Без энтити-обьектов данный метод будет бесполезен.
И так, откроем наш исходный вариант карты, на которой где-то запряталась дырка и условно для себя ее разделим пополам, к примеру по вертикали, на две стороны, левую и правую. Делаем это на виде сверху (top).

Теперь мы создадим большой цельный браш окрашенный в произвольную текстуру и полностью закроем им всю левою сторону карты. Вся левая сторона карты должна оказаться внутри нашего браша, как на виде сверху (top), так и на виде сбоку (front\side).



Теперь сохраняем карту в формат .map и пробуем скомпилировать.
В итоге мы получим два возможных исхода:
1. - начнется компиляция без каких либо проблем. Это значит, что мы заблокировали дырку нашем брашем и теперь смело можем сказать, что дырку стоит искать именно в левой стороне карты. Правую сторону, теперь будем игнорировать. Искомый периметр сузился.
*ждать конца компиляции не надо, компиляцию можно прервать.
2. - компиляция резко прервется, выдав нам злополучную ошибку - LEAK. Значит, дырка не в левой стороне карты, а в правой. Теперь мы будем игнорировать левою сторону карты и сосредоточим поиск только на правой ее стороне.
Предположим, что в нашем случае компиляторы не обнаружили ошибок и наша дырка в левой стороне. Теперь нам эту сторону, так же надо поделить на два части, к примеру по горизонтали и снова заблокировать одну из частей цельным брашем.


Повторно сохраняем в .map и снова пробуем компилировать. Снова получаем два варианта развития событий и исходя из них, определяем в какой стороне дырка.
Наша задача проделывать подобную операцию, раз за разом, пока мы не сузим область в которой находится дырка до минимума. В минимальной области мы наконец токи сможем обнаружить ту самую злосчастную дырку уже без всяких проблем!
Думаю более менее понятно объяснил.
Внимание! некоторые нюансы.
Возможно, что вы заблокируете левую сторону карты цельным брашем и у вас выскочит Leak-ошибка при компиляции, а потом правую и у вас все равно выскочит при компиляции Leak-ошибка. Это будет свидетельствовать о том, что у вас как минимум две дырке на карте, а может даже и больше!
Помните, что Leak случается не только из-за дырки, возможно у вас просто какая-та энтити за пределами карты или пол\потолок\стена граничащие с "космосом" превращен\превращены в энтити обьекты.
Последнее редактирование:

