Collision - plz. help

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

Rubber

Betreff: Collision - plz. help

BeitragSa, Dez 30, 2006 20:22
Antworten mit Zitat
Benutzer-Profile anzeigen
wenn ich jetz 2 objekte habe...

zb
cube = createcube()
und
sphere = createsphere()

...
positionier und so
...

nun lass ich due kugel auf die kiste zufliegen....
wie mach ich jetzt ne kollisions abfrage?

so das dann später zb die kiste kaputt geht....

mfg
Rubber
Wenn Gott mich schon liebt, dann dich erstrecht...
  • Zuletzt bearbeitet von Rubber am So, Dez 31, 2006 12:33, insgesamt einmal bearbeitet

Willi die Rübe

BeitragSa, Dez 30, 2006 20:26
Antworten mit Zitat
Benutzer-Profile anzeigen
http://www.blitzbase.de/befehle3d/collisions.htm

Den anderen Schnickschnack wie z.B. das Kaputtgehen der Kiste, musst du dir selber programmieren/animieren.
Ich habe keine Lösung, aber ich bewundere das Problem.
Tehadon
Q6600, MSI Neo2-FR, 4GB Ram, nVidia 7800 GTX

At the Farewell Party visit: MySpace | Homepage

BladeRunner

Moderator

BeitragSa, Dez 30, 2006 22:59
Antworten mit Zitat
Benutzer-Profile anzeigen
~VERSCHOBEN~
Dieser Thread passte nicht in das Forum, in dem er ursprünglich gepostet wurde.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

Rubber

BeitragSa, Dez 30, 2006 23:00
Antworten mit Zitat
Benutzer-Profile anzeigen
aber da hab ich doch nur 3 modi...
und ich brauch doch eigentlich nen 4. für "explosion" weil da ist doch auch keine variable drin enthalten, ob collision oder nciht...

mir fehlt doch ein:

if collision then
......

gibts da nen andern befehl für?
so wie zb bei 2d imagesoverlap

ps
danke fürs aufräumen
Wenn Gott mich schon liebt, dann dich erstrecht...

BladeRunner

Moderator

BeitragSa, Dez 30, 2006 23:03
Antworten mit Zitat
Benutzer-Profile anzeigen
ql:entitycollided
zudem ist hier allgemein die OH zu empfehlen.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

Rubber

BeitragSa, Dez 30, 2006 23:05
Antworten mit Zitat
Benutzer-Profile anzeigen
danke...
Wenn Gott mich schon liebt, dann dich erstrecht...

the FR3AK

BeitragSa, Dez 30, 2006 23:07
Antworten mit Zitat
Benutzer-Profile anzeigen
if entitycollide(cube,sphere) then
print "BUMM"
end if
~Edit~

Blade war schneller Laughing
 

Rubber

BeitragSa, Dez 30, 2006 23:45
Antworten mit Zitat
Benutzer-Profile anzeigen
aber ich hab jetz 3 würfel (array)...
und wenn ich sage:

entitycollided(sphere,cube(1)) ist das = 0 auch wenn die kollidieren...

wenn ich aber sage

entitytype cube(1),2

entitycollided(sphere,2)

gehts...
aber was mach ich mit den andern wuerfeln?
Wenn Gott mich schon liebt, dann dich erstrecht...
 

Rubber

BeitragSo, Dez 31, 2006 11:28
Antworten mit Zitat
Benutzer-Profile anzeigen
also ich hab selber mal nen bissel probiert, aber jetz hab ich nur ne methode, die aber aufwändig ist, da ich das so mache:

bei jeder kollision kommt ne andere variable raus und dann muss ich für jedes objet prüfen, ob das die variable ist...
bei 2,3 geht das ncoh, aber ich wollte hinterher ne größere anzahl davon haben, was dann also nur nerviges schrieben ist...

kann man das auch vereinfachen?
Wenn Gott mich schon liebt, dann dich erstrecht...
 

Rubber

BeitragSo, Dez 31, 2006 16:38
Antworten mit Zitat
Benutzer-Profile anzeigen
ist das zu simpel oder zu schwer?
Wenn Gott mich schon liebt, dann dich erstrecht...

Kernle 32DLL

