Aktuelle Zeit: 25.05.2013 02:17

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]




Ein neues Thema erstellen Auf das Thema antworten  [ 5 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Präzise EntityCollision
BeitragVerfasst: 27.05.2012 21:03 
Offline
Benutzeravatar

Registriert: 12.11.2008 19:31
Guten Tag,

Ich habe ein Problem mit der Hauseigenen Physik Engine von Purebasic, wenn ich 2 Entities (Eine Höhle und ein Cube) auf Collisionen Prüfen, dann gibt dies, sobald der Cube in der Höhle ist immer 1 zurück, auch wenn eigentlich gar keine Collision stattfindet.
Ich habe schon alle Arten des EntityPhysicBodies ausprobiert, allerdings hat nichts diesen Effekt verhindert.

Sollte ein PhysicBody mittels #PB_Entity_StaticBody nicht eigentlich eine Präzise Collision hervorrufen?

Da dies ja nicht so zu sein scheint, gibt es vielleicht eine Möglichkeit trotzdem eine entsprechend Präzise Kollision zwischen 2 Entities auszuführen? (Also eine die tatsächlich auf dem Mesh basiert und nicht nur eine Box darum legt)

Wäre dankbar für jede Hilfe.

_________________
Purebasic 5.10 | Kubuntu 12.04 (64 bit) | Opera 12.01 | Nvidia GT 9800
Xubuntu 12.04 (64 bit) | Intel HD Graphis (Onboard)


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Präzise EntityCollision
BeitragVerfasst: 27.05.2012 21:13 
Offline
Kommando SG1
Benutzeravatar

Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Soweit ich das verstehe ist #PB_Entity_StaticBody nur für sich nicht bewegende (statisch) Körper.

Wenn du zwei Körper aufeinander fliegen lassen willst, dann solltest du lieber #PB_Entity_ConvexHullBody verwenden.

_________________
Bild
 
BildBildBild


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Präzise EntityCollision
BeitragVerfasst: 27.05.2012 21:26 
Offline
Benutzeravatar

Registriert: 12.11.2008 19:31
Wie gesagt, ich habe schon alle Kombination ausprobiert, alle erstellen letztendlich nur eine sehr unpräzise Hülle, die vielleicht bei einem Terrain Funktioniert, nicht aber bei einer Höhle .

Das erste Entity ist im Prinzip das Terrain, bewegt sich also auch nicht. Das 2. Entity hat nur ne ganz normale Box. Diese Box soll dann sozusagen sich durch die Höhle bewegen können und entsprechend mit den Wänden dort Kollidieren. Aber genau das geht ja nicht, die Kollision erfolgt (egal mit welchem PhysicBody) sobald ich die Höhle betrete, völlig egal ob die Meshes mit einander Kollidieren.

Die Frage ist letzendlich also, ob es möglich ist eigene PhysicBodies zu erstellen oder eben sowas in der Art.
Bzw. kann man irgendwie die Faces eines Meshes auslesen und dann selber eine Physic Routine schreiben?

_________________
Purebasic 5.10 | Kubuntu 12.04 (64 bit) | Opera 12.01 | Nvidia GT 9800
Xubuntu 12.04 (64 bit) | Intel HD Graphis (Onboard)


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Präzise EntityCollision
BeitragVerfasst: 28.05.2012 08:40 
Offline
Benutzeravatar

Registriert: 29.08.2004 08:37
Probier mal das Terrain aufzutrennen, sodass du das "Dach" jeder Höhle in einem Mesh ablegst und den Rest in einem anderen.

_________________
Mit freundlichen Grüßen,
Daniel http://www.bradan.eu/
Bild
Ich bearbeite meine Postings häufig, kurz nachdem ich sie abgeschickt habe. - Windows 7 64bit, PureBasic: Die aktuelle Version
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Präzise EntityCollision
BeitragVerfasst: 28.05.2012 12:32 
Offline
Benutzeravatar

Registriert: 12.11.2008 19:31
Ich habe jetzt mal Probeweise die Wände und das Dach entfernt, sodass nur noch der Boden da war.
Und auch hier ist die Collision viel zu ungenau um damit was anfangen zu können (Sowohl mit StaticBody als auch mit ConvexHull getestet).
Testweise habe ich auch mal nen Würfel drauffallen lassen und da sieht man ganz gut das der teilweise Meterweit über dem Mesh abprallt.

Gibt es eigentlich Physicengine alternativen die sich auch unter Linux leicht einbinden lassen?

_________________
Purebasic 5.10 | Kubuntu 12.04 (64 bit) | Opera 12.01 | Nvidia GT 9800
Xubuntu 12.04 (64 bit) | Intel HD Graphis (Onboard)


Nach oben
 Profil  
 
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 5 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.

Suche nach:
Gehe zu:  

 


Powered by phpBB © 2008 phpBB Group | Deutsche Übersetzung durch phpBB.de
subSilver+ theme by Canver Software, sponsor Sanal Modifiye