LINUX.ORG.RU

Xash3D на SDL2: Го, я создал!

 , , ,


7

3

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

Что изменилось с прошлого поста? Честно говоря, очень многое. Начиная с того, что теперь есть организация на Github, заканчивая тем, что теперь Half-Life работает под Android.

Собственно, про порт на Android я и хочу рассказать. Спасибо товарищу Unc0nnected/nicknekit с форума cs-mapping.com.ua, который, пока я дорабатывал порт нового Xash3D, запустил старый порт на андроиде. Вот с тех пор, я, он и, с некоторых пор, mittorn занимаемся портом HL на эту мобильную платформу. Конечно, работа далеко от идеала — отсутствует сенсорное управление. В целом, с клавиатуры играть можно, поддержка джойстика пока неполная. А под линуксом так уже давно можно пройти HL полностью.

На скрине видно, что под линуксом с портом создан сервер, к которому присоединились клиенты с Android и оригинального Xash3D под Wine. Эта возможность нашлась совершенно случайно, когда я исправлял баг обнаружения серверов в локальной сети.

Я не хочу говорить, что сетевая игра под Xash3D идеальна. Она есть, но недоделана. В частности, из-за отсутвующего предиктинга, о чём говорит и сам автор движка.

Кому интересно, вот APK. Ресурсы игры можно взять прямо из стимовской версии, просто скопировать папку valve в /sdcard/xash/. А, ну и наложить сверху вот этот архив.

>>> Просмотр (1600x1380, 1986 Kb)

★★★★★

Проверено: JB ()

Ответ на: комментарий от EXL

А, я забыл об этой утилите.

Ладно уж, время покажет, удобно оно или нет.

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

Я представляю это как переменные SDL_INCLUDES и SDL_LIBS, которые по умолчанию берутся из pkg-config, но можно и указать принудительно. Кстати, в cmake это можно реализовать?

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

pkg-config по идее не нужен вообще. У SDL должен быть собственный sdl{2}-config, в котором корректные уже пути записаны. Ставится он, если не ошибаюсь, при установке dev-пакета sdl.

Попробуй у себя выполнить:

$ sdl2-config --cflags
$ sdl2-config --libs

Это должно работать.

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

Кстати, в cmake это можно реализовать?

В CMake уже «из коробки» SDL2 должен искаться с помощью внутренних модулей по доступным путям. Принудительно выставить тоже можно, как-то так, если мне не изменяет память:

$ cmake -DCMAKE_INCLUDE_PATH:STRING="/where/my/sdl/include" -DCMAKE_CPP_FLAGS:STRING="-D_REENTRANT" -DCMAKE_INCLUDE_PATH:STRING="/where/my/sdl/lib" -DCMAKE_EXE_LINKER_FLAGS:STRING="-lSDLmain -lSDL -lSDL_image" -DCMAKE_MODULE_LINKER_FLAGS:STRING="-lSDLmain -lSDL -lSDL_image" -DCMAKE_SHARED_LINKER_FLAGS:STRING="-lSDLmain -lSDL -lSDL_image" -G "UNIX Makefiles" ../source
$ make
EXL ★★★★★
()
Ответ на: комментарий от EXL

Мне может захотелось просто собрать SDL2 в хомяке. И я так и не смог заставить cmake его увидеть.

mittorn ★★★★★
()

Есть 2 стула: на одном лежит ноутбук с Linux для игры в Half Life на Xash3D, на другом — Android планшет для того же самого.

Tactile ★★
()

А где можно deb скачать?

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