Kollision mit Bande
Übersicht

RoggiBetreff: Kollision mit Bande |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich arbeite zurzeit an einem Hallenfußballspiel! So eine Ballphysik habe ich, jetzt brauche ich eine Bande wo der Ball gegenspringen kann und zurückprallt. Ich hab es so gemacht das er kollision anzeigen soll wenn es kollidiert und er soll zurückprallen. Aber es funzt einfach net hier ist der Code:
Code: [AUSKLAPPEN] Graphics3D 640,480,32,2
SeedRnd MilliSecs() WireFrame 0 camera=CreateCamera() RotateEntity camera,0,-45,0 PositionEntity camera,0,1,0 light = CreateLight (1) RotateEntity light,90,0,0 PositionEntity light,0,10,10 terrain=CreateTerrain(128) tex=LoadTexture("tex.bmp") SetBuffer TextureBuffer(tex) EntityTexture terrain,tex x# = 5 y# = 5 z# = 15 sphere1= CreateSphere(32) RotateEntity sphere1,0,-45,0 PositionEntity sphere1,x#,y#,z# EntityType sphere1,1 EntityColor sphere1,255,0,0 cube=CreateCube() PositionEntity cube,30,1,70 EntityType cube,2 cube2=CreateCube() ScaleEntity cube2,30,50,1 PositionEntity cube2,50,50,50 EntityType cube2,3 xs# = -.0 ys# = 0 zs# = .1 slow_down_x#=.05 slow_down_y#=.1 slow_down_z#=.05 collision=0 SetBuffer BackBuffer() While Not KeyHit (1) ys# = ys# - .005 If y# < 1 Then y# = 1 ys# = -ys# * .8 - .02 EndIf y# = y# + ys# x# = x# + xs# z# = z# + zs# zs# = zs# * .99 xs# = xs# * .99 If zs# < .0001 Then zs# = 0 EndIf If xs# < .0001 Then xs# = 0 EndIf If MouseHit(1) Then ys# = .4 xs# = Rnd(.9,.2) zs# = Rnd(0.9,0.1) EndIf If KeyHit(31)Then ys#=.0 xs#=Rnd(.9,.2) zs#=Rnd(0.9,0.1) EndIf PositionEntity sphere1,x#,y#,z# UpdateWorld RenderWorld Collision=EntityCollided(sphere1,3) Text 0,14,EntityCollided(sphere1,3) If collision>0 Then xs=xs*(-1)-slow_down_x ys=ys*(-1)-slow_down_y zs=zs*(-1)-slow_down_z Text 0,0,"KOLLISION!":WaitKey() EndIf Flip Cls Wend End Bitte helft mir! |
||
#ReaperNewsposter |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Du hast vergessen die Kollisionen zu setzen:
Setz mal das: Collisions 1,2,2,2 Collisions 1,3,2,2 Vor Setbuffer Backbuffer() ein. Allerdings geht deine Ballphysik noch nicht richtig, der Ball bleibt kleben ![]() Du musst den Abprallwinkel berechnen lassen, damit das richtig geht ![]() Wie das nun genu geht, weiß ich nun selber nicht so genau ![]() Hier im Forum hatte mal jemand einen Code gepostet, welcher anhand der Vertices den Winkel des Triangles und den Abprallwinkel des Balles berechnete. Hab ihn selber nicht mehr gefunden, vielleicht findest du ihn ja ![]() ![]() |
||
AMD Athlon 64 3500+, ATI AX800 Pro/TD, 2048 MB DRR 400 von Infineon, ♥RIP♥ (2005 - Juli 2015 -> sic!)
Blitz3D, BlitzMax, MaxGUI, Monkey X; Win7 |
![]() |
5k41 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Der abprallwinkel wird doch berechnet! | ||
Projekte:
For a better World - Gesellschaftsspiel ( 100%) User posted image |
#ReaperNewsposter |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ok, aber irgendwie geht es nicht, zu mindestens nicht bei mir ![]() Vielleicht habe ich doch was falsch gemacht ![]() |
||
AMD Athlon 64 3500+, ATI AX800 Pro/TD, 2048 MB DRR 400 von Infineon, ♥RIP♥ (2005 - Juli 2015 -> sic!)
Blitz3D, BlitzMax, MaxGUI, Monkey X; Win7 |
![]() |
5k41 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich hab auch keine Ahnung...ich hatte das ja mit 0ahnung im vorraus besprochen und dann haben wir entschieden es ins forum zu stellen (nach einer halbe stunde die suche benutzen) weil wir beide ratlos waren... | ||
Projekte:
For a better World - Gesellschaftsspiel ( 100%) User posted image |
#ReaperNewsposter |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ach, doch, es geht, wenn ihr folgende Zeile auskommentiert:
Text 0,0,"KOLLISION!":WaitKey() sonst hatte der immer halt gewartet, und es sah aus, als würde er Hängen bleiben^^ Edit: geht nun zwar schon, aber nicht richtig, der Ball fällt dann einfach gerade nach unten, das müsst ihr regeln ![]() |
||
AMD Athlon 64 3500+, ATI AX800 Pro/TD, 2048 MB DRR 400 von Infineon, ♥RIP♥ (2005 - Juli 2015 -> sic!)
Blitz3D, BlitzMax, MaxGUI, Monkey X; Win7 |
![]() |
5k41 |
![]() Antworten mit Zitat ![]() |
---|---|---|
das war absicht wils bei mir NICH funktionierte und ich wollte nur sehen das er hängen bleibt, was bei mir nie der fall war! | ||
Projekte:
For a better World - Gesellschaftsspiel ( 100%) User posted image |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group