LINUX.ORG.RU

Игровой движок Unity 3.5 работает на Linux через Native Client и Stage3D

 , , , ,


1

1

Тихо и незаметно Unity Technologies выпустила Beta версию обновленного игрового движка.
Одним из главных нововведений новой версии является возможность сборки проекта для Stage3D (Adobe Flash) и NaCl (Google Chrome).
Таким образом все игры собранные под эти платформы можно будет запустить на Linux.

Увидеть технологию в работе можно установив игру AngryBots: Chrome Web Store
Или же посмотрев видео найденное на просторах сети: YouTube

Инструментарий разработчика по прежнем доступен только для Windows и Mac OS X.

>>> Официальный сайт

★★★

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

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

Ну и стандартная просьба переместить в Games (или Talks) если не тянет на мини новость.
Но все же количество игр под Unity огромно, а потому появление возможности сделать их работающими на Linux одной кнопкой - это очень классно.

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

Ожидал я конечно такие ответы, но не знаю как в новости корректно указать, что к убунте это никакого отношения не имеет.
Хотя на видео убунта, с юнити...

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

не знаю как в новости корректно указать

«Игровой движок Unity 3.5 работает на Linux через Native Client и Stage3D» Как-то так.

Тоже подумал сначала про Убунту и удивился причём тут игровой движок и флешь.

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

Длинновато, но думаю так будет лучше.
Благодарю.

winddos ★★★ ()

Я не понял, это только для гугл-хрома или обычные линуксовые бинари например для поста на десуру теперь тоже смогут экспортировать?

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

Пока это только для Chrome/Chromium, но это же опенсорц.
А значит если технология будет популярна, то легко можно будет сделать Native Client отдельной программой/библиотекой.

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

Минус технологии пока только в том, что скажем демка из новости будет работать только на x86 и x86_64.
Но гуглеры обещают прикрутить LLVM.

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

Установил себе Google Chrome, перезапустил пару раз, после чего игра стартанула.
Работает замечательно.

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

У меня запустилось на 16.0.912.63.

Просто обычно я юзаю Chromium, но у меня почему то не оказалось Native Client. Возможно я где то ещё пришиб когда настраивал AppArmor.

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

