Size: a a a

2020 October 06

N

NoCodeBugsFree in Unreal Engine
Asco Delavol'e
Здрасти, есть ли возможность компилировать шейдеры на gpu?
да
источник

С

Сэр MSTR in Unreal Engine
Компилируешь из редактора, нажимаешь "play", а компонента нету просто
источник

AD

Aleksei DTG in Unreal Engine
ну вообще под анрил LiveCoding достаточно неплохо работает под Винду, странно, что столько обсуждений на тему скорости компиляции, и почти никто не вспоминает LiveCoding
источник

AD

Aleksei DTG in Unreal Engine
да и CPP файлы тоже компилируются вроде как без особых проблем на лету и без LiveCoding, дольше только
источник

AD

Aleksei DTG in Unreal Engine
а вот чего точно не стоит делать - это на лету хэдэры компилировать, по крайней мере в старых версиях, в новых может что поправили - не знаю, честно говоря у самого уже привычка выработалась редактор перезапускать, 7 раз отмерь - 1 раз отрежь :)
источник

V

VL in Unreal Engine
Всем привет,есть задача накрутить подобие шторма,с изгибом вроде еще все более-менее,добавил в секвенсер материал параметр колекшн трэк,начинаю анимировать силу и происходит ад подобный,как этого можно избежать? https://yadi.sk/i/aUqUDa4IkAU5WA
источник

AD

Asco Delavol'e in Unreal Engine
Как? Можно ссылку на инструкцию, в гугле не нашел
источник

VB

Vlad Balachevskyy in Unreal Engine
Проблема следующая:

Есть класс Item, у него есть эвент onOverlapBegin, в котором вызывается destroy();
То-есть при оверлапе с персонажем объект уничтожается.

Есть спавнер менеджер: collision box с методом onEndOverlap, когда Item заканчивает оверлап(подразумевается что он себя дестройнул) мы спауним новый в области возле игрока.

Все круто, но если координаты спавна совпали с корами игрока(случился оверлап при спавне), то для itema вызывается метод onBeginOverlap и он уничтожается, при этом не вызывается метод onEndOvrlap в спавн менеджере и объект не спавнится. И все, -1 объект.

Схема +- такая:
1. Item::onBeginOverlap(Destroy)
2. SpawnManager::onEndOverlap(Spawn)
3. Item::onBeginOverlap(Destroy) - в этом же тике
4. SpawnManager::onEndOverlap(Spawn) - уже не вызывается
источник

VB

Vlad Balachevskyy in Unreal Engine
Кто-то знает как поменять порядок исполнения скриптов(с++ файлов) или запретить обрабатывать оверлап до конца тика?
источник

DS

Dimka Sokolov in Unreal Engine
VL
Всем привет,есть задача накрутить подобие шторма,с изгибом вроде еще все более-менее,добавил в секвенсер материал параметр колекшн трэк,начинаю анимировать силу и происходит ад подобный,как этого можно избежать? https://yadi.sk/i/aUqUDa4IkAU5WA
ну если сила - это скорость какого-нибудь паннера, то да, так и будет. надо в материале свою конструкцию добавить, которая будет не скорость регулировать, а само смещение и его уже анимировать.
источник

AD

Aleksei DTG in Unreal Engine
Vlad Balachevskyy
Проблема следующая:

Есть класс Item, у него есть эвент onOverlapBegin, в котором вызывается destroy();
То-есть при оверлапе с персонажем объект уничтожается.

Есть спавнер менеджер: collision box с методом onEndOverlap, когда Item заканчивает оверлап(подразумевается что он себя дестройнул) мы спауним новый в области возле игрока.

Все круто, но если координаты спавна совпали с корами игрока(случился оверлап при спавне), то для itema вызывается метод onBeginOverlap и он уничтожается, при этом не вызывается метод onEndOvrlap в спавн менеджере и объект не спавнится. И все, -1 объект.

Схема +- такая:
1. Item::onBeginOverlap(Destroy)
2. SpawnManager::onEndOverlap(Spawn)
3. Item::onBeginOverlap(Destroy) - в этом же тике
4. SpawnManager::onEndOverlap(Spawn) - уже не вызывается
ну, во-первых здравствуйте
во-вторых, этот SpawnManager, это что, какой-то большой бокс, который нужен для того, чтобы определить, что айтемов внутри больше нет и спаунить новый?
источник

VB

