Partikel

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

Goldini

Betreff: Partikel

BeitragFr, Dez 01, 2006 21:27
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi Leute wie kann man Feuer oder Staub simmulieren? Mr. Green

robotx

BeitragFr, Dez 01, 2006 21:35
Antworten mit Zitat
Benutzer-Profile anzeigen
Mit einer (Single Surface) Patikel Engine z.B.

mfg robotx
www.botbomb.robotzgames.de
www.robotzgames.de

Goldini

BeitragFr, Dez 01, 2006 22:24
Antworten mit Zitat
Benutzer-Profile anzeigen
mein größtes Problem ist das der Sprite sich nicht immer dreht.
Mit diesen Zeilen danke ich einer Person, die mich für so wichtig hält, dass sie sogar einen Club nach mir benannt hat!
Danke! Very Happy

pixelshooter

BeitragFr, Dez 01, 2006 22:49
Antworten mit Zitat
Benutzer-Profile anzeigen
tja, keine ahnung was du gecodet hast -> code uppen^^
>> Musikerstellung, Grafik und Design: http://www.pixelshooter.net.tc

Goldini

BeitragFr, Dez 01, 2006 22:58
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]

AppTitle "smoke"

Graphics3D 1280,1024,32,2

time=MilliSecs()


Type Feuer
Field sprite
Field size#
End Type

;cam
Global cam=CreateCamera()PositionEntity cam,0,-4,-10
TurnEntity cam,-25,0,0
CameraRange cam,1,50000
CameraFogRange cam,1,50000


Global s=LoadSprite("fire.png",2+48)
   ScaleSprite s,.5,.5

Global s2=LoadMesh("schlot2.x")

Global l=CreateLight(3)PositionEntity l,476,280,320
   LightColor l,255,255,255
   TurnEntity l,25,90,0

;landschaft


p=CreatePivot()


;flames
Global flames=0
Global scal=0
Global posi=True

HidePointer

;-------------------WHILE-----------------------
While Not KeyHit(1)
scal=scal+1
If flames = 7 Then flames = 0
flames = flames + 1

If flames = 1 Then
Feuer()
EndIf

EntityParent cam,p
TurnEntity p,0,.5,0

UpdateFeuer()
RenderWorld

UpdateWorld
Flip
Wend
End

;------------------FUNCTIONS--------------------
Function Feuer()
F.feuer=New feuer

F\sprite=CopyEntity(s)
   ScaleSprite F\sprite,Rnd(1,2),Rnd(1,2)
   EntityRadius F\sprite,5
   PositionEntity f\sprite,EntityX(s2),EntityY(s2),EntityZ(s2)
   MoveEntity f\sprite,0,0,0
f\size=1
End Function

Function UpdateFeuer()
For F.feuer = Each feuer
   MoveEntity F\sprite,.05,.05,.02
   f\size=f\size-.005
   EntityAlpha f\sprite,2-(f\size/2)
   ScaleSprite F\sprite,f\size,f\size
   If EntityDistance(F\sprite,s2) >15 Then HideEntity F\sprite
Next
End Function
Mit diesen Zeilen danke ich einer Person, die mich für so wichtig hält, dass sie sogar einen Club nach mir benannt hat!
Danke! Very Happy

Lunatix

BeitragFr, Dez 01, 2006 23:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Rolling Eyes

G2, nutze mal die Foren suche!
Wir hatten schon 100erte Threads über genau das thema und alle hatten ungefähr den selben code....

Und nochmal für alle : Sprites sind _nicht_ für partikel systeme gedacht. Überhaupt nicht nix nadda njente! Such mal nach Singel Surface
[size=9]Pro|gram|mier|er: Ein Organismus, der Koffein in Software umwandelt.
Geben Sie eine beliebige 11-stellige Primzahl ein, um fortzusetzen...

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group