UnrealKaraulov / newbspguy

Goldsrc map viewer/editor without decompiling. Also can view .MDL models.
The Unlicense
59 stars 11 forks source link

Не работает масштабирование BSP моделей. #113

Open GusTheForkliftOperator opened 3 months ago

GusTheForkliftOperator commented 3 months ago

Оси можно двигать, реальные размеры не меняются.

image

Qwertyus3D commented 2 months ago

В феврале ( https://github.com/UnrealKaraulov/newbspguy/releases/tag/NightBuild_2024.02.23_17-46 ) было сделано изменение масштабирования - после каждого изменения размера браша была добавлена очистка задействованных под этот браш клипнодов. Это нужно было, чтобы клипноды не увеличивались после каждого действия. Из-за этого появилась небольшая задержка изменения - программе нужно около секунды, чтобы выполнить очистку. Пока программа делает очистку, нельзя дёргать оси изменения размера - это приводит к сбоям их работы. Оси могут пропасть, либо перестать менять модель, либо сдвигаются непропорционально размерам модели. Чтобы этого не происходило, когда меняете размер браша, нужно было чуть-чуть подождать, пока модель "мигнёт" после изменения размера. И только тогда опять можно двигать оси.

Чуть позже, насколько я вижу, появились какие-то проблемы с масштабированием в плане стабильности - программа стала вылетать, оси стали пропадать после выполнения более чем 1 изменения размера, даже если ждёшь очистку. По крайней мере вижу, что в ряде более поздних билдов это происходит.

В последних билдах вижу, что, вероятно, появились какие-то проблемы с очисткой - ощущение, что она задерживается или не срабатывает, т. к. иногда нет "мигания" модели. После этого оси начинают глючить. Это происходит вплоть до предпоследнего рабочего релиза https://github.com/UnrealKaraulov/newbspguy/releases/tag/NightBuild_2024.03.26_10-06

Самый новый текущий билд вообще имеет проблему того, что модель не меняется в размерах сразу, когда двигаешь оси. А меняется только после очистки, видимо. При этом есть вылеты при повторных изменениях размера.

Я бы предложил по поводу задержки на очистку прятать оси до тех пор, пока очистка не выполнена. Чтобы нельзя было тянуть оси в этот момент. Если, конечно, нет каких-то других идей, как повысить стабильность. Ну и последний билд явно самый глючный, надо исправлять.

GusTheForkliftOperator commented 2 months ago

В феврале ( https://github.com/UnrealKaraulov/newbspguy/releases/tag/NightBuild_2024.02.23_17-46 ) было сделано изменение масштабирования - после каждого изменения размера браша была добавлена очистка задействованных под этот браш клипнодов. Это нужно было, чтобы клипноды не увеличивались после каждого действия. Из-за этого появилась небольшая задержка изменения - программе нужно около секунды, чтобы выполнить очистку. Пока программа делает очистку, нельзя дёргать оси изменения размера - это приводит к сбоям их работы. Оси могут пропасть, либо перестать менять модель, либо сдвигаются непропорционально размерам модели. Чтобы этого не происходило, когда меняете размер браша, нужно было чуть-чуть подождать, пока модель "мигнёт" после изменения размера. И только тогда опять можно двигать оси.

Чуть позже, насколько я вижу, появились какие-то проблемы с масштабированием в плане стабильности - программа стала вылетать, оси стали пропадать после выполнения более чем 1 изменения размера, даже если ждёшь очистку. По крайней мере вижу, что в ряде более поздних билдов это происходит.

В последних билдах вижу, что, вероятно, появились какие-то проблемы с очисткой - ощущение, что она задерживается или не срабатывает, т. к. иногда нет "мигания" модели. После этого оси начинают глючить. Это происходит вплоть до предпоследнего рабочего релиза https://github.com/UnrealKaraulov/newbspguy/releases/tag/NightBuild_2024.03.26_10-06

Самый новый текущий билд вообще имеет проблему того, что модель не меняется в размерах сразу, когда двигаешь оси. А меняется только после очистки, видимо. При этом есть вылеты при повторных изменениях размера.

Я бы предложил по поводу задержки на очистку прятать оси до тех пор, пока очистка не выполнена. Чтобы нельзя было тянуть оси в этот момент. Если, конечно, нет каких-то других идей, как повысить стабильность. Ну и последний билд явно самый глючный, надо исправлять.

Понятно, давно не пользовался программой и пропустил данное изменение. Потестил в последней версии (с водой на карте bounce.bsp, новые модели создать нельзя - вылет), действительно иногда очистка не проходит и оси сбиваются. При этом происходит вылет если пытаться отменить с помощью undo именно это холостое масштабирование.

UnrealKaraulov commented 2 months ago

Да все заметил похоже я чето перемудрил в обнове, хотел упростить код но как-то не очень успешно. Ловлю неинициализированные переменные и т.п Сколько не пытался найти в чем дело не смог, то просто откатываю изменения и буду дальше багфиксами заниматься, пока все руки не доходили)

UnrealKaraulov commented 2 months ago

@GusTheForkliftOperator исправил, вернув часть изменений обратно.

GusTheForkliftOperator commented 2 months ago

Очистка проходит только один раз, после этого не работает (или по крайней мере не объявляет о себе миганием). Оси сбиваются. Если отменять изменения функцией undo, то можно получить... интересные результаты.

image