Vlad Balachevskyy in Unreal Engine
Aleksei DTG
ну, во-первых здравствуйте
во-вторых, этот SpawnManager, это что, какой-то большой бокс, который нужен для того, чтобы определить, что айтемов внутри больше нет и спаунить новый?
Здравствуйте) Спавн менеджер - блупринт с одним колижн боксом, который имеет 1 метод onEndOverlap. Его задача респаунить объект, что уничтожился. Игрок подбирает объект(оверлапит) а спавнер тут же респаунит
источник

AR

Anton Rassadin in Unreal Engine
Vlad Balachevskyy
Проблема следующая:

Есть класс Item, у него есть эвент onOverlapBegin, в котором вызывается destroy();
То-есть при оверлапе с персонажем объект уничтожается.

Есть спавнер менеджер: collision box с методом onEndOverlap, когда Item заканчивает оверлап(подразумевается что он себя дестройнул) мы спауним новый в области возле игрока.

Все круто, но если координаты спавна совпали с корами игрока(случился оверлап при спавне), то для itema вызывается метод onBeginOverlap и он уничтожается, при этом не вызывается метод onEndOvrlap в спавн менеджере и объект не спавнится. И все, -1 объект.

Схема +- такая:
1. Item::onBeginOverlap(Destroy)
2. SpawnManager::onEndOverlap(Spawn)
3. Item::onBeginOverlap(Destroy) - в этом же тике
4. SpawnManager::onEndOverlap(Spawn) - уже не вызывается
Замените onEndOverlap на собственный вызов из айтема в момент уничтожения.
источник

AD

Aleksei DTG in Unreal Engine
Если да, то имхо onEndOverlap - не кошерный способ определения таких вещей, я бы байндился на OnDestroyed в данном случае. при условии, что этот айтем не физический и не вылетает за этот бокс
источник

VB

Vlad Balachevskyy in Unreal Engine
Aleksei DTG
Если да, то имхо onEndOverlap - не кошерный способ определения таких вещей, я бы байндился на OnDestroyed в данном случае. при условии, что этот айтем не физический и не вылетает за этот бокс
Так onDestroy срабатывает же для айтема. Если я дестройну айтем я никак не узнаю об этом в спавн менеджере
источник

С

Сэр MSTR in Unreal Engine
Aleksei DTG
а вот чего точно не стоит делать - это на лету хэдэры компилировать, по крайней мере в старых версиях, в новых может что поправили - не знаю, честно говоря у самого уже привычка выработалась редактор перезапускать, 7 раз отмерь - 1 раз отрежь :)
Ммм, на лету это имеется ввиду из редактора? То есть хэдеры не надо, а спп можно?
источник

AD

Aleksei DTG in Unreal Engine
Что касается того, чтобы "запретить", то такие вещи легко делаются просто запретом на, оверлап, например. на старте жизни актора, с неким куллдауном
источник

AD

Aleksei DTG in Unreal Engine
Сэр MSTR
Ммм, на лету это имеется ввиду из редактора? То есть хэдеры не надо, а спп можно?
нет, имею ввиду из студии, когда редактор работает. Моя практика показывает, что CPP компилируются без проблем (правда на моём медленном компьютере есть проблемы с ожиданием того, пока DLL из памяти выгрузятся старые), а вот с хэдэрами да, проблема, поля слетают
источник

С

Сэр MSTR in Unreal Engine
Vlad Balachevskyy
Проблема следующая:

Есть класс Item, у него есть эвент onOverlapBegin, в котором вызывается destroy();
То-есть при оверлапе с персонажем объект уничтожается.

Есть спавнер менеджер: collision box с методом onEndOverlap, когда Item заканчивает оверлап(подразумевается что он себя дестройнул) мы спауним новый в области возле игрока.

Все круто, но если координаты спавна совпали с корами игрока(случился оверлап при спавне), то для itema вызывается метод onBeginOverlap и он уничтожается, при этом не вызывается метод onEndOvrlap в спавн менеджере и объект не спавнится. И все, -1 объект.

Схема +- такая:
1. Item::onBeginOverlap(Destroy)
2. SpawnManager::onEndOverlap(Spawn)
3. Item::onBeginOverlap(Destroy) - в этом же тике
4. SpawnManager::onEndOverlap(Spawn) - уже не вызывается
Попробуй вместо дестрой:

1)скрыть меш эктора
2)SetLifeSpan
источник

AD

Aleksei DTG in Unreal Engine
Vlad Balachevskyy
Так onDestroy срабатывает же для айтема. Если я дестройну айтем я никак не узнаю об этом в спавн менеджере
нет, ты не понял, OnDestroyed событие
источник