3-е игровое программирование

  1. + [имя типа программы] для запуска программы в Vista
  2. + E для проводника
  3. + F для находки
  4. Высокий звук + Вкладка для свопинга между программами
  5. Ctrl + Вкладка к swawp между вкладками
  6. Едва ли ярлык 'Windows', но Ctrl + Высокий звук + цифровая клавиатура и Ctrl + Высокий звук + [стрелки], чтобы переместиться и изменить размеры окон и переместить их в другой монитор с помощью Оборот WinSplit являются абсолютно большими. Я никогда не использовал бы большой или несколько мониторов без них.

6
задан Thomas Bonini 24 February 2010 в 23:20
поделиться

13 ответов

Я не хочу расстраивать, но и не хочу лгать . Создание даже самой простой 2D-игры - это серьезный подвиг. Вот некоторые вещи, которым вам, вероятно, придется научиться, если вы собираетесь писать код для игры самостоятельно:

  • Общие концепции и методы, используемые в компьютерной графике.
  • Сетевое программирование (если применимо)
  • Аудио программирование и теория цифровой обработки сигналов.
  • Линейная алгебра, тригонометрия и разделы геометрии в математике
  • Концепции искусственного интеллекта, такие как нечеткая логика, конечные автоматы или нейронные сети.

Не говоря уже о том, что вам нужен солидный опыт программирования. Большинство крупных разработчиков игр используют C ++, который является достойным выбором, когда важна производительность. Но один размер не подходит всем. Я рекомендую вам взглянуть на C ++, Python и Java и выяснить, какой из них вам нравится использовать.

Это может вас разочаровать, но об этом нужно сказать. Если вы только начинаете программировать, вы не собираетесь делать трехмерную игру еще долго. Я изучил C ++ еще в 2002 году и до сих пор изучаю новые способы использования языка программирования. Есть много книг с названием Изучите язык программирования X за Y недель . Не верьте лжи. Невозможно изучить что-либо настолько сложное за этот промежуток времени. Я пытаюсь сказать: не торопитесь! Терпение - это все, и не существует такой вещи, как бесплатный обед.

И когда у вас, наконец, есть знания, чтобы сделать игру, начните с простого. Даже кодирование клона Nethack, который использует графику в формате ascii, дает вам новый опыт, который вы можете расширить. И ваши первые игры должны быть 2D. Работать в двух измерениях намного проще, и большая часть математических вычислений прекрасно распространяется на три измерения, когда вы будете готовы двигаться дальше.

6
ответ дан 8 December 2019 в 02:52
поделиться

Взгляните на irrlicht . Это очень хороший игровой движок, он прост в использовании и, что самое главное, бесплатный. Движок написан на C ++, но я помню, что видел и его оболочку .net.

Вероятно, это не такой мощный движок, как те, что используются в Call of Duty и т. Д. Но если вы только начинаете разработку игры, вам никогда не понадобятся такие продвинутые функции. Используя irrlicht, вы можете создавать очень приличные игры. На сайте также есть несколько обучающих программ и активное сообщество.

2
ответ дан 8 December 2019 в 02:52
поделиться

Обычно профессиональные игры в основном разрабатываются на C ++. Однако, если вы не являетесь опытным разработчиком C ++, я бы рекомендовал выбрать язык, с которым вы более знакомы, изучая нюансы разработки игр, иначе вы можете столкнуться с синтаксисом и общей природой C ++ больше, чем с концептуальными особенностями, связанными с игрой. программирование. C # и XNA или даже ныне не существующий Managed Direct X - отличный способ начать, как уже упоминалось некоторыми. Огромный объем информации, касающейся разработки игр на C #, легко доступен в Интернете и в печати, и существует большое количество сообществ, которые оказывают вам поддержку в процессе обучения, поэтому воспользуйтесь их преимуществами.

Также обратите внимание, что хотя XNA - это Более полная среда разработки игр. Есть много других доступных библиотек, таких как Ogre, OpenGL и Irrlicht, которые охватывают все, от звука до физики.

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

Я бы рекомендовал проверить http://www.GameDev.net , ресурсы там бесценны. Riemers.net также содержит несколько отличных руководств по XNA и Direct X.

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

Удачи.

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

Удачи.

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

Удачи.

1
ответ дан 8 December 2019 в 02:52
поделиться

Есть несколько отличных фреймворков для программирования игр на C ++, с которых можно начать. DarkGDK - отличный инструмент, я использовал его, и он упрощает создание игры на C ++.

1
ответ дан 8 December 2019 в 02:52
поделиться

Взгляните на Unreal Development Kit . Тот же движок, который использовался в Unreal Tournament и Gears of War, доступен бесплатно для независимых разработчиков и выполняет поистине изнурительную работу по созданию игры.

