Мучаюсь с юнити, есть ли эксперты по С#?!
Можно ли как-то сделать динамические изменяемые скрипты AI и Animator?
Допустим я хочу сделать, чтобы можно легко менять у персонажей AI скрипты,
и эти скрипты называются по разному CowAI, DogAI, HumanAI
Можно ли сделать как-то аналог такого псевдокода?AI CurrentAI = GetComponent<Один из моих скриптов AI>();
- 25 октября 2021, 10:10
- 03
Так вроде уже писали несколько раз.
Делай базовый класс, разные ИИ - дочерние от него.
А ссылку используй того же типа, что и базовый класс.
Чтобы таких вопросов не возникало - надо книги читать. Но никто же не читает всякие методики, паттерны и прочее, всем лень, а потом изобретают велосипеды.
А я сколько ни читаю технические книги, не понимаю что там вообще написано. Пока сам лично не попробую пример, и пример желательно должен быть очень короткий в несколько строк + понятный для чего я буду в будущем его использовать. А то книга просто вываливает на тебя что надо учить, но для чего это нужно, часто непонятно, либо сама книга очень скучно написана, чисто для техников, а я как художник не могу долго вчитываться в научные понятия и тупо засыпаю.
По C# могут посоветовать (как уже скидывал ссылки), данный сайт: https://metanit.com/sharp/. Тут и про язык, и про шаблоны. Но шаблоны имеют базовое описание, а про применение в играх можно почитать бесплатную книжку "Шаблоны игрового программирования" Роберт Найстром. Так же по Unity и шаблоны немного рассказывает (когда не рекламирует свои курсы) Роман Сакутин, например: Unity Best Practices, Паттерны. Там много "забавно" контента, в общем на любителя.
И ты тоже, видимо? Методики и паттерны покрывают ту часть ЯП, для которой выработана технология. В основном это ООП. Может уже для АОП придумали, хз. Всего знать не будешь, особенно когда твоя цель - сделать игру, а не погружаться в инструментарий. Зачем нужна Юнити, когда для эффективной работы с ней нужно ещё тащить весь бэкграунд Devops? К тому же, большинство алгоритмов для игр уже хорошо известны и давно реализованы в виде компонент в том же маркете на юнити. Покупай и настривай. На канале того же https://www.youtube.com/c/FatDino прекрасно видно как это работает. Ну если, конечно, есть деньги, и не жалко их тратить на ассеты и компоненты. Если жалко, то лучше гамак использовать XD
SOLID, GRASP, ECS - это всё нужно только в Unity? Ты думаешь, что в GMS этого не надо?
Кстати да, мне обычно попадались книги по шарпу и С++ где очень плотно проходятся по всему ООП, и я долгое время пытался осилить это, но не понимал нужно ли всё учить, зачем так много инфы накидывают про различные виды иерархии, и когда уже будут примеры в рамках игры (то есть зачем я всё это изучаю), а в конечном итоге забил на такие учебники, и стал искать только практические советы для конкретной текущей задачи.
Только его сначала надо купить.
Вообще он теперь бесплатный. То что в нём нельзя экспортнуть EXE, ограничение для дурачков, его можно достать из кэша компиляции, так как по F5 ведь можно сыграть в игру которую ты сейчас делаешь, а значит EXE где-то есть. Хотя по-хорошему для саморазвития никакие внешние EXE не нужны, делаешь себе и делай, вот если релиз уже готов, это другой разговор.
Я так делал на бесплатной версии GM 8.1, чтобы в игре watermark'ов не было.
Только эти "EXE-шники из кэша" перестают запускаться на следующий день. Мне что, часы все время назад переводить? Или может игрок пусть это делает?
Не удивлюсь если в GMS - так же.
Сколько там Desktop в стиме стоит, 1600 pуб? Ты уверен что я на своей игре больше заработаю?
И почему я не делаю игры на GMS я уже говорил - там программировать неудобно.
Вот для Love2D, в обычном редакторе - мне удобно.
Я, может быть, попробую на Гаминатор взять триальную версию GMS и сделать игру на ней, благо триала на 1 месяц хватит, чтобы попробовать ваше хваленое "В современных GMS 2.0 все заебись".
Но заранее уже готов к провалу.
А сейчас всё ещё есть триал и версия за одноразовый платёж? Они же вроде положили на разработчиков подпиську
Для GMS1,2 есть внешний редактор кода, который в чём-то лучше встроенного в IDE.
Жаль, если он действительно лучше встроенного. Кажется, что фишка ГМСа в том, чтобы из него не выходить.
А при чём тут "заработаю"? На хобби тратятся, а не зарабатывают. Можно ещё в магазин для художников или музыкантов пойти и попросить бесплатно краски или гитару, интересно что скажут.
Я не хвалю ГМС2. Всё игры что я хотел бы сделать, прекрасно можно сделать и на ГМ8.1, Студия только для портов на платформы где нормально покупают.