Offener Kobalt

Offener Kobalt
Open cobalt logo.png
Entwickler (en) Community Source und Duke University
Erstveröffentlichung 2009
Geschrieben in Quietschen Smalltalk
Betriebssystem Mac OS, Fenster, Linux
Verfügbar in Englisch
Typ 3D -Browser, virtuelle Welt, 3D -Computergrafik
Lizenz MIT
Webseite www.opencobalt.Netz

Offener Kobalt ist ein Kostenlose und Open-Source-Software Plattform zum Konstruktion, Zugriff und Teilen virtuelle Welten beide auf lokale Netzwerke oder über die Internetohne nötige zentralisierte Server.

Die Technologie erleichtert es einfach, zutiefst kollaborativ zu kreieren und hyperlinks Virtuelle Arbeitsbereiche mit Multi-Benutzern, virtuelle Ausstellungsräume und spielbasierte Lern- und Trainingsumgebungen, die auf allen großen Software laufen Betriebssysteme. Durch Verwendung a Peer-To-Peer-basierend Nachrichtenübergang Protokoll zur Verringerung der Abhängigkeit von Serverinfrastrukturen für die Unterstützung grundlegender Interaktionen in der Welt zwischen vielen Teilnehmern. Open Cobalt ermöglicht es Menschen, ihre virtuellen Welten über Hyperlink zu bringen 3d Portale eine große bilden verteilt Netzwerk von miteinander verbundenen Kollaborationsräumen. Es ermöglicht es auch Schulen und anderen Organisationen, ihre eigenen Netzwerke von öffentlichen und privaten 3D -virtuellen Arbeitsbereichen frei einzurichten, die integriert sind Webbrowsing, Sprachchat, Text-Chat, und Zugang zu Remotedesktop Anwendungen und Dienste.

Open Cobalt verwendet die Quietschen Softwareumgebung, die eine Open-Source-Umgebung ist Smalltalk System frei für Windows, Mac und Unix verfügbar. Wie bei fast jeder SmallTalk -Anwendung ist Open Cobalt auf jeder unterstützten Plattform eine identische Funktion. Als SmallTalk -System kann es normalerweise aktualisiert werden, während das System ausgeführt wird, ohne einen Neustart zu benötigen.

Erwartete Verwendungszwecke

Open Cobalt wurde entwickelt, um den Einsatz sicherer virtueller Welträume zu ermöglichen, die Bildung, Forschung und Aktivitäten von unterstützen Virtuelle Organisationen. Durch Nutzung OpenGL-basierend 3D -GrafikOpen Cobalt unterstützt eine hochskalierbare Zusammenarbeit Datenvisualisierung, virtuelle Lern- und Problemlösungsumgebungen, 3D -Wikis, Online -Spiele als als bezeichnet Massiv Multiplayer Online-Rollenspiele (MMORPGS) und privat und sicher gepflegte virtuelle Umgebungen mit mehreren Benutzern.

Die Open Cobalt-Anwendung nutzt Peer-basierte Messaging, um die Notwendigkeit von Servern/kommerziellen Diensten für virtuelle Welt zu beseitigen, und macht es sehr einfach für Endverbraucher Erstellen und sicher zutiefst kollaborative virtuelle Welten zu erstellen und sicher zu teilen, die auf allen wichtigen Software -Betriebssystemen betrieben werden. Benutzer, die sich gleichzeitig in offenen Kobaltwelten bewegen und interagieren, nehmen in einer dynamischen, gleichzeitigen Umgebung teil und arbeiten zusammen, in der sie auf einer Ebene der Integration und Erweiterbarkeit arbeiten, erforschen und lernen können, die nicht einfach durch kommerzielle virtuelle Welttechnologien erreicht werden. Ohne Lizenzgebühren können Benutzer und Entwickler auch viel fähige virtuelle Multi-User-Arbeitsbereiche, spielbasierte Lern- und Trainingsumgebungen frei aufbauen und teilen oder sogar nur Orte erstellen, um Freunde zu treffen und mit ihnen zu interagieren.

