Основы игрового программирования на С - PullRequest
3 голосов
/ 01 декабря 2009

В течение последних 2 месяцев я пытался изучить основы игрового программирования. Поэтому я написал несколько простых игр на Java для изучения основ, таких как тетрис, шашки и Pac-Man.

Теперь я хочу изучить / улучшить свои навыки в C, поэтому у меня есть идея написать эти игры на C, чтобы узнать больше об управлении памятью, об отсутствии ООП и т. Д. Я раньше занимался базовым программированием на C, но никогда не работал с графикой поэтому я не знаю с чего начать.

Какие библиотеки мне следует использовать для написания простых 2D-игр на C? GTK +? Каирские библиотеки? Какие учебники вы можете порекомендовать? Графические библиотеки?

Спасибо

Ответы [ 6 ]

13 голосов
/ 01 декабря 2009

Я бы порекомендовал использовать графические библиотеки SDL, здесь есть несколько довольно хороших учебных пособий и демонстраций ... http://www.libsdl.org/ и для учебных пособий здесь ... http://www.sdltutorials.com/ Надеюсь, что все идет хорошо!

3 голосов
/ 01 декабря 2009

Если вы хотите заняться разработкой игр на Си, OpenGL с избытком - хорошее начало.

Красная книга - твой друг !!

3 голосов
/ 01 декабря 2009

По моему мнению, начинать с openGL с избытком - это хорошее начало, так как оно позволяет создавать как 2D, так и 3D графику.

http://www.opengl.org/resources/libraries/glut/glut_downloads.php

Если вы хотите, чтобы другой слой помогал вам в различных частях программирования игры (события клавиатуры и мыши, звук и т. Д.), Вы можете использовать SDL с openGL.

http://osdl.sourceforge.net/main/documentation/rendering/SDL-openGL.html

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

2 голосов
/ 01 декабря 2009

Хотя следующие не 2d; поскольку все упоминают о 3d, я мог бы добавить следующие библиотеки; это библиотеки с открытым исходным кодом для 3d-движков.

Огр - довольно популярный графический движок с открытым исходным кодом. «Факел» был написан на нем, как и «Сказка в пустыне». Также нереальный движок стал открытым исходным кодом .

1 голос
/ 01 декабря 2009

Как уже упоминалось, вам нужны некоторые ключевые математические навыки, чтобы продвинуться в мире программирования игр. Я не знаю, сколько задействовано в анимации и моделировании, так как инструменты доступны, но для написания движков любого рода требуется линейная алгебра; это относится к 3D-программированию и может быть задействовано в 2D Opengl. Вводная книга Гилберта Странга по линейной алгебре удивительна . У Mit opencourseware также есть целый семестр лекций, доступных Гилбертом Странгом по линейной алгебре. Вы можете скачать их прямо с Itunes или в Интернете.

1 голос
/ 01 декабря 2009

2D-библиотека, которая только что пришла мне в голову и которую очень приятно использовать, - это Quartz от OSX. Инструменты также чертовски хороши. Вам придется выучить немного Obj-C, но это хороший язык.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...