Вопрос об обучении

Главная Форумы Разработка игр Вопрос об обучении

В этой теме 3 ответа, 3 участника, последнее обновление  coremission 9 мес. назад.

  • Автор
    Сообщения
  • #2096

    lvvova
    Участник

    Доброго времени суток!
    В одной вашей статье я видел совет «после того как вы пройдёте несколько курсов попробуйте сделать игру сами»(примерно так)
    Вопрос: «сделать игру сами», подразумевает, если возник вопрос, не лезть на ютуб или другой источник а делать самому используя лишь Unity API документацию, или просто сделать игру не копипастя 80% кода из курса/серии гайдов?

  • #2099

    coremission
    Хранитель

    Привет! Без контекста, не очень помню что имел ввиду) Но если бы я еще раз рекомендовал как учиться программировать игры, на Unity или на другом движке не важно — я бы рекомендовал освоить язык, алгоритмы и подходы «концепции» к реализации разных моделей самостоятельно.

    Тоесть, вне игрового движка. Без навязанной этим самым движком парадигмы. Это позволит начать догадываться как устроены движки, упростит отладку в будущем.

    Например, есть очень полезное упражнение с симуляцией: Есть карта, состоящая из клеток (поле n на n) на карте есть статические объекты: полицейский участок, заборы и динамические обекты: преступник и полицейский. Заданы правила: преступник передвигается каждый ход на 1 клеточку по вертикали и горизонтали, а полицейский еще и по диагонали. Задача полицейского поймать преступника (встать на клетку рядом с ним) и отвести в участок. Можно выводить в консоль «ASCII артом» или в файл.

    В такой задаче Вы и ООП освоите и паттерны проектирования, и игровой цикл напишите и алгоритмы поиска пути можно прикрутить. После такой практики — множество вопросов — который иначе бы приходилось гуглить или копипастить просто отпадут.

    Эта же задача с умелым преподавателем, который будет ревьювить код еще и навыки грамотного написания кода прививать может! Например таким образом: Увидит преподаватель, что ученик что-то слишком топорно сделал и «поменяет» условия задачи так: А давай теперь у нас гексагональное поле, а не квадратное. А давай теперь у нас «ночь» и у полицейского ограниченный сектор обзора «фонарик». А давай теперь у нас есть управление и это игра.

    И так далее. В общем я за то, чтобы полёт мысли изначально не был ограничен рамками движка, чтобы не принимались на веру.

    Большое спасибо, что создали тему с вопросом, надеюсь я Вам помог! Если вопросы остались — пишите 😉

  • #2101

    Coil

    Интересное задание! А можете по шагам рассказать что учить, чтобы его уметь делать? Просто книги что Вы рекомендуете по си шарпу читать? Можно ли Вам потом код прислать, чтобы вы так поучили?

  • #2102

    coremission
    Хранитель

    Из практических заданий еще очень полезно начинать писать эту симуляционную систему в TDD (Test Driven Development). Я уверен, что у тестов есть еще и такая неочевидная польза: Очень сложно написать тестируемый быдлокод, тесты заставляют хорошо планировать зависимости между классами.

    Если у Вас спагетти-код из множества зависимостей — чтобы протестировать придется очень постараться чтобы загружать эти зависимости в контекст выполнения теста.

    Coil, да, достаточно книг по C#, что я упоминал здесь, например,- Для начинающих Unity3d программистов

Для ответа в этой теме необходимо авторизоваться.