Otwórz kobalt
Deweloperzy | Źródło społecznościowe i Duke University |
---|---|
Pierwsze wydanie | 2009 |
Napisane w | Piskliwy Smalltalk |
System operacyjny | macOS , Windows , Linux |
Dostępne w | język angielski |
Typ | Przeglądarka 3D, Świat wirtualny, Grafika komputerowa 3D |
Licencja | MIT |
Strona internetowa |
Open Cobalt to bezpłatna platforma oprogramowania typu open source do konstruowania, uzyskiwania dostępu i udostępniania wirtualnych światów zarówno w sieciach lokalnych , jak i przez Internet , bez potrzeby stosowania scentralizowanych serwerów.
Technologia ułatwia tworzenie głęboko współpracujących i połączonych hiperłączami wirtualnych przestrzeni roboczych dla wielu użytkowników, wirtualnych przestrzeni wystawienniczych oraz środowisk edukacyjnych i szkoleniowych opartych na grach, które działają na wszystkich głównych systemach operacyjnych oprogramowania . Używając przekazywania wiadomości opartego na peer-to-peer, aby zmniejszyć zależność od infrastruktury serwerowej do obsługi podstawowych interakcji w świecie między wieloma uczestnikami, Open Cobalt umożliwia ludziom łączenie ich wirtualnych światów za pośrednictwem portali 3D w celu utworzenia dużej sieć rozproszona połączonych przestrzeni współpracy. Umożliwia także szkołom i innym organizacjom swobodne tworzenie własnych sieci publicznych i prywatnych wirtualnych przestrzeni roboczych 3D, które oferują zintegrowane przeglądanie stron internetowych , czat głosowy , czat tekstowy oraz dostęp do aplikacji i usług zdalnego pulpitu .
Open Cobalt korzysta ze środowiska oprogramowania Squeak , które jest systemem Open Source Smalltalk , dostępnym bezpłatnie dla systemów Windows, Mac i Unix. Podobnie jak w przypadku prawie każdej aplikacji Smalltalk, Open Cobalt działa identycznie na każdej obsługiwanej platformie. Jako system Smalltalk, zwykle można go aktualizować, gdy system działa, bez konieczności ponownego uruchamiania.
Oczekiwane zastosowania
Open Cobalt ma na celu umożliwienie wdrażania bezpiecznych przestrzeni wirtualnego świata, które wspierają edukację, badania i działalność organizacji wirtualnych . Wykorzystując grafikę 3D opartą na OpenGL , Open Cobalt obsługuje wysoce skalowalną wspólną wizualizację danych , wirtualne środowiska uczenia się i rozwiązywania problemów, wiki 3D, środowiska gier online określane jako gry MMORPG (Massively multiplayer online role-playing games) oraz prywatnie i bezpiecznie utrzymywane gry dla wielu użytkowników środowiska wirtualne.
Aplikacja Open Cobalt wykorzystuje komunikację peer-to-peer w celu wyeliminowania potrzeby stosowania serwerów/usług komercyjnych w świecie wirtualnym i sprawia, że jest ona bardzo prosta dla użytkowników końcowych do tworzenia i bezpiecznego udostępniania wirtualnych światów opartych na ścisłej współpracy, które działają na wszystkich głównych systemach operacyjnych oprogramowania. Użytkownicy poruszający się po światach Open Cobalt i współpracujący z nimi jednocześnie uczestniczą i współpracują w dynamicznym, współbieżnym środowisku, w którym mogą pracować, eksplorować i uczyć się na poziomie integracji i rozszerzalności, który nie jest łatwy do osiągnięcia za pomocą komercyjnych technologii wirtualnego świata. Bez opłat licencyjnych użytkownicy i programiści mogą również swobodnie tworzyć i udostępniać wysoce wydajne wirtualne przestrzenie robocze dla wielu użytkowników, środowiska uczenia się i szkolenia oparte na grach, a nawet po prostu tworzyć miejsca spotkań i interakcji z przyjaciółmi.
Historia
Open Cobalt wywodzi się z zestawu do tworzenia oprogramowania Croquet (SDK), który został publicznie udostępniony na licencji MIT przez Hewlett-Packard i Croquet Consortium na początku 2007 roku.
Na początku 2008 roku, przy wsparciu Fundacji Andrew W. Mellona , Julian Lombardi i Mark P. McCahill z Duke University rozpoczęli społecznościowy program rozwoju oprogramowania, mający na celu zbudowanie Open Cobalt jako aplikacji przeglądarkowej wirtualnego świata o otwartym kodzie źródłowym i zestaw narzędzi budowlanych.
W maju 2008 r. Lombardi otrzymał grant National Science Foundation na dalsze wzmacnianie społecznościowych wysiłków na rzecz rozwoju oprogramowania i wprowadzenie przeglądarki wirtualnego świata Open Cobalt do wersji alfa .
Wraz z Johnem Douganem jako kierownikiem projektu technicznego oraz rosnącą międzynarodową społecznością programistów i wolontariuszy, współtwórcy projektu Open Cobalt wydali Open Cobalt Alpha w kwietniu 2010 roku.
OpenCobalt 1.0 alfa 22 został wydany w czerwcu 2015 roku. Ostatnie działania związane z projektem można znaleźć w Open Cobalt Google Group.
Cele
Celem inicjatywy Open Cobalt jest stymulowanie korzystania z rozproszonych środowisk wirtualnych, udoskonalanie symulacji wizualnych oraz pogłębianie współpracy w zakresie edukacji, badań i rozrywki osobistej — a tym samym:
- stymulować rozwój i rozpowszechnianie wspólnych środowisk cybernetycznych do inscenizacji, obserwacji i oceny wspólnego podejmowania decyzji, wyszukiwania i rozwiązywania problemów wśród członków rozproszonych organizacji wirtualnych i społeczności edukacyjnych, oraz
- stworzyć warunki do powstania wolnej, otwartej i skalowalnej globalnej przestrzeni informacyjnej z obsługą 3D.
Cechy
Open Cobalt to zarówno aplikacja dla użytkownika końcowego, jak i w pełni funkcjonalne środowisko programistyczne do tworzenia bogatej sieci połączonych wirtualnych światów tworzonych przez użytkowników końcowych. Jest bardziej rozszerzalny niż zastrzeżone technologie stojące za światami współpracy, takimi jak Second Life , a wcześniej ViOS . To dlatego, że:
- Jest bezpłatny (nie ma opłat za jego użytkowanie lub dystrybucję)
- Cały system jest open-source (jest licencjonowany na licencji wolnego oprogramowania MIT )
- Nie wymaga użycia serwerów do tworzenia i udostępniania wirtualnych światów (ponieważ jest oparty na architekturze synchronizacji peer-to-peer / protokole przesyłania wiadomości)
- Jest niezależny od platformy i urządzenia (ponieważ jest to technologia oparta na maszynie wirtualnej , która działa w systemach Mac OS X , Windows i Linux )
- Zapewnia kompletny język profesjonalnego programisty ( Smalltalk / Squeak , IDE i bibliotekę klas w każdej rozproszonej, działającej kopii uczestnika (przy czym samo środowisko programistyczne jest jednocześnie współdzielone i rozszerzalne)
- Opiera się na architekturze Squeak z późnym wiązaniem i funkcjach metaprogramowania (które pozwalają na wydajną obsługę multimediów)
- Użytkownicy/programiści w wirtualnych światach mogą swobodnie uzyskiwać dostęp, modyfikować i przeglądać kod źródłowy całego systemu (mają dostęp do uruchomionego kodu z poziomu świata)
- Użytkownicy/programiści mogą importować treści 3D bezpośrednio do swoich światów ( zawartości Google 3D Warehouse (. kmz ) oraz treści w innych formatach można przeciągać i upuszczać bezpośrednio do światów Open Cobalt)
- Użytkownicy/programiści mogą importować różnorodne treści multimedialne bezpośrednio do swoich światów (światy Open Cobalt obsługują treści audio i mpeg )
- Jego kod oprogramowania można aktualizować/zmieniać, gdy system działa (umożliwiając programowanie światów z poziomu światów podczas ich działania)
- Nie jest hostowany na serwerze jednej organizacji (a zatem nie jest zarządzany przez żadną taką organizację)
Hiperłącza 3D
W przeciwieństwie do większości innych platform wirtualnego świata (z wyjątkiem architektury Hypergrid OpenSimulator ), Open Cobalt wykorzystuje metodę hiperłączy , znaną jako „łączenie przestrzenne”, która przypomina ramę okna lub portal, a po obróceniu pokazuje 360- stopień podglądu w czasie rzeczywistym jednego regionu użytkownikowi w innym regionie; takie portale mogą być również przeglądane przez użytkowników. Łączenie przestrzeni jest alternatywą dla teleportacji, bardziej powszechnym sposobem przemieszczania się między regionami lub przestrzeniami, a także podstawowym sposobem podróżowania między całymi siatkami.
Podobnie jak redlinks w MediaWiki , takie portale są również używane do tworzenia linków do nieutworzonych przestrzeni lub regionów (zaznaczonych na czarno), aby wskazać potrzebę stworzenia nowszych przestrzeni.
Współpraca zdalna
- Dostęp do katalogu przedsiębiorstwa; Lekki protokół dostępu do katalogów ( LDAP )
- Działa w sieciach lokalnych (LAN) oraz w intranetach
- Zintegrowany czat tekstowy; Extensible Messaging and Presence Protocol (XMPP)
- Czat głosowy w świecie; Głos przez IP (VoIP)
- Czat wideo w świecie
- Przeglądanie sieci w świecie; przez Virtual Network Computing (VNC)
- Adnotacje w świecie (tekst i dźwięk)
- Wspólne udostępnianie/edycja dokumentów
Obsługa typów plików
- Import siatek i tekstur ( .kmz , .obj , .ase, .vrml)
- Import mediów ( .mpg )
- Skrypty ( Smalltalk / Squeak )
- Niestandardowe awatary/animacje (za pośrednictwem przepływów pracy Collada / Ogre 3D )
- Silnik graficzny oparty na OpenGL
- OpenAL
Funkcje techniczne
Open Cobalt to aplikacja zbudowana przy użyciu zestawu narzędzi programisty Open Croquet . Jego związek z Open Croquet zapewnia mu szereg potężnych możliwości.
Środowisko programistyczne
Środowisko programistyczne Open Cobalt umożliwia programistom korzystanie z możliwości prawdziwego późnego języka wysyłania wiadomości. Ponieważ jest zbudowany na Squeak / Croquet , Open Cobalt jest czysto obiektowym systemem programowania, który pozwala na znaczną elastyczność w jego projektowaniu i wdrażaniu.
W Open Cobalt programiści mogą edytować kod źródłowy świata 3D z poziomu świata i natychmiast zobaczyć wynik, gdy świat wciąż działa. Działający program nie musi być zakończony i nie ma pętli programistycznej kompilacja-link-uruchom-debugowanie. Dowolna część programu może być edytowana, aż do maszyny wirtualnej (VM) i wywołań OpenGL . Poleganie Open Cobalt na uogólnionym alokatorze pamięci i wyrzucaniu elementów bezużytecznych Squeak sprawia, że jest on bardzo wydajny w czasie rzeczywistym i umożliwia bezpieczne przekształcanie obiektów.
Podobnie jak w przypadku Squeak, Open Cobalt obsługuje wiele języków innych niż angielski i czcionek , takich jak niemiecki , hiszpański , francuski i japoński .
Architektura synchronizacji
Podstawą Open Cobalt jest zorientowana obiektowo semantyka oparta na aktywnych obiektach , które mają zdolność czasowego odbicia .
Każdy obiekt jest świadomy i bezpośrednio kontroluje swoje zachowanie w czasie. Open Cobalt obsługuje również bezpośrednio replikację obliczeń, umożliwiając przeniesienie obliczeń blisko punktu interakcji na żądanie, przy jednoczesnym zachowaniu spójnego widoku zachowań, które można skalować, aby obejmowały tysiące węzłów. Robi to, wykorzystując kombinację semantyki obiektów wraz ze zmodyfikowaną wersją protokołu przesyłania wiadomości opartego na peerach TeaTime Davida P. Reeda jako rozproszonego systemu transakcyjnego wiadomości, umożliwiającego replikowane obliczenia (synchronizację) w wielu równorzędnych. Dzięki temu replikowane obliczenia są równie łatwe, jak replikowanie danych, a synchronizacja wszystkich zdarzeń w wielu równorzędnych elementach jest podstawową właściwością systemu.
Dzięki tym właściwościom twórcy oprogramowania mogą wykorzystywać Open Cobalt jako sposób na tworzenie aplikacji głęboko współpracujących bez wysiłku potrzebnego do zrozumienia, jak działają replikowane aplikacje. Zmniejsza to narzut związany z programowaniem potrzebny do powszechnego wdrażania wirtualnych przestrzeni o dużych możliwościach współpracy. Umożliwia także wdrażanie i koordynowanie działań wirtualnych światów na wielu maszynach bez konieczności utrzymywania centralnych zasobów serwerowych (innych niż te potrzebne do wyspecjalizowanych danych i instytucjonalnych usług oprogramowania pośredniczącego).
Implementacja TeaTime przez Open Cobalt obejmuje:
- Skoordynowana uniwersalna podstawa czasu osadzona w protokole komunikacyjnym ,
- Zreplikowane, wersjonowane obiekty , które ujednolicają replikowane obliczenia i dystrybucję wyników,
- Strategie replikacji oddzielające mechanizmy replikacji od behawioralnej semantyki obiektów,
- Harmonogramowanie terminowe rozszerzone o awarie i zagnieżdżanie,
- Skoordynowane, rozproszone zatwierdzanie dwufazowe , które służy do kontrolowania postępu obliczeń w wielu lokalizacjach w celu zapewnienia odporności, deterministycznych wyników i dostosowania do dostępnych zasobów,
- Korzystanie z rozproszonych zestawów.
Linki zewnętrzne
- Oficjalna strona internetowa
- Alternatywny adres URL oficjalnej strony internetowej
- Grupa OpenCobalt Google
- Pliki do pobrania OpenCobalt
- Interfejsy API scenografii 3D
- Oprogramowanie alfa
- Bezpłatne oprogramowanie międzyplatformowe
- Darmowe oprogramowanie do symulacji
- Darmowe dystrybucje oprogramowania
- Projekty wolnego oprogramowania
- Oprogramowanie do pracy grupowej
- Zarządzanie technologiami informatycznymi
- Zintegrowane środowiska programistyczne
- Oprogramowanie korzystające z licencji MIT
- Konstruktorzy interfejsów użytkownika
- Wirtualna rzeczywistość
- Społeczności świata wirtualnego