Animiertes Mesh bewegen

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

 

Buzzom

Betreff: Animiertes Mesh bewegen

BeitragFr, Jun 11, 2004 15:29
Antworten mit Zitat
Benutzer-Profile anzeigen
Habe folgendes Problem, und hoffe jemand weiss Rat:

Ich will ein animiertes Mesh bewegen. Leider kommt bei meinem Code immer "Illegal Memory Adress". Nehme ich ein unanimiertes, also normales mesh bewegt es sich wie gewollt, nur halt ohne die Laufanimation.

Meines Erachtens liegt der Fehler irgendwo bei dem Befehl Animate player, 2. Nur weiss ich leider nicht genau wie ich das fixen könnte. Oder ich bin ganz und gar auf dem Holzweg Smile

Code: [AUSKLAPPEN]

;-----Globale Variablen definieren-------------------------------------
Global player, camera, terr

;-----Aufloesung definieren--------------------------------------------
Graphics3D 1024, 768, 32, 2
SetBuffer BackBuffer()

;-----Konstanten definieren--------------------------------------------
Const BODY=1,SCENE=2

;-----Kollisionen checken----------------------------------------------
Collisions BODY,SCENE,2,3

;-----Kamera/Blick definieren und positionieren------------------------
camera=CreateCamera()
PositionEntity camera,0,50,-50
CameraClsColor camera,0,100,255

;-----Terrein erstellen und Texturen setzen----------------------------

;Untergrund
   
    terr=LoadTerrain( "./textures/trondheim.png" )
    ScaleEntity terr,1000/TerrainSize(terr),70,1000/TerrainSize(terr)
    TerrainDetail terr,2000,True
    TerrainShading terr,True
    PositionEntity terr,-500,0,-500
    tex=LoadTexture( "./textures/wiese.jpg" )
    ScaleTexture tex,50,50
    EntityTexture terr,tex
    EntityType terr,SCENE

;Wolken

   wolken=LoadTexture( "./textures/cloud_2.bmp",3 )
   ScaleTexture wolken,1000,1000
   p=CreatePlane()
   EntityTexture p,wolken
   EntityFX p,1
   PositionEntity p,0,200,0
   p=CopyEntity( p )
   RotateEntity p,0,0,180

;Figur
   
    player=LoadAnimMesh( "./meshes/mak_robotic.x" )
    LoadAnimSeq player,"./meshes/mak_running.x"

    Animate player,  2
    PositionEntity player,0,1,50
    EntityType player,BODY
    TranslateEntity player,0,-1,0





TurnEntity player, 0,180,0
PointEntity camera, player
EntityParent camera, player


While Not KeyHit(1)

    Spielfigur_Bewegung()

   
UpdateWorld
RenderWorld
Flip
Wend
End

;-----Spielfigur Bewegung, Tastatur------------------------------------
Function Spielfigur_Bewegung()
 
    If KeyDown(200)
      If AnimSeq(player  )=0 Animate player,  1,.5,1,10
      MoveEntity player, 0, 0, -1.5
   Else
      If AnimSeq(player  )=1 Animate player,  2,1,0,10
   EndIf
   
   If KeyDown(205) TurnEntity player, 0, -10,0, 1
   If KeyDown(203) TurnEntity player, 0,  10,0, 1
   
   ;Setzt Spielfigur -1 Geschw nach unten wenn von Hügel herabsteigt
   If Not EntityCollided(player, terr) TranslateEntity player,0,-1,0

End Function



Danke Vielmals
Eric

Markus2

BeitragFr, Jun 11, 2004 15:56
Antworten mit Zitat
Benutzer-Profile anzeigen
Hattest du den DebugModus eingeschaltet in der BB IDE ?
 

Buzzom

BeitragFr, Jun 11, 2004 16:02
Antworten mit Zitat
Benutzer-Profile anzeigen
also bei debug enabled ist ein häkchen, allerdings seh ich ehrlich gesagt mit dem debugen da noch nicht recht durch
 

Buzzom

BeitragFr, Jun 11, 2004 19:19
Antworten mit Zitat
Benutzer-Profile anzeigen
So: hab folgendes selbst entdeckt:

ich arbeite ja mit Blitz3D v1.66. dort kommt auch oben genannte fehlermeldung. hab das ganze mit der demo von v1.83 getestet und da funktioniert es tadellos, wie gewollt.

liegt es nun wirklich an der blitz3d version?


es grüßt euch
eric

Markus2

BeitragSa, Jun 12, 2004 0:50
Antworten mit Zitat
Benutzer-Profile anzeigen
Ein Fehler den man nach drei Tagen nicht findet ist warscheinlich
ein Bug anderer Confused

Nur ne Idee :

player=LoadMesh( "./meshes/mak_robotic.x" )
LoadAnimSeq player,"./meshes/mak_robotic.x"
LoadAnimSeq player,"./meshes/mak_running.x"

./ macht mich auch stutzig , landet man damit nicht
im Root Verzeichnis ?
Finde ich irgendwie unüblich , macht aber nix .
Und bei Windows werden \ benutzt .
 

Buzzom

BeitragSa, Jun 12, 2004 7:51
Antworten mit Zitat
Benutzer-Profile anzeigen
probier ich nachher ma aus Smile naja gehen tut es ja mit ./ . ist halt noch ne angewohnheit vom lpc proggen unter linux Wink

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group