vieln dank. hab das mit deiner lösung mal ausprobiert. klappt von der richtung her wunderbar! allerdings komme ich durch nachdenken nicht so leicht drauf und kanns nicht nachvollziehen...
allerdings hab ich jetzt das problem, dass mein ball manchmal durch meinen schläger "hindurchrauscht". um dem vorzubeugen setze ich bei einer kollision die position des balles so, dass er genau die stelle tangiert, wo die kollision stattfindet.
|
Quellcode
|
1
|
m_vPosition = vKollPos + (vKollTriB * tbVector3(0.25f, 0.0f, 0.25f));
|
das klappt jedoch nicht so ganz. an der sich nicht bewegenden wand prallt er korrekt ab, allerdings gibt es einen "ruck" (der ball verändert sprunghaft seine position, jedoch nur ein kleines stück). bei den schlägern klappt es so auch fast. jedoch wenn der schläger sich schnell bewegt rauscht der ball ab und zu noch hindurch...
ich vermute, dass der "ruck" dadurch zustande kommt, dass der ball bei der kollision schon ein stück in die wand "eingedrungen" ist und es dadurch einen schnittkreis und keinen einzigen schnittpunklt gibt. die modelhitmodel funktion der tribase engine liefert jedoch nur einen schnittpunkt zurück. dies ist jedoch in dem fall nicht der korrekte.
ich habe mir dann überlegt, dass man nur wissen müsste, "wie weit der ball in die wand eingedrungen". dann müsste man sich doch die wahre kollsiionsposition ausrechnen können... da hörts bei mir aber auf.
hoffe mich hat jemand verstanden und kann mir helfen. bin am verzweifeln :help:
mfg
dave