Pull to refresh

Игрострой. С чего начинать

Level of difficultyEasy
Reading time6 min
Views5.1K

Привет всем! Меня зовут Ш. Сергей!

Я очень не хотел создавать подобные темы. И уже есть темы которые я уже создавал и там многое уже написано. А так же есть множество подобных тем, где люди написали больше меня и вероятно для кого-то более полезно чем я. Это и не удивительно, ведь я программист на Pascal/Assembler, от которых сейчас многие открещиваются как только могут.

В этой статье я постараюсь затронуть тему для всех ЯП и в своём большинстве для начинающих программистов. Так как именно они зачастую будут стоять перед выбором: "с чего же начинать?"

Зачем эта тема?

Я пишу статьи и задевать каждый раз одну и ту же тему в каждой статье - достаточно бессмысленное занятие. Согласитесь, что выбор IDE, её настройка, настройка проекта и прочие вещи желательно освещать везде. И очередная статья будет содержать много информации именно по вступлению. Люди, читающие статьи, могут быть простыми новичками (а может ещё даже не выбирали ЯП) и могут не знать многих вещей. Для этого и создаю краткую статью которая будет предварительной подготовкой к проекту. Она хоть и поможет мне (а может и не только мне) в дальнейшем, но какие-то настройки для отдельных проектов всё равно делать наверняка придётся.

С чего же надо начинать?

В настоящее время существует множество игровых движков, которые позволяют делать игры не создавая никакой код. Unity, Godot, Game Maker и другие менее популярные. Вероятно ваш выбор, изначально, должен пасть именно на них. Так как большинству будет проще начинать с чего-то более простого и более понятного. Потренируйтесь, создайте простые игры и решите для себя, подойдут они вам или нет.

Так же, я бы посоветовал новичкам создавать карты для игр, и не только карты. Взгляните на игры в которых вам позволяют создавать карты и не только (редактировать героев или ещё какие возможности). Это такие игры как Герои 3, Dota, TES III и другие.

Благодарность, SadOcean, за то что напомнил, что я упустил достаточно важную часть "игростроя"!

Если вы уже наигрались со всем этим, и вам этого мало, то тогда вам поможет программирование, где возможностей больше, но путь ещё тернистее.

Выбор ЯП

По данной теме есть куча советов, и на самом деле мне бы не стоило вообще задевать эту тему. Но... на то оно и "но".

Вам надо определиться какой ЯП вы будете использовать. Не бойтесь менять ЯП на начальной стадии, когда вы новичок. Возможно какой-то ЯП вам будет более понятен, а какой-то наоборот может оказаться достаточно сложным для изучения.

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

Если вы новичок, то не гонитесь за новыми ЯП! Зачастую именно на них очень мало учебной литературы. Не гонитесь за языками, внутренний функционал которых часто меняется. То что вы изучаете сегодня, может оказаться завтра практически не нужным.

Лично моё мнение это начинать с таких языков как С (не С++) , Pascal, Basic (он сейчас используется?) возможно C#. Не считайте мои слова за основу! Возможно вам лучше подойдут такие ЯП как: Python, Java, Kotlin или другие.

Если вы не новичок и уже программируете год-три. Не уходите с данного ЯП! В большинстве случаев при таком переходе на другой ЯП вы потеряете почти весь свой прогресс в программировании. Если вы выбрали ЯП, но не научились хорошо на нём программировать, то переход на другой ЯП зачастую будет вреден. Мозг человека не всегда готов перестраиваться и вернее всего вы просто забросите это дело.

Скрытый текст

По сути этот совет достаточно бесполезный. Потому что многие как раз в этот момент и бросают программирование.

Бывалые программисты могут "скакать" с одного ЯП на другой. Многим из них приходится программировать на нескольких ЯП. Это нормально, и некоторым от этого не уйти.

Скрытый текст

Я использую в основном три ЯП: Object Pascal, ассемблер и java. Но код приходится читать на разных ЯП. Поэтому да, наверняка я могу перейти на другие ЯП, но нужно ли?

Задавайте себе этот вопрос, если решите перейти на другой ЯП.

Потому выбор ЯП это достаточно важно на начальной стадии, а для людей закалённых в боях это становится менее критичным.

Выбор среды разработки и её настройка.

IDE

Это тоже достаточно важный выбор. Если у вас мощный компьютер, то многим подойдёт Visual Studio. Новичкам надо просто узнать поддерживает ли Visual Studio выбранный вами ЯП и просто использовать его.

Если у вас не достаточно мощный компьютер, то я бы не советовал использовать Visual Studio, или как минимум вам надо будет выбрать её более раннюю версию. Visual Studio жрёт много ресурсов и вам может не понравится то, как она работает на вашем компьютере (об этом, кстати, многие забывают).

