[B3D] Feuerengin by Puccini
Übersicht

![]() |
PucciniBetreff: [B3D] Feuerengin by Puccini |
![]() Antworten mit Zitat ![]() |
---|---|---|
Moin!
Ich hab mir hier im Forum ein paar anregugnen für eine Feuerengin geholt und hab mal versuch selbst eine zu entwerfen.. naja. Das ergebnis sieht für den ersten versuch net schlecht aus.... Das tolle, die Engine kommt ganz ohne zusätzliche Dateien aus ^^ FÜr verbesserungs- und änderungsmitteilungen bin ich immer zu haben! Code: [AUSKLAPPEN] Graphics3D 800,600,32,2
Const partikelanz_max=1500 ;maximale Partikelanzahl im Frame Const rauch_an=1 ;1=an 0=aus Const feuerdichte=20 ;he höher um so mehr Feuerpartikel Const rauchdichte=5 ;je höher um so mehr Rauchpartikel SetBuffer BackBuffer() SeedRnd MilliSecs() Global camera=CreateCamera() PositionEntity camera,00,50,-250 Global firepartikel=CreateSprite() cube=CreateCube() PositionEntity cube,20,0,0 ScaleEntity cube,5,5,5 Global partikelanz=0 Type fire Field partikel ;Das Kopierte Entity Field grob ;Die Grobe Richtung des Partikels Field r,g ;Rot und Gelb Anteil Field alpha#,alphablend# ;Alpha und die Alphaänderung Field speed# ;Aufstiegsgesschwindigkeit End Type Type smoke Field partikel Field grob Field r,g,b Field alpha#,alphablend# Field speed# End Type timer=CreateTimer(60) While Not KeyHit(1) createfire() updatefire() updatesmoke() PointEntity camera,firepartikel ;soll nur etwas um das feuer fahren MoveEntity camera,1,0,0 WaitTimer(timer) UpdateWorld RenderWorld Text 10,10,partikelanz Flip 0 Wend Function createfire() If partikelanz<partikelanz_max For newfire=1 To feuerdichte f.fire=New fire f\partikel=CopyEntity(firepartikel) f\grob=Rnd(-1,1) f\r=255 f\g=255 f\alpha#=Rnd(0.2,0.4) f\alphablend#=Rnd(0.01,0.05) f\speed#=Rnd(0.1,1.6) partikelanz=partikelanz+1 EntityFX f\partikel,17 Next End If End Function Function createsmoke(entity) If partikelanz<partikelanz_max For newsmoke=1 To rauchdichte s.smoke=New smoke s\partikel=CopyEntity(entity) s\grob=Rnd(-1,1) graylevel=Rnd(30,90) s\r=graylevel s\g=graylevel s\b=graylevel s\alpha#=Rnd(0.2,0.4) s\alphablend#=Rnd(0.01,0.05) s\speed#=Rnd(0.1,1) partikelanz=partikelanz+1 EntityFX s\partikel,17 Next End If End Function Function updatesmoke() For s.smoke=Each smoke ausweichen=Rnd(40) EntityAlpha s\partikel,s\alpha# s\alpha#=s\alpha+s\alphablend# If s\alpha#>0.8 Then s\alphablend#=Rnd(-0.05,-0.03) MoveEntity s\partikel,Rnd(-1.5,1.5)+0.2*s\grob,s\speed#,Rnd(-1.5,1.5)+0.2*s\grob EntityColor s\partikel,s\r,s\g,s\b If s\alpha#<=0 Then partikelanz=partikelanz-1 FreeEntity s\partikel Delete s End If Next End Function Function updatefire() For f.fire=Each fire ausweichen=Rnd(40) EntityAlpha f\partikel,f\alpha# f\alpha#=f\alpha#+f\alphablend# If f\alpha#>0.8 Then f\alphablend#=Rnd(-0.15,-0.1) MoveEntity f\partikel,Rnd(-1.5,1.5)+0.2*f\grob,f\speed#,Rnd(-1.5,1.5)+0.2*f\grob EntityColor f\partikel,f\r,f\g,0 If f\r > 50 Then f\r = f\r - 5 f\g = f\g - Rnd(10,20) If f\alpha#<=0 Or f\r<20 Then partikelanz=partikelanz-1 If f\speed#>1.5 And partikelanz<partikelanz_max-200 And rauch_an=1Then createsmoke(f\partikel) End If FreeEntity f\partikel Delete f End If Next End Function Bitte sagt ob euch das gefällt oder nich! Mit den 3 Konstanten am anfang könnt ihr etwas spielen. Bei rauchdichte=20 siehts aus als ob man einen autoreifen verbrennt ^^ MfG Puccini |
||
-=Achtung=-
Suche Hobby-Modelliere der hin und wieder bock hat ein kleines Objekt zu erstellen. Bei Interesse PM www.ragesoft.de Passwortmanager: http://ragesoft.de/index.php?o...;Itemid=39 |
![]() |
aMulSieger des Minimalist Compo 01/13 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn es SingleSurface wäre wäre es gut.
So ist es nur so naja... annehmbar. Im Prinzip nichts besonders... Und unbedingt nach Feuer aussehen tut es auch nichts. Allerdings ist es wirklich nicht leicht, realistisches Feuer hinzukriegen. |
||
Panic Pong - ultimate action mashup of Pong and Breakout <= aktives Spiele-Projekt, Downloads mit vielen bunten Farben!
advASCIIdraw - the advanced ASCII art program <= aktives nicht-Spiele-Projekt, must-have für ASCII/roguelike/dungeon-crawler fans! Alter BB-Kram: ThroughTheAsteroidBelt - mit Quelltext! | RGB-Palette in 32²-Textur / Farbige Beleuchtung mit Dot3 | Stereoskopie in Blitz3D | Teleport-Animation Screensaver |
![]() |
Foppele |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich finds gar nicht schlecht, die Bewegung der Partikel gefällt mir gut. Man könnte halt noch ne alphamap für runde Partikel mit verwaschen Rändern nehmen. Und in der Mitte des Feuers ein flackerndes Licht platzieren.
Sehr geil ist auch der kleine Würfel der da ums Feuer schleicht. |
||
![]() |
DAK |
![]() Antworten mit Zitat ![]() |
---|---|---|
jo, schaut nicht schlecht aus... ich find auch, das runde Partikel noch bissal besser ausschauen würden... | ||
Gewinner der 6. und der 68. BlitzCodeCompo |
![]() |
Puccini |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das mit dem rund hab ich mir auch shcon überlegt ^^
der würfel war nur für mich zum testen -.- habsch vergessen rauszunehmen. die kamera dreht sich um das feuer, der würfel is starr. und damit man sieht das sich was dreht hab ich den halt hingemacht ^^ ich hab gelesen das wenn ich jetzt ne textur auf jeden partikel machen würde, mit mask, das würde extrem rechenintensiv für die arme graka... daher wollte ich das erstmal weglassen. ist es mit vertex alpha besser??? @aMul: wie willst du das in singlesurface machen?? is sicher schneller ![]() Ich weis auch das es nich wie ein richtiges feuer aussieht! ich würd gern wissen wie das bei Stranded gelöst ist ![]() ![]() |
||
-=Achtung=-
Suche Hobby-Modelliere der hin und wieder bock hat ein kleines Objekt zu erstellen. Bei Interesse PM www.ragesoft.de Passwortmanager: http://ragesoft.de/index.php?o...;Itemid=39 |
![]() |
The_Nici |
![]() Antworten mit Zitat ![]() |
---|---|---|
Singlesurface->Suche!
Ich habe gestern nur so aus Scheiss aus dem Partikeleffekt nen tollen Bluteffekt gebastelt. Ich würde übrigens mit dem Mesh die Kamera pointen. Ansonsten sieht man die 2-Dimensionalität. |
||
![]() |
Puccini |
![]() Antworten mit Zitat ![]() |
---|---|---|
das sind sprits, die sind immer zur kamera ausgerichtet!
ich weis was singlesurface ist, wollte nur wissen wie er sicht das dann genau vorstellt! |
||
-=Achtung=-
Suche Hobby-Modelliere der hin und wieder bock hat ein kleines Objekt zu erstellen. Bei Interesse PM www.ragesoft.de Passwortmanager: http://ragesoft.de/index.php?o...;Itemid=39 |
![]() |
Silver_Knee |
![]() Antworten mit Zitat ![]() |
---|---|---|
nimm kleine spheres anstatt sprites.. die kann man singlesurfacen
PS das ist ein cooles wort xD |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group