WiP - Work in Progress - Part XVI

Übersicht Sonstiges Projekte

Gehe zu Seite Zurück  1, 2, 3 ... 12, 13, 14 ... 18, 19, 20  Weiter

Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.

Noobody

BeitragFr, Okt 23, 2009 21:19
Antworten mit Zitat
Benutzer-Profile anzeigen
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 Wink
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

BeitragFr, Okt 23, 2009 21:34
Antworten mit Zitat
Benutzer-Profile anzeigen
Das ist wirklich klasse Noobody! Shocked

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

BeitragFr, Okt 23, 2009 21:56
Antworten mit Zitat
Benutzer-Profile anzeigen
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 Razz
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

BeitragFr, Okt 23, 2009 22:50
Antworten mit Zitat
Benutzer-Profile anzeigen
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 Wink
ComNik
WIP: Vorx.Engine

Xaymar

ehemals "Cgamer"

BeitragFr, Okt 23, 2009 23:02
Antworten mit Zitat
Benutzer-Profile anzeigen
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

BeitragFr, Okt 23, 2009 23:10
Antworten mit Zitat
Benutzer-Profile anzeigen
ComNik hat Folgendes geschrieben:
Da hat wohl jemand vor mir Gamasutra oder Konsorten durchforstet...

Kein Gamasutra Wink Zumal ich bezweifle, dass es dazu irgendwo ein Tutorial gibt - das ist normalerweise kein Stoff für Games o.ä.

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

BeitragFr, Okt 23, 2009 23:17
Antworten mit Zitat
Benutzer-Profile anzeigen
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. Sad

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

BeitragSa, Okt 24, 2009 9:23
Antworten mit Zitat
Benutzer-Profile anzeigen
Nein, da musst du was im Code ändern Wink
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

BeitragSa, Okt 24, 2009 10:06
Antworten mit Zitat
Benutzer-Profile anzeigen
Screenshot Cockpit aus dem Projekt "Dark"
Der Weltraum ist noch weit und leer Very Happy

user posted image

Ein Space Shooter der in Richtung Wing Commander, Privateer, ect, gehen soll
 

mDave

BeitragSa, Okt 24, 2009 10:44
Antworten mit Zitat
Benutzer-Profile anzeigen
Rahmentextur zu scharf im Gegensatz zu der Anzeigentextur an den Cockpitwänden.

ComNik

BeitragSa, Okt 24, 2009 13:54
Antworten mit Zitat
Benutzer-Profile anzeigen
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 Wink

Ich glaub das hab ich schonmal gefragt aber darf man erfahren woher du deine Artikel bekommst?

lg
ComNik
WIP: Vorx.Engine

Noobody

BeitragSa, Okt 24, 2009 14:03
Antworten mit Zitat
Benutzer-Profile anzeigen
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 Razz
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

BeitragSa, Okt 24, 2009 14:09
Antworten mit Zitat
Benutzer-Profile anzeigen
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

BeitragSa, Okt 24, 2009 16:12
Antworten mit Zitat
Benutzer-Profile anzeigen
vanjolo hat Folgendes geschrieben:
Screenshot Cockpit aus dem Projekt "Dark"
Der Weltraum ist noch weit und leer Very Happy

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

BeitragSa, Okt 24, 2009 20:55
Antworten mit Zitat
Benutzer-Profile anzeigen
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

BeitragSo, Okt 25, 2009 10:58
Antworten mit Zitat
Benutzer-Profile anzeigen
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

BeitragSo, Okt 25, 2009 16:24
Antworten mit Zitat
Benutzer-Profile anzeigen
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 Razz

Screenshot:
user posted image
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

BeitragSo, Okt 25, 2009 16:38
Antworten mit Zitat
Benutzer-Profile anzeigen
Hey toll! Updaten geht sehr schnell, zeichnen sehr langsam Very Happy
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

BeitragSo, Okt 25, 2009 16:40
Antworten mit Zitat
Benutzer-Profile anzeigen
Man kann die Blockaden noch mit Wasserpartikeln übermalen,
aber ansonsten großartig Shocked

lg
ComNik

[EDIT]: Ok Smile[/EDIT]
WIP: Vorx.Engine
  • Zuletzt bearbeitet von ComNik am So, Okt 25, 2009 18:48, insgesamt einmal bearbeitet

Noobody

BeitragSo, Okt 25, 2009 16:55
Antworten mit Zitat
Benutzer-Profile anzeigen
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

Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.


Übersicht Sonstiges Projekte

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group