Людям, кто давно программирует сложно что-то посоветовать, потому что со временем у многих появляются свои запросы. В скорости работы IDE, в скорости компиляции проекта, ещё каких-то параметров, которых может оказаться очень много. Кому-то обычный текстовый редактор подойдёт, кому-то нестандартная легковесная IDE. И иногда люди выбирают средства разработки годами, а иногда пользуются разными для одного проекта.

Вам придётся искать по интернету какие IDE существуют для вашего ЯП, попробуйте каждый (по возможности) и выберите тот который вам понравился (возможно через некоторое время вы решите его сменить, и тут как раз кстати будет то, что вы уже проверяли какие-то IDE).

настройка

После выбора IDE вам надо её настроить. Это тоже важно, но для новичков лучше всего эту часть пропустить. На настройку IDE обычно уходит очень много времени, и это не настолько критично, чтоб прям с нуля начать настраивать IDE под себя.

Вы решились делать настройки IDE? Тогда ищем информацию по интернету, на форумах, может в видео. Тут я почти не советчик, потому что достаточно сложно будет сделать обзор для того количества IDE, что существует в настоящее время.

отладчик

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

Но всё же отладка это важная часть. У многих сред разработки отладчики идут вместе с ними (или устанавливаются с ними, что почти без разницы) и автоматически настраиваются. Потому, по большей части, не надо даже задавать вопросы есть у вас отладчик или нет. Наверняка есть. Но есть моменты когда отладчик надо ставить отдельно, поэтому к такому варианту вам тоже надо будет подготовится. В особенности это касается тех, кто собирается отлаживать код в командной строке.

По большей части это будете не вы. )))

Создание и настройка проекта.

Эта тема так же может быть как обширной, так и быть очень маленькой.

Для новичков она очень маленькая. Обычно вы открываете урок, вам указывают в какой последовательности что сделать и проект готов. Но вы должны знать, что множество IDE содержат разную функциональность по созданию проекта. Многие из них позволяют создать большое количество разновидностей проектов, в результате вы можете получить довольно не малый проект с уже готовым кодом. Этот код, зачастую, можно запустить, но не факт что вы увидите результат работы программы, потому что вы можете даже не успеть увидеть как как проект успел отработать. Потому пугаться таких моментов не надо.

Потренируйтесь в создании/закрытии проекта. Посмотрите какие вы можете создать проекты, посмотрите код, созданный в процессе создания.

Компиляция и запуск проекта.

Многие IDE уже содержат функции компиляции, сборки и запуска проекта по умолчанию. Какие-то из них позволяют сразу переходить к запуску вашего приложения, они компилируют проект и сразу же его запускают. В момент компиляции, сборки или запуска приложения могут возникать ошибки, которые надо исправлять. Эти ошибки по большей части вам покажет ваша среда разработки, в редких случаях ваша запущенная программа.

Если вы не знаете что за ошибка произошла в результате попытки запуска вашей программы, то лучше всего обратиться на форум где идёт поддержка данной среды разработки. Желательно чтоб такой форум был активным и чтоб на нём ежедневно создавалось не менее 10 тем (на самом деле для некоторых ЯП есть форумы где создаётся 1-2 темы, и это будет нормально). Спрашивайте в чатах, если таковые имеются. Но в чатах не очень долго держится информация и в скором времени её уже не видно будет. Потому чаты иногда не совсем удобны, особенно если там сидит много народа. С другой стороны это может оказаться очень удобным, так как ответить могут быстрее чем на форуме.

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

Создайте проект и попробуйте его запустить. Изначально созданный проект, обычно, не должен содержать ошибок и должен нормально запускаться.

Немного советов.

  • Перед запуском, старайтесь сохранять проект. Не все IDE сохраняют проект по умолчанию и всё что вы сделали, может потеряться в результате непредвиденных событий.

  • При изучении ЯП всегда тренируйтесь! Создание кода позволит вам быстрее понять что делает данный код.

  • Пробуйте менять данные в вашей программе, даже если вы делаете всё по урокам. Посмотрите результат. Попробуйте сделать что-то не правильно и так же посмотрите результат. Постарайтесь сделать подобную программу сами, без учебников.

  • Чем больше вы будете программировать, тем больше вы должны понимать, что проверки в программе очень важны. Не выполненная проверка зачастую приведёт к неожиданному завершению программы и возможно без всяких предупреждений.

  • Выберите игровой движок, который будет вам больше по душе. Сменить его вы всегда сможете, в любой момент времени.

Окончание.

Так это статья ближе к обучению, то она явно не завершающая, но вот пока все статьи по "Игрострою" будут не упорядочены и содержать совершенно разную информацию. У меня не мало информации скопилось в процессе создания как различных проектов, так и в процессе разработки движка ZenGL. Какую-то информацию по программированию вы можете увидеть на моём канале, тематика там может быть достаточно разнообразной и... не отсортированной. Уж извиняюсь. Так же стараюсь пока выпускать статьи, все они лежат у меня в профиле здесь. Ну и можете поддержать меня. Хотя бы лайком или дизлайком! )))

Tags:
Hubs:
+1
Comments20

Articles