BennIY Geschrieben 29. November 2014 Melden Share Geschrieben 29. November 2014 Guten Nachmittag, meine Frage ist, wie es Spacegames wie EVE-Online etc schaffen, solche großen Spielwelten zu simulieren. Und das nur mit der Genauigkeit einer Float?!? Ein Freund von mir kam auf die Idee, man könnte Objekte skarlieren jedoch würde mein Kopf bei der Rechnerei die auf ein zukommt rauchen, was die reale Geschwindigkeit der Objekte an geht. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Sleepy Geschrieben 29. November 2014 Melden Share Geschrieben 29. November 2014 Was spricht dagegen Planeten einfach weit voneinander entfernt zu machen ? Das Weltraum ist ja leer da gibts nicht viel zu berechnen. Alternativ könntest dus auch so machen das wenn das raumschiff einen bestimmten Bereich erreicht hat dann der Planet angezeigt wird. Du könntest auch mit LOD stufen arbeiten. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Slayer Geschrieben 29. November 2014 Melden Share Geschrieben 29. November 2014 Eve ist doch auch in Sektoren aufgeteilt. Also dort kannst du nicht vom System zum nächsten Fliegen. In Unity währen dies wohl dann Scenen. Ansonsten sind die Objekte alle in der Scene halt irgendwo Plaziert... Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
BennIY Geschrieben 29. November 2014 Autor Melden Share Geschrieben 29. November 2014 Ja das klingt so einfach aber ich habe nur eine Genauigkeit von einer Float also 7 nachkomma stellen beutet wenn mein universum 999.999m breit ist habe ich nur eine Genauigkeit von 1m. und 1.000km ist nicht viel bei eve sind es weit mehr als 100.000.000km bis die Scene endet und das mit einer Genauigkeit bis auf 1cm. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Slayer Geschrieben 29. November 2014 Melden Share Geschrieben 29. November 2014 naja ich bin mir jetzt nicht sicher, aber ist die scene in unity nicht unendlich? Hab zumindest noch so schnell in ne richtung fliegen können, bin nie an ein ende gekommen... Kann mich aber auch Irren. Die sache ist nur die das die Sonnensysteme eigene Scenen sind. Das heist ohne Portal oder einen Hyperraumsprung kommst du nicht in Eve in ein anderes System (Scene) Ka was du genau meinst mit der genauichkeit oder was du erreichen willst Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Gassi Geschrieben 29. November 2014 Melden Share Geschrieben 29. November 2014 Also 1. weiß ich nicht, wo du das mit den 7 Nachkommastellen her hast(?) 2. Ist es nicht egal, ob sich der Planet nen Milimeter weiter rechts oder links befindet? Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Slayer Geschrieben 29. November 2014 Melden Share Geschrieben 29. November 2014 ich glaube er muss erstmal genauer beschreiben was er versucht zu machen und wo das problem liegt... Denn jedes Objekt gibt ja sehr genau seine Possition an in der Scene. Da er aber auch irgendwas von Universums (Scenengröße) Spricht, frage ich mich wo genau da das Problem liegt.. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
cooky Geschrieben 29. November 2014 Melden Share Geschrieben 29. November 2014 Slayer: ...aber ist die scene in unity nicht unendlich?... Die Scene hat ein Ende. Wenn die Entfernung zum Null Punkt zu groß ist bekommt man lauter Erros. Das war so bei einer Million oder so. Dann stand bei der Position nur noch Infinity Hab aus versehen am Speed von meinen Raumschiff mal zu viele Nullen dran gehängt. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Slayer Geschrieben 29. November 2014 Melden Share Geschrieben 29. November 2014 cooky danke für diese info^^ Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Sleepy Geschrieben 29. November 2014 Melden Share Geschrieben 29. November 2014 Ja aber das Weltraum ist doch eh leer also könnte man mit dem Raumschiff doch auch auf der Stelle stehen. Man wählt sein Ziel über eine Minimap aus. Und wenn der Charakter auf der Minimap den Zielpunkt fast erreicht hat wird der Planeten oder was auch immer gespawnt. Danach könnte man den Charakter wieder auf 000 setzen und das spiel geht von vorne los. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
BennIY Geschrieben 30. November 2014 Autor Melden Share Geschrieben 30. November 2014 Also 1. Die unity szene ist nicht unendlich sondern auf 7 Zahlen begrenzt wegen dem gültigkeitsbereich einer Float das ist programmiertechnisch so. 2. Es ist zwar egal ob der Planet 1m links oder rechts ist jedoch ist es nicht egal wenn die Spielerschiffe ruckeln weil sie sich nur meterweise fortbewegen können. 3. Ich habe schon versucht den Spieler an Ort und Stelle zu lassen und die Planeten um ihn herum zu bewegen doch auch dabei gibt es massive Probleme in der Position. Das problem ist die 7 Stellige Float bedeutet die welt ist zwar unendlich groß wird jedoch immer ungenauer umso grösser der Abstand zum 0 Punkt Es ist unvermeindlich das ganze in Szenen zu machen doch ist eine Szene von 100km auf 1cm Genauigkeit sehr mickrig das Problem ist der Raum ist ganz und garnicht leer es ist ein Multiplayer game mit gegnern bots asteroiden etc Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Sleepy Geschrieben 1. Dezember 2014 Melden Share Geschrieben 1. Dezember 2014 Wenn du dein Welttaum durch 7 Zahlen begrenzen tust wundert es mich nicht das du Probleme bekommst. Ich verstehe auch nicht warum du dein Weltraum begrenzen willst. Du könntest da riesige Gebiet genau so gut durch einen Cube (Collider) begrzenzen diesen kannst du doch beliebig groß machen. Du könntest auch einfach einen Cube erstellen der 7 Hoch 7 Breit 7 ÖLang ist und somit hättest du auch eine Begrenzung von 7. Ich weiß ehrlich gesagt auch nicht was du genau vor hast. Gegner könntest du zb um den Player Spawnen und wenn du noch näher kommst greifen sie an. Ich verstehe auch nicht warum du nochmal einen Thread eröffnet hast mit der gleichen Frage. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Slayer Geschrieben 1. Dezember 2014 Melden Share Geschrieben 1. Dezember 2014 Also bei mir ruckelt das Raumschiff nicht... Auch mit Bots habe ich kein Problem. Auch nicht mit den Planeten. habe das selbe schon mal gebaut gehabt Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
jashan Geschrieben 1. Dezember 2014 Melden Share Geschrieben 1. Dezember 2014 In den beiden Antworten auf Vector3 using Doubles Instead of Floats findest du eine ganze Reihe von Lösungsmöglichkeiten. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
malzbie Geschrieben 1. Dezember 2014 Melden Share Geschrieben 1. Dezember 2014 @ Slayer: So ein Schiff würde auch nur dann ruckeln, wenn man von der einen Seite des Weltraumes das Schiff auf der anderen Seite des Weltraumes steuern würde UND/ODER seine Spiel-Skalierung verändern würde, sodass es keine Millimeter mehr gibt. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
runner78 Geschrieben 1. Dezember 2014 Melden Share Geschrieben 1. Dezember 2014 Kerbal Space Program als Beispiel (Basiert auch auf Unity) hat ein Sonnensystem mit einem Radius von 113 549 713 200m Float != Dezimal 113 549 713 200 als float musste sein: 1.13549713E11 Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Recommended Posts
Archiviert
Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.