Kollisionsabfrage bei Animierten Objekten
Übersicht

George S.Betreff: Kollisionsabfrage bei Animierten Objekten |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo zusammen,
nachdem ich nun seit knapp einem Jahr mit Blitz2d arbeite bin ich jetzt auch Blitz3d umgestiegen, es konnten fast alle Fragen die bis jetzt aufgetaucht sind durch Tuts und Forumsuche geklärt werden. Allerdings habe ich keine Antwort zu folgender Frage gefunden: Die Standard-Kollisionsabfrage funktioniert wohl nicht bei zwei animierten Objekten (wie hier im Forum geschrieben wurde), in der Praxis, ich habe die Camera (Ich Perspektive) und eine animierte Tür, durch die ich auch bei geschlossenem Zustand durchlaufen kann. Welche Lösungen gibt es für das Problem? Ich habe schon etwas von LINEPICK gelesen, gibt es noch andere Wege, wenn nein, wie funktioniert das mit Linepick um Obejektkollision zwischen zwei animierten Objekten zu bewerkstelligen? Vielen Dank im Vorraus für die Unterstützung. Viele Grüße, George |
||
![]() |
Markus2 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn du ein 3D Objekt z.B. ne 3ds Datei mit LoadAnimMesh ladest
kannst du die Hirachie der Objekte die da drin stecken druch gehen , oder nimm FindChild , also beim laden bekommst du nur ein Entity zurück . Was du angucken must ist EntityType , EntityRadius evtl. EntityBox . Um alle Namen der Entitys heraus zu finden kannste ja mal ne Rekursive Funk. machen , siehe also noch EntityName . Um eine CollisionsBox zu setzen hatte ich letztens was ins Code Archiv getan was das Leben einfacher macht ![]() Hier mal nen Beispiel ![]() Code: [AUSKLAPPEN] Function EntityAlphaRec(e,a#) ;MR 11.07.2004 ;Entity und alle Child Objekte Alpha setzen :-) ;Recursive ! If e=0 Then Return If EntityClass(e)="Mesh" Then EntityAlpha e,a Local c,i For i=1 To CountChildren(e) c=GetChild(e,i) EntityAlphaRec c,a Next End Function |
||
George S. |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo Markus,
spitze das hilft absolut weiter! ![]() Viele Grüße, George |
||
2paul |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ok, ich weiss jetzt nicht ob ich das richtig verstanden hab,
wieso haste für die tür nen animiertes objekt genommen ???? turnentity und alles is feinstens, dann geht auch die kollision bei mir sind die türen ganz normal als umgebungs-kollision gekennzeichnet einzigstes problem dabei, beim öffnen der tür, du stehst direkt vor der tür, dann geht die tür natürlich durch dich durch, da ja nur camera -> umgebung abgefragt wird, nicht umgekehrt |
||
George S. |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo 2paul,
naja die Türanimation ist etwas komplizierter (Klapptür) als dass ich sie mit Turnentity darstellen könnte ![]() Letztendlich habe ich nun mit zwei Entitys (1x animiert/1x Statisch) und HideEntity für das statische TürEntity gearbeitet, das Ergebniss ist ganz zufriedenstellend. Somit habe ich dann auch ein wenig Praxis mit Animationen sammeln können. Viele Grüße, George |
||
![]() |
Markus2 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wieso springste nicht einfach den Key an wo die Klapptür zu ist ?
Hättest du doch ein Entity gespart ... |
||
George S. |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Du meinst wegen der Animation? Sprich AnimSeq / Animate? Das statische Entity ist nur zur Kollisionskontrolle gedacht, sprich unsichtbar, oder habe ich Dich falsch verstanden? ![]() ![]() |
||
![]() |
Markus2 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Achso ,
also wenn die öffnen Anim. abgelaufen ist nimmste die Collision weg von der statischen Tür das man durch laufen kann . Ist natürlich auch ne Lösung . |
||
George S. |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ja, ist eine Alternative von vielen, professioneler für die Abfrage ist allerdings Dein Skript, für die kleinen Abfragen bis jetzt reicht aber auch diese Art der Kollisionsabfrage | ||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group