Aktuelle Zeit: 23.12.2024, 00:26

Alle Zeiten sind UTC + 1 Stunde




Ein neues Thema erstellen Auf das Thema antworten  [ 32 Beiträge ]  Gehe zu Seite 1, 2, 3  Nächste
Autor Nachricht
 Betreff des Beitrags: Frage zur "Newton" PhysikEngine
BeitragVerfasst: 23.04.2009, 08:05 
Offline
Benutzeravatar

Registriert: 21.04.2007, 20:54
Beiträge: 117
Hallo,

ich habe schon mal ein bischen etwas mit dem Newton SDK hinbekommen. Aber ich muss unbedingt wissen, wie man mit Newton KollisionObjekte erstellt, die zwar mit anderen kollidieren wenn man sie beweg oder neu positieriert, die jedoch keien physikalischen Simulationen haben. Ich brauche das, um eine KollisionsBasis für die Kamera bzw. die eigene Spielfigur eines "Ego shooters"/ "First person shooters" zu konstruieren. Ich denke da bietet sich der "Cylinder" oder die "Capsule" recht gut an. Ich hoffe ihr versteht was ich meine. Denn die normalen PhysikObjete scheinen dafür nicht gemacht zu sein. Wenn ich diese neu positioniere oder bewege (also dauernd 'AddForce' anwende) geht das Objekt teilweise durch die Wände der Umgebung, das sieht einfach sau doof aus.
Könnt ihr mir helfen?

_________________
Meine Homepage: http://www.hlc-games.de/
Mein Projekt: http://softpixelengine.sourceforge.net/
Mein Forum: http://www.hlc-games.de/forum/


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Frage zur "Newton" PhysikEngine
BeitragVerfasst: 23.04.2009, 08:30 
Offline
Moderator
Benutzeravatar

Registriert: 25.03.2007, 18:11
Beiträge: 834
Wohnort: Hagen, NRW
Doch die Capsule ist genau dafür gemacht.
Wenn das ding durch Wände geht, musst du mal ein wenig an den parametern rumtweaken. Das passiert meistens, wenn sich ein objekt zu schnell bewegt.

Ohne physikalische simulationen kann ich mir das nicht vorstellen. Es handelt sich nunmal um eine physik engine ^^

_________________
Phenom X4 9950 BE | 6144MB DDR2-800 | GeForce 8800GT 512MB | Asus M3A32-MVP Deluxe | 2TB HDD | 520W Seasonic NT | Soprano Tower | Samsung 22" TFT + Fujitsu-Siemens 17" TFT + Toshiba 42" FullHD LCD | Windows 7 Proessional x64
Behind the Brain


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Frage zur "Newton" PhysikEngine
BeitragVerfasst: 25.04.2009, 22:42 
Offline

Registriert: 12.09.2008, 21:41
Beiträge: 187
Wohnort: Deutschland
Hab leider das gleiche Problem, bei mir versinken die Obejekte einfach im Boden mit der Zeit...

Ich verwende allerdings SetForce(), hmm vielleicht probier ich mal das andere...

Gruß
Scarabol

_________________
My Toolbox:
- Irrlicht 1.7.1
- Blender 2.49a
- Microsoft Visual C++ Express Edition 2008
- Newton Game Dynamics 2.xx
Regeln zur Programmierung:
Regel 1: Die Programmiersprache hat keine Fehler.
Regel 2: Solltest du doch einen Fehler finden, tritt automatisch Regel 1 in Kraft.


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Frage zur "Newton" PhysikEngine
BeitragVerfasst: 26.04.2009, 09:01 
Offline

Registriert: 24.05.2008, 13:41
Beiträge: 151
Wohnort: Marienhafe
Hey, bei mir ist das gleiche problem ^.^ Zwar geht die bewegung und alles aber ganz langsam sinkt das objekt runter bis es fällt.
Rein physikalisch her ist das ja auch korrekt, da ja immer Kraft auf den Boden ausgeübt wird.

NewtonMaterialSetDefaultFriction (nWorld, i, i, 15.8f, 15.8f);
NewtonMaterialSetDefaultElasticity (nWorld, i, i, 0.3f);
NewtonMaterialSetDefaultSoftness (nWorld, i, i, 0.05f);


