animation wird nicht in der hauptschleife abgespielt

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

 

Dark Coder

Betreff: animation wird nicht in der hauptschleife abgespielt

BeitragSo, Mai 07, 2006 21:11
Antworten mit Zitat
Benutzer-Profile anzeigen
Hab da mal eine frage wollte mal so nen animations test von einer b3d datei machen dies funktionniert aber nur ausserhalb der schleife geht das nicht auch innerhalb einer schleife?


Graphics3D 640,480,16,2

SetBuffer BackBuffer()




camera = CreateCamera()

PositionEntity camera,0,4,-10


player = LoadAnimMesh("dwarf1.b3d")

ScaleEntity player,0.1,0.1,0.1


anim = ExtractAnimSeq( player, 2, 14 )


;Animate player,1,0.1,anim,1 <= klappt

Repeat

;Animate player,1,0.1,anim,1 <== geht nicht




UpdateWorld

RenderWorld



Flip

Until KeyHit(1)

darth

BeitragSo, Mai 07, 2006 21:23
Antworten mit Zitat
Benutzer-Profile anzeigen
das klappt nicht weil die animation ständig wieder neu gestartet wird... du wirst also immer nur den ersten frame davon zu sehen kriegen.
du müsstest es so einrichten, dass die animation nur startet, wenn sie nicht schon läuft...
Diese Signatur ist leer.
 

Dark Coder

BeitragSo, Mai 07, 2006 21:31
Antworten mit Zitat
Benutzer-Profile anzeigen
jetzt hab ich das es geht nur kp warum!



Graphics3D 640,480,16,2

SetBuffer BackBuffer()




camera = CreateCamera()

PositionEntity camera,0,4,-10


player = LoadAnimMesh("dwarf1.b3d")

ScaleEntity player,0.1,0.1,0.1


anim = ExtractAnimSeq( player, 2, 14 )

Repeat


If laufen = True Then

Animate player,1,0.1,anim

EndIf

If KeyDown(30) Then

laufen = False <==== warum klappt das wenn da false ist und bei true nicht=?


Else

laufen = True <= normaler weise müsste doch da nen false stehen!!??
<<
EndIf

UpdateWorld

RenderWorld

Text 0,0,a

Flip

Until KeyHit(1)
 

trooper

BeitragMo, Mai 08, 2006 11:52
Antworten mit Zitat
Benutzer-Profile anzeigen
soviel zeit zum nachdenken solltest du als "programmierer" schon haben...


versuchs mal so:

Code: [AUSKLAPPEN]

/* .... */

Repeat

// Wenn die das Model noch nicht animiert wird, mit der Animation starten
If laufeschon = false AND solllaufen = true Then
Animate player,1,0.1,anim
laufeschon = true
EndIf

// Wenn Taste gedrückt wird, das Animationsflag resetten
If KeyDown(30) Then
solllaufen = true
laufeschon = false
Else
solllaufen = false
EndIf

/* .... */
Flip


Natürlich kannst du zusätzlich auch noch überprüfen, ob die Animationssequenz schon beendet wurde, das sollte irgendwie mit AnimLength oder AnimTime funktionieren, hab mich nie wirklich mit BB3D beschäftigt
-- imtane.de.vu --
a cherring ping

darth

Betreff: ...

BeitragFr, Mai 12, 2006 19:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Sad hast du meinen hübschen beitrag denn gar nicht gelesen? ...

ok, dein code:

blubb=true
schleife ----
wenn blubb=true denn starte animation
blubb=false
--- schleife

was tut das? er setzt blubb auf true, dann geht er in die schleife, startet die animation (da blubb ja true ist) und geht weiter. dort setzt er blubb auf false - was bewirkt das? die animation wird beim nächsten mal nicht mehr gestartet.

anderes szenario:

blubb=true
schleife ---
wenn blubb=true denn starte animation
blubb=true
--- schleife

was tut dies nun? es startet, kommt in die schleife, blubb ist true, die animation wird gestartet. es geht weiter, blubb bleibt true! es kommt wieder an den schleifen anfang, die animation wird erneut gestartet.
das ganze passiert mit einer rasend schnellen geschwindigkeit (und auch wenn die geschwindigkeit langsam wäre, würde sich nichts ändern), also siehst du stets nur den ersten frame, weil der bei jeder schleife NEU GEZEICHNET wird!!!

ALSO:
schleife ---
if animation(kackding)=false then
starte animation mit dem modus: EINMAL ABSPIELEN!
endif
--- schleife
Diese Signatur ist leer.
 

trooper

BeitragSa, Mai 13, 2006 20:18
Antworten mit Zitat
Benutzer-Profile anzeigen
ja, toll, dass das ganze jetzt Du mir erklären willst!!!!
-- imtane.de.vu --
a cherring ping

darth

Betreff: ..

BeitragSo, Mai 14, 2006 0:24
Antworten mit Zitat
Benutzer-Profile anzeigen
dir erklär ich doch gar nichts? ... Shocked
hast du überhaupt was gefragt?
Diese Signatur ist leer.

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group