Direkt zum Inhalt | Direkt zur Navigation

Benutzerspezifische Werkzeuge
Anmelden
Sektionen
Sie sind hier: Startseite bitMagie Flash Echtzeit-Fluid-Dynamik mit ActionScript 3

Echtzeit-Fluid-Dynamik mit ActionScript 3

| abgelegt unter: ,

Implementierung eines Echtzeit-Fluid-Generators nach dem Verfahren von Jos Stam.

Diesem Artikel liegen  Jos Stam's Veröffentlichungen "Stable Fluids" und "Real-Time Fluid Dynamics for Games" zugrunde, beide zu finden unter http://www.dgp.toronto.edu/people/stam/reality/Research/pub.html . In "Real-Time Fluid Dynamics for Games" beschreibt Jos Stam  die Implementierung seines Algorithmus in C, den "fluid dynamics solver for game engines" . Der vollständige C Quellcode liegt auf Stam's WebSite ebenfalls zum Download bereit. Das Flash-Demo-Programm ist einem Processing-Beispiel unter Verwendung dieses Algorithmus nachempfunden.

 

 

/******************************
* adding source to density
*/
protected function  add_source ( x:Vector.<Number>, s:Vector.<Number> ):void
{
	var i:int;			
	for ( i=0 ; i, x0:Vector. ):void
{
	var i:int, j:int, k:int;
	var a:Number=dt*diff*Ny*Nx;			
	var idx:int;
	for ( k=0 ; k<10 ; k++ ) {
		for ( j=1 ; j<=Ny ; j++ ) {	
			idx=IX(1,j);
			for ( i=1 ; i<=Nx ; i++ ) {
									
				x[idx] = (x0[idx] + a*(x[idx-1]+x[idx+1]+x[idx-Nx2]+x[idx+Nx2]))/(1+4*a);		
				idx++;
			};
		};
				
		set_bnd ( b, x );
	}
}
23.05.2011 18:15
Artikelaktionen
abgelegt unter: ,