LINUX.ORG.RU

Common Lisp && Gamedev

 , ,


4

3

Делал карту мечты в cs;go но лимит убил мечты,решил сделать свою каэску без всяких лимитов.На графику вообще пофиг,лишь бы текстурки,модельки и примитивное освещение.На клиенте только рендер по сути из тяжелого.Физика вся на сервер.

Суть: Пробовал писать на Perl.Удобно прикольно но библиотек нету. Пробовал на С но нудно пока что,как сюда подходит лисп? Меня интересует производительность,сборка игры под винду и скорость разработки (может быть есть подводные?).

Сервер будет на плюсах так как bullet-physics.Проект для души и меня+друзья,поэтому языки для души.

На коммерческом лиспе вроде LispWorks можно. Там бинарники будут небольшими. Графический гуишный hello world занимает в запакованном виде мегабайта 2-3 на винде. Но стоит это удовольствие дорого.

Опенсорсные лиспы будут давать большие по размеру бинарники. К этому надо быть готовым. Советую посмотреть реализации SBCL и Clozure CL (не путать с clojure). Среда разработки Emacs + Slime

Лисп - один из самых быстрых языков с динамической типизацией, на порядок быстрее питона.

Скорость разработки целиком зависит от тебя, поскольку требования он предъявляет гораздо выше, чем какая-нибудь Java

dave ★★★★★ ()
Последнее исправление: dave (всего исправлений: 2)
Ответ на: комментарий от dave

Скорость разработки целиком зависит от тебя, поскольку требования он предъявляет гораздо выше, чем какая-нибудь Java

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

Norgat ★★★★★ ()

Пробовал писать на Perl.Удобно прикольно но библиотек нету.

Возьми движок на C++, а сверху накручивай свою игру. Под лисп у тебя только голый SDL2 будет вроде. А скрипты для GUI и логики сделай на python или lua (ну или возьми лисп какой встраиваемый для этого если именно его хочется, тут уже пофиг).

Norgat ★★★★★ ()

На этом канале есть серия видео «Pushing pixels with lisp». Там он и модельки рендерит, и светом занимается, и обработку ввода вроде показывал. Он использует Common Lisp, всё меняет на лету. Посмотрите видео, посмотрите его гитхаб: https://github.com/cbaggers Чтобы составить представление этого хватит.

Weres ★★★ ()
Ответ на: комментарий от ados

Её пилят всего 2 человека. Документация в вики не менялась с 13/14 годов. Мне кажется, что это показатель отсутствия развития у проекта, а значит, что на крестах можно будет найти сильно лучшие решения.

Norgat ★★★★★ ()

Можешь использовать guile для встраиваемого скриптового языка.

O02eg ★★★★★ ()

Чуть палкой в xelf потыкал. Не помню как там с 3д, но 2д игры работали норм.

Чисто 3д тоже было, думаю на первой странице гугла есть.

nihirash ★★★ ()
Ответ на: комментарий от dave

Опенсорсные лиспы будут давать большие по размеру бинарники

Для игры, с гигабайтами ресурсов, это не проблема.

no-such-file ★★★★★ ()
Последнее исправление: no-such-file (всего исправлений: 1)
Ответ на: комментарий от dave

большие по размеру бинарники

Скомпилированные или они будет пихать интерпретатор в исполняемый файл?

Ну пока звучит неплохо

linuhs_user ()
Ответ на: комментарий от I-Love-Microsoft

Делал карту в каэске,там напал на меня лимит брашей (объектов). Мечта была сделать хорошую карту,но закончился лимит а карта готова меньше чем на 1/5

linuhs_user ()

Скорость разработки на лиспе самая высокая, из тех что я видел. Спасибо REPL'у и горячей подмене функций. Для разработки игры (или другой риал-тайм системы) это просто супер удобно. Потом не сможешь без этого программировать. :)

Производительность вменяемая, если немного думать, когда пишешь код.

На винде бинарник от SBCL будет не менее 30 мб, что в принципе ок. Но разработку я бы вел на линуксе, с виндой есть маленькие неприятные мелочи.

зы: https://github.com/borodust/cl-bodge - малоизвестный, но очень интересный игровой движок отечественной разработки.

honix ()
Ответ на: комментарий от I-Love-Microsoft

Компутер не тянет движки,разве что всякие Irrlicht где что бы загрузить мою карту нужно его изучить от и до.Что мне естественно кажется не очень разумным,учитывая требования к игре

linuhs_user ()
Ответ на: комментарий от honix

Очень круто,я сейчас побегал по папкам а там animation,physics.) Идеально,спасибо

linuhs_user ()
Ответ на: комментарий от honix

Посмотрел реализацию шутера,там API для GUI в стиле Nuklear Выглядит как Nuklear,пишется как Nuklear значит это и есть Nuklear)

linuhs_user ()
Ответ на: комментарий от honix

Ну тогда этот движок (exp 10) из 10.У меня на нем (nuklear) редактор сделан,да и клиент на С я начинал с ним.

linuhs_user ()
Ответ на: комментарий от I-Love-Microsoft

Ну так я и беру cl-bodge.Где ты низкий уровень выше увидел?

linuhs_user ()

Возьми Unity 3D или Unreal Engine, можно попробовать Godot, но я не уверен что его можно без обтески сразу в стрелялку.

Если все же решил писать свой двигло, то желательно взять какой-нибудь SDL. Я бы накидал прототип на Python сначала.

deterok ★★★★★ ()
Ответ на: комментарий от deterok

Я бы накидал прототип на Python сначала.

На Perl я уже накидал)Правда там была простенькая карта,а не моя где 200 000 полигонов.(надо оптимизировать,не придумал пока алгоритм)

Если все же решил писать свой двигло

Да уже не думаю,вот выше дали ссылку на готовый.Мне он нравится.

linuhs_user ()
Ответ на: комментарий от awesomelackware

я б переписал это дело для fb.

я с удовольствием попробую это дело запустить на RPi с 2" TFT с разрешением 320x240 в этом самом фреймбуфере.

Just For Lulz.

nihirash ★★★ ()
Ответ на: комментарий от nihirash

Но впрочем больше 5 FPS получить не удалось, поэтому «realtime-mode» изначально отключен и шутер получается пошаговым

Чего-то у меня ничего не выйдет :-(

awesomelackware ()

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

Которые всё равно будут в двадцать раз меньше, чем ассеты.

ОП, если именно 3d, то разработка упрётся в отсутствие полноценных поддерживаемых движков. Если именно 3d, то бери C#, Unity и не парься. Если хочется париться, то могу посоветовать

  1. https://github.com/cbaggers/cepl Очень низкоуровневый, но очень крутой интерфейс к OpenGL. Работает, проверено мной и https://github.com/malcolmstill/ulubis
  2. https://github.com/mfiano gamebox-* Какие-то годные библиотеки для геймдева, которые чувак пилит прямо сейчас. Думаю, он тебе поможет, если расскажешь о своих планах.
Gentooshnik ★★★ ()

ну как там игра?

Deleted ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.