GR1D0 писал(а):
Prytaleks писал(а):
p.s. с большей долей вероятности ты пользуешься левел блупринтом из за нубства))
А, ну всё ясно). Спасибо что разъяснили.
Ну на самом деле он прав. Конечно не так грубо, но из-за вашей неопытности..
Использование Лвл БП попросту неудобно. Да, там можно написать логику, и все будет прекрасно работать, но это не есть правильно, так как существуют более удобные и правильные способы, о которых вы пока не знаете. Это как копать яму ложкой. Да, так можно, и вам кажется это нормальным, но только потому, что у вас нет лопаты. Конечно же я не говорю уже о том, что вас ни на какую работу после такого не возьмут. :)
Вот представьте себе ситуацию.
У вас есть какой-то объект, при нажатии на который он передвигается (типично для головоломки). И такой объект не один. Например шашки, простой пример. Как вы их будете делать в ЛВЛ БП? Копипастить логику? Делая куча событий для каждой шашки? А что если эти объекты динамически спаунятся? Как быть?
Вот в таком случае удобно создать Эктор класс, в нем поместить модельку, написать логику реакции на нажатие и просто размещать/спаунить на сцене их. Ничего копипастить не нужно, не нужно плодить кучу событий. К ним легко обратиться (кстати никакие касты и интерфейсы не нужны, кто-то выше писал), удобно добавлять свойства (жизни, силу и прочее) и оперировать ими..
И кстати про свойства. Я вообще не представляю, как можно через Лвл БП давать свойства объектам, не говоря уже об их настройке.. Например те же жизни, силу и прочее. Это придется целые массивы отдельно хранить.
В общем это как писать программу в одном файле, а не делить на классе. Там будет сотни тысяч строк кода, которые не разобрать, а так все будет удобно. И стоит вообще запомнить такую вещь: "
Переменные и логику вы пишете там, к чему они принадлежат.". Это значит, что не нужно поведение объектов писать в блупринте уровня, они не уровню принадлежат. Не стоит программировать персонажа в классе игрового режима, не стоит делать игровые правила в классе пользовательского интерфейса, ну и так далее.
Вот вам и объяснение. Так что да, вы делаете неправильно и по неопытности. По началу некоторые вещи действительно кажутся удобными, так как вы их легко понимаете. Но когда вы поймете ООП, вы сразу перестанете думать так) Не переживайте, это было со всеми. Я тоже в начале не понимал, зачем плодить кучу классов и функций. Теперь думаю, что без этого никак..
_________________
Просьба, не писать вопросы по движку в ЛС. Я не единственный, кто знает UE4, и поэтому пишите на форум или в группу.