Это отличный способ изучить терминологию и концепции, постепенно приспосабливая вас к области разработки программного обеспечения с помощью сценариев. Когда вы освоитесь с использованием геометрии, текстур, эффектов частиц и освещения, отправляйтесь на территорию XNA. И в случае с UDK, и с XNA вы найдете как отличные сообщества, так и десятки доступных руководств.

2
ответ дан 8 December 2019 в 02:52
поделиться

Могу я предложить другой подход? Я предполагаю, что 3D-графика не важна. Я считаю, что если вы действительно только начинаете, переход к 3D-рендерингу может быть немного сложным. 2D намного проще.

Поэтому следуйте этим простым шагам, ожидайте, что это продлится около двух часов:

  1. Загрузите (и установите) Python
  2. Загрузите (и установите) PyGame
  3. Загрузите (и установите) Notepad ++ , вы будете использовать его для написания кода, сохраните его с расширением .py (не .txt)
  4. Перейдите на Line By Line Chimp Учебник (отличный учебник!)

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

Не стесняйтесь возвращаться сюда, в Stackoverflow, чтобы попросить помощи, если у вас возникнут проблемы. Я помог нескольким друзьям с помощью этого учебника, которые хотели «опробовать программирование игр» и должны быть в состоянии помочь вам со всем, в чем вы можете застрять.

А теперь сходите с ума от клавиатуры! Прежде чем вы это узнаете, вы создадите Dragon Age 2!

3
ответ дан 8 December 2019 в 02:52
поделиться

C ++ - хорошее начало.

Game Institute предлагает достойные курсы (платные). Это отнюдь не тривиально. Начните с основ (объектно-ориентированное программирование, трехмерная анимация, многопоточность и т. Д.), И вы кое-что получите.

Не забывайте получать удовольствие. Это облегчает обучение.

6
ответ дан 8 December 2019 в 02:52
поделиться

Most major games are written in C++. This does not mean that you have to use C++. For indy games you can also consider C# with XNA if you're more familiar with that (or want to play your eventual creations on your xbox 360 relatively easily). XNA also has the benefit of being free.

GarageGames also makes a relatively well-respected series of games engines (which are not free, but are very affordable compared to most), including one which adds the standard capabilities to XNA so you don't have to write it all from scratch.

MPelletier's advice is good, though. Game development is very complex, and even a simple game is a huge undertaking. Get a good grasp on the basics first, and I'd strongly suggest starting out with 2-D games.

6
ответ дан 8 December 2019 в 02:52
поделиться

Если вы хотите использовать управляемый маршрут, попробуйте XNA Game Studio от Microsoft. Я думаю, что это хорошее место для начала, и вы, возможно, не разочаруетесь (как я) с некоторыми из более мощных и сложных технологий, таких как программирование на чистом DirectX или OpenGL с помощью C ++ / WIN32. Многие из этого абстрагированы, поэтому вы можете сосредоточиться на реальном создании чего-либо. Черт возьми, вы даже можете сделать что-нибудь, что может оказаться в Xbox Live. Начать разработку можно бесплатно, и наверняка есть много ресурсов, с которых можно начать.

2
ответ дан 8 December 2019 в 02:52
поделиться

C ++ - стандартный язык, но ни один большой проект не использует только один язык. Старшие сотрудники будут использовать ассемблер в некоторых местах, программисты графики часто будут использовать любой язык шейдеров, подходящий для системы. Тот, кто работает над инструментами или системой сборки, обычно использует языки сценариев, такие как Python, Perl, Bash / Batch scripting или другие. Игровые программисты обычно также используют язык сценариев игры, который может варьироваться от стандартов, таких как Lua, Python или UnrealScript, до внутренних языков сценариев, созданных только для этого движка.

Game Institute - У меня смешанные чувства по поводу это место ... Они предлагают специальную учебную программу, которую трудно найти где-либо еще; однако друг показал мне несколько тестов из этого места, ответы на которые в лучшем случае были устаревшими, а в худшем - совершенно неверными. Я бы не стал возражать против них, но буду открытым после.

Gamedev.net - САМЫЙ веб-сайт, посвященный программированию игр. Отличное сообщество, масса статей. У них есть отличные сообщения на форумах о том, как начать.

2
ответ дан 8 December 2019 в 02:52
поделиться

http://www.garagegames.com имеет хорошие ресурсы для начала разработки игр.

http://en.wikipedia.org/wiki/GarageGames

]
1
ответ дан 8 December 2019 в 02:52
поделиться

Для разработки игр такого типа необходимы объектно-ориентированные языки с сильными графическими библиотеками.

Эти игры могут быть выполнены с помощью:

  1. C ++: DirectX (с VC ++), OpenGL, SDL
  2. C #: DirectX, OpenGL Привязки C # (не рекомендую это)
  3. Java: Java3d (с привязками to OpenGL), JOGL (Java OpenGL)

Если вам интересно узнать о 3D-графике и C ++, воспользуйтесь , взгляните на этот .

0
ответ дан 8 December 2019 в 02:52
поделиться

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

0
ответ дан 8 December 2019 в 02:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: