Pull to refresh

Comments 28

Cтатьи по данной теме нужны, с удовольствием почитал бы о Unreal Engine 4, ведь движок стал доступнее с появлением подписки.

Всегда восхищался подобными нодовыми редакторами, даже пытаюсь сделать подобный, для построения небольшой логики в редакторе уровней игры.
Что конкретно о движке Вас интересует, о чем интересно почитать? BP — очень гибкий и дружелюбный в управлении инструмент с огромными возможностями)
Моделирование меня интересует меньше всего, но вот взаимодействие объектов, действия на события, построение той же сортировки вещей через ноды. Написание кода тоже интересно, но это я вроде как умею.
В таком случае (если владеете ЯП), то и с нодами проблем не будет — по сути то же самое, только надо не писать, а соединять блоки. Основное, как и при написании кода — представлять себе общую структуру желаемого. В общем-то, поработав какое-то время на BP для себя сделал вывод, что различия лишь в удобстве и быстроте восприятия — ноды читаются куда быстрее объемного кода. Пока C++ даже не подключал, хотя уже назревает-таки новая статья по платформеру, а ведь там будет про боевую систему и (спойлер!) мультиплеер ;)
Вы, кажется не совсем поняли:) Товарища интересует не использование BP в UE4Editor, а написание своего аналогичного BP-движка для редактора карт:)
Этого да, не понял :) По созданию своего движка ничего не скажу, а вот про BP — ощущается, как просто надстройка над яп, по факту у нас есть набор встроенных функций, использование которых облегчается контекстом, но ни что не мешает создавать свои встроенные функции и события (процедуры). По факту — просто удобное визуальное представление кода :) Единственное что придётся писать свой интерпретатор, видимо
в UE4 для BP есть своя виртуальная машина.
Кстати говоря, забыл написать о том, что Unreal Engine 4 доступен бесплатно для студентов через GitHub. Здесь даже была статья, вроде как.

P.S. Если интересно почитать про Блупринты, с удовольствием напишу ещё пару статеек ;)
Очень интересно. Лично я бы не отказался от такой.
Интересно, у вас очень легкий стиль письма, пишите ещё.
Сильно отпугивает использование нодово, все никак не решусь попробовать.
Можно использовать С++ если ноды пугают, а можно комбинировать. Что то быстрей сделать блюпринтами, что то на С++ иногда удобно сделать заготовки на С++ а потом из блюпринтов с ней взаимодействовать.
Так и делается, особенно если работаете с людьми, не знающими программирование так глубоко. Программист делает, например, ноду, которая создаёт в указанной точке игрового мира солдата с оружием, здоровье и прочими параметрам. И левел-дизайнер может через блупринты указать событие, по которому срабатывает создание солдата, где это происходит, а вся сложная логика уже сделана и оптимизирована за него программистом внутри ноды.
Внутри Блупринтов тоже самое, на самом деле. Создаешь библиотеку Макро или Функций, создаешь внутри них необходимую схему и потом используешь функции как один блок.

Очень часто приходится использовать, что бы в одном графике не плодить кучу кода, да и не писать все по кучу раз.

Тоже самое и в группе разработчиков. Не обязательно программист может на С++ писать функционал. Может тот, кто знает Блупринты написать набор функций для дизайнеров, а те даже с малыми знания БП могут «Надизайнить» что-нибудь.

Если честно, никогда не думал сам, что нодовый язык может быть настолько гибким и мощным, поэтому и хотел учить обычные языки. Но после Блупринтов понял это.
Вообще не стоит их бояться и рассматривать как что-то такое Слабое или Бредовое для «Ламеров», на самом деле все сделано очень грамотно и продуманно. Как говорят знакомые программисты, вполне может заменить бо'льшую часть игровой логики от С++.
У блупринтов есть две проблемы. Первое — это объём. То, что я могу легко описать строчкой кода (именно простого кода, а не замороченными лямбдами) в блупринтах забивает нодами целый экран, а то и больше. И оптимизация, всё же чистый спп работает быстрее, чем блупринты, несмотря на то, что они сами являются блоками спп кода.
Ну тут я соглашусь. Однако последние два месяца научился с ними работать быстро и правильно, все размещать в функции или библиотеки функций, если часть кода нужна несколько раз. Да и как-то рука уже наловчилась быстро работать.

С С++ я работал совсем каплю, поэтому против ничего сказать не могу, но у меня в последнее время код на экране все меньше и меньше. Более того, я собрал личную библиотеку функций, которая не раз меня спасает и заменяет часто используемые схемы одним блоком.
Делать все на BP не плохо вот с какой точки зрения: Т.к. BP в 10 раз медленнее C++ то сделав все хорошо и оптимизировано на BP можно это перекодировать на C++ и получить такой вот бустер. :)
Я не говорил что делать что то на BP плохо. Просто иногда 3 строчки на С++ выливаются в 10 экранов BP, что не хорошо.
Я и не говорил, что вы так говорили. Просто ошибочку допустил: «неплохо» конечно же.
Расслабьтесь…
Это было просто предложение одного из юзкейсов BP в разрезе программирования на СПП для УЕ4.
На самом деле это дело привычки. Учитывая, что Блупринты помогают тебе не сделать ошибку, а более того, ты не пишешь все ручками, а просто вытаскиваешь блоки (часто даже соединяет за тебя), то даже если какая-то логика будет больше, вренени на этот весь экран может уйти не так уж и много. Не буду отрицать, что на С++ быстрее, но все таки на БП тоже весело писать)

Кстати жалко не упомянул в статье, что Блупринты помогают и не дают соединить неправильно что-то или по крайней мере показывает блоки, актуальные в данный момент. То есть нельзя, скажем, вызвать функцию «Установить материал», когда вы работаете с источником света.
Можно ли делать так- на блюпринтах писать основную логику, а создание объектов или другие штуки вынести в С++?
В свое время делал небольшой проект на UE4, чтобы проникнуться духом разработки на движке топ-класса. Система блюпринтов без сомнения крутая, но у меня, как у программиста, сложилось впечатление, что выраженная в коде логика выглядит лаконичнее, чем реализованная на блюпринтах. Уж очень развесистыми получаются деревья нодов, даже если грамотно разносить логику в разные блюпринты и переиспользовать их. Частичное вынесение фунционала в код на C++ и использование его из блюпринтов, вероятно, решает проблему, но там тоже свои приколы. UE4 научился компилировать код без перезапуска редактора, но не всегда. Насколько я помню, перезапуск редактора по-прежнему требуется, если добавляешь новый класс или функцию. На всё это тратится драгоценное время, что не добавляет процессу интерактивности и скорости.
Нет, уже все пофиксили, можно просто писать код, компилировать, разворачивать редактор и щупать. Компиляция(кроме первой) на моём не очень мощном ноуте занимает порядка 1 минуты, не более. Так что по ощущениям UE4 сильно приблизился к юнити в этом плане.
А разработали ли (или может быть планируется) средство расшаривать эту нодовую нотацию в инторнетах? Уж очень грустно смотреть на это в виде картинок.
Можно просто скопировать(в буфер поступит куча текста), а потом вставить. Если вы об этом, конечно)
Я имел в виду возможность посмотреть схему прямо в браузере, но то о чем Вы сказали тоже весьма любопытно)
Нет, так нельзя. Хотя, думаю, если UE4 будет очень популярен, что-то такое придумают.
Sign up to leave a comment.

Articles