Unreal Engine 4 http://uengine.ru/forum/ |
|
Сетевой режим в игре http://uengine.ru/forum/viewtopic.php?f=2&t=13689 |
Страница 2 из 4 |
Автор: | (_-=ZhekA=-_) [ 18 май 2018, 17:58 ] |
Заголовок сообщения: | Re: |
Dany писал(а): 1. Определись в том какой контент является общим для обоих вариантов. Как правило это вся игровая геометрия и базовые классы (виртуальные). 2. Определись чем именно отличаются оба режима. Если мульти лишен чего-то, например, а сингл наделен тем. 3. Отключай в режиме мульти опции что работают в сингле. Но прежде сделай такую организацию логики, чтобы достаточно было галочками регулировать наличие/отсутствие опций. Не используй чужие паки никогда(!) это контрпродуктивно. Это конечно хороший вариант, но я хз... А что плохого в том, что будет два разных отдельных ассета для сингла и мультика? Или так вообще не делают? |
Автор: | Dany [ 18 май 2018, 18:56 ] |
Заголовок сообщения: | |
Цитата: А что плохого в том, что будет два разных отдельных ассета для сингла и мультика? Или так вообще не делают? Делают как угодно. Ничего плохого нет ни в одном варианте. Есть удобный вариант, есть неудобный, только и всего. Если учесть тот факт, что работа над простенькой игрой может занять до полугода, что сопровождается частыми перерывами, то чем больше создано классов тем сложнее разобраться потом. А уж если создано два проекта, 80% которых совпадают один с другим, то в случае, когда у тебя появится идея сменить что-то в серии классов, что участвуют и там и там, ты будешь делать двойную работу. Стало быть двойные баги, правки. Повторюсь - если тебе лишь бы сделать чтобы былО, делай как любой нуб - как бог на душу положит. Не нужно долго думать, просто делай. А если хочешь как взрослые дяденьки, то потрать пару недель или месяц - набросай архитектуру классов от виртуальных до базовых. И потом уже будешь просто расширять и дополнять классы. |
Автор: | (_-=ZhekA=-_) [ 19 май 2018, 11:10 ] |
Заголовок сообщения: | Re: |
Dany писал(а): Цитата: А что плохого в том, что будет два разных отдельных ассета для сингла и мультика? Или так вообще не делают? Делают как угодно. Ничего плохого нет ни в одном варианте. Есть удобный вариант, есть неудобный, только и всего. Если учесть тот факт, что работа над простенькой игрой может занять до полугода, что сопровождается частыми перерывами, то чем больше создано классов тем сложнее разобраться потом. А уж если создано два проекта, 80% которых совпадают один с другим, то в случае, когда у тебя появится идея сменить что-то в серии классов, что участвуют и там и там, ты будешь делать двойную работу. Стало быть двойные баги, правки. Повторюсь - если тебе лишь бы сделать чтобы былО, делай как любой нуб - как бог на душу положит. Не нужно долго думать, просто делай. А если хочешь как взрослые дяденьки, то потрать пару недель или месяц - набросай архитектуру классов от виртуальных до базовых. И потом уже будешь просто расширять и дополнять классы. Да, делать хрень, как-то не хочется... Хочу все сделать по нормальному на столько на сколько у меня это получится. Если не трудно - можешь набросать схему действий? Как бы ты поступил в такой ситуации? Допустим, есть два совершенно разных готовых для использования ассета. У каждого ассета все свое и написаны они совершенно по разному. Единственное, что у них общее так это то, что один полностью сетевой ( это мольтиплеер ) а второй сингл, но он тоже сетевой. Как бы ты решил этот вопрос, как бы действовал, что делал и с чего бы начал? |
Автор: | Dany [ 19 май 2018, 11:24 ] |
Заголовок сообщения: | |
Цитата: Как бы ты поступил в такой ситуации? Допустим, есть два совершенно разных готовых для использования ассета. У каждого ассета все свое и написаны они совершенно по разному. Единственное, что у них общее так это то, что один полностью сетевой ( это мольтиплеер ) а второй сингл, но он тоже сетевой. Как бы ты решил этот вопрос, как бы действовал, что делал и с чего бы начал? Я полностью согласен с нашим мудрым Змием )) (Snake) по поводу использования конструктора из асстов, сам тебе не раз говорил, что использование чужого - пустая трата времени и сил. Но ты продолжаешь думать в том же направлении. Я бы взял чистый лист бумаги, мои недавние выкладки об архитектуре классов в проекте и погнал чертить структуру проекта. От GameMode до PlayerController-а. Все что можно схемы я тебе уже набросал. Этого на пальцах не пояснишь, за 10 минут мозги тебе не вправишь. Ты уже столько месяцев толчешь воду в ступе но воз и ныне там. Разбей проект на условные блоки: механика управления игроком (сетевое решение в том числе), HUD, инвентарь и так далее. То есть те блоки, которые не имеют прямого наследования, а только взаимодействуют друг с другом. После каждый блок запрограммируй от абстрактных классов до базовой механики. Тестируй, отлаживай. Потом больше и дальше. Первый проект твой будет убогий, смирись. И даже второй и может и десятый. Но важно понимать, если хочешь чтобы было качественно и по уму, учись делать правильно но не бойся ошибаться. И главное САМ, пусть и используя чужие идеи но САМ!!! ЭТО ВАЖНО!!! Траст ми )) Тогда через 5-10 лет будет у тебя приемлемый результат. Да и сам ты станешь вполне себе сносным игроделом ) Если же не готов, обучись чему-нить узконаправленному, но качественно и продавай свой талант за таланты в какой-нить организации... |
Автор: | (_-=ZhekA=-_) [ 19 май 2018, 11:54 ] |
Заголовок сообщения: | |
Ошибаться я не боюсь, один проект я уже сделал ) Я пытаюсь понять, что есть правильно, а что нет. Как оно - делать правильно. Так как в программировании и моделировании одну и туже задачу можно решить\сделать несколькими способами, а то и десятками способов. Конечный результат будет всегда одинаковый, а вот сами варианты будут разные. Есть короткие пути решения задачи, а есть длинные + создание тонны костылей на ровном месте... |
Автор: | ue4help [ 19 май 2018, 12:52 ] |
Заголовок сообщения: | |
Есть правильный путь решения задачи и остальные. |
Автор: | Dany [ 19 май 2018, 12:58 ] |
Заголовок сообщения: | |
Цитата: Я пытаюсь понять, что есть правильно, а что нет. Еще раз медлееееннооо... Правльного пути не существует. Вернее не существует объективно правильного. Есть субъективно правильный. Это такой путь, который требует минимального количества ресурсов с максимальной отдачей. Кому-то проще и быстрее накидать кучу, которая работает и ладно. Кому-то нужно структурировать, систематизировать чтобы проще было регулировать и оптимизировать. На данном этапе у тебя есть все что нужно: движок, YouTube, оффдоки... Единственно что тебе не хватает - опыта и уверенности в себе. Когда перестанешь спрашивать, научишься находить все сам, значит ты наконец начал что-то понимать и останется это только отшлифовать. Я больше не вижу что можно еще сказать. Ты или готов понять или нет ))) То уж сам решай... |
Автор: | (_-=ZhekA=-_) [ 19 май 2018, 13:13 ] |
Заголовок сообщения: | Re: |
Dany писал(а): Цитата: Я пытаюсь понять, что есть правильно, а что нет. Еще раз медлееееннооо... Правльного пути не существует. Вернее не существует объективно правильного. Есть субъективно правильный. Это такой путь, который требует минимального количества ресурсов с максимальной отдачей. Кому-то проще и быстрее накидать кучу, которая работает и ладно. Кому-то нужно структурировать, систематизировать чтобы проще было регулировать и оптимизировать. На данном этапе у тебя есть все что нужно: движок, YouTube, оффдоки... Единственно что тебе не хватает - опыта и уверенности в себе. Когда перестанешь спрашивать, научишься находить все сам, значит ты наконец начал что-то понимать и останется это только отшлифовать. Я больше не вижу что можно еще сказать. Ты или готов понять или нет ))) То уж сам решай... С этим ясно, ок. И еще один вопрос. ) Да, я знаю, что использовать чужие ассеты - зло, так как нужно писать все самому и что в чужом коде черт ногу сломит особонно, если это готовый ассет в котором тонны кода... Так вот вопрос - что посоветуешь, чтобы можно было ориентироваться в чужом коде? Его нужно разобрать на части и постепенно все подключать и смотреть, как все это работает? Нужно на бумаге начертить структуру проекта, то есть - что основа и что куда идет. ЧТо нужно сделать, что бы понять структуру чужого кода в готовом ассете? |
Автор: | Normandia [ 19 май 2018, 13:14 ] |
Заголовок сообщения: | |
Имхо, как по мне говорить что нельзя использовать чужие ассеты - это тупизм. Они для того и создан чтобы либо использовать их в проекте, либо смотреть что и как реаизовано |
Автор: | Snake [ 19 май 2018, 14:05 ] |
Заголовок сообщения: | |
Цитата: Они для того и создан чтобы либо использовать их в проекте они созданы только для того чтоб их купили... не больше ни меньше. Чтоб разобрать как чужой ассет как устроен тут два варианта: 1- все методы и классы ассета документированны остальное все инкапсулированно взаимодействие с ассетом возможно только на необходимом уровне, прицип "что внутри осталось и не видно" - минимально обьяснен для уверенности что туда лезть не нужно - нет проблем тогда читаем доки и используем по назначению. (пример епиковские классы, правда не описан принцип работы поэтому приходится лазить и изуучать их) но так не повезет скорее всего ) 2- вариант который попадется в 99%: все сделанно как попало на отьебись, и работает только так как есть... ммм... по порядку изучаем архитектуру ассета, изучаем все классы от рута к последним с ихними методами. изрядно матерясь при этом... находим то что можно залатать или сомтрим как все устроенно (это займет от дня до недели наверное) переписываем все по своему профит. |
Страница 2 из 4 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |