Ребята, плюсовики, подскажи, в чем может быть проблема. Я создаю структуру,

заполняю ее через конструктор, передавая Actor Target. Когда читаю, target "кривой", хотя на сцене он есть.
Есть подозрение на коллектор, но как будто не должен вычищать..
Что происходит?)

7 ответов

8 просмотров

Покажи где и как ты её создаёшь/заполняешь p.s. В GetPosition ты надел 2 презерватива

Игорь-Цвентарный Автор вопроса
Aleksei DTG
Покажи где и как ты её создаёшь/заполняешь p.s. В ...

записываю в структуру, потом читаю сама структура на скрине

Игорь Цвентарный
screenshot записываю в структуру, потом читаю сама структура ...

Пока не вижу, чтобы ты свой ActionArgument где-то прикопал, ты создаёшь переменную на стеке, а дальше с ней что?

Игорь-Цвентарный Автор вопроса
Aleksei DTG
Пока не вижу, чтобы ты свой ActionArgument где-то ...

Задача состоит в нахождении пути, работает через ECS Flecs. Удивительно, что до недавнего времени всё работало, а логику я не правил. if (TargetPoint) { FActionMoveToArgument* ActionArgument = new FActionMoveToArgument(); ActionArgument->Initialize(SpawnInfo->Entity, new FMovingTarget(TargetPoint), 10.f); FActionMoveTo* Action = new FActionMoveTo(); Action->Initialize(ActionArgument); it.world().entity().set<CAddAction>({SpawnInfo->Entity, Action}); } Это записывается в ECS компонент, который по сути обычная структура с++ FLECS_COMPONENT(CAction) { FAction* Action; } Далее происходит вывод Action, где читается значение target. Вызывается функция выполнения Action virtual bool Execute_Internal() override { if (FActionMoveToArgument* ActionMoveToArgument = ConvertArgumentChecked<FActionMoveToArgument>()) { const auto EntityTarget = new CMoveTo(ActionMoveToArgument->MovingTarget, ActionMoveToArgument->DistanceSuccess); ActionMoveToArgument->Entity.set<CMoveTo>(*EntityTarget); return true; } return false; } CMoveTo тоже обычная структура с++ FLECS_COMPONENT(CMoveTo) { FMovingTarget* Target = nullptr; float DistanceSuccess = 10.f; CMoveTo() { Target = new FMovingTarget(); } CMoveTo(AActor* InitTarget) { Target = new FMovingTarget(InitTarget); } CMoveTo(FVector InitPosition) { Target = new FMovingTarget(InitPosition); } CMoveTo(FVector InitPosition, AActor* InitTarget) { Target = new FMovingTarget(InitPosition, InitTarget); } CMoveTo(FMovingTarget* InitTarget, const float InitDistanceSuccess = 10.f) { Target = InitTarget; DistanceSuccess = InitDistanceSuccess; } FVector GetPosition() const { return Target->GetPosition(); } }; И далее на следующем кадре читаю GetPosition()....

Похожие вопросы

Обсуждают сегодня

Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
длина пакета фиксированная, или меняется?
Okhsunrog
7
Вот еще странный косяк, подскажите как бороться. Я git clone сделал себе всего embassy и примеры там запускаю. Всё хорошо. Но вот решил в cargo.toml зависимости не как в приме...
Lukutin R2AJP
5
А в каком формате фреймы? Сам формат сейчас придумываешь, или что-то готовое нужно распарсить?
Okhsunrog
5
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Добрый вечер, Пока не совсем понимаю как наладить общение между телеграм ботом и ПО для работы с сим боксом. По самому боту так понял: - Нужен некий баланс, который можно поп...
Magic
6
Всем привет, нужна как никогда, нужна помощь с IO в загрузчике. Пишу в code16 после установки сегментных регистров, пишу вывод символа. Пробовал 2 варианта: # 1 mov $0x0E, %a...
Shadow Akira
14
Раз начали говорить про embassy, то присоединюсь со своими парой вопросов. 1) Есть ли сопоставимые аналоги для асинхронного кода в emdebbed? 2) Можно ли внутри задач embassy ...
NI_isx
6
сделал сайт, прикрутил в боте сайт, и виджет логина. как автоматически логинить пользователя в аккаунт(телеграм), при входе с бота?
Александра Чернивецкая
5
Карта сайта