Понедельник, 25 Ноября 2024, 03:06

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Как и на чем я написал демо
mozartДата: Понедельник, 15 Марта 2010, 15:48 | Сообщение # 1
был не раз
Сейчас нет на сайте
Часть 1 (Объявление).

Частый (и неизбежный) вопрос - как написать игру, какой язык, редактор, стратегию для этого нужно избрать. Я обрисую свое видение ответа.

1. Основные языки программирования. Ассемблер, Паскаль, С, С++, С#.

Ассемблер низкоуровневый язык, теоретически язык С (и С++) тоже имеет низкоуровневую "часть", кроме того, компиляторы генерируют код не уступающий ассемблеру в размерах и производительности. Минусы - ассемблер придеться спрягать с языками операц. системы и ОпенЖЛ или Директ v**, а это всегда бодяжно. Есть более легкие пути "убица ап стеннуу".

2 Паскаль. Это язык для обучения, а не для коммерческих проектов. На его развитии (объектный паскаль) работают Дельфи, Borland C++ Builder, а на Аде написано программ. обеспечение для F22Раптор. Это так, но успешно работает он через язык С и С++. Вообще, современный паскаль детище фирмы Борланд, которая развивала его по той причине, что язык С (и С++) развивать невозможно вследствии законов США, т.ч. современный паскаль - это современный С++ (и немного пыли в глаза. Вообще большинство языков работает через С через компилятор, интерпритатор, операционку, или еще что).

3. С и С++ На этих языках пишется все и вся и все изобретаемые языки Си образные (или ассемблерообразные). Но. Их время прошло, т.е. прошли их продажи, и им на смену идет С#, сейчас продают его.

4. С# Если вы пишете на микрософт.NET (виндовс) то под него специально создан язык С#. С# это типа С++ + Java(интернет). Потом программа на С# + .NET должна работать на любой оси (операц. системе) без перекомпиляции. Т.е. микрософт решил, что на его оси "виндовс" надо писать на С#. Если вы против, то "засуньте 2 пальтса врезетку" и подумайте "есче".

2. Основные графические языки программирования.

Если "Основные языки программирования" это где-то Borland версус микрософт, то в графических языках это OpenGLv** версус микрософт (Директ v***) версус Qt

Что выбрать? Решение зависит от возраста. Если вы молодой бунтарь - то одназначно пишите все на турбоассемблере (И все влезет на дискету 1.4мб включая комилятор, отладчик и 1оо версий игры). Если пишите для удовольствия (в первый раз) то OpenGL, а если все делаете "как надо" то на продукте микрософт. Тогда если у вас появятся вопросы, то вас запросто проконсультирует Б.Гейтс, а если он узнает что вы мараете его ось OpenGL, то начнет плеваться в трубку, бить офисную посуду и мебель (может даже грызть ковры).

3. Движки, рекакторы, новейшие эффекты и новейшие фичи.

Допустим вы выбрали язык и компилятор для него и графическую библиотеку (ее драйвер - драйвер вашей видеокарты (или по поцански видюшняка)), ее функциональность заключена в четатам**.DLL, которая подключена к вашему проекту через четатам**.LIB. Прекрасно. Что дальше?

На языке программирования вы создаете программу 01.exe (используя функциональность языка и операционной системы) в которой инициировали графическую библиотеку(выбранную). Теперь у вас (допустим 3 языка С++, OpenGL, и Функциональность (API) виндовса). Осталось только в этой проге написать игру. Осталось только тварить, тварить, тварить и еще раз тварить. Однако, прежде чем на нас накатило так, что некогда почесать бесталковку, скажу пару исторических слов. Вместо будущего заглянем в прошлое.

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

Тогда программист еще был программистом, а не (пардон) абоссанной тряпкой в закуте "студии", об каторую ноги вытереть и то - стрем. А слово "драйв" теперь табу, его используют только сатанисты накликающие на страну (игр) 100 летнюю засуху. Не говорите его никому. Не надо.

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

Итак, что нужно в современной игре.

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

б. Шейдеры - потребуется поддержка в дровах специалистов ати и инвидиа, ибо шейдеры железозависимая мотня. Т.ч. готовтесь к длительным командировкам в США, где "блондинки с крепким телом". Вобщем, крем Марго будете носить, батистовые портянки кушать (Билу Гейтсу, если че, превед передавайте).

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

г. Нужен редактор монстров, оружия, ихней анимации. (Подробности см. пункт а,б,в)

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

е. Нужен спонсор с 10 миллионами долларов. Легко находится, если сообщить, что вы планируете заработать 100 миллионов и всего за 1-2года.

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

