@IdoNotLikeNicknames
Молодой паренек, хочу пилить игры

Разработка игр.Как начать?

Я поучаствовал в олимпиадах, более-менее ориентируюсь в c++ (т.е знаю его).

И вот я захотел создавать игрушки (в первую очередь для десктопа).

Вопрос №1: Как и с чего начать?. Я не работал ни с движками, ни с чем-либо подобным.

Вопрос №2: один родственник посоветовал взять исходники(ну например олдскульной консольной змейки) и просто что-то поменять, или добавить, а не разрабатывать что-то с нуля. Так ли это?
  • Вопрос задан
  • 712 просмотров
Пригласить эксперта
Ответы на вопрос 9
Stalker_RED
@Stalker_RED
Вот вам првая попавшаяся статья о создании "компьютерной игры с нуля".
Вам она сокрее всего НЕ подойдет, и лучше бы вам почитать их несколько, и подобрать такую, которая соответствует вашим умениям и интересам.

один родственник посоветовал ... Так ли это?
Судя по вашим словам, он вам что-то такое посоветовал. Но так ли это на самом деле - отсюда не видно.
Ответ написан
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Подберите актуальный на сегодня игровой "движок" на С++ и читайте оф. мануал и проходите уроки шаг за шагом.
После того, как освоите - можете сделать что-то простое на нём.
А дальше - уже поймёте куда двигаться.
Ответ написан
dollar
@dollar
Сейчас можно вливаться в геймдев, изучая Unity. Во всяком случае, это идеальный инструмент для быстрого и дешевого создания прототипа.

Если вы знаете С++, то скорее всего вам зайдет другой движок - Unreal, так что можете начать с него. Он не такой модный, потому что порог вхождения выше, как раз из-за С++, но вы-то его знаете. И он вполне годный. В чем-то даже лучше Unity - меньше готовых решений (которые ограничивают ваши хотелки) и больше свободы, настроек, возможностей. Красиво устроен внутри. Продуманный. Вообще он для серьезных бородатых людей, а Unity нынче может даже школьник освоить.

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

Короче, нужно помнить два основных момента:
  1. Геймдев - это сложно. Реально сложно. Одному человеку, как правило, не под силу. Конечно, если это не пятнашки или тетрис, а также если ваша конечная цель - прибыль.
  2. Геймдев и любовь к играм - это не одно и то же. Совсем. Разница примерно такая же, как ездить на машине и чинить машину (и тем более, проектировать ее). Поэтому если вы просто игроман и хотите применить навыки программирования к играм, то делайте моды (Lua) и не касайтесь сферы геймдева.

Готовы спуститься в ад? Тогда добро пожаловать в геймдев. :) И удачи! Она вам понадобится.

P.S. Родственник явно далёк от геймдева. Но если очень хочется, вот вам исходники игр.
Ответ написан
JZ_52
@JZ_52
Студент
Ну с++ я знаю один движок, это Unreal. Unity работает C# или Java. Вы можете взять готовый пример, но нужно разобраться что и зачем это здесь написано. Ну это моё мнение.
Ответ написан
saboteur_kiev
@saboteur_kiev
build engineer
По идее, решая олимпиадные задачи, вы должны были научиться решать задачи, научиться учиться.
И тут же вопрос - прямо неизвестно с чего начать.

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

Ставите задачу, ищете методы решения, изучаете их, решаете.

Надо сделать игру с 3д графикой - можете пойти в геометрию и низкий уровень работы с видеокартами, или просто смотрите доступные 3д движки, выбираете любой понравившийся, пробуете на нем реализовать что-нибудь простенькое.
Надо хранить игровые данные - пишете что примерно хранить, если уже ЗНАЕТЕ С++, то знаете какие в нем есть типы данных, выбираете подходящие. Если нужно хранить много, возможно нужно будет использовать базу данных - подбираете подходящую, учитесь с ней работать, учитесь интегрировать ее в вашем С++.

В общем разбиваете задачу на понятные подзадачи и решаете их.
Ответ написан
@Denioo
Для начинающего разработчика игр, советую начать учить C# и Unity. C++ прекрасно, но присмотритесь к C# и Unity возможностей куча, декстоп, мобилки, браузерки все что угодно да и к тому же очень много можно найти информации на просторах интернета как на русском так и на английском.
Не думаю что для вас будет сложностью за недели 2 выучить шарп))
Удачи!)
Ответ написан
tsarevfs
@tsarevfs Куратор тега C++
C++ developer
Начните с чего-то совсем простого. Змейка вполне нормальный пример. Можно писать на чем угодно не закапываясь в детали. 2D, спрайты скорее всего ваш выбор.
Некоторое время назад я игрался с https://www.sfml-dev.org/ . Возможно сейчас есть выбор лучше, надо гуглить. Да, реальные игры пишут на больших монстрах типа Unity или Unreal. Но из-за высокого порога входа легко все бросить не получив результата.

Важно понимать, что игры в последние годы все меньше про программирование. У меня во время учебы возникало желание сделать игру, но все обычно упиралось в модели, текстуры и прочий контент.
Не советую начинать писать свой движок. Даже если смотреть на это как на учебную задачу, почти наверное это потребует больше сил и времени чем у вас есть.
Ответ написан
@vanyamba-electronics
На С++ игры не пишут, на C++ пишут игровой движок. Но сами игровые сценарии намного удобнее писать на скриптовом языке, например, на Python, ActionScript или Java.

Впрочем, простую игру, вроде Тетриса или Змейки, можно написать и на C++ с помощью SDL (для 2D-графики) или OpenGL (для 3D). Хотя мой совет - использовать Python.
Ответ написан
@smart-drone
Игра это бесконечный цикл в котором происходит рендеринг и обработка событий от пользователя и от объектов игры. Вы создаёте различные классы для объектов игры и класс самой игры. Это могут быть персонаж, противники, карта, hud элементы. Каждый класс имеет обязательный метод отрисовки и пересчёта позиции в главном цикле. Главный цикл запускается из класса игры.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Spice IT Recruitment Москва
До 200 000 ₽
GD Company Москва
от 120 000 до 180 000 ₽
от 1 900 до 3 200 $