2009-11-17 2 views
3

Я только что изучил основы C++ и C#, просто простые основы языка. И я хочу продолжить программирование игр. Кто-нибудь может рассказать мне, с чего начать. Я где-то читал, что Direct -X используется для игрового программирования, и я загрузил его с веб-сайта Microsoft, но я просто этого не понимал. Откуда вы начали программирование своей игры, когда вы были только новичком, или мне нужно иметь глубокие знания об этом языке или могу я только начать сейчас, пожалуйста, предложите мне. И я в первом семестре моей степени бакалавра.Игровое программирование для окон на C++ или C#

+0

Посмотрите на ответы, они расскажут о двигателях, книгах, сайтах, ресурсах, книгах, ..etc. потому что вы не указали, что ищете. –

+0

ну, я просто не знаю о двигателях, потому что я только что узнал об основных классах и всех. И я забыл спросить, должен ли я начать с 2-D игрового программирования, потому что я думаю, что было бы лучше для новичков, пожалуйста, скажите мне о 2-D программировании что-то близкое к World Of GOO.I хочу начать с этого типа. – 2009-11-17 15:43:09

+1

@Moayad Mardini: «Кто-нибудь может сказать мне, с чего начать». – Partial

ответ

4

От чтения ваших комментариев к исходному вопросу, кажется, вы попали в ловушку, чтобы слишком сильно заглянуть в ваши достопримечательности. Игра «Мир Гуо» не произошла за одну ночь. Потребовалось много времени, используя множество сторонних библиотек для создания элементов видео/аудио/физики/игрового процесса, а также очень хорошее знание программирования в целом и понимание ограничений, которые делает игра, часто навязывает.

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

Совет Байрона Уитлока «начать кодирование сейчас» - лучший совет. Но, начните с чего-то простого: например, текстовую версию Guess the Colours, затем некоторую легкую графику без реального времени, такую ​​как головоломки Othello/Reversi/Sliding, а затем попробуйте что-то в реальном времени, например, Tetris, а затем разворачивайтесь в физику, аудио, 3D и так далее на.

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

+0

Спасибо за этот замечательный совет. – 2009-11-18 05:56:30

10