ж. Вы должны понимать, что когда вы все это купите и 2-3-4 года провозитесь с тем, чтоб все купленное заработало, выйдут новые версии вашего программного обеспечения. Их тоже придется покупать (а что делать?).

з. Нужны библиотеки физики,столкновений, движок частиц.

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

Выводы: поцоны, если не удалось откосить от армии и написания программ... Хотя что тут можно сказать... Удачи! И, главное, помните, что авторитет программиста состоит из авторитета программного продукта, который он сопровождает.

Часть2 (язык - С++, компилятор - Borland C++ Builder3, графическая функциональность - OpenGLv1.0, ось - Виндовсхр. Инициализация.)

Если вас застукали за написанием движка, не спешите вешаться. Все можно объяснить, мол, первый раз, мол, задали в универе, мол, ето не я, мол, не мое и больше не буду. Учитывая чистосердечное раскаяние вас возьмут на заметку, но бить не будут. А если и будут, то только для вашей же пользы...

(алпибаг, возможно, а пока все.)

horaxДата: Понедельник, 15 Марта 2010, 16:58 | Сообщение # 2
TheLord
Сейчас нет на сайте
mozart, развёрнутое повествование! Вот пример из OpenAL по объединённому использованию OpenAl и OpenGL (с полным кодом, немного мной доработанным): OpenAL+OpenGL, может пригодиться.
Файл EAX.h - платный(это на случай коммерческого использования). Для компиляции требуется VS6.




Dlaczego kiedy Polak pisze: "Oh baby!",
Amerykanin czyta coś całkiem inne?!! ©Horax
***
HVC IAM SVM


Сообщение отредактировал horax - Понедельник, 15 Марта 2010, 17:03
mozartДата: Понедельник, 15 Марта 2010, 17:11 | Сообщение # 3
был не раз
Сейчас нет на сайте
спасибо horax. Я посмотрю в блидайшее время. Документация или описание... хорощо бы было... Шестая визуальная студия? Попопробую борланд С# ...
horaxДата: Понедельник, 15 Марта 2010, 17:13 | Сообщение # 4
TheLord
Сейчас нет на сайте
mozart,
Quote
Шестая визуальная студия?

Да. Но я туда и программу вложил - 20 минут назад скомпилировал. (Модели домов тоже доработаны.)
В папке есть файл Readme, сам код - хорошо комментирован(кроме моих вставок wacko ).
Если нужна VS6, могу залить.




Dlaczego kiedy Polak pisze: "Oh baby!",
Amerykanin czyta coś całkiem inne?!! ©Horax
***
HVC IAM SVM


Сообщение отредактировал horax - Понедельник, 15 Марта 2010, 17:27
mozartДата: Понедельник, 15 Марта 2010, 23:29 | Сообщение # 5
был не раз
Сейчас нет на сайте
horax, я обязательно посмотрю в ближ. время.

Добавлено (15.03.2010, 20:42)
---------------------------------------------
Если нужна VS6, могу залить
===
Гдето у меня лежала, не надо.

Добавлено (15.03.2010, 23:29)
---------------------------------------------
horax
Эти dll из примера (EaxAc3.dll OpenAL32.dll) фрормата COFF? Как бы их перегнать в формат ОМF? Моя COFF2OMF.exe их не берет. Подключить пока не могу (на уровне линкера)... Все остальное компилируется.

"OpenAl и OpenGL (с полным кодом, немного мной доработанным)"
А в чем доработка, в самых общих чертах, если можно? У меня в системе инсталирован OpenAL 2.0.3.0 (кажется)

horaxДата: Понедельник, 15 Марта 2010, 23:34 | Сообщение # 6
TheLord
Сейчас нет на сайте
mozart,
Quote
А в чем доработка, в самых общих чертах, если можно?

Добавлены модели (в оригинале были прописаны только 2 дома), + полный экран, + что-то ещё...
***
Это пример из OpenAL 1.0. Из OpenAL 1.1 его почему-то убрали. Программа то пошла?
***
По .dll - у меня с компиляцией проблем такого рода не было.




Dlaczego kiedy Polak pisze: "Oh baby!",
Amerykanin czyta coś całkiem inne?!! ©Horax
***
HVC IAM SVM


Сообщение отредактировал horax - Понедельник, 15 Марта 2010, 23:41
mozartДата: Вторник, 16 Марта 2010, 01:52 | Сообщение # 7
был не раз
Сейчас нет на сайте
Программа то пошла?

да, спасибо. Все запускается и работает без проблем.

  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг