stringtranslate.com

Открытый Кобальт

Open Cobalt — это бесплатная программная платформа с открытым исходным кодом для создания, доступа и совместного использования виртуальных миров как в локальных сетях , так и через Интернет , без необходимости использования централизованных серверов.

Технология позволяет легко создавать глубоко совместные и гиперсвязанные многопользовательские виртуальные рабочие пространства, виртуальные выставочные пространства и игровые обучающие и тренировочные среды, которые работают на всех основных операционных системах программного обеспечения . Используя протокол передачи сообщений на основе одноранговой связи для снижения зависимости от серверных инфраструктур для поддержки базовых взаимодействий в мире между многими участниками, Open Cobalt позволяет людям гиперсвязывать свои виртуальные миры через 3D- порталы для формирования большой распределенной сети взаимосвязанных пространств для совместной работы. Это также позволяет школам и другим организациям свободно создавать собственные сети публичных и частных 3D-виртуальных рабочих пространств, которые включают интегрированный веб-браузер , голосовой чат , текстовый чат и доступ к приложениям и службам удаленного рабочего стола .

Open Cobalt использует программную среду Squeak , которая является системой Smalltalk с открытым исходным кодом, свободно доступной для Windows, Mac и Unix. Как и почти любое приложение Smalltalk, Open Cobalt имеет идентичные функции на любой поддерживаемой платформе. Как система Smalltalk, она обычно может обновляться во время работы системы без необходимости перезапуска.

Ожидаемое использование

Open Cobalt разработан для обеспечения развертывания безопасных пространств виртуального мира, которые поддерживают образование, исследования и деятельность виртуальных организаций . Используя трехмерную графику на основе OpenGL , Open Cobalt поддерживает высокомасштабируемую совместную визуализацию данных , виртуальное обучение и среды решения проблем, трехмерные вики, игровые среды, называемые многопользовательскими ролевыми онлайн-играми (MMORPG), а также конфиденциальные и безопасно поддерживаемые многопользовательские виртуальные среды.

Приложение Open Cobalt использует одноранговый обмен сообщениями, чтобы исключить необходимость в серверах виртуального мира/коммерческих сервисах и делает очень простым для конечных пользователей создание и безопасный обмен глубоко совместными виртуальными мирами, которые работают на всех основных операционных системах программного обеспечения. Пользователи, перемещающиеся и взаимодействующие в мирах Open Cobalt, одновременно участвуют и сотрудничают в динамической, параллельной среде, где они могут работать, исследовать и учиться на уровне интеграции и расширяемости, который нелегко достичь с помощью коммерческих технологий виртуального мира. Без лицензионных сборов пользователи и разработчики также могут свободно создавать и обмениваться высокоэффективными многопользовательскими виртуальными рабочими пространствами, игровыми обучающими и тренировочными средами или даже просто создавать места для встреч и взаимодействия с друзьями.

История

Пользовательский интерфейс Open Cobalt и виртуальная среда с поддержкой аватара, содержащая содержимое сетки . kmz , импортированное из 3D Warehouse Google . Пользователи могут предоставлять контент в пространства Open Cobalt, который можно разрабатывать и управлять с помощью сторонних инструментов и ресурсов.

Open Cobalt создан на основе комплекта средств разработки программного обеспечения (SDK) Croquet , который был публично выпущен по лицензии MIT компаниями Hewlett-Packard и Croquet Consortium в начале 2007 года. [1]

В начале 2008 года при поддержке Фонда Эндрю У. Меллона [2] Джулиан Ломбарди и Марк П. МакКахилл из Университета Дьюка начали совместную разработку программного обеспечения с целью создания Open Cobalt как браузера виртуального мира с открытым исходным кодом и набора инструментов для создания.

В мае 2008 года Ломбарди получил грант Национального научного фонда [3] для дальнейшего укрепления усилий сообщества по разработке программного обеспечения и вывода браузера виртуального мира Open Cobalt на стадию альфа- версии.

Совместно с Джоном Дуганом в качестве технического руководителя проекта и растущим международным сообществом разработчиков программного обеспечения и волонтеров участники проекта Open Cobalt выпустили Open Cobalt Alpha в апреле 2010 года.

OpenCobalt 1.0 alpha 22 был выпущен в июне 2015 года. Последние события, связанные с проектом, можно найти в Google Group Open Cobalt.

Цели

Цели проекта Open Cobalt — стимулировать использование распределенных виртуальных сред, развивать визуальное моделирование и углублять сотрудничество в сфере образования, исследований и личных развлечений, и при этом:

  1. стимулировать разработку и распространение общих киберсред для организации, наблюдения и оценки совместного принятия решений, поиска и решения проблем среди членов распределенных виртуальных организаций и образовательных сообществ, а также
  2. создать условия для возникновения свободного, открытого и масштабируемого глобального информационного пространства на основе 3D.

Функции

Open Cobalt — это и приложение для конечного пользователя, и полнофункциональная среда разработки программного обеспечения для создания богатой сети взаимосвязанных виртуальных миров, созданных конечным пользователем. Он более расширяем, чем фирменные технологии, лежащие в основе совместных миров, таких как Second Life , а до этого ViOS . Это потому, что:

3D гиперссылки

Гиперссылки Open Cobalt 3D, соединяющие пять различных виртуальных пространств. Трехмерные гиперссылки выглядят как навигационные порталы и позволяют конечным пользователям организовывать миры Open Cobalt в связанную сеть виртуальных пространств в локальных и глобальных сетях.

В отличие от большинства других платформ виртуального мира (за исключением архитектуры OpenSimulator Hypergrid), Open Cobalt использует метод гиперссылки , известный как «связывание пространства» [4] , который напоминает оконную раму или портал и при вращении показывает пользователю в другом регионе 360-градусный вид в реальном времени одного региона; пользователи также могут проходить через такие порталы. Связывание пространства является альтернативой телепортации, более распространенным средством перемещения между регионами или пространствами, а также основным средством перемещения между целыми сетками.

Подобно красным ссылкам MediaWiki , такие порталы также используются для ссылок на несозданные пространства или регионы (окрашенные в черный цвет), чтобы указать на необходимость создания новых пространств. [5]

Удалённое сотрудничество

Два аватара пользователей, получающих доступ к одному сеансу VNC в безопасном и совместном пространстве Open Cobalt. Интеграция VNC с Open Cobalt позволяет пользователям совместно получать доступ к рабочим столам и приложениям, запущенным на удаленных машинах в любой точке сети.

Поддержка типов файлов

Технические функции

Open Cobalt — это приложение, созданное с использованием инструментария разработчика программного обеспечения Open Croquet . Его связь с Open Croquet обеспечивает ему ряд мощных возможностей.

Среда программирования

Среда разработки программного обеспечения Open Cobalt позволяет программистам наслаждаться возможностями настоящего языка поздней связи , отправляющего сообщения. Поскольку Open Cobalt построен на Squeak / Croquet , он является чисто объектно-ориентированной системой программирования , что обеспечивает значительную гибкость в его проектировании и реализации.

В Open Cobalt программисты могут редактировать исходный код 3D-мира изнутри мира и немедленно видеть результат, пока мир все еще работает. Работающая программа не должна быть завершена, и нет цикла разработки компиляция-связывание-запуск-отладка. Любая часть программы может быть отредактирована, вплоть до вызовов виртуальной машины (VM) и OpenGL . Зависимость Open Cobalt от обобщенного распределителя памяти и сборщика мусора Squeak делает его высокоэффективным в реальном времени и позволяет безопасно изменять форму объектов.

Как и Squeak, Open Cobalt поддерживает множество неанглийских языков и шрифтов, таких как немецкий , испанский , французский и японский .

Архитектура синхронизации

Открытая среда программирования Cobalt. Полный профессиональный язык программирования ( Smalltalk / Squeak ), IDE и библиотека классов присутствуют в каждой распределенной, работающей копии участника.

В основе Open Cobalt лежит объектно-ориентированная семантика, основанная на активных объектах , обладающих способностью временного отражения .

Каждый объект знает о своем поведении во времени и напрямую им управляет. Open Cobalt также напрямую поддерживает репликацию вычислений, позволяя перемещать вычисления близко к точке взаимодействия по требованию, сохраняя при этом единообразное представление поведения, которое может масштабироваться для включения тысяч узлов. Это достигается с помощью комбинации семантики объектов вместе с модифицированной версией протокола обмена сообщениями TeaTime Дэвида П. Рида в качестве распределенной транзакционной системы сообщений, позволяющей реплицировать вычисления (синхронизацию) между несколькими пирами. [6] Это делает реплицированные вычисления такими же простыми, как и репликация данных, и делает синхронизацию всех событий между несколькими пирами фундаментальным свойством системы.

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

Реализация TeaTime в Open Cobalt включает в себя:

  1. Скоординированная универсальная временная база, встроенная в протокол связи ,
  2. Реплицированные, версионированные объекты , которые объединяют реплицированные вычисления и распределение результатов,
  3. Стратегии репликации, которые отделяют механизмы репликации от поведенческой семантики объектов,
  4. Планирование на основе сроков, расширенное с учетом сбоев и вложенности,
  5. Скоординированное, распределенное двухфазное выполнение , которое используется для управления ходом вычислений на нескольких объектах, для обеспечения устойчивости, детерминированных результатов и адаптации к доступным ресурсам,
  6. Использование распределенных наборов.

Ссылки

  1. ^ "Пресс-релиз для Croquet SDK 1.0". Архивировано из оригинала 2016-12-25 . Получено 2009-01-18 .
  2. Объявление о присуждении премии Mellon Advanced Technology Collaboration (MATC) 2007 Университету Дьюка
  3. ^ Аннотация к награде NSF № 0823393: Открытая и масштабируемая инфраструктура сотрудничества на основе крокета для поддержки исследований и образования на основе трехмерного моделирования
  4. ^ "Телепортация и космическая связь". Проект OpenCobalt.
  5. ^ "Создание, сохранение и загрузка пространств". Архивировано из оригинала 2012-12-21 . Получено 2009-06-04 .
  6. ^ "LCS Publication - MIT-LCS-TR-205". publications.csail.mit.edu . Получено 2015-11-10 .

Внешние ссылки