wenn man diese einstellungen verändert scheints langsamer bzw schneller zu geschehen - aber ganz raus hab ichs net bekommen :(


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Frage zur "Newton" PhysikEngine
BeitragVerfasst: 27.04.2009, 17:27 
Offline

Registriert: 12.09.2008, 21:41
Beiträge: 187
Wohnort: Deutschland
Hi,

also ich konnte bisher auch einige Sachen herausfinden, wie man es verlangsamt, aber es hat nie komplett aufgehört...

Hatte die Probleme auch schon mit anderen Engines, da hab ich einfach versuch den Körper 1 bei einer Kollision einfach so weit zurückwerfen zu lassen, dass er auf jedenfall außerhalb des Körpers 2 wieder landet...
Der Körper 1 fiel quasi permanent herunter, nur eben nicht sichtbar für den User...

Gruß
Scarabol

_________________
My Toolbox:
- Irrlicht 1.7.1
- Blender 2.49a
- Microsoft Visual C++ Express Edition 2008
- Newton Game Dynamics 2.xx
Regeln zur Programmierung:
Regel 1: Die Programmiersprache hat keine Fehler.
Regel 2: Solltest du doch einen Fehler finden, tritt automatisch Regel 1 in Kraft.


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Frage zur "Newton" PhysikEngine
BeitragVerfasst: 27.04.2009, 17:31 
Offline

Registriert: 12.09.2008, 21:41
Beiträge: 187
Wohnort: Deutschland
GELÖST!!!

Also ab heute dürft ihr mich gerne Isaac nenen :-)

Code:
NewtonMaterialSetContinuousCollisionMode(nWorld, NewtonMaterialGetDefaultGroupID(nWorld), NewtonMaterialGetDefaultGroupID(nWorld), 1);


Falls ihr andere Materialien benutzt, einfach anpassen, sollte man auch, da diese Funktion wie inder Beschreibung beschrieben jede Menge Resourcen frisst...

Gruß
Scarabol

_________________
My Toolbox:
- Irrlicht 1.7.1
- Blender 2.49a
- Microsoft Visual C++ Express Edition 2008
- Newton Game Dynamics 2.xx
Regeln zur Programmierung:
Regel 1: Die Programmiersprache hat keine Fehler.
Regel 2: Solltest du doch einen Fehler finden, tritt automatisch Regel 1 in Kraft.


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Frage zur "Newton" PhysikEngine
BeitragVerfasst: 28.04.2009, 12:23 
Offline

Registriert: 24.05.2008, 13:41
Beiträge: 151
Wohnort: Marienhafe
Hmpf funktioniert bei mir nicht :(


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Frage zur "Newton" PhysikEngine
BeitragVerfasst: 29.04.2009, 09:07 
Offline
Benutzeravatar

Registriert: 21.04.2007, 20:54
Beiträge: 117
Das nun angeblich gelöste Problem: ist damit das Problem des versinkens der Objekte in Wände, Boden usw. gemeint, oder das Ausschalten der physikalischen Simulation?
(Ich brauche beides XD)

Wie habt ihr das eigentlich mit den CollisionCallbacks gemacht? Ich verwende noch keine, würde aber gerne prüfen, ob überhaupt eine Kollision statt findet, an welchem Punkt es aufkommt, und wie stark es aufkommt. Das müsste doch eigentlich mit den Callbacks alles gehen oder?!

Ich denke auch, dass die "Capsule" für meine Beschreibung im ersten Beitrag passt, aber ich glaube ich Bewegung mache ich immer noch falsch. Ich übe quasi in jedem Frame des Programms mit "AddForce..." eine Kraft auf den "Body" und das sorgt dafür, dass ich beim Laufen über eine 'Klipp' nur gaaaaanz langsam 'falle' - wenn man das überhaupt Fallen nennen kann XD. Jedenfalls falle ich eigentlich nur dann, wenn ich nicht mehr laufe, also auch keine Kraft mehr auf den "Body" wirken lasse. In einem der Newton Beispiele gibt's doch auch ein EgoShooter-Beispiel, dummer Weise nicht OpenSource.

_________________
Meine Homepage: http://www.hlc-games.de/
Mein Projekt: http://softpixelengine.sourceforge.net/
Mein Forum: http://www.hlc-games.de/forum/


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Frage zur "Newton" PhysikEngine
BeitragVerfasst: 29.04.2009, 18:08 
Offline

Registriert: 12.09.2008, 21:41
Beiträge: 187
Wohnort: Deutschland
Hi,

also das Problem ist nicht gelöst, sorry wegen der Falschmeldung...

Findest du nicht das "...oder das Ausschalten der physikalischen Simulation..." und "Physik Engine" in einem gewissen Widerspruch stehen :D

Die besten Infos wie du Callbacks benutzt findest du in den Beispielen der Newton Engine und zum Rest also Collision ect. schauste dich am besten im englischen Forum nach Beispielen um...
Such mal nach "CheckForCollision" die Funktion stammt aus einem der Beispiel dort und macht genau das was du willst, denke ich...

Ansonsten sollte wohl jeder hier animiert sein eine kleine lauffähige, bugfreie Demo zu coden und zu posten, damit die Frage nach Newton und Beispielen endlich gelöst werden können, selbst ist es mir leider noch nicht gelungen, but still trying ;-)

