WiP - Work in Progress - Part XVI
Übersicht

Gehe zu Seite Zurück 1, 2, 3 ... 12, 13, 14 ... 18, 19, 20 Weiter
![]() |
Noobody |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ja, die Simulation ist noch nicht in allen Fällen stabil, daher sollte man vorerst noch nicht am Code rumfummeln.
In gewissen Situationen kann es sein, dass ein einziges Partikel eine sehr geringe Dichte annimmt, was dann die ganze Simulation zum explodieren bringt (ein Entwickler nannte ein ähnliches Phänomen mal liebevoll 'cancer', da sich solche Partikel ähnlich wie die Krankheit in der Flüssigkeit verbreiten und schlussendlich das Programm töten). Ich arbeite dran ![]() |
||
Man is the best computer we can put aboard a spacecraft ... and the only one that can be mass produced with unskilled labor. -- Wernher von Braun |
![]() |
Skabus |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das ist wirklich klasse Noobody! ![]() Das ist sehr sehr beeindruckend...Schade das solche Art von Physikspielereien so extrem lange sind.Zumal ich ja denke, das du ja sicher schon den optimal schnellsten Weg gewählt hast... Wie war eigentlich dein Ansatz für sowas?Gibt es physikalische Gleichungen die das Verhalten von Wasser beschreiben?Oder wie hast du da angesetzt? Gäbe es, theoretisch, eigentlich auch möglichkeiten, etwas ähnliches in 3D umzusetzen? MfG Ska |
||
"In einer so verrückten Welt, kann man um in ihr zu überleben nur eines tun, nämlich eben jenes werden: Ein Verrückter!" -Selbstzitat
aktuelles Projekt: Aves Certim - Der Galgen ist nicht weit! Ein SNES-RPG mit Handels- und Wirtschaftselemente. Infos?Hier: http://www.blitzforum.de/worklogs/234/ Besucht meine Seite: www.seelenfriedhof.de.vu |
![]() |
Noobody |
![]() Antworten mit Zitat ![]() |
---|---|---|
Skabus hat Folgendes geschrieben: Schade das solche Art von Physikspielereien so extrem lange sind. Zumal ich ja denke, das du ja sicher schon den optimal schnellsten Weg gewählt hast...
Wie gross sind denn die Berechnungszeiten bei dir? Im Moment zählt eigentlich nur die Updatezeit - dort werden die eigentlichen Wasserberechnungen durchgeführt. Die Renderzeit ist im Moment noch relativ hoch, ist allerdings nur visueller Schnickschnack, der sich sicherlich noch um einiges optimieren lässt. Programme wie OECake machen es ja vor - Wasserspielereien mit hübscher Visualisierung sind durchaus Echtzeitfähig. Skabus hat Folgendes geschrieben: Wie war eigentlich dein Ansatz für sowas? Gibt es physikalische Gleichungen die das Verhalten von Wasser beschreiben? Oder wie hast du da angesetzt?
Die grundlegenden Gleichungen sind die Navier-Stokes Gleichungen. Du verstehst Bahnhof? Gut, ich auch ![]() Diese Gleichungen beschreiben die Bewegungen eines Fluids perfekt, allerdings sind sie, ausgenommen von ein paar Spezialfällen, unmöglich exakt zu lösen, weswegen man auf numerische Näherungen zurückgreift. Dafür gibt es verschiedene Methoden, die, die ich verwendet habe, ist die vorher genannte Smoothed Particle Hydrodynamics - Methode. Grundsätzlich berechnet man die Bewegung von einzelnen Punkten, die Eigenschaften wie Dichte, Druck, Masse und Schallgeschwindigkeit mit sich tragen. Das vereinfacht einige Teile der Gleichung, weswegen auch ein nicht-Student wie ich sie noch versteht. Falls du interessiert bist, kann ich dir ein paar Artikel dazu geben, die SPH genauer beschreiben. Skabus hat Folgendes geschrieben: Gäbe es, theoretisch, eigentlich auch möglichkeiten, etwas ähnliches in 3D umzusetzen?
Ja, das ist durchaus möglich und wird auch so gemacht (z.B. das Flüssigkeitsdingsi für Blender oder die neuste Wasser-Demo von nVidia). Es wäre sogar relativ einfach - einfach überall eine Dimension hinzufügen und gegebenenfalls die Kernel austauschen, um genauere Resultate zu erzielen. Das Problem ist dann halt das rendern - gängige Methoden sind 3D-Metaballs mit einem Marching cubes - Algorithmus, um die Oberfläche darzustellen, oder Point Splatting, das aus dem Voxelrendering kommt. Leider sind beide Herangehensweisen sehr langsam, daher ist es schwierig, in 3D noch Echtzeitfähig zu bleiben. Falls ich mal dazu komme, werde ich die Simulation auch auf 3D umschreiben, aber vorher gibt es in 2D schon genug zu tun. |
||
Man is the best computer we can put aboard a spacecraft ... and the only one that can be mass produced with unskilled labor. -- Wernher von Braun |
![]() |
ComNik |
![]() Antworten mit Zitat ![]() |
---|---|---|
Da hat wohl jemand vor mir Gamasutra oder Konsorten durchforstet...
Aber wie immer muss man zugeben super und weit von meinen versuchen entfernt... zerknirschte grüsse ![]() ComNik |
||
WIP: Vorx.Engine |
![]() |
Xaymarehemals "Cgamer" |
![]() Antworten mit Zitat ![]() |
---|---|---|
Updatezeit: 1-10ms
Renderzeit: 2ms(SPH.NiceRender = 0), 32ms(SPH.NiceRender = 1) geile Wasserphysik btw: 19088 Partikel ohne Fehler Updatezeit: ~45ms Renderzeit: 4ms(SPH.NiceRender = 0), 85ms(SPH.NiceRender = 1) Mir geht der platz für neue Partikel aus. Also hör ich da mal auf ab 10k Partikel wird das wasser extrem stabil |
||
Warbseite |
![]() |
Noobody |
![]() Antworten mit Zitat ![]() |
---|---|---|
ComNik hat Folgendes geschrieben: Da hat wohl jemand vor mir Gamasutra oder Konsorten durchforstet...
Kein Gamasutra ![]() Geholfen haben hauptsächlich dieser, dieser, dieser und dieser Artikel. |
||
Man is the best computer we can put aboard a spacecraft ... and the only one that can be mass produced with unskilled labor. -- Wernher von Braun |
n-Halbleiter |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
So, wie ich das sehe, gibt es keine Möglichkeit, die Anzahl von Partikeln einfach so zu verändern? Ich habe nämlich kein BMax, das kommt noch. ![]() Updatezeit: ~15ms Renderzeit (NiceRender = 0): 5ms Renderzeit (NiceRender = 1): Schwankt sehr stark, zwischen 40 und 90ms |
||
mfg, Calvin
Maschine: Intel Core2 Duo E6750, 4GB DDR2-Ram, ATI Radeon HD4850, Win 7 x64 und Ubuntu 12.04 64-Bit Ploing! Blog "Die Seele einer jeden Ordnung ist ein großer Papierkorb." - Kurt Tucholsky (09.01.1890 - 21.12.1935) |
![]() |
Nicdel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Nein, da musst du was im Code ändern ![]() |
||
Desktop: Intel Pentium 4 2650 Mhz, 2 GB RAM, ATI Radeon HD 3850 512 MB, Windows XP
Notebook: Intel Core i7 720 QM 1.6 Ghz, 4 GB DDR3 RAM, nVidia 230M GT, Windows 7 |
vanjolo |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Screenshot Cockpit aus dem Projekt "Dark"
Der Weltraum ist noch weit und leer ![]() Ein Space Shooter der in Richtung Wing Commander, Privateer, ect, gehen soll |
||
mDave |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Rahmentextur zu scharf im Gegensatz zu der Anzeigentextur an den Cockpitwänden. | ||
![]() |
ComNik |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zitat: Kein Gamasutra Wink Zumal ich bezweifle, dass es dazu irgendwo ein Tutorial gibt - das ist normalerweise kein Stoff für Games o.ä.
Das hab ich gelesen: http://www.gamasutra.com/view/...eaded_.php und da fängt gerade wieder eine neue Serie an: http://www.gamasutra.com/view/...fluid_.php Nee aber es war nur ein Ausdruck der Frustration ![]() Ich glaub das hab ich schonmal gefragt aber darf man erfahren woher du deine Artikel bekommst? lg ComNik |
||
WIP: Vorx.Engine |
![]() |
Noobody |
![]() Antworten mit Zitat ![]() |
---|---|---|
Der erste Artikel hat einen anderen Ansatz wie SPH, nämlich basierend auf einem Gitter anstatt auf Punkten (sprich, nach Euler und nicht Lagrange *fachsimpel*). Der zweite hingegen sieht interessant aus, den muss ich mir mal durchlesen.
Die Artikel besorge ich mir meistens per Google oder Wikipedia. Von irgendeinem Programm her habe ich den Fachbegriff SPH bereits gehört, also schaute ich zuerst auf Wikipedia nach und warf nachher Google an. Man sucht sich dann einfach ein paar Artikel raus, die vielversprechend aussehen und schaut dann nachher in ihrem Literaturverzeichnis, um die Artikel zu finden, die den Autoren geholfen haben. Oft erwähnte Artikel kommen dann in die engere Auswahl. Wenn man eine handvoll Artikel beisammen hat, fängt man einfach mal an zu lesen - ein Stück Papier nebenbei erweist sich dann immer als nützlich, um die wichtigsten Punkte und Formeln festzuhalten, kann ich nur empfehlen ![]() |
||
Man is the best computer we can put aboard a spacecraft ... and the only one that can be mass produced with unskilled labor. -- Wernher von Braun |
![]() |
ComNik |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zitat: (sprich, nach Euler und nicht Lagrange
...*dong* Ich glaub das Euler was mit zu tun hat hab ich noch verstanden, dann die Sache mit den Gittern und ab dann... Naja danke für die Infos^^ Ich guck mal ob ich das noch weiterverfolge. lg ComNik |
||
WIP: Vorx.Engine |
Omenaton_2 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
vanjolo hat Folgendes geschrieben: Screenshot Cockpit aus dem Projekt "Dark"
Der Weltraum ist noch weit und leer ![]() Ein Space Shooter der in Richtung Wing Commander, Privateer, ect, gehen soll Hi ! Sieht nicht schlecht aus, aber wenn ich dir paar Tipps geben darf: - Spare nicht zu sehr mit Polygonen bei so einem wichtigen, stets präsenten Grafikobjekt wie der 3D-Cockpit ! Mach zumindest die größeren Panels an den Seiten aus echten 3D Objekten (braucht so ein Quadrat ja nur sehr wenige Flächen). - Die lampen sollen eine extra Objekt sein, daß du mit selbstillumination lädst, so daß von aktuellen Beleuchtung unabhängig diese immer gleichmäßig leuchten. - Setze total transparente Glasscheiben ein, auf die du paar verschmierte Flecken und Kratzer reinmalen kannst. Das läßt noch mehr Glaseffekt erzeugen. |
||
vanjolo |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Danke für die Tips,
so aufwendig möchte ich das gar nicht machen. Das Projekt soll sich im Rahmen halten. Trotzdem habe ich ein paar Dinge verändert. https://www.blitzforum.de/gallery/1548/ Grüße Vanjolo |
||
Roseman |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
vanjolo hat Folgendes geschrieben: Danke für die Tips,
so aufwendig möchte ich das gar nicht machen. Das Projekt soll sich im Rahmen halten. Trotzdem habe ich ein paar Dinge verändert. https://www.blitzforum.de/gallery/1548/ Grüße Vanjolo Tipp von mir: Setze die Kamera viel weiter nach vorne, wenn du an den Innenseiten des Schiffs keine nützlichen Anzeigen unterbringen willst. So verdeckst du nur große Bereiche des Bildschirms mit unützen Dingen (du verdeckst große Teile der "Action" in deinem Spiel). Bei vielen Spielen gibt es kaum bis gar kein Cockpit selbst, dass man standardmäßig sehen könnte, sondern das HUD steht im Vordergrund. Dennoch kann man sich bei manchen im Cockpit umsehen, sodass das Modell selbst gewürdigt werden kann und damit auch eine Art "Schulterblick" und links-, rechtsrausgucken ermöglicht. Hier mal ein paar Bilder von Cockpits von Weltraumspielen: Wing Commander Prophecy X-Beyond the Frontier Freelancer Freespace Nichtsdestotrotz sieht das schön sehr schön aus, was du da zeigst. Weiter so! Mfg Mirko |
||
![]() |
Noobody |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich habe ein wenig an der Wassersimulation weitergebastelt und nun Hindernisse hinzugefügt.
Diese werden durch zusätzliche Partikel simuliert, die eine abstossende Kraft auf das Wasser auswirken und so das Wasser zur Richtungsänderung zwingen. Da die Hindernispartikel glücklicherweise nicht aktualisiert werden müssen, ist der Einschlag auf die Performance nur gering. Desweiteren habe ich die Instabilitäten mehr oder weniger ausgemerzt, die manchmal (oder auch ziemlich oft *pfeif*) zur Explosion der Simulation führten. Gefährliche Partikel werden frühzeitig erkannt, am Verbreiten gehindert und langsam wieder in ein normales Partikel zurückgeführt. Die Renderroutine habe ich noch ein wenig umgeschrieben, um ein bischen mehr Leistung rauszukitzeln und sie ausserdem schöner aussehen zu lassen. Die gerenderten Bilder entsprechen nun ungefähr meiner Vorstellung, wie es aussehen sollte; leider geht das Zeichnen (bzw. die dazugehörigen Berechnungen) immer noch sehr lange. Da die Simulation nun viel stabiler läuft, habe ich noch schnell eingebaut, dass man mit Links/Rechtsklick neues Wasser bzw. Hindernisse erstellen kann. So ist es einem möglich, ein bischen rumzuspielen, ohne gleich den Code umzuschreiben ![]() Screenshot: ![]() Download (Win Exe + BMax Code): Link |
||
Man is the best computer we can put aboard a spacecraft ... and the only one that can be mass produced with unskilled labor. -- Wernher von Braun |
![]() |
Nicdel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hey toll! Updaten geht sehr schnell, zeichnen sehr langsam ![]() Ist aber auf jeden Fall nicht schlecht. |
||
Desktop: Intel Pentium 4 2650 Mhz, 2 GB RAM, ATI Radeon HD 3850 512 MB, Windows XP
Notebook: Intel Core i7 720 QM 1.6 Ghz, 4 GB DDR3 RAM, nVidia 230M GT, Windows 7 |
![]() |
ComNik |
![]() Antworten mit Zitat ![]() |
---|---|---|
Man kann die Blockaden noch mit Wasserpartikeln übermalen,
aber ansonsten großartig ![]() lg ComNik [EDIT]: Ok ![]() |
||
WIP: Vorx.Engine |
- Zuletzt bearbeitet von ComNik am So, Okt 25, 2009 18:48, insgesamt einmal bearbeitet
![]() |
Noobody |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das ist absolut so gewollt - sonst würden die Wasserpartikel ja im Hindernis erstellt, was unter Umständen fehlerhaftes Verhalten verursacht. | ||
Man is the best computer we can put aboard a spacecraft ... and the only one that can be mass produced with unskilled labor. -- Wernher von Braun |
Gehe zu Seite Zurück 1, 2, 3 ... 12, 13, 14 ... 18, 19, 20 Weiter
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group