Size: a a a

2021 March 27

VK

Vladimir Khanin in Unreal Engine
Простым языком. Интерфейс - создает некий общий метод, который можно вызывать везде, главное что бы ссылка на актер с интерфейсом была
Диспачер - создается стэк привязанных классов и в них есть функция диспатчера. И когда ты делаешь broadcast идет проход по привязанным "актерам" и в них всех вызывается эта функция
источник

VK

Vladimir Khanin in Unreal Engine
это если очень просто и натянуто за уши)
источник

AD

Aleksei DTG in Unreal Engine
Vladimir Vladimir
А в чем разница? Я имею ввиду по функционалу
в том, что диспатчер - это механизм обратного вызова, когда класс А подписывается на событие класса Б, и когда в классе Б что-то происходит, класс А об этом узнаёт, при этом класс Б ничего не знает об А и никак на него не ссылается
интерфейс - это соглашение о взаимодействии. По сути есть некоторый контракт, который говорит: любой, кто имплементирует интерфейс С должен иметь метод С1 и С2. Есть классы, имплементирующие данный интерфейс. И есть класс А, который ссылается на некоторый объект, который имплементирует интерфейс. Т.е. класс А точно знает, что какой бы класс не скрывался за интерфейсом, у него есть методы С1 и С2, которые можно вызвать
источник

VV

Vladimir Vladimir in Unreal Engine
Спасибо мужчины!
источник

VV

Vladimir Vladimir in Unreal Engine
А если я хочу передать инфу, или вызвать евент в другом классе, что предпочтительней диспатчеры или Интерфейсы?
источник

AD

Aleksei DTG in Unreal Engine
Vladimir Vladimir
А если я хочу передать инфу, или вызвать евент в другом классе, что предпочтительней диспатчеры или Интерфейсы?
Расскажи, как ты видишь реализацию через диспатчер? Вернее опиши задачу более конкретно
источник

VV

Vladimir Vladimir in Unreal Engine
Aleksei DTG
Расскажи, как ты видишь реализацию через диспатчер? Вернее опиши задачу более конкретно
Подписываюсь на событие в Акторе в котором хочу вызвать Евент...
источник

VV

Vladimir Vladimir in Unreal Engine
И делаю Кол в управляющем Акторе
источник

VV

Vladimir Vladimir in Unreal Engine
Это же работате
источник

VV

Vladimir Vladimir in Unreal Engine
И с помощью Интерфейса можно
источник

VV

Vladimir Vladimir in Unreal Engine
И вот я пытаюсь понять что правильней с точки зрения граммотного кода
источник

VV

Vladimir Vladimir in Unreal Engine
С точки зрения оптимизации
источник

AD

Aleksei DTG in Unreal Engine
Vladimir Vladimir
Подписываюсь на событие в Акторе в котором хочу вызвать Евент...
А как ты вообще связываешь подписку на событие в акторе и вызов ивента на этом же акторе? Причём тут диспатчер?
источник

VV

Vladimir Vladimir in Unreal Engine
Aleksei DTG
А как ты вообще связываешь подписку на событие в акторе и вызов ивента на этом же акторе? Причём тут диспатчер?
источник

VV

Vladimir Vladimir in Unreal Engine
Ну вот я по подписке получил сигнал
источник

VV

Vladimir Vladimir in Unreal Engine
и запустил евент
источник

ИД

Искандер Добровольск... in Unreal Engine
Объясните пж, что за символы редактора и зачем они нужны?
источник

AS

Alexander Shumeyko in Unreal Engine
Искандер Добровольский
Объясните пж, что за символы редактора и зачем они нужны?
Они нужны для того чтобы можно было дебажить код движка, а так для корректного вывода колстека при краше
источник

ИД

Искандер Добровольск... in Unreal Engine
Понятно, это мне пока не нужно.
источник

ИД

Искандер Добровольск... in Unreal Engine
Alexander Shumeyko
Они нужны для того чтобы можно было дебажить код движка, а так для корректного вывода колстека при краше
Спасибо
источник