А вот тут согласен с автором(если так и задумывалось)
Сначала нужно с функциями знакомиться.
PS я проходил форматированный вывод почти(!) последней темой ^^
Количество "сложностей" зашкаливает.
Кросавчег, сразу с самых азов учишь писать спагетти код. Так держать! Надо же нормальным программистам выделяться на чьем то фоне.
У автора свой подход - он подает материал в виде создания игры, пусть простой, но игры. Да, он не раскроет всех возможностей С++, но если ему удастся привить хоть одному из читателей желание продолжать учиться, то читатели сами смогут нагуглить более серьезные книги.
Проблема в том, что многие кто самостоятельно начинает обучение программированию забрасывают это дело, так как у них пропадает стимул. Они читают, читают, читают, но результата в виде программы которая действительно что-то делает - нет. Поэтому до конца обычно доходят лишь те, кто уже имел какие-то результаты еще до начала обучения. До начала обучения, Карл! Вот он в чем секрет, оказывается, те самые "маньяки" писали программы еще до того как ознакомились с теорией! *Картинка - вот это поворот*
Одно дело брать и бездумно использовать, другое дело - понимать как это устроено. Если человек запускает Unity3D, перетаскивает на сцену систему частиц огня, даже близко не понимая что это, при этом безумно радуется и считает себя великим программистом, то это его выбор. :)
Для того, чтобы понять сложные вещи, нужно понимать из чего они состоят, хотя бы в общем виде.
Лично я на него как-то спокойно перешёл, и меня больше удивила реакция окружающих на такие "новшества".
А по поводу функций: автор даже не раскрыл return (void main() вообще ужас какой-то, а как же старое доброе return 0; подтверждающее корректное завершение программы?), хоть и упомянул, что никакие данные не возвращаются.
void main(){} ?
На С++?
Парень, ты серьезно?
Ничего так, что это не ANSI C и стандарт языка требует int main(){}?
Ага, в этом и проблема :)
В первом выпадающем списке выбери "Always build", а во втором - "Do not launch"
@dansken помогай, при нажатии ctrl+f5 пишет:" game1.exe не является внутренней или внешней командой, исполняемой программой или пакетным файлом."
А вообще скинь скриншот настроек отсюда: Tools/Options/Projects and Solutions/Build And Run/
Нее.. Это звучит как "Не столь важно с какого языка программирования начинать обучение" :) В будущем будет более понятно что к чему и зачем :)
Привет. Я хотел бы задать один вопрос если можно. Я учусь программировать и решил, для разнообразия, попробовать сделать игру. Хотел узнать на чем пишутся платформеры вроде каких-нибудь Salt and Sanctuary или Deadlight. Я понимаю, конечно, что это уже очень высокий уровень (до которого мне, вероятно, никогда не дотянуть), я просто привел их как пример и хочу узнать что именно нужно учить для написания подобных игр. Буду благодарен если вы меня направите, если можете. Больше не придумал к кому обратиться)
Привет :) Игры высокого уровня пишутся на движках высокого уровня :) А движки высокого уровня могут быть написаны на различных языках программирования, использовать различные языки программирования и быть использованы с помощью различных языков программирования :)
Проблема оказалась в Avast. Этот хитрожопый антивирь блокировал намертво процессы, до такой степени что в итоге даже командная строка не запускалась. В итоге отключил аваст перед запуском студии и все заработало !
заметил что после ctrl+F5, в папке проекта курсор меняется на "песочные часы" да и вообще студия зависает иногда на мертво
Попробуйте просто F5, но после printf("Hello, Pikabu!\n"); дописать еще
getchar();
getchar();
( Об этом будет во втором уроке )
@Dansken, Заново начал, на диске D. Запустил студию с правами Администратора. Ошибок не выдает, но и текст не выдаёт )=
1>------ Build started: Project: Lesson_1, Configuration: Debug Win32 ------
1> Main.cpp
1> Lesson_1.vcxproj -> D:\GameDev\Lesson1\Lesson_1\Debug\Lesson_1.exe
========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========
после компиляции вылезает пустое окошко командной строки
Привет, @Dansken ! Спасибо за труды. У меня тут проблемка в первом уроке.
Выдаёт такую штуку, при компеляции,
1>------ Build started: Project: lesson1, Configuration: Debug Win32 ------
1>LINK : fatal error LNK1168: cannot open F:\gamedev\lesson1\lesson1\Debug\lesson1.exe for writing
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
Подскажешь почему вдруг новая папка стала только для чтения ?
P.s. хейтеры, ток балаболить могут (=
Сделал все как в посте, при нажатии ктрл ф5 выдает файл не найден(game1.exe)
Ошибки:
Ошибка LNK2001 неразрешенный внешний символ "_WinMain@16" game1 D:\Programs\visual\Для тестов\game1\game1\MSVCRT.lib(exe_winmain.obj) 1
Ошибка LNK1120 неразрешенных внешних элементов: 1 game1 D:\Programs\visual\Для тестов\game1\Release\game1.exe 1
@Dansken, Имеем:Visual studio 2015
проблема:(код написан)жмем кнтр=ф5 выдает проект устарел (debug win32- изменял ничего не менялось)- выполнить сборку(да)- сборка не удалась вернуть в последний успешный...(не дословно)да-еще раз контр ф5,тото is not recognized as an internal or external command
Лучше удали ее и скачай Visual Studio 2013:
https://www.visualstudio.com/news/vs2013-community-vs
Нажать там на линку "Download Visual Studio Community 2013."
Создать армию C++ геймдев разработчиков для борьбы с гавнокодерами Unity3D )))
Ну и еще я пытаюсь жену обучить, чтоб помогала с хобби-проектами :)
Пока серия идет неплохо, держи плюс. И про дорожки неплохо придумано, таким же образом можно объяснить мультипоточность.
Подписался чтобы следить за развитием событий и начать минусовать как только польется говнокод.
В каком смысле "вольное чтение технической литературы"? Вы всерьез думаете, что наделаете десяток (предположим, у вас хватит задора на десять) постов и их хватит, чтобы научиться чему-то кроме установки студии и создания проекта? Как вы понимаете применимость данных постов? Какой-нибудь Василий Пупкин, сидя и ковыряя в носу, подумает "Оооо, я хочу научиться делать игоры на C++. Загляну-ка я не на хабр, а на пикабу, вдруг среди сисек, спойлеров к Игре Престолов и котиков найдется кладезь мудрости?". Он заходит на пикабу, видит 10 постов, перепечатывает их до буквы и проникается мудростью и забивает, потому что кроме как копировать пост ничего-то и не умеет. Потому что:
1. В 10 постов не уложить даже минимум необходимых знаний
2. Книжки надо читать
3. Учиться писать код
4. Какое-то творческое начало в юном падаване тоже должно быть
Потом уже начинаются библиотеки типа Sfml- но тебе тогда лет 10 надо уроки делать, пока до этого дойдешь. У меня в универе, чтобы только Геймдевовские лекции посещать- нужно было сдать матан, физику, дискретку, С ,С++, java, комп архетектура и еще чего то там (уже не помню) -ну без этого всего дела не будет- будет игра на костылях сжирающая оперативную память и нагружающая все что можно (разработчика в первую очередь)
Мое ИМХО - Не обязательно владеть докторскими знаниями или уровнем гавнокодера, чтобы начать писать игры. Главное - правильно сочетать теорию с практикой. В игровом стиле. С конечным результатом. :)
Тогда почему бы не начать с обзора литературы, плюсы и минусы книг, мануалов и т.д.? "Скажите, а вы точно преподаватель?". Любой предмет начинается со списка литературы на изучение. А тут уже какие-то функции, войды, printf и никакого понимания, почему выбран именно С++ (может, игры на питоне шустрее работают, откуда абсолютному новичку™ это знать?), и т.д. Если вы пишете "начинающим программистам", которые, как подразумевается, уже знают все эти нюансы, то нафига им пост о том, как установить Visual Studio?
Ну можете считать это моим минусом и всячески порицать это, но я на дух не переношу "вольное чтение технической литературы", обращаясь к ней лишь для решения каких-то конкретных насущных задач. Поэтому и уроки буду вести без обзоров литературы. Люди, которым интересно вольное чтение технической литературы находят ее сами, эти уроки не для них. :)
Вы конечно хорошо весьма написали пост(по сравнению со множеством других, что здесь были), но до конца это не дойдет, как и большинство постов такой тематики на пикабу. Люди, которые этим заинтересуются, сами научаться всему, благо сайтов и книг много. Правильно написали, что лучше бы сделать обзор этих самих сайтов и книг, или пост не с уроками, а с демонстрацией того, чего можно достичь, чтобы пробудить интерес в читателе. Будет интерес - человек сам все сделает)
Я удовлетворюсь тем, что просто оставлю эту информацию здесь :) И всегда смогу скидывать ссылку на нее людям, которые просят меня об этом ( а это случается все чаще и чаще ) :)
Doom 3, вышел 10 лет назад. 366 000 строк кода. Это только движок.
http://fabiensanglard.net/doom3/
В современных движках под ~2 000 000 строк кода.
Твоё while(true) { Update(); Render(); } которое будет выдавать 15 кадров на 10 картинках никому не нужно.
Ох, еще раз.. Для тех кто в танке, эти курсы для самых-самых начинающих программистов, это не очередная статья на хабре про оптимизацию шейдеров на третьем OpenGL, это курсы для самых маленьких, тех кто только задумался о том, кем он хочет стать в будущем.
Может быть и да, просто уже на с давно не писал. Поэтому принтф режет по пьяни глаза) А что за игру вы собираетесь делать?
@Dansken если хочется создать полезную вещь, которая может помочь людям в освоении азов программирования.Сделай скрин каст как ты с нуля часов за 10 делаешь игру.Пятнашки, или тетрис какой.
может быть стоило написать:
#include <iostream>
using namespace std;
int main()
{
cout << "Hello world" << endl;
return 0;
}
Как правило, люди пишущие это не понимают что это такое и используют не задумываясь, ИМХО объекты и потоки стоит давать людям с уже очень хорошей базой ООП.
Хотя объяснить легко.
Я так это обычно делаю:
1 строка - мы будем использовать объекты из страны иострим
2 строка - чтобы каждый раз не писать, что объект из страны иострем - мы напишем что используем в коде страну иострим.
3. Когда программа закончится - надо сказать об этом Виндовс - вернуть какое-то число
итд
Кхм, т.к. я супер чайник, хотелось бы знать,что именно надо скачать что бы учиться по этим урокам?
@Dansken Приветствую, почитал сис. требования VS 2013. Не существует ли альтернативы в изучении для Windows XP? Можно ли сделать проект в VS Online?
Гугл подсказывает нечто такое:
https://msdn.microsoft.com/ru-ru/library/cc737011%28v=ws.10%...