Хорошие ресурсы при использовании функционального программирования в разработке игр? [закрытый]

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

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

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

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

Что-то как этот.

43
задан Thomas Owens 31 July 2009 в 17:39
поделиться

8 ответов

Что ж, вы могли бы сделать похуже, чем изучение кода некоторых из этих игр haskell .

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

Среди блоггеров с соответствующим содержанием - Джеймс Хейг .

Обратите внимание: FunGEn на первой ссылке - хотя активно не поддерживается, это 2D-игра движок с рабочими примерами.

Также есть чистый язык с его игровой библиотекой и красивыми скриншотами .

23
ответ дан 26 November 2019 в 23:07
поделиться

Ну, я в основном программист на Haskell, поэтому могу только предложить попробовать библиотеки Haskell, такие как Gtk2hs. В основном это для 2D-приложений и для пользовательских интерфейсов, но это полезно для начала :) Еще более простая библиотека - HGL, но она немного ошибочна и устарела. Если вы хотите попробовать более сложный (но крутой!) Материал, то обратитесь к библиотеке Haskell OpenGL, которую можно найти здесь . Я никогда не пробовал работать с Haskell и OpenGL, но если вы посмотрите ответ, представленный Саймоном Майклом, в разделе игр Hackage есть примеры игр, в которых используется OpenGL.

Извините, что не связали все библиотеки, но я новый пользователь и я У меня не может быть более одной гиперссылки. Если вы их погуглите, они легко найдутся.

7
ответ дан 26 November 2019 в 23:07
поделиться

Немного устарело, но это - первая в серии публикаций о том, как использовать F # с фреймворком для разработки игр XNA. Вы также можете найти полезный материал в блоге F # for Game Development .

4
ответ дан 26 November 2019 в 23:07
поделиться

Frag - это трехмерная стрелялка от первого лица, написанная на Haskell Мун Хон Чеонгом. Он находится под лицензией GPL. Дизайн и реализация Frag описаны в дипломной работе Мана «Функциональное программирование и трехмерные игры».

3
ответ дан 26 November 2019 в 23:07
поделиться

Попробовать Приведение SPEL

2
ответ дан 26 November 2019 в 23:07
поделиться

Wings3D - это Пакет Erlang, который используется для рисования каркасных фигур. Я думаю, что это используется в играх, но это не моя сумка ...

1
ответ дан 26 November 2019 в 23:07
поделиться

Если вас интересует сетевая сторона игр, Джоэл Реймонт писал о его опыт программирования онлайн покерного сервера . Я думаю, что он сделал как минимум три разные реализации (Lisp, Erlang, Haskell). К сожалению, его материал разбросан по Интернету. Вот два указателя, которые могут оказаться полезными:

РЕДАКТИРОВАТЬ:

Вот некоторые дополнительные указатели и ссылки из вышеуказанных документов которые изменились.

РЕДАКТИРОВАТЬ II:

С тех пор Джоэл, по-видимому, продал свой покерный код,

7
ответ дан 26 November 2019 в 23:07
поделиться

Что ж, я не уверен, насколько это помогает, и вы, вероятно, уже слышали об этом, но кажется очевидным начало: вот статья о Джеке и Дакстере.

1
ответ дан 26 November 2019 в 23:07
поделиться