|
208 / 95 / 15
Регистрация: 27.07.2018
Сообщений: 323
|
|
Что изучать для совершенствования знаний по C++08.11.2018, 09:25. Показов 19527. Ответов 361
Изучил уже до ООП, вопрос что делать дальше? Могу ли я уже писать программы, с чего начинать?
0
|
|
| 08.11.2018, 09:25 | |
|
Ответы с готовыми решениями:
361
Что изучать после получения базовых знаний по c# Какой язык и технологию изучать после получения средних знаний
|
|
4057 / 2692 / 432
Регистрация: 09.09.2017
Сообщений: 11,990
|
|
| 08.11.2018, 12:41 | |
|
Придумать себе какую-нибудь задачу и начать наконец хоть что-то делать.
Хочешь писать игры - пиши. Тетрис там какой-нибудь, змейку, пакмана. В процессе наверняка возникнут вопросы. Не надо их тут же задавать на форуме, самостоятельный поиск решения куда полезнее.
0
|
|
|
1359 / 857 / 366
Регистрация: 26.02.2015
Сообщений: 3,827
|
|
| 08.11.2018, 22:56 | |
Сообщение было отмечено Manowar как решение
Решение
В общем, что делают качки, чтобы накачаться? Качаются. Что делают маляры, чтобы научиться красить? Красят. Что делают гонщики, чтобы научиться быстро ездить? Быстро ездят. Что делают программисты, чтобы программировать научиться?! ПРОГРАММИРУЮТ.
1
|
|
|
1 / 1 / 1
Регистрация: 18.08.2015
Сообщений: 59
|
|
| 08.11.2018, 23:05 | |
|
0
|
|
|
208 / 95 / 15
Регистрация: 27.07.2018
Сообщений: 323
|
|
| 08.11.2018, 23:34 [ТС] | |
|
KimRomik, вот этого я и ждал. После её изучения смогу ли я написать например такую игру как змейка?
0
|
|
|
475 / 427 / 290
Регистрация: 10.03.2015
Сообщений: 1,782
|
|
| 08.11.2018, 23:44 | |
|
CyberGame, змейку можно и без ООП/MFC и прочих либ написать
0
|
|
|
1 / 1 / 1
Регистрация: 18.08.2015
Сообщений: 59
|
||
| 08.11.2018, 23:45 | ||
|
для игр нужно смотреть в сторону GDI+, а если посложней то DirectX или OpenGL особенно если речь идет о графической составляющей
0
|
||
|
зомбяк
1585 / 1219 / 345
Регистрация: 14.05.2017
Сообщений: 3,940
|
|
| 09.11.2018, 00:06 | |
|
CyberGame, не сможешь. Для того, чтоб её написать, нужно разбить задачу на части, которые можно было бы последовательно решить. Наподобие того что "как отображать змейку и поле", "как управлять змейкой и что для этого нужно", "как создавать или загружать уровни прохождения" и т.д.
Без такого последовательного решения вопросов на практике будут всего лишь знания теории (в случае MFC о том, что можно строить окна и обрабатывать события их компонентов) и только.
0
|
|
| 09.11.2018, 11:08 | ||
|
youtube
Я сделал пустой проект для Visual Studio 2015 с подключённым OpenGL и FreeGLUT: Snake.zip FreeGLUT - библиотека для окна, а OpenGL - библиотека для вывода графики. В змейке нужны только разноцветные квадраты. Вы можете открыть проект в VS, смотреть видео, слушать объяснения, набирать код, запускать, всё должно работать. Если у вас не VS2015, а например, VS2017, то перейдите в настройки проекта и измените: "Configuration Properties" -> "General" -> "Platform Toolset" на вашу версию VS.
1
|
||
|
737 / 704 / 110
Регистрация: 29.05.2015
Сообщений: 4,303
|
|
| 09.11.2018, 11:40 | |
|
А вдруг потом захочет другую игру написать, а видеоурока по ней не будет?
4
|
|
| 09.11.2018, 12:07 | ||
|
Добавлено через 6 минут Кстати, чужой код тоже полезно бывает изучать. Разбираться, как работает, сравнивать разные варианты тех же змеек, черпать что-то для себя от более опытных товарищей. Учиться читать чужой код - это тоже полезный навык.
1
|
||
| 09.11.2018, 12:11 | |
|
Я видел разные варианты змеек. С точки зрения организации кода и ООП в змейке мне больше всего понравился вариант этого гениального товарища, под видео можно скачать код: Writing Snake game in 10 minutes
youtube
На всякий случай исходники: speedprogramming-master.zip
1
|
|
|
Mental handicap
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
|
|||
| 09.11.2018, 12:54 | |||
|
CyberGame, уважаемый TRam_, верно говорит и впрочем описал алгоритм написания, дальше смотрите в сторону ECS. А вообще просто читайте всегда что-то новое, я после прочтения Липпмана начал читать Танненбаума и его труды по ОС и архитектуре, еще досихпор не дочитал всего но такое знать надо, учите STL, читайте мейерса и пробуйте искать работу) Я примерно так и нашел) По поводу ООП, советовал бы очень не зацикливаться ибо там можно застрять на долго и так доконца всего не понять)
0
|
|||
|
1359 / 857 / 366
Регистрация: 26.02.2015
Сообщений: 3,827
|
||
| 09.11.2018, 13:09 | ||
|
По теме OpenGL есть отличные статьи.
0
|
||
| 09.11.2018, 13:14 | |||||||
|
Добавлено через 1 минуту https://learnopengl.com/ - это отлично, но возможно для начала достаточно будет вот этого:
Хотя бы для первого первого прототипа змейки.
1
|
|||||||
|
1359 / 857 / 366
Регистрация: 26.02.2015
Сообщений: 3,827
|
|
| 09.11.2018, 13:14 | |
|
0
|
|
|
Mental handicap
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
|
|
| 09.11.2018, 13:16 | |
|
8Observer8, это верно, усложнять не стоило бы, но я считаю что из-за этой простоты новичку может показатся что все так и есть на самом деле, просто, но это далеко не так, особенно с графикой типо OpenGL/DX
![]() Не по теме: Имхо, все ще считаю glut ущербным, хотя и свой не сложный функционал он исполняет, не знаю, личная неприязнь
0
|
|
| 09.11.2018, 13:43 | ||
|
Другое дело FreeGLUT, который является OpenSource версией GLUT и который можно скачать в x86 и x 64 сборках. Обновлялся он не так давно, в 2015. На Github есть клоны, которые обновляются. У меня пример выше на FreeGLUT. Просто в туториале, что я выше скинул GLUT. А вообще я бы лучше взял GLFW, потому что по ней больше всего туториалов и на форумах эту библиотека более популярно и почти все её знают. Но GLFW чаще всего используют с современным актуальным шейдерным OpenGL 3+. Я на всякий случай для автора темы уточню, что когда он родился в 2003 году, то на следующий год вышел шейдерный OpenGL 2.0 (его ещё называют OpenGL с программируемым конвейером), а до этого с 1991 по 2003 был нешейдерный OpenGL (его называют OpenGL с фиксированным конвейером)
2
|
||
|
Mental handicap
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
|
||||
| 09.11.2018, 15:10 | ||||
1
|
||||
| 09.11.2018, 22:02 | |||||||||||
|
Даже для таких простых игр, которые выводятся квадратами, очень важен вывод текста:
У библиотеки FreeGLUT есть встроенные средства для вывода текста:
glutBitmapString - выводит текст. Рабочий пример:
0
|
|||||||||||
| 10.11.2018, 01:19 | ||||||
|
Не во обиду тем, кто не любит читать/смотреть уроки. Я считаю, очень хороший текстовый урок, как начать делать игру Понг на C++ и OpenGL на английском: C++ 2D Pong Game Много общего со змейкой в техническом плане. За одно и английский изучается. Здесь показывается начало создание игры, а всё остальное предлагается реализовать самостоятельно, как впрочем и в подавляющем большинстве текстовых и видео туториалов. Можно использовать технические детали из этих туторов для змейки и других "квадратных" игр. Вот тоже на OpenGL/FreeGLUT змейка, правда, на Python от тех же авторов: Python Snake Game. Кстати, по-моему, Python намного в понимании, чем C++, так что проблем в чтении кода на Python не должно быть. Можно сочетать с остальными примерами выше и c найденными примерами, чтобы сразу убрать технические детали, мешающие двигаться дальше, подглядеть, понять и усвоить какие-то необходимые идеи.
Ещё один замечательный урок, как добавить музыку и звуки в игру с помощью библиотеки irrKlang: https://learnopengl.com/In-Practice/2D-Game/Audio Я добавил локальное подключение библиотеки irrKlang для воспроизведения аудио в VS-проект для Win32 и x64: Snake.zip Всего несколько строк, чтобы добавить фоновую музыку в игру:
0
|
||||||
| 10.11.2018, 01:19 | |
|
Подскажите, как лучше всего изучать язык, ежели в академии не дают достаточный объем знаний Какие паттерны можно использовать для совершенствования приложения Что изучать для работы Что изучать для создания сайтов Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Программа для com-порта
Uhbif79 05.06.2026
Всем привет, давно хотел изучить Qt, начинал, бросал, потом снова начинал. И сейчас вот смог написать свою первую программу.
До этого имел опыт программирования микроконтроллеров, писал прошивки на. . .
|
Транскрипция 55-минутного видео через Whisper: WhisperDesktop облажался, спас Google Colab[
anaschu 01.06.2026
Понадобилось получить текст из свежезагруженного видео на YouTube. Казалось бы, задача на пять минут. Заняла полтора часа. Делюсь опытом — может кому пригодится последовательность решений.
. . .
|
21 мат мед. Планы на развитие модели здравоСохранения
anaschu 01.06.2026
AnyLogic: план развития симуляционной модели рабочего коллектива — динамический абсентеизм, реальные данные, три сценария сравнения
Продолжаю серию постов о дискретно-событийной модели рабочего. . .
|
20. Мат мед. Абсентеизм как отдельный тип простоя
anaschu 29.05.2026
Апдейт модели: исправленные баги, абсентеизм и новые механизмы
Продолжаю развивать ранее описанную модель рабочего коллектива на AnyLogic. За последние несколько дней был проведён серьёзный. . .
|
|
19. здоровье, усталость и психотип работника влияют на производительность предприятия, и наоборот, производительность на здоровье, усталось и психотип
anaschu 28.05.2026
Дискретно-событийная модель рабочего коллектива на AnyLogic: здоровье, выгорание, психотипы и микростимуляция
Привет, коллеги. Хочу поделиться итогами нескольких недель работы над симуляционной. . .
|
"Прокси" для последовательного порта
Eddy_Em 28.05.2026
Эту штуку написал я достаточно давно. Но сейчас вот понадобилось настроить датчик грозы, но при этом не отключать его от "метеодемона". Соответственно, надо запустить этот "прокси": метеодемон будет. . .
|
Рефакторинг программы уравнивания.
Massaraksh7 26.05.2026
Пример по предыдущей записи в блоге. Но, надо заметить, что, во-первых, там оптимизация не только математики, но и работы с базой данных, и с графами, а во-вторых, это ещё не всё.
|
Использование TThread в Lazarus для математических вычислений.
Massaraksh7 25.05.2026
Производя рефакторинг своих программ на предмет ускорения их работы, обратил внимание на такой аспект, как сокращение времени матвычислений. Дело в том, что приходится работать с большими матрицами. . .
|