You are currently browsing the phreekz posts tagged: coding


Fluid Dynamics in Echtzeit

Im LBM-Benchmark habe ich versucht, die Realtime CFD von Jos Stam umzusetzen.

Hier die wichtigen Links, die man im Netz zu diesem Thema findet:
Wolken in CFD
Jos Stam Arbeiten
Jos Stam PDF zur CFD in Games, also EchtzeitLink2
Sourcecode in BB von Krümel
Plasmapong – Psycho-Pong mit Fluid Umsetzung und Sandbox
Java-Umsetzung von Phagor – Source steckt in der PDE-Datei
PDF-Datei zu Fluid Dynamics und Multithreadinglösungen

hilfreiche Links und Tipps zum Thema:
simulating Smoke and Water mit Powerpoint-Daten
Echtzeit NSE aufbauend auf Siggraph 2006 – Deutsch
Modellreduktion für Echtzeitfluide – PDF

Audiosequencer in J2ME

–> Nachtrag Jan 2008 ->
Das Problem ist, dass auch J2ME sehr unterschiedlich implementiert wird. Und auch Flash ist auf Handies nicht gleich Flash. Das eine Gerät kann WAV abspielen, dass andere -obwohl der Befehl implementiert ist- gibt keinen Laut von sich. Schaut auch nach Flashlite, wenn Euch das Thema interessiert.

vvvv Tutorial ?

Ich habe nun mit vvvv angefangen. Das Ding ist schier unerschöpflich, und bei Youtube findet man eine Menge geiler Installationen – beruhend auch auf vvvv.

Also hier ein Einsteiger-Tutorial für vvvv seht mir nach, dass ich auch erst angefangen habe und sicherlich bessere Wege existieren.

1. Schnell mit der Benutzung klar kommen. Sie entspricht kaum den Windows-Standards, da es kein Menu gibt :)

F1 – Hilfe allgemein bzw. zum angeklickten Modul.
[STRG]+W – Fenster schließen
[STRG]+I – Inspektor – weitere Einstellungen des Moduls
[STRG]+S – Speichern
Doppelklick auf die leere Fläche – Modul erstellen

2. Node erstellen
Es erscheint bei Doppelklick eine leere Fläche, die man beschreiben kann. Beim Schreiben zeigt vvvv die möglichen Module.

3. Modul-Nodes verknüpfen
Nodes(=Knoten) sind die Ein- und Ausgänge der Module, die man verknüpft. Grundsätzlich zeigt vvvv an, ob und welche Nodes verknüpft werden können. Mit der linken Maustaste werden die Punkte der Module verbunden. In-Node-Werte können auch eingetippt werden, dazu wählt man den Node mit der rechten Maustaste an.

Hier ein einfaches Beispiel für ein Video, eine überlagernde Farbfläche und eine rauflegbare Grafik.

Der ganze Patch ( so nennt man so ein Modulentwurf ) basiert auf der Ausgabe in einem DirectX-Fenster. Darum werden die einzelnen Daten ( Video, Farbfläche, Grafik ) auf sogenannten Quads ( Vierecke ) im 3D-Raum dargestellt.

Der blaue Bereich ist der Videostrang, der Rote ist die Farbfläche und der grüne Bereich ist die Grafik, die rübergelegt wird.

Mit Transform werden die Daten zurechtgebogen, vergrößert. Beispielsweise benutze ich eine IOBox(Value Advanced) für die Rotation oben. Damit ein Slider zu sehen ist, muss man im Inspektor nachbessern.

Der kleine Strang rechts unten ist dazu da, das Blending einzustellen, sprich, wie die überlagernden Quads miteinander interagieren.

Hier noch weitere Youtube-Videos zum Thema:

Motion Tracking – Pixeltracking

Hier werden die Infos für das nächste Projekt gesammelt:

Zusammenfassung der Standard-Algorithmen im 2D-Tracking. von 1997
http://www.cs.ucf.edu/courses/cap6411/book.pdf

CodeProject – BlobDetection uÄ
http://www.codeproject.com/cs/media/VisualSLPart2.asp

Feature Point Detection
http://en.wikipedia.org/wiki/Feature_detection
http://pubs.doc.ic.ac.uk/Pantic-SMC05-2 … MC05-2.pdf

Gabor based PixelTracking
ftp://ftp.neuroinformatik.ruhr-uni-boch … acking.pdf

OpenCV – Algorithmen-Bibliothek Schwerpunkt Bildverarbeitung-Robotik
http://de.wikipedia.org/wiki/OpenCV
http://www.intel.com/technology/computi … erview.htm

LBM – Little Benchmarker v1.0

Little Benchmarker v1.0
——————————

Ein kleines Programm, das vollständig über CPU und Memory-Anweisungen Animationen darstellt. Einerseits
hübsch anzusehen, andererseits eine Vergleichsmöglichkeit beim CPU-OC. Läuft ohne DirectX/OpenGL-Beschleunigung !

Nötig: Windows XP und Net2.0 Laufzeitumgebung

1 – SinWarp
————–
Ein SinusWarping Effekt. In jeder Farbkomponente finden
andere trigonometrische Überlagerungen statt. Standard Demo Effekt
Übermäßige Math.Sin/Cos Nutzung.
Bild

2 – SinMove
————–
Viele Punkte bewegen sich auf Sinus/Cosinus-Bahnen
Math.Sin/Cos und GetPixel*0.9=SetPixelColor-Schleife
Bild

3 – Gravity
————-
Viele Punkt ziehen sich abhängig von ihrer Masse an. Kleine
Gravitationssimulation.
Bild

4 – Blurred Gravity
———————-
Gravity anstatt CLS Screen mit Get/Set-Spielchen
Bild

5 – Fluid Dynamics
———————
Die FluidDynamics von Jos Stam in VB.Net verpackt
Bild

DownloadHIER