Просмотр полной версии : Браузер на NeoAxis
Параллельно с темой "Браузер на Unity3D" http://forum.activeworlds.ru/showthread.php?451-Браузер-на-Unity-3D открываю тему о возможном создании браузера (и сервера) миров на движке NeoAxis. Не так давно Gerasim44 рассказал мне об этой технологии, нынешнее развитие которой меня в принципе удивило - в какой-то степени это конкурент Unity3D. О движке НеоАксис я слышал и раньше, несколько лет назад, но как-то не придал большого значения. Почему он тогда прошёл мимо моего внимания и я заинтересовался только сейчас - не могу понять. Наверно потому, что в те времена и на Юнити я не слишком обращал внимание.
В общем движок NeoAxis, как и Unity - бесплатен, платить надо только за исходный код и что-то, связанное с периодом бесплатных обновлений. Самое интересное - что его разработчики - наши соотечественники из Казани. Вот основной сайт движка http://www.neoaxis.com/ru/
Разумеется, я скачал себе эту программу, по возможности буду осваивать. Тем более с Юнити есть и ещё кое-что общее - скрипты также можно писать на языке C#. Ещё заметил, что через редактор ресурсов там можно сразу создать сеть, и если не ошибаюсь, сеть будет работать в пиринговом режиме, по типу торрентов.
Так что для нашей вселяки есть две технологии, на которые можно со временем перенести миры. Думаю было бы даже лучше, если миры имели бы сразу два варианта технологий, так как у каждой непременно найдутся и свои плюсы и свои минусы.
http://i.imgur.com/oNivPop.jpg
Немного начал разбираться с технологией NeoAxis. Заморочек куча, могли бы сделать попроще. Например, импорт моделей в движок мало того, что интуитивно непонятный, но и гораздо запутанней, чем в Юнити. В Юнити перенёс папку с моделью методом драг энд дроп и в принципе всё. В НеоАксис по другому - 3D-модель открывается через редактор ресурсов, и то, пока могу открыть её если физически перенёс папку с ней в определённую папку на жёстком диске. Потом надо делать кучу настроек и только потом модель можно добавить нажав на кнопку.
Потом уже в отдельном редакторе карт всё надо ставить на сцену.
Сборка проекта в независимую программу делается с помощью отдельного компонента - Deployment Tool. Получается как бы портативная версия. Чтобы сделать установочный файл, буду пользоваться программой других разработчиков - InnoSetup. Таким образом уже делал проект с миром, где плоский террайн и всего одно дерево :) Но там объекты были стандартные.
На данный момент пробую выставить внешний объект, а именно рип части террайна мира Anywhere и постройки под названием Вершина мира. В программе Visual Author это выглядит так:
http://i.imgur.com/lw3PpUu.jpg
=======================================
А в NeoAxis это пока выглядит так :D
http://i.imgur.com/dGn9I9z.jpg
Кстати по умолчанию там почему-то женский персонаж, и не знаю как исправить, это что-то типа Стройбатовской туристки наверно :)
Ну вот, наконец-то импортировал модель вместе с текстурами
http://i.imgur.com/Kg2hEiH.jpg
==============================================
Посмотрим, что из этого выйдет. Открываю редактор карт, создаю новую карту без террайна, и ставлю туда импортированный объект. Рядом с постройкой установил точку входа
http://i.imgur.com/FLQObvQ.jpg
==============================================
Что-то получилось :)
Прозрачность текстур как и для движка Unity пока не удалось настроить, но это уже дело времени и техники.
http://i.imgur.com/djmX46p.jpg
Скомпилировал всё в отдельную программу. Чтобы проверить, как работает сеть - кроме компьютера запустил копию этой проги ещё на ноутбуке, и заснял вчера всё это на телефон. Качество фото хреновое, плюс слабое освещение сделало своё дело, но мониторы видны, и то хорошо :) На обоих компах нажатием на Esc вышел из игрового режима, выбрал "Выход в меню" и нажал на пункт меню слева "Сеть". Далее определил с помощью сайта мобильные айпишники на каждой машине, и вставил в поле "Соединиться с".
С сетью была нервотрёпка, в конце концов вычислил, что на одной машине нужно создать сервер, а с другой к этому серверу подключиться. И почему-то удавалось только создать сервер на ноуте, подключённому через моб. телефон к сети а с ПК (с отдельным мобильным модемом) подключаться уже к созданному на ноутбуке серверу. Наоборот никак не выходило.
http://s019.radikal.ru/i631/1507/a0/c9781be1698c.jpg
http://s017.radikal.ru/i407/1507/af/850372c185dd.jpg
http://s45.radikal.ru/i109/1507/bd/ffee033d0c21.jpg
Чат появлялся только в режиме меню, в игровом режиме можно было видеть только стоящие-бегающие-прыгающие-приседающие персонажи друг друга. Что ещё интересно, активировать игровой режим в данном случае из окна чата может только тот, кто создал сервер, остальные походу сразу за ним переключаются в игровой режим автоматически. В первый раз программа на ПК вообще вылетела при активации игрового режима с ноутбука. В следующий раз пошло всё нормально. Когда автоматически активируется 3D-режим, на ПК на неск десятков секунд программа подвисает, изображая только скрин местности и пустой HUD (на фото ПК находится слева). Возможно длительность такого зависания зависит от скорости интернета.
http://s020.radikal.ru/i703/1507/75/b4e180c40e76.jpg
================================================== =====
Потом появляется сцена в режиме какого-то недоделанного мультиплейера, как я говорил - видно как персонажи двигаются, а чат невозможно настроить, ну или я пока не знаю как это делается. Кстати, в режиме мультиплейера заметны лёгкие скачки-подтормаживания.
http://s57.radikal.ru/i156/1507/e5/45f6962427cd.jpg
Теперь кратко о том, как всем этим добром управлять. Здесь не всё - остальное можно посмотреть в настройках.
1. Стандартная раскладка WSAD - движение по местности.
2. Пробел - прыжок.
3. С - присесть.
4. Движение с зажатым шифтом - медленная ходьба (в обычном режиме персонаж бегает).
5. F7 - При одном нажатии переключаемся на вид от третьего лица. При втором - в режим свободной камеры, при третьем - обратно от первого лица.
6. Home и End - в режиме от третьего лица поднимают-опускают камеру.
7. PgUp и PgDown - в режиме от третьего лица приближают-отдаляют камеру.
8. WSAD плюс зажатая ПКМ - движение (полёт) в режиме свободной камеры. В этом режиме зажатый шифт наоборот ускоряет движение.
А сейчас - ссылка на саму программу с куском мира Anywhere. Весит 213 мегабайт. В распакованном виде 500 с чем-то Мбайт.
https://drive.google.com/file/d/0ByTAfw6vX5j0VjUzMWxMUlVmZmM/view?usp=sharing
================================================== ==========
Программа портативная, просто скачиваем и распаковываем куда угодно архив. Заходим в корневую папку Anywhere и запускаем файл Game. Есть конфигурация Game.exe, её не трогаем, запускаем именно Game приложение.
http://savepic.ru/7556135.jpg
Вчера вечером в рип мира Anywhere заходили по сети Старец, Джист, Герасим и я. Когда я создавал сервер, как обычно пришлось создавать его на связке ноутбук-телефон. На связке ПК- мобильный 3G модем, по прежнему сервер не хотел работать. Что кстати странно, на телефоне тоже встроенный 3G модем. Конфигурацию ПК- телефон и ноутбук-модем не пробовал. На созданном Герасимом сервере тоже долго не удавалось находиться - выбивало из игры. Нормально работал только сервер Старца.
Кстати переключение между картами-локациями (если все карты имеются у всех подключившихся) тоже происходит по команде запустившего сервер. С одной стороны это неплохо, но лучше было бы иметь возможность и самостоятельно каждому подключаться к нужному миру. Думаю обладая знаниями о движке и умея программировать на C# - можно добиться такого результата.
Продолжаю разбираться в движке.
Конфигурацию ПК- телефон и ноутбук-модем не пробовал.
Запустил мир в режиме клиент-сервер именно на такой конфигурации. Действительно, при отдельным 3G-модеме почему-то не создаётся сервер как положено. Только если подключиться к интернету через телефон.