Начните кодирование сейчас. Вы не получите глубоких знаний без, ну, кодирование! Я очень рекомендую XNA. XNA - это в основном оболочка .NET для DirectX. Это очень чистый и продуманный (это, конечно, C#).

Удачи!

+1

-1: Большинство видеоигр не сделаны с XNA по какой-то причине. C# и XNA не могут использоваться для серьезной разработки игр. .NET будет выщелачивать вашу RAM, а C# не должен позволять вам свободу, как C++! – Partial

+2

«Большинство видеоигр» - это не инди-игры. – zfedoran

+0

К сожалению, XNA мертв. – kirugan

4

Introduction to Game Programming in C++ хорошее начало.

alt text

Введение в программирование игр с C++ исследует мир разработки игры с акцентом на C++. Эта книги начинается с объяснением основ математики, как он относится к программированию игр, охватывает основы C++, и описывает ряда алгоритмов, широко используемых в играх. Кроме того, он обсуждает несколько библиотек, которые могут помочь вам в управлении графикой, добавлении звука и создании программного обеспечения для установки , чтобы вы могли получить , начиная с пути к созданию 2D и 3D-игр.

Если вы хотите начать с C#, который рекомендуется для начинающих, вы можете использовать XNA, который довольно прост в освоении, и хорошая книга является Beginning XNA 2.0 Game Programming: From Novice to Professional

Вы хотите, чтобы создать свой собственные игры, но никогда не успели копать в подробности мультимедиа программирование? Теперь вам не обязательно! XNA упрощает создание ваших собственных игр , которые будут запускаться на вашем ПК и консоли Xbox 360. Даже если вы не знаете, как программировать вообще, Начало XNA 2.0. Программирование игры: от новичка до профессионала научит вас основам программирования C# 2005 по пути . Не переполняйтесь данных, которые вам не нужно знать - узнайте, что вам нужно, чтобы начать создавать свои собственные игры прямо сейчас!

Быстрый темп введение в XNA и Язык C# предоставляет профессиональные разработчикам быстрого старта руководство по создание коммерческого продукта с использованием XNA, а также предлагает домашний энтузиастов или любителей все, они должны начать складывая игры в свое свободное время. Вы будете узнать и понять все ключевые концепции, необходимые для создания гладких, профессионально выглядящие результаты в диапазон жанров жанров.Каждый читатель уйдет с твердым основанием , на котором они смогут построить более передовые идеи.

2

Может быть www.gamedev.net лучший сайт ресурсов игрового программирования

-1

Отъезд torque engine. Это недорого и позаботится о том, чтобы сделать вашу игру так, чтобы вы могли сосредоточиться на том, чтобы сделать ее забавой. Это недорого, и вы можете писать код на C#.

3

Я бы порекомендовал начать работу с XNA, если вы знаете немного C#, это отличный способ войти в разработку игры и изучить некоторые важные концепции, которые помогут вам с другими библиотеками. creators.xna.com Есть несколько видеороликов и руководств, которые можно пройти, и это все бесплатно при программировании для ПК.

0

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

Во-первых, тщательно изучите, как программировать на C++ и понять, как работает компонентная объектная модель (COM), так как это то, что вам нужно использовать для вызова различных методов в DirectX SDK. Как только это будет сделано, узнайте, как создать окно с C++ в Win32. После этого найдите себе книги Direct3D для SDK DirectX 9, игровые движки и архитектуру, многопоточные приложения и шаблоны проектирования. Я бы предложил DirectX 9 Graphics The Definitive Guide to Direct3D от Alan Thorn для Direct3D. Эта книга не является окончательным руководством, а скорее очень хорошим введением, чтобы получить прочную основу. Конечно, книга немного устарела, но концепции остаются очень похожими, и это будет хороший справочник для более позднего (плюс это дешево .. ваш бюджет может быть напряженным со всем, что вам нужно заплатить за университет: P). Кроме того, посмотрите документацию и образцы из SDK. О, и прежде, чем я забуду, вам понадобятся некоторые понятия в математике (на ум приходит линейная и векторная алгебра)!

+2

-1 XNA был разработан, чтобы помочь новым программистам освоить игровое программирование. И снизить планку для инди-разработчиков для создания игр. Новичок будет намного более продуктивным и быстрее увидеть результаты с помощью xna. Когда они готовы сделать игру AAA с 10 программистами и 25 художниками, тогда потребуется C++. –

+0

Я не верю, что вы правильно прочитали то, что я написал ... Есть определенные понятия, которые нужно изучить перед тем, как делать DirectX, и я ясно написал это. Вы не начинаете изучать DirectX без хорошего понимания различных понятий, о которых я упоминал. – Partial

+0

На самом деле это исключает мою точку зрения, так или иначе ему придется изучать неуправляемый C++ с DirectX. Имея несколько хороших книг, интернет и некоторые преподаватели из своего университета, я считаю, что учиться не сложнее. Вероятно, это займет некоторое время, но это нормальный процесс. Даже если вы потратите время на изучение C# и XNA, не потребуется меньше времени для изучения неуправляемых C++ и DirectX. – Partial

0

Предлагаю попробовать использовать Silverlight в качестве игровой платформы.

Посмотрите этот сайт http://dobbschallenge2.com/. Он имеет полноценный 2D-игровой движок с исходным кодом и изображениями. Вы можете узнать, как работает прокрутка параллакса и т. Д.

Таким образом, вы можете изменить исходный код игры и медленно изучить, как это работает. Игровой движок довольно прост, но игра забавная и включает в себя потрясающий саундтрек :)

Смежные вопросы