Geschichte

Öffnen Sie die Cobalt-Benutzeroberfläche und die avatar-fähige virtuelle Umgebung, die enthalten ist.kmz Mascheninhalte importiert von Google 3D -Lagerhaus. Benutzer können Inhalte bereitstellen, um Kobalträume zu öffnen, die mit Tools und Ressourcen von Drittanbietern entwickelt und verwaltet werden können.

Offener Kobalt wird von der abgeleitet Krocket Softwareentwicklungskit (SDK), das öffentlich unter dem freigelassen wurde MIT -Lizenz durch Hewlett Packard und das Krocketkonsortium Anfang 2007.[1]

Anfang 2008 und mit Unterstützung der Andrew W. Mellon Foundation,[2] Julian Lombardi und Mark P. McCahill, bei Duke Universitystartete die Community-basierten Softwareentwicklungsbemühungen, um Open Cobalt als Open Source virtuelle Welt Browser Anwendung und Konstruktions -Toolkit.

Im Mai 2008 wurde Lombardi mit einem ausgezeichnet Nationale Wissenschaftsstiftung gewähren[3] Um den Community-basierten Softwareentwicklungsbemühungen weiter zu stärken und den offenen Browser der offenen Kobalt Virtual World in seine Alpha Veröffentlichung.

Zusammen mit John Dougan als technischem Projektleiter und einer wachsenden internationalen Gemeinschaft von Softwareentwicklern und Freiwilligen veröffentlichte die Open Cobalt -Projekt -Mitwirkenden im April 2010 Open Cobalt Alpha.

OpenCobalt 1.0 Alpha 22 wurde im Juni 2015 veröffentlicht. Jüngste Aktivitäten mit dem Projekt finden Sie in der Open Cobalt Google Group.

Ziele

Ziel der offenen Kobaltanstrengung ist es, den Einsatz verteilter virtueller Umgebungen, vorab visueller Simulationen und die Zusammenarbeit in Bildung, Forschung und persönlicher Unterhaltung zu fördern - und damit:

  1. Stimulieren Sie die Entwicklung und Verbreitung gemeinsamer Cyber-Umgebung für die Staging, Beobachtung und Bewertung von kollaborativen Entscheidungsfindung, Problemfindung und Problemlösung zwischen Mitgliedern verteilter virtueller Organisationen und Bildungsgemeinschaften sowie
  2. Erstellen Sie die Bedingungen für die Entstehung eines freien, offenen und skalierbaren 3D-fähigen globalen Informationsraums.

Merkmale

Open Cobalt ist sowohl eine Endbenutzeranwendung als auch die vollständige Umgebung mit Softwareentwicklungsumgebungen, um ein reiches Netzwerk von Endnutzern zu erstellen, die miteinander verbunden sind, mit verknüpften virtuellen Welten. Es ist erweiterbarer als die proprietären Technologien hinter kollaborativen Welten wie z. Zweites Lebenund vorher Vios. Das ist weil:

  • Es ist kostenlos (es gibt keine Gebühren für seine Verwendung oder Verteilung)
  • Das gesamte System ist Open-Source (es ist unter dem lizenziert MIT -freie Softwarelizenz)
  • Es braucht nicht die Verwendung von Servern, um virtuelle Welten zu erstellen und zu teilen (da es auf einem basiert Peer-To-Peer Synchronisationsarchitektur/Messaging -Protokoll)
  • Es ist Plattform und Geräte unabhängig (weil es a ist virtuelle Maschine-basierte Technologie, die auf Mac OS X, Fenster, und Linux)
  • Es bietet eine vollständige professionelle Programmiersprache (Smalltalk/Quietschen, Ide, und Klassenbibliothek In jedem verteilten Kopie des Teilnehmers (wobei die Programmierumgebung selbst gleichzeitig gemeinsam genutzt und erweiterbar ist)
  • Es basiert auf Quietschen'S spätbindende Architektur und Metaprogrammierung Einrichtungen (die ein effizientes Umgang mit Medien ermöglichen)
  • Benutzer/Entwickler in virtuellen Welten können den Quellcode des gesamten Systems frei zugreifen, ändern und anzeigen (sie können von In-World auf den aufliefenden Code zugreifen).
  • Benutzer/Entwickler können 3D -Inhalte direkt in ihre Welten importieren (Google 3D Warehouse Inhalt (.kmz) und Inhalt in anderen Formaten können sein Drag-and-Dropped direkt in offene Kobaltwelten)
  • Benutzer/Entwickler können eine Vielzahl von Medieninhalten direkt in ihre Welten importieren (Open Cobalt Worlds Support Audio und MPEG Medieninhalt)
  • Sein Softwarecode kann während des Live -Systems aktualisiert/verändert werden (ermöglicht es, Welten innerhalb von Welten während des Laufens zu programmieren)
  • Es wird nicht auf dem Server einer einzelnen Organisation gehostet (und daher nicht von einer solchen Organisation geregelt)

3D -Hyperlink

Öffnen Sie Cobalt 3D -Hyperlinks, die fünf verschiedene virtuelle Räume verbinden. Dreidimensionale Hyperlinks erscheinen als schiffbar Portale und ermöglichen es offenen Kobaltwelten, von Endbenutzern in ein miteinander verbundenes Netzwerk virtueller Räume in lokalen und weiten Netzwerken zu organisieren.

Im Gegensatz zu den meisten anderen Plattformen der virtuellen Welt (mit Ausnahme von OpenSimulator's Hypergrid Architecture), Open Cobalt verwendet eine Methode von Hyperlink, bekannt als "Raumverbinder",[4] Dies ähnelt einem Fensterrahmen oder Portal und zeigt, wenn sie sich dreht, eine 360-Grad-Echtzeitansicht einer Region an einen Benutzer in einer anderen Region. Solche Portale können auch von Benutzern durchlaufen werden. Die Raumverbinderung ist eine Alternative zur Teleportation, ein häufigeres Mittel zum Überqueren zwischen Regionen oder Räumen und auch ein Hauptmittel für das Reisen zwischen Vollnetze.

Wie Mediawiki's RedLinks, solche Portale werden auch verwendet, um mit nicht geschaffenen Räumen oder Regionen (in Schwarz gefärbt) zu verknüpfen, um darauf hinzuweisen, dass neuere Räume erstellt werden müssen.[5]

Remote -Zusammenarbeit

Zwei Benutzer -Avatare, die auf eine einzelne VNC -Sitzung innerhalb eines sicheren und kollaborativen offenen Kobaltplatzes zugreifen. Durch die Integration von VNC in Open Cobalt können Benutzer gemeinsam auf die Desktops und Anwendungen zugreifen, die auf Remote -Maschinen überall im Netzwerk ausgeführt werden.

Filetyp -Unterstützung

Technische Funktionen

Open Cobalt ist eine Anwendung, die mit dem gebaut wurde Offenes Krocket Toolkit des Softwareentwicklers. Seine Beziehung zu offenem Krocket bietet ihm eine Reihe starker Fähigkeiten.

Programmierumgebung

Open Cobalts Softwareentwicklungsumgebung ermöglicht es den Programmierern, die Fähigkeiten eines True zu genießen späte gebunden, Nachrichtensende Sprache. Weil es aufgebaut ist Quietschen/Krocket, Offener Kobalt ist rein Objekt orientierte Programmierung System, das erhebliche Flexibilität bei der Gestaltung und Implementierung ermöglicht.

Innerhalb des offenen Kobalts können Programmierer die bearbeiten Quellcode der 3D -Welt aus der Welt und sofort das Ergebnis sehen, während die Welt noch läuft. Das laufende Programm muss nicht beendet werden, und es gibt keine Kompilierlink-Run-Debug-Entwicklungsschleife. Jeder Teil des Programms kann bearbeitet werden, bis hin zu dem virtuelle Maschine (VM) und OpenGL Anrufe. Öffnen Sie Cobalts Vertrauen in Squeaks verallgemeinertes Speicherallocator und Müllsammler macht es in Echtzeit hocheffizient und ermöglicht die Umstellung von Objekten sicher.

Open Cobalt unterstützt wie bei Squeak viele nicht englische Sprachen und Schriftarten wie zum Beispiel Deutsch, Spanisch, Französisch, und japanisch.

Synchronisationsarchitektur

Öffnen Sie die Programmierumgebung von Kobalt. Eine vollständige professionelle Programmiersprache (Smalltalk/Quietschen), Ide, und Klassenbibliothek ist in jedem verteilten, ausführenden Kopie des Teilnehmers vorhanden.

Das zugrunde liegende offene Kobalt ist ein objektorientierter Semantik basierend auf aktiv Objekte das hat die Fähigkeit von zeitlich Betrachtung.

Jeder Objekt ist sich der Zeit bewusst und in direkter Kontrolle seines Verhaltens. Open Cobalt unterstützt auch direkt die Replikation der Berechnung, sodass die Berechnung nahe am Interaktionspunkt bei Bedarf verschoben werden kann, während eine konsistente Sichtweise der Verhaltensweisen beibehält, die Tausende von Knoten einbeziehen können. Dies geschieht, indem eine Kombination von verwendet wird Objekt Semantik zusammen mit einer modifizierten Version von David P. Reed's Teatime-Peer-basierte Messaging-Protokoll als verteiltes Nachrichtentransaktionssystem, das replizierte Berechnung (Synchronisation) über mehrere Peers ermöglicht.[6] Dies macht replizierte Berechnungen so einfach wie die Replikation von Daten - und synchronisiert alle Ereignisse über mehrere Peers zu einer grundlegenden Eigenschaft des Systems.

Aufgrund dieser Eigenschaften können Softwareentwickler Open Cobalt verwenden, um zutiefst kollaborative Anwendungen zu erstellen, ohne die Anstrengungen zu verstehen, um zu verstehen, wie replizierte Anwendungen funktionieren. Dies reduziert den Programmieraufwand, der für die weit verbreitete Bereitstellung von zutiefst fähigen, kollaborativen virtuellen Räumen erforderlich ist. Es ermöglicht es auch, die Aktivitäten virtueller Welten auf mehreren Maschinen bereitzustellen und zu koordinieren, ohne dass die zentralen Serverressourcen aufrechterhalten werden müssen (außer denen, die für spezielle Daten und institutionelle Middleware -Dienste benötigt werden).

Open Cobalts Implementierung von Teatime beinhaltet:

  1. Eine koordinierte universelle Zeitbasis, die in die eingebettet ist Kommunikationsprotokoll,
  2. Repliziert, versioniert Objekte die replizierte Berechnung und Verteilung der Ergebnisse vereinheitlicht,
  3. Replikationsstrategien, die die Replikationsmechanismen von der Verhaltensemantik von Objekten trennen,
  4. Deadline-basierte Zeitplanung verlängert sich mit Scheitern und Nisting,
  5. Koordiniert, verteilt Zwei-Phasen-Commit Dies wird verwendet, um den Fortschritt von Berechnungen an mehreren Standorten zu kontrollieren, Resilienz, deterministische Ergebnisse und Anpassung an verfügbare Ressourcen zu liefern.
  6. Verwendung von verteilten Sets.

Verweise

  1. ^ Pressemitteilung für den Krocket SDK 1.0
  2. ^ Ankündigung des MEGC Advanced Technology Collaboration (2007) für 2007 an die Duke University
  3. ^ NSF Award Zusammenfassung #0823393: Eine offene und skalierbare Kroket-basierte Zusammenarbeit in der Kollaboration zur Unterstützung von 3D-Simulationsbasis und Bildung
  4. ^ "Teleportieren und Raumverbinder".OpenCobalt -Projekt.
  5. ^ Erstellen, Speichern und Laden von Räumen
  6. ^ "LCS-Veröffentlichung-MIT-LCS-TR-205". publications.csail.mit.edu. Abgerufen 2015-11-10.

Externe Links