blitz3d Kollision problem
Übersicht

![]() |
monkfurtsBetreff: blitz3d Kollision problem |
![]() Antworten mit Zitat ![]() |
---|---|---|
Mein plroblem ist das ich einen würfel(koerper) gemacht habe und der soll mit einer mauer Kollidieren
das tut er auch nur wenn ich direkt an der mauer stehe und dan w(taste zum nach vorne gehen) drücke dann ist der würfel halb in der mauer und wenn ich los lasse ist er wieder vor der Mauer. Hier der code in dem der Fehler liegen dürfte: Code: [AUSKLAPPEN] ... ;der teil für Kollisionen EntityType koerper,2 ; der würfel EntityType ter,1 ;die spielwelt mit der mauer im 3ds format Collisions 2,1,2,2 ... ;der teil für die Steuerung in der haupt schleife If KeyDown(17) Then speed# = 1 If KeyDown(42) And KeyDown(17) Then speed# =2 If Not KeyDown(17) Then speed# = 0 If KeyDown(31) Then MoveEntity koerper,0,0,-1 MoveEntity koerper,0,0,speed# If KeyDown(30) Then MoveEntity koerper,-0.4,0,0 If KeyDown(32) Then MoveEntity koerper,0.4,0,0 TurnEntity cam,MouseYSpeed()*0.2555,0,0 TurnEntity koerper,0, -MouseXSpeed()*0.2555,0,0 If KeyDown(17) Then TurnEntity cam,0,0,wackeln# ... waittimer(timer) RenderWorld UpdateWorld flip und hier der komplette allerdings glaube ich das der Fehler oben liegt: Code: [AUSKLAPPEN] ;----------includes--------------
;Include "includes\draw3d2.bb" ;Include "includes\drawsgg.bb" ;Include "includes\drawxtd.bb" ;Include "includes\start.bb" ;Include "includes\wb3dstyles.bb" ;Include "includes\3d.bb" ;----------graphics-------------- Graphics3D 1920,1080,32,1 SetBuffer BackBuffer() timer = CreateTimer(60) ;----------------camera-------------------- cam = CreateCamera() light = CreateLight() ;-------------interface---------------------- fadenkreuz = LoadImage("data\tex\zielr.png") ;----------------terrain-------------------- ter = LoadMesh("data\cin\ter.3ds") ;----------------mesh----------------------- koerper = CreateCube() MoveEntity koerper,0,-22,0 waffe1 = LoadMesh("data\cin\guns.3ds") waffe2 = LoadMesh("data\cin\gunh.3ds") waffe3 = LoadMesh("data\cin\gun2.3ds") TurnEntity waffe2,0,180,0 TurnEntity waffe1,0,180,0 TurnEntity waffe3,0,180,0 ;-----------------enttiyparent---------------- EntityParent cam,koerper EntityParent waffe2,cam EntityParent waffe1,cam EntityParent waffe3,cam EntityParent waffe3,cam ;-----------------colides--------------------- EntityType koerper,2 EntityType ter,1 Collisions 2,1,2,2 ;------------------sonstiges------------------ MoveEntity waffe3,8,-5,-17 MoveEntity waffe2,-6,-5,-17 MoveEntity waffe1,-6,-5,-17 wackeln# = -0.2 wackels# = 0 ;------------------------------------------------------------------------- ;-------------------------hauptschleife----------------------------------- ;------------------------------------------------------------------------- While Not KeyDown(1) ;---------------------wackeln------------------ If KeyDown(17) Then If wackels# = 0 Then wackeln# = wackeln# + 0.02 If wackels# = 1 Then wackeln# = wackeln# - 0.02 If wackeln# > 0.2 Then wackels# = 1 If wackeln# < -0.2 Then wackels# = 0 EndIf If KeyDown(31) Then If Not KeyDown(17) Then If wackels# = 0 Then wackeln# = wackeln# + 0.02 If wackels# = 1 Then wackeln# = wackeln# - 0.02 If wackeln# > 0.2 Then wackels# = 1 If wackeln# < -0.2 Then wackels# = 0 EndIf EndIf ;---------------koerper-steuerung------------- If KeyDown(17) Then speed# = 1 If KeyDown(42) And KeyDown(17) Then speed# =2 If Not KeyDown(17) Then speed# = 0 If KeyDown(31) Then MoveEntity koerper,0,0,-1 MoveEntity koerper,0,0,speed# If KeyDown(30) Then MoveEntity koerper,-0.4,0,0 If KeyDown(32) Then MoveEntity koerper,0.4,0,0 TurnEntity cam,MouseYSpeed()*0.2555,0,0 TurnEntity koerper,0, -MouseXSpeed()*0.2555,0,0 If KeyDown(17) Then TurnEntity cam,0,0,wackeln# ;----------------minigun-drehung--------------- If MouseDown(2) Then mgdrehung# = mgdrehung# + 0.1 Else mgdrehung# = mgdrehung# - 0.3 EndIf If mgdrehung# > 7 Then mgdrehung# = 7 If mgdrehung# < 0 Then mgdrehung# = 0 TurnEntity waffe1,0,0,mgdrehung# ;--------------------physics-------------------- TranslateEntity koerper,0,-1,0 MoveMouse GraphicsWidth()/2,GraphicsHeight()/2 ;-------------------rendern--------------------- WaitTimer(timer) RenderWorld UpdateWorld ;-------------------2d-bereich------------------ DrawImage fadenkreuz,GraphicsWidth()/2-128,GraphicsHeight()/2-128 Flip Wend End Ich hab den Fehler einfach nicht gefunden. Ich habe auch schon in den Einstellungen der Kollision geändert aber hat nix gebracht. |
||
win 7 ultimate 64-bit | core i7 2600k 4x3,4 ghz | nvidia gtx 560-ti oc | 6gb ram |
![]() |
Tankbuster |
![]() Antworten mit Zitat ![]() |
---|---|---|
mache erst UpdateWorld![]() ![]() ![]() ![]() ![]() Es liegt daran. Du veränderst die Position, Renderst dann, und korrigierst dann die Position. Du musst ja zuerst die Position ändern, dann korrigieren und dann rendern ![]() |
||
Twitter
Download Jewel Snake! Windows|Android |
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
EntityBox![]() |
||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
![]() |
monkfurts |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ok danke funktioniert | ||
win 7 ultimate 64-bit | core i7 2600k 4x3,4 ghz | nvidia gtx 560-ti oc | 6gb ram |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group