ExtractAnimSeq and types
Blitz3D Forums/Blitz3D Beginners Area/ExtractAnimSeq and types
| ||
Hi, i have problem with animation of types. All is ok if it is static, but when i try animate... I was try warious calls and... Memory Acces Violation :/ Just please remove comments sorry for my english here is code: --------------------- --------------------- Graphics3D 1024,768 SetBuffer BackBuffer() mode=1:anim=1 AmbientLight 190, 190, 190 Global cam1 = CreateCamera() PositionEntity cam1,0,0,100 RotateEntity cam1,0,220,0 CameraRange cam1,1,100000 Type woj ;warior Field rodzaj ;kind of warior Field numer ;number Field pozX, pozY, pozZ ;position End Type Dim armia.woj(21) Global liczba_wojow=22 wojowie() While Not KeyDown(1) ; loop - Esc = exit ruch() ; animuj() UpdateWorld() Flip RenderWorld Wend End Function wojowie () For arm=1 To liczba_wojow armia.woj(arm) = New woj armia(arm)\numer=arm armia(arm)\pozX = arm*30 armia(arm)\pozZ = arm armia(arm)\rodzaj=LoadAnimMesh( "mod\wyspa\postaci\osa3.b3d" ) ; path of animmesh ;armia(arm)\rodzaj=ExtractAnimSeq (woj,16,26) PositionEntity armia(arm)\rodzaj,armia(arm)\pozX,0,0 Next End Function Function ruch() If KeyDown( 17 )=True Then MoveEntity cam1,0,0,10 If KeyDown( 31 )=True Then MoveEntity cam1,0,0,-10 If KeyDown( 30 )=True Then TurnEntity cam1,0,2,0 If KeyDown( 32 )=True Then TurnEntity cam1,0,-2,0 End Function Function animuj() For arm=1 To liczba_wojow armia(arm)\numer=arm Animate armia(arm)\rodzaj,mode,.1,anim Next End Function ------------------------------ ------------------------------ What I must change? |
| ||
OK, my friend KOMODOR find problems. Here is good code: Graphics3D 1024,768,32,2 SetBuffer BackBuffer() Global mode=1,anim=1 AmbientLight 190, 190, 190 light2=CreateLight() LightColor light2,120,120,220 RotateEntity light2,0,40,0 PositionEntity light2, 70,20,70 light3=CreateLight() LightColor light3,120,120,130 RotateEntity light3,0,0,0 PositionEntity light3, -400,20,0 Global cam1 = CreateCamera() PositionEntity cam1,0,0,100 RotateEntity cam1,0,220,0 CameraRange cam1,1,100000 Type woj ;wojownik Field rodzaj ;rodzaj ladowanego woja Field numer ;numer jednostki Field pozX, pozY, pozZ ;ozycja na której le?y End Type Dim armia.woj(21) Global liczba_wojow=20 wojowie() While Not KeyDown(1) ;petla glowna - Esc = Exit ruch() If KeyDown(200) Then animuj() UpdateWorld() Flip RenderWorld Wend End Function wojowie () For arm=1 To liczba_wojow armia.woj(arm) = New woj armia(arm)\numer=arm armia(arm)\pozX = arm*30 armia(arm)\pozZ = arm armia(arm)\rodzaj=LoadAnimMesh( "mod\wyspa\postaci\osa3.b3d") ExtractAnimSeq(armia(arm)\rodzaj,16,26) PositionEntity armia(arm)\rodzaj,armia(arm)\pozX,0,0 Next End Function Function ruch() If KeyDown( 17 )=True Then MoveEntity cam1,0,0,10 If KeyDown( 31 )=True Then MoveEntity cam1,0,0,-10 If KeyDown( 30 )=True Then TurnEntity cam1,0,2,0 If KeyDown( 32 )=True Then TurnEntity cam1,0,-2,0 End Function Function animuj() For arm=1 To liczba_wojow armia(arm)\numer=arm Animate armia(arm)\rodzaj,mode,.1,anim Next End Function --------------- www.blitzbasic.pl |