Gruß
Scarabol

_________________
My Toolbox:
- Irrlicht 1.7.1
- Blender 2.49a
- Microsoft Visual C++ Express Edition 2008
- Newton Game Dynamics 2.xx
Regeln zur Programmierung:
Regel 1: Die Programmiersprache hat keine Fehler.
Regel 2: Solltest du doch einen Fehler finden, tritt automatisch Regel 1 in Kraft.


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Frage zur "Newton" PhysikEngine
BeitragVerfasst: 29.04.2009, 20:20 
Offline

Registriert: 24.05.2008, 13:41
Beiträge: 151
Wohnort: Marienhafe
Also so scheint es zu klappen (zumindest gehts bei mir wenn dann nur solangsam das ich nix sehe):

NewtonBodySetMassMatrix (Character.body, 70.0f, 1050.0f, 1050.0f, 1050.0f);
Im Beispiel ist z.b:

NewtonBodySetMassMatrix (Character.body, 10.0f, 150.0f, 150.0f, 150.0f); angegeben
Das sollte man wohl immer im gleichen abstand lassen, darum hab ich einfach mal 7 genommen und nun versinkt er nichtmehr



Edit: Um Korrekte daten zu berechnen:


* Solid Sphere Ixx = Iyy = Izz = \frac{2*radius^2*mass}{5}
* Solid Box Ixx = mass * (ly*ly + lz*lz) / 12 Iyy = mass * (lx*lx + lz*lz) / 12 Izz = mass * (lx*lx + ly*ly) / 12
* Solid Cylinder Ixx = Iyy = mass * ( \frac{radius^2}{4} + \frac{1}{12}) * height^2 Izz = mass * radius^2 / 2


http://www.newtondynamics.com/wiki/inde ... MassMatrix


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Frage zur "Newton" PhysikEngine
BeitragVerfasst: 30.04.2009, 11:47 
Offline

Registriert: 12.09.2008, 21:41
Beiträge: 187
Wohnort: Deutschland
achso cool, gute Arbeit

Gruß
Scarabol

_________________
My Toolbox:
- Irrlicht 1.7.1
- Blender 2.49a
- Microsoft Visual C++ Express Edition 2008
- Newton Game Dynamics 2.xx
Regeln zur Programmierung:
Regel 1: Die Programmiersprache hat keine Fehler.
Regel 2: Solltest du doch einen Fehler finden, tritt automatisch Regel 1 in Kraft.


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Frage zur "Newton" PhysikEngine
BeitragVerfasst: 16.05.2009, 10:48 
Offline
Benutzeravatar

Registriert: 21.04.2007, 20:54
Beiträge: 117
Also bei mir ändert sich nur eins, nämlich, dass die Objekte noch hässlicher fallen als vorher.
Wenn ich die Umgebung (erstellt mit "NewtonCreateConvexHull") nach oben verschiebe (z.B. wenn später im Spiel ein Aufzug nach oben gehen soll) fallen trotzdem alle Objekte durch.
Ich glaube das hat was mit dem Collision Callback zu tun. Wenn ich das ganz langsam nach oben bewegen, kommen die Objetke langsam nach. Das sieht einfach nur blöd aus und bei 'schnellen' Bewegungen fällt sowieso alles durch.
Ich find's sau dumm, dass die ganzen "Projects" bzw. Beispiele auf der Seite vom NewtonSDK nicht OpenSource sind.
Wie sollen die einem dann weiter helfen??

_________________
Meine Homepage: http://www.hlc-games.de/
Mein Projekt: http://softpixelengine.sourceforge.net/
Mein Forum: http://www.hlc-games.de/forum/


Nach oben
 Profil  
 
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 32 Beiträge ]  Gehe zu Seite 1, 2, 3  Nächste

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 5 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de