Failed creating m_Graphics3D!
а блин ему же драйвер нужен чтобы 3D умел :(

bhfq ★★★★★ ()

Во-первых, нужно было сделать enable для NaCl в about:flags (там же сделал enable для WebGL на всякий случай).

В 16м хроме (stable) пишет черным по черному NaCl module load failed: Insufficient memory to load file

В 17м (unstable) показывает заставку Unity, прогресс доходит до конца и все.

google-chrome

[28,3474323200:21:44:14.531730] Native Client module will be loaded at base address 0x00007ef500000000
[28,3474323200:21:44:14.562264] Entered NaClMakeDispatchThunk
[28,3474323200:21:44:14.562452] NaCl_page_alloc_randomized: 0x8dee0f6c
[28,3474323200:21:44:14.562464] NaCl_page_alloc_randomized: hint 0xdee0f6c0000
[28,3474323200:21:44:14.562483] NaClMakeDispatchThunk: got addr 0xdee0f6c0000
[28,3474044672:21:44:19.344350] munmap: rounded length to 0x2350000
[28,3474044672:21:44:19.349666] invalid mmap flags 04022, ignoring extraneous bits
[28,3474044672:21:44:19.349792] invalid mmap flags 04022, ignoring extraneous bits
[28,3474044672:21:44:19.809471] munmap: rounded length to 0x490000
[28,3474044672:21:44:19.810284] invalid mmap flags 04022, ignoring extraneous bits
[28,3474044672:21:44:19.810417] invalid mmap flags 04022, ignoring extraneous bits
[28,3474044672:21:44:19.838036] munmap: rounded length to 0x10000
[28,3474044672:21:44:19.838298] invalid mmap flags 04022, ignoring extraneous bits
[28,3474044672:21:44:19.838741] invalid mmap flags 04022, ignoring extraneous bits
[28,3474044672:21:44:19.847102] munmap: rounded length to 0x10000
[28,3474044672:21:44:19.847358] invalid mmap flags 04022, ignoring extraneous bits
[28,3474044672:21:44:19.847470] invalid mmap flags 04022, ignoring extraneous bits
[28,3474044672:21:44:19.853780] munmap: rounded length to 0x10000
[28,3474044672:21:44:19.854066] invalid mmap flags 04022, ignoring extraneous bits
[28,3474044672:21:44:19.854179] invalid mmap flags 04022, ignoring extraneous bits
[28,3474044672:21:44:19.873156] munmap: rounded length to 0x20000
[28,3474044672:21:44:19.873413] invalid mmap flags 04022, ignoring extraneous bits
[28,3474044672:21:44:19.873529] invalid mmap flags 04022, ignoring extraneous bits
[28,3474044672:21:44:19.936587] munmap: rounded length to 0x50000
[28,3474044672:21:44:19.940615] invalid mmap flags 04022, ignoring extraneous bits
[28,3474044672:21:44:19.940732] invalid mmap flags 04022, ignoring extraneous bits
[28,3474044672:21:44:19.958322] munmap: rounded length to 0x10000
[28,3474044672:21:44:19.958574] invalid mmap flags 04022, ignoring extraneous bits
[28,3474044672:21:44:19.958750] invalid mmap flags 04022, ignoring extraneous bits
[28,3474044672:21:44:20.098178] munmap: rounded length to 0xf0000
[28,3474044672:21:44:20.098595] invalid mmap flags 04022, ignoring extraneous bits
[28,3474044672:21:44:20.098734] invalid mmap flags 04022, ignoring extraneous bits
[28,3474044672:21:44:20.142201] munmap: rounded length to 0x50000
[28,3474044672:21:44:20.142582] invalid mmap flags 04022, ignoring extraneous bits
[28,3474044672:21:44:20.142732] invalid mmap flags 04022, ignoring extraneous bits
[28,3474044672:21:44:20.160859] munmap: rounded length to 0x10000
[28,3474044672:21:44:20.161817] invalid mmap flags 04022, ignoring extraneous bits
[28,3474044672:21:44:20.161978] invalid mmap flags 04022, ignoring extraneous bits
[28,3474044672:21:44:20.348364] munmap: rounded length to 0x1b0000
[28,3474044672:21:44:20.348873] invalid mmap flags 04022, ignoring extraneous bits
[28,3474044672:21:44:20.349027] invalid mmap flags 04022, ignoring extraneous bits
[21,466257664:00:44:20.356705] PluginReverseInterface::StartupInitializationComplete
[21,466257664:00:44:20.357179] PluginReverseInterface::StartupInitializationComplete: invoking CB
UnityModule.
StartDownload() failed -1
StartDownload() failed -1
Failed creating m_Graphics3D!
[28,3474044672:21:44:21.014673] invalid mmap flags 0400042, ignoring extraneous bits
pp::URLLoader::ReadResponseBody() completed 1665757.
pp::URLLoader::ReadResponseBody() completed 33020447.
UnityBundleStartMemory
WebScripting::Create
InitializeGfxDevice
[21,466257664:00:44:27.025771] PluginReverseInterface::ReportCrash
[21,466257664:00:44:27.029146] PluginReverseInterface::ReportCrash: invoking CB
[SRPC:HOST:21,693700992:00:44:27.029700] NaClSrpcRpcWait(channel=0x7fe42d968c70): EOF is received instead of response. Probably, the other side (usually, nacl module or browser plugin) crashed.

dmesg

[86963.033126] nacl_helper_boo[9130]: segfault at 7ef500000020 ip 00007ef50fc24048 sp 00007ef5ffffe6f0 error 4 in .com.google.Chrome.2qQ3yz (deleted)[7ef50fc00000+190000]
bender ★★★★★ ()

Вот так новость. Завтра попробую на десктопе.

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

Ну в моем случае тоже ATI, но проприетарщина.
Вообще это немного странно, т.к в Native Client вроде как применяется OpenGL ES 2.0, который на открытых дровах должен работать.

winddos ★★★ ()

в chromium 17 вообще что-то странное - в chrome://flags/ (форвард с about:flags) Nacl включил, перезапустил, игра пишет - Nacl disabled - go to chrome://plugins and enable Native Client Plugin, а в chrome://plugins флеш и прочие внешние прибамбасы, накла нет, т.к насколько я понимаю это внутреннее расширение, а не плагин вообще.

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

Дезура это не пускалка игр, а клиент для их закачки/обновления.
Но если NaCl будет популярен, то ничто не мешает отделить его от хрома или перенести на другие браузеры.

winddos ★★★ ()

Метки: 3d, adobe trash

Deleted ()

в 16-ом хроме работает! Большое спасибо за новость :)

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

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

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

Минус технологии пока только в том, что скажем демка из новости будет работать только на x86 и x86_64.
Но гуглеры обещают прикрутить LLVM.

Не LLVM, а ARM. На x86 собирается всё через патченный гцц.

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

Ну я как бы подразумевал именно Portable Native Client, хотя я понимаю что оно не скоро будет.
Меня лично ARM мало интересует, а вот полная кроссплатформенность - реально интересно.

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

Вероятно попробовать флаги:
--ignore-gpu-blacklist
--use-gl=desktop
А так же попробовать зайти в:
chrome://flags/
И включить «Override software rendering list».

GPU blacklist совершенно точно влияет не только на webgl, по крайней мере судя по багтрекеру хромиума.

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

Сам удивляюсь, сначало бандлы, потом дезура, теперь юнити.
Ещё эпики выпустят свои проекты под Stage3D...

В общем уже сейчас можно сказать, что на линуксе есть игры.

winddos ★★★ ()

На Nvidia и Chromium 16 просто работает.

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

Кроссплатформеность и есть в самом нутре Native Client. Без разницы где ты и как собрал бинарь, он собирается под архитектуру. И под виндой, и под линуксом, и под маком, и вообще, куда только портируешь рантайм.

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

Ждём ещё Стим и поделия Эдоуби, тогда Вендекапец точно настанет, только тогда можно будет уже даже и не мечтать об открытих играх и открытом профессиональном ПО.

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