BeitragSo, Dez 31, 2006 16:55
Antworten mit Zitat
Benutzer-Profile anzeigen
ich denke mal es hat keiner zeit dafür...ich geb mich dran, und editier
das gleich rein.....

Edit: Da isser....

Code: [AUSKLAPPEN]
Graphics3D 800,600,32,2
SetBuffer BackBuffer()

camera = CreateCamera()
PositionEntity camera,0,10,0
RotateEntity camera,90,0,0

Cube1 = CreateCube() ;Cube erstellen
EntityType Cube1,1 ;Einen Kollisionstyp einstellen (siehe OH dazu)
NameEntity Cube1,"Cube1" ;Entity einen Namen geben (Optional)
PositionEntity Cube1,-5,0,5 ;Entity platzieren

Cube2 = CreateCube()
EntityType Cube2,1
NameEntity Cube2,"Cube2"
PositionEntity Cube2,5,0,5

Cube3 = CreateCube()
EntityType Cube3,1
NameEntity Cube3,"Cube3"
PositionEntity Cube3,-5,0,-5

Cube4 = CreateCube()
EntityType Cube4,1
NameEntity Cube4,"Cube4"
PositionEntity Cube4,5,0,-5

Cube5 = CreateCube()
EntityType Cube5,2 ;Ein anderer Kollisionstyp !
NameEntity Cube5,"Cube5"

Repeat
   ;Cube 5 bewegen
   If KeyDown(203) Then MoveEntity Cube5,-0.1,0,0
   If KeyDown(205) Then MoveEntity Cube5,0.1,0,0
   If KeyDown(208) Then MoveEntity Cube5,0,0,-0.1
   If KeyDown(200) Then MoveEntity Cube5,0,0,0.1
   
   ;Kollision zwischen Kollisionstyp 2 und 1 prüfen
   ;(Siehe Oben)
   Collisions 2,1,2,2
   
   UpdateWorld
   RenderWorld
   
   ;Schnickschnack zum darstellen mit welchem Cube (1-4) Cube 5 gerade kollidiert.
   col=CountCollisions(Cube5)
   Text 0,0,"Cube5 kollidiert mit:"
   For i=1 To col
   Text 0,i*20,"Entity = "+CollisionEntity(Cube5,i)
   Text 0,20+i*20,"EntityName = "+EntityName(CollisionEntity(Cube5,i))
   Text 0,40+i*20,"Surface = "+CollisionSurface(Cube5,i)
   Text 0,60+i*20,"Triangle = "+CollisionTriangle(Cube5,i)
   Next
   Flip
Forever
End

Edit2: Ojeojeoje, ich weis auch warum das entitycollide() bei euch nicht geht !
Ihr müsst beim 2. Parameter nicht das Entity angeben, sondern den Typ !
(Siehe EntityType() dazu !)

BladeRunner

Moderator

BeitragSo, Dez 31, 2006 17:40
Antworten mit Zitat
Benutzer-Profile anzeigen
Rubber ,bitte keine doppel- oder gar Triple-Postings, oder ich schliesse. Danke.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

Rubber

BeitragSo, Dez 31, 2006 17:53
Antworten mit Zitat
Benutzer-Profile anzeigen
???
hab den doch nur einmal, mit ner längeren frage kette.....

und danke für die hilfe....
Wenn Gott mich schon liebt, dann dich erstrecht...

BladeRunner

Moderator

BeitragSo, Dez 31, 2006 18:02
Antworten mit Zitat
Benutzer-Profile anzeigen
Rubber hat Folgendes geschrieben:
ist das zu simpel oder zu schwer?

Das ist der typische Fall eines Push-postes, und die sehen wir nicht gern.Wer dir antworten möchte wird das tun, auch ohne dass Du den Thread oben schwimmen lässt.
Wenn Du nix Weltbewegend neues hinzuzufügen hast, nutze den Edit-Button.

Nur wenn sich wirklich massiv neue Inhalte ergeben ist ein Doppelposting statthaft.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

Rubber

BeitragSo, Dez 31, 2006 18:53
Antworten mit Zitat
Benutzer-Profile anzeigen
ok...
werd ich mir merken....
Wenn Gott mich schon liebt, dann dich erstrecht...

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group