Ideen zu haben – Das Ziel

September 3, 2014

Liebe Leserinnen und Leser

Jetzt hatte ich Euch ja berichtet, dass ich mit meinem Hobby – Projekt SrrTrains v0.01 tatsächlich aufgehört hatte und dass ich auch die zugehörigen Blogs gelöscht hatte.

Weiters hatte ich hier versprochen, dass ich weitere Artikel zur technischen Fragestellung des Projektes schreiben werde.

Was hiermit geschieht

Eine Multiplayer – Eisenbahnsimulation ist ein Spezialfall eines 3D Multiplayer Games.

Ein 3D Multiplayer Game ist ein Spezialfall einer 3D Multiuser Szene.

Insoferne hat die Idee „Simple Multiuser Online Scenes“ (SMS) sehr viel mit dem Projekt SrrTrains v0.01 zu tun.

Was braucht man für eine 3D Multiuser Szene?

  1. Einen „Content Server“, auf dem die Szene gespeichert ist
  2. N „Clients“, auf denen die Szene dargestellt/ausgeführt wird
  3. Einen „Collaboration Server“, der die Clients miteinander verbindet, damit sie den „Shared State“ miteinander austauschen können

Angenommen, Du bist der Anbieter einer SMS (z.B. einer Eisenbahnanlage) und weiters angenommen, Du hast den Server Operator Deines Vertrauens gefunden, der sich um Deinen Content kümmert.

Noch weiter angenommen, Du hast zwei User Alice und Bob, beide wollen sich in Deiner SMS treffen (sie wollen gemeinsam Eisenbahn spielen).

Alice hat ihren Lieblings-Client A und Bob hat seinen Lieblings-Client B.

Leider gibt es keinen Collaboration Server, der sowohl A als auch B unterstützt.

—> Alice und Bob können sich in Deiner SMS nicht treffen.

Diesem Übel kann man Abhilfe schaffen, indem man das Protokoll zwischen Client und Collaboration Server standardisiert.

Um diese Standardisierung, und nur um diese Standardisierung, geht es im SrrTrains/SMUOS Projekt.

Lg
Euer Christoph


Ideen zu haben – Einleitung

August 30, 2014

Liebe Leserinnen und Leser

Jetzt hatte ich Euch ja berichtet, dass ich mit meinem Hobby – Projekt SrrTrains v0.01 tatsächlich aufgehört hatte und dass ich auch die zugehörigen Blogs gelöscht hatte.

Das hatte ich in folgendem Beitrag berichtet: Der Mohr hat seine Arbeit getan…

Die Gründe waren vielfältig, letzten Endes geht es aber darum, dass mir meine Freizeit mittlerweile zu wertvoll ist, um in eben dieser Freizeit Dinge zu tun, die andere Leute während ihrer Dienstzeit viel besser erledigen könnten.

Es war einerseits sehr sinnvoll, die Projektdokumentation von den technischen Blogs zu löschen – damit ich in der Loop bleibe –, andererseits möchte ich meinem Nachfolger, der diese Ideen weiterführen wird, nennen wir ihn vorläufig mit Mt 9,38 den „Herrn der Ernte“, das Leben nicht allzu schwer machen.

Deshalb spiele ich mit dem Gedanken, auf diesem Blog hier eine Artikelserie unter dem Titel „Ideen zu haben“ zu schreiben, die sich mit technischen Fragestellungen zum Projekt beschäftigen wird.

Ich entschuldige mich jetzt bereits bei allen Lesern, die lieber religiöse, philosophische und psychologische Themen diskutieren, dass sich hie und da ein technischer Artikel unter die anderen Artikel gesellen wird.
Lg
Euer Christoph

Alle Artikel dieser Reihe:

  1. Ideen zu haben – das Ziel – Alice und Bob
  2. Ideen zu haben – der Inhalt – Module, Modelle und Objekte
  3. Ideen zu haben – die „echte“ Realität – N+1 ist eine schöne Zahl
  4. Ideen zu haben – Module, Kacheln, DIGITS – ich baue mir ein Universum

Anmerkung (2015-01-31)
Obwohl ich die Blogs zum Projekt SrrTrains v0.01 gelöscht hatte, sind immer noch einige Informationen öffentlich erreichbar.

Alle öffentlich erreichbaren Informationen kann man über
https://letztersein.wordpress.com/srrtrains-v0-01/
erreichen.


Weltkoordinatensystem – II

August 7, 2014

Was wäre, wenn man den Begriff „ins Internet einsteigen“ sehr wörtlich auffassen würde?

Wenn man also, um „ins Internet einzusteigen“, eine Art Holodeck beträte.

Dort könnte man einerseits virtuelle Welten betreten, andererseits könnte man aber auch die wirkliche Welt virtuell betreten.

Z.B.: Ich lebe in New York, meine Kinder leben in Nairobi, Toronto und Krakau, und wir verbringen ein paar gemeinsame virtuelle Stunden am Matterhorn, ohne extra unseren Hintern in die Schweiz transportieren zu müssen.

Mit diesen Ideen haben sich schon viele Leute beschäftigt, und ausser einigen wenigen Menschen, vornehmlich Piloten, sind solche Dinge der Menschheit noch vorenthalten.

Würde es sich lohnen, an solchen Ideen mitzuarbeiten?

Ich weiss es nicht.

Zuerst einmal müssen wir wohl unser reales Leben auf die Reihe kriegen, bevor wir uns virtuell miteinander vergnügen.

Aber ich habe mir trotzdem erlaubt, ein paar Gedankengänge zu diesen Themen hinzuzufügen:

Vom GPS zum UPS: https://letztersein.wordpress.com/2014/07/26/die-welt-ist-nicht-genug/

Distributed Internet Geographic Information Transmission Service: https://letztersein.wordpress.com/2014/08/06/das-weltkoordinatensystem/

Ja, natürlich, es geht wieder um DIGITS, also um das „dritte Kind“.

Und natürlich geht es darum, dass ich in meiner Freizeit eigentlich keine Zeit mehr habe, mich mit 3D-Graphik zu beschäftigen.

In den hobbymäßigen Überlegungen über SMSn (Simple Multiuser Szenen) hatte ich ja bereits definiert, dass jede SMS aus mindestens einem Modul (oder auch aus mehreren Modulen) und darin enthaltenen Modellen bestehen soll.

Die Modularität ist wahrscheinlich eine ganz nette Brücke zu einem relativistischen Ansatz.

Jetzt stehe ich also vor folgenden Ideen:

1) Um das „Weltkoordinatensystem“ (WKS) loszuwerden, muss man sich immer auf ein Modul beziehen

  1. deshalb können Module „gebunden“ werden, es ist in jeder Szeneninstanz immer genau ein Modul „gebunden“
  2. beim Binden eines Moduls wird die gesamte Szeneninstanz bezüglich dieses Moduls „relativiert“
  3. das Modul wird durch das Binden eines enthaltenen Viewpoints gebunden

2) Wo sind die Module „aufgehängt“?

  1. Wahrscheinlich benötigt man weiterhin ein WKS
  2. aber es muss kein Inertialsystem sein
  3. es muss auch nicht kartesisch sein (z.B. WGS84)
  4. es kann sich während der Lebensdauer einer SMS ändern (dynamische Parameter, Verhältnis zur DIGITS Datenbasis)

3) Zusammenhänge SMS mit DIGITS

  1. bei der Definition einer SMS wird auch ein WKS für diese SMS definiert und die Beziehungen zwischen diesem WKS und der DIGITS Datenbasis
  2. Die dynamischen Parameter eines WKS und seine Beziehungen zur DIGITS Datenbasis können sich während der Lebensdauer einer SMS ändern
  3. Die SMS unterscheidet zwischen „geographischer Infrastruktur“ und „Content“, es soll aber leicht möglich sein, bestimmte Teile zwischen „GIS“ und „Content“ hin- und herzuschieben
  4. WKS und DIGITS hängen eng zusammen, sie bilden die „geographische Infrastruktur“ (GIS)
  5. Die statischen und dynamischen Module werden relativ zum WKS „aufgehängt“ und sind der „Content“ (zusammen mit enthaltenen Modellen und Moving Modules)

Meint
Euer Christoph


Neue Geo TLDs / Distributed Internet Geographic Information Transmission Service

März 15, 2014

Jetzt bin ich über einen Artikel auf der Futurezone auf ein Thema gestossen, das gerade ich fast übersehen hätte. Scheint ein Wink des Schicksals zu sein, dass ich mit meinem Hobby endgültig aufhören sollte (altes Thema 🙂 ).

Hier der Artikel
http://futurezone.at/digital-life/wien-wien-ab-sofort-mit-eigener-domainendung/54.169.036

und nach Googeln noch ein wichtiger Artikel auf ots.at:
http://www.ots.at/presseaussendung/OTS_20131028_OTS0135/vertragsunterzeichnung-fuer-wien-als-weltweit-erste-geo-community-tld

und ein Wikipedia Eintrag
http://en.wikipedia.org/wiki/GeoTLD.

sowie der originale „DIGITS“-Link
https://simulrr.svn.sourceforge.net/svnroot/simulrr/concepts/src/Digits/

Aber warum interessiert mich dieses Thema? Na gut, die mich kennen, wissen es längst: es geht um DIGITS (distributed internet geographic information transmission service), also eine Idee, geographische Infrastruktur in einem hierarchischen System von Geo-Servern abzulegen.

Dabei würde ein 3-dimensionales, interaktives, animiertes Abbild der Erde in verschiedenen Hierarchiestufen abgelegt.

Je nachdem, welche Szene man darstellen möchte (ob zum Beispiel ein Flugsimulator oder eine Navigationssoftware für Fussgänger vorliegt), würde man in einer unterschiedlichen Hierarchiestufe in das System einsteigen (das entspräche dem sogenannten LoD – Level of Detail).

Ein Flugsimulator, dessen virtueller User sich gerade in Wien befindet, würde also z.B. die Server

  1. wien.austria.earth.solarsystem.ourgalaxy.universe,
  2. austria.earth.solarsystem.ourgalaxy.universe,
  3. earth.solarsystem.ourgalaxy.universe,
  4. solarsystem.ourgalaxy.universe,
  5. ourgalaxy.universe und
  6. universe

durchlaufen, während eine Anwendung, die eine Navigation von Währing nach Ottakring darstellt, folgende Server abfragen würde:

  1. waehring.wien.austria.earth.solarsystem.ourgalaxy.universe,
  2. hernals.wien.austria.earth.solarsystem.ourgalaxy.universe,
  3. ottakring.wien.austria.earth.solarsystem.ourgalaxy.universe,
  4. wien.austria.earth.solarsystem.ourgalaxy.universe,
  5. austria.earth.solarsystem.ourgalaxy.universe,
  6. earth.solarsystem.ourgalaxy.universe,
  7. solarsystem.ourgalaxy.universe,
  8. ourgalaxy.universe und
  9. universe

Dabei wäre der „höchste“ Server für das gesamte Universum „zuständig“, enthielte aber „keine Geo-Daten“, während die „niedrigsten“ Server nur für je einen „kleinen Bereich“ „zuständig“ wären, aber am meisten Details enthielten.

Jetzt frage ich mich: kann man die Ansätze für Geo TLDs bereits als Ansatz in diese Richtung interpretieren?

Meint
Euer Christoph


Zwei Seelen wohnen, ach, in meiner Brust

Juli 20, 2013

Und wieder geht es um das Hobby: http://smuos.wordpress.com/2013/07/20/yet-another-pdf-yap/.

Da sieht man, ahnt man, die großen Ziele, die ein Techniker, viele Techniker, anstreben könnten.

Und trotzdem muß man mit dem ersten kleinen Schritt beginnen.

Jeder Tag muss für sich selber sorgen.

Auf Pump geht gar nichts. Das sehen wir an Griechenland.

Aber eine Hoffnung blitzt auf: „Wer das Ziel kennt, kennt auch den nächsten Schritt“. Grundprinzip einer Routingtabelle 🙂

Meint
Euer Christoph


Ich gebe es auf

Mai 27, 2013

Zuallererst die Frage: Was meine ich mit „aufgeben“?

„Aufgeben“ im Sinne von engl. „to abandon“ oder „aufgeben“ im Sinne von engl. „to hand in“?

Nun gut, diese Frage möchte ich bewußt offenlassen.

Aber was ist „es“?

„Es“ ist in erster Linie eine Reihe von Ideen, die alle im Laufe der Zeit entstanden sind, und die alle mehr oder weniger veröffentlicht worden sind (jeweils auf einem meiner 5 Blogs oder in einem meiner beiden Sourceforge Projekte).

Warum ich diese Ideen alle veröffentlicht habe und nicht für mich behalte, liegt letzten Endes daran, dass ich für mich persönlich keine Chance gesehen habe, damit Geld zu verdienen, dass mein jeweiliger Arbeitgeber daran nicht interessiert war, und dass ich dann letzten Endes aus einem schlechten Gewissen gegenüber der Menschheit mir immer die Arbeit angetan habe, es zu veröffentlichen.

Ein gewisser Exhibitionismus mag auch dazu beigetragen haben.

Und die Tatsache, dass eine Veröffentlichung letzten Endes der einzige Beweis dafür ist, dass ich diese Idee gehabt habe (als erster oder nicht, ist hier nebensächlich).

Das meiste davon ist nicht neu, aber es ergibt in Summe einen ganz schönen Überblick darüber, was dabei zwangsläufig herauskommen muß, wenn sich ein Mensch aus der Sparte Telekom in seiner Freizeit mit den Möglichkeiten von 3D-Graphik beschäftigt, insbesondere mit Web3D Technologien, insbesondere mit dem Netzwerksensor-Interface.

A) Der persönliche Urknall

Noch bevor ich wußte, was Google Earth ist, war da eine „Inspiration“, die im Wesentlichen auf dasselbe hinausläuft.

Bloß, dass ich von Anfang an von einer verteilten Datenbank geträumt habe, die Server in aller Welt (und von verschiedenen Eigentümern) durch ein Internetprotokoll miteinander verbindet und 3D-Szenen aufgrund eines primary Key zusammensetzt, den ich als „VRA“ (Virtual Roaming Area) bezeichnet habe – ein geschlossenes oder offenes Polygon.

Ich habe das als DIGITS bezeichnet („Distributed Internet Geographic Information Transmission Service“).

Ich nehme an, zur Entwicklung dieser Sache hat man meine Ideen nicht gebraucht, dennoch habe ich sie sicherheitshalber als Unterverzeichnis im Source Code meines ersten Open Source Projektes veröffentlicht: http://simulrr.sourceforge.net

B) Eisenbahn-Simulation

Kann man Web3D verwenden um Eisenbahnen zu simulieren?

Natürlich!

Es gab auch bereits einige nette Beispiele im Web, dennoch fehlte mir noch der Multiuser-Mode.

Ich fragte auf der X3D-public Mailing Liste, ob es hier bereits standardisierte Lösungen für den Multiuser-Mode gab.

Ja, sagte man mir, einerseits gab es da die DIS Komponente (Distributed Interactive Simulation), die bereits fertig standardisiert war – jedoch nur von einem Web3D Browser unterstützt -, andererseits gab es den Netzwerksensor, welcher ein sehr viel generelleres Interface darstellte, aber es gab immerhin zwei Web3D Browser, mit denen man Versuche anstellen konnte.

Ich entschied mich für den Netzwerksensor, obwohl natürlich die Verwendung eines generellen Interfaces für komplizierte Anwendungen (also z.B. für eine Eisenbahn-Simulation) prinzipiell höhere Aufwände bedeutet.

Im Gegenzug war man nicht von einem einzigen Browserhersteller abhängig (theoretisch, zumindest) und man konnte die Funktion des Interfaces auf die eigenen Wünsche „hinbiegen“.

Diese Idee verfolgte ich auf dem Blog http://simulrr.wordpress.com
und im Sourceforge Projekt http://simulrr.sourceforge.net

C) Simple Multiuser Szenen

Idee B) führte dazu, dass ich begann, einen Satz von X3D Prototypen experimentell zu entwickeln. Ich bezeichnete diese Prototypen als „SRR Framework“, wobei der Begriff „Framework“ eher das bezeichnete, was einmal daraus werden sollte, als das, was es tatsächlich schon war.

Da das „SRR Framework“ mittlerweile recht komplex geworden war, beschloss ich, es in einen Basisanteil (das sogenannte „base module“) und spezifische Anteile (sogenannte „extension modules“) zu zerlegen. So könnte der Basisanteil für beliebige „Simple Multiuser Online Scenes“ (SMUOS) und die spezifischen Anteile für verschiedene Anwendungen (Eisenbahnsimulation, Autosimulation, Flugzeugsimulation, Bürozusammenarbeit (Collaboration), etc.) verwendet werden.

Aufgrund mehrerer Ursachen bildete sich daraus

D) Die Idee SMUOS/C3P

Das „Base Module“ des „SRR Frameworks“ läßt sich bereits jetzt für einfache Multiuser-Szenen benützen, hat aber aus Sicht eines Mitarbeiters der Telekom Branche den entscheidenden Nachteil, dass für die Kommunikation mit dem Collaboration Server ein proprietäres Protokoll verwendet wird.

Dieses Protokoll sollte man also definieren.

Weiters wäre es im Sinne einer Standardisierung sinnvoll, das „Base Module“ des „SRR Frameworks“ „tieferzulegen“, also eine X3D Komponente zu definieren, welche im Wesentlichen die API bietet, die im SRR Framework experimentell entwickelt worden ist.

Diese Idee SMUOS/C3P beschreibe ich auf dem Blog http://smuos.wordpress.com
und im (ungestarteten) Sourceforge Projekt http://smuos.sourceforge.net

Ein weiterer Aspekt – der auf eine Mail auf der X3D-public zurückgeht und von dort „inspiriert“ war – ist die Idee, die „Wirklichkeit“ als (N+1)-te Szeneninstanz in die Multiuser-Session einzubinden.

Diese Idee ist in einem Paper zusammengefasst, welches ich am 1.März 2011 veröffentlicht und zuletzt am 18.Jänner 2012 geändert habe. Dieses Paper findet sich unter anderem hier: http://smuos.wordpress.com/2011/03/01/smuos-and-the-ietf/.

So, das war „es“.

Jetzt liegt es an Dir, lieber Leser, zu entscheiden, ob ich mit „aufgeben“ „to abandon“ gemeint habe, oder „to hand in“.

Oder, ein bisschen direkter formuliert, sozusagen mit den Worten der letzten Hornbach-Werbung: „Und jetzt Du.“

Meint
Euer Christoph