Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Fr Jul 18, 2025 00:48

Foren-Übersicht » Programmierung » Allgemein
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 44 Beiträge ]  Gehe zu Seite 1, 2, 3  Nächste
Autor Nachricht
BeitragVerfasst: So Nov 28, 2004 18:31 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Da ich nicht will dass die Ankündigungen dieser Demos in den Newsthreads untergehen (wo es evtl. keiner liest) mache ich hier mal nen eigenen Thread dafür auf, der immer aktualisiert wird sobald ich eine neuen Newtondemo für Entwickler hochlade. Bei diesen Demos handelt es sich um Demos die ein bestimmtes Newton-Feature zeigen, und mit sehr ausfürhlich dokumentiertem Quellcode kommen, so dass Interessierte diese Features recht einfach erlernen und selbst implementieren können.


Demo 1 : Joints
Bild
Download
Zeigt die Nutzung der von Newton angebotenen Joint(=Verbindung)-Typen : Ball-and-Socket, Hinge, Slider, Corkscrew und universal joint. Zeigt ausserdem auch wie Newtons Raycast-Funktionen genutzt werden um Körper zu beeinflussen.

Demo 2 : Vehikle-Container
Bild
Download
Zeigt wie man den Vehikel-Container von Newton nutzt um Fahrzeuge zu implementieren.

Demo 3 : Trägheit
Bild
Download
Mit den Trägheitsfeatures von Newton kann man (u.a.) Körper, die von einer Flüssigkeit umgeben sind, simulieren. Dies wird in dieser Demo gezeigt.


Wer Fragen bzgl. der Demos hat kann diese dann hier stellen, und ich werde versuchen darauf einzugehen.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Nov 28, 2004 20:07 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Okt 27, 2003 17:46
Beiträge: 788
Es gibt also in der neuen Version eine "Masse" mit der man verschiedene Materialien in Wasser oder anderen flüssigkeiten "Schwimmen" lassen kann?
Das finde ich mal richtig nice.
Muss nurnoch schaffen mit Newton umzugehen ;) Aber das schaffe ich auch noch irgendwann ;)

_________________
www.audi32.de


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Nov 28, 2004 20:15 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Masse? Nein, es gibt halt passende Funktionen mit der man nun Trägheitskräfte statt normaler Kräfte auf einen Körper wirken lassen kann. Das kann man nutzen um Körper in Flüssigkeiten zu simulieren, aber damit lassen sich auch andere Dinge realiseren. In der nächsten SDK-Version wird diese Trägheitssache übrigens nochmals verbessert, und das was der Macher als Verbesserung angesprochen hat dürfte recht interessant werden.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Nov 28, 2004 22:42 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Okt 27, 2003 17:46
Beiträge: 788
Naja, dann warte ich mal solange ;)

Aber erstmal um Freude zu bereiten.
"
Endlich geschafft etwas bewegen zu lassen.
Wie einfach das ist, aber ich IDIOT, wie immer stand aufem schlauch :D
Newton ist schon geil (Jetzt wo ich es checkte ^^)
"

Naja ;)
So, aber mal ne andere Frage, gibts eine Möglichkeit von Newton bescheidzubekommen, wenn eine Kollision vorkommt?
zB. Irgend ne "Bombe" auf irgend ein Objekt(Oder Level) einschlägt, geht das?
Und kann ich mir auch sagenlassen auf was der einschlägt? Danke! ;)

_________________
www.audi32.de


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Nov 28, 2004 22:49 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Das geht über die Material-Callbacks. Du kannst ja in NewtonMaterialSetCollisionCallback die Callbacks für Kollisionen setzen (Beginn der Kollision, Kollision selbst, Ende der Kollision) und dann im Kollisionscallback mittels NewtonMaterialGetBodyCollisionID die ID des kollidierten Objektes rausbekommen. Wenn du die hast musst du dort nur noch prüfen ob das Material mit dem kollidiert ist das Material deines Levels ist.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Nov 30, 2004 14:39 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Mai 14, 2004 18:56
Beiträge: 804
Wohnort: GER/OBB/TÖL-WOR/Greiling
Ich habe mal ein paar Joints miteinander verbunden, so dass sich eine bekannte mechanische Anwendung erkennen lässt. :wink:

Link zum Download: veränderte jointdemo

Achtung: rechtsklick/ ziel speichern unter, sonst gibts textsalat statt download!!

_________________
Bild

"User Error. Replace User and hit Continue."


Zuletzt geändert von luketheduke am Di Nov 30, 2004 15:21, insgesamt 4-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Nov 30, 2004 14:43 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Nett! Mit den Joints kann man schon so einiges machen, u.a. auch motorisierte mechanische Objekte wie z.B. Roboter (auch wenn sowas komplexer ist). Aber ich bitte dich darum dich auch an die GPL zu halten, also nicht nur die Exe weiterzugeben sondern auch den veränderten Quellcode.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Nov 30, 2004 14:49 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Mai 14, 2004 18:56
Beiträge: 804
Wohnort: GER/OBB/TÖL-WOR/Greiling
Bis auf das gepostete habe ich nichts wesentliches verändert (nur noch eine bool-variable eingeführt, für die "komplett-anzeigen-abfrage"). Von daher habe ich deinem Kritikpunkt absolut entsprochen.

_________________
Bild

"User Error. Replace User and hit Continue."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Nov 30, 2004 14:52 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Es geht mir aber halt darum dass du den kompletten Quellcode mit ins Paket packst, das sollte man schon machen (wegen der GPL halt). Wenn jemand die Datei so in die Hände bekommt (also nicht über den Thread hier), dann ist nicht nachvollziehbar woher er kommt.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Nov 30, 2004 14:55 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Mai 14, 2004 18:56
Beiträge: 804
Wohnort: GER/OBB/TÖL-WOR/Greiling
tja... vom prinzip her muss ich dir recht geben. aber wenn jemand die exe bekommt, was kann er dann damit machen, womit er gegen den OS-Gedanken verstößt? Verkaufen? Patentieren lassen? Aber ich werde in das Package am besten noch ne readme reintun.

_________________
Bild

"User Error. Replace User and hit Continue."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Nov 30, 2004 14:59 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Lad einfach das komplette Paket mit allen Files die bei mir drin waren hoch, so wie es laut GPL sein sollte. Ich will dich hier nicht kritisieren, aber wie gesagt geht es mir darum dass sich die Leute auch an die von mir genutzte GPL halten, dabei spielt es keine Rolle ob jemand mit der puren EXE was anstellt oder nicht.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Nov 30, 2004 15:19 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Mai 14, 2004 18:56
Beiträge: 804
Wohnort: GER/OBB/TÖL-WOR/Greiling
jetzt richtig? :wink:

Einige fragen habe ich noch: Kann man die Achsen oder Punkte, an denen die Objekte tatsächlich verbunden sind, sichtbar machen? denn ich musste die programmierung einmal komplett umschmeißen und neu anfangen, weil ich mich mit meinem pivotpoint, der ja auch angibt, wo genau "verschraubt" wird(kann ja auch ausserhalb der körper selbst liegen!!), total verfranst habe.

Noch was: um meine Körper von vornherein schief zu createn(matrix_setrotation) und dann korrekt zu joinen, muss ich ja den punkt, an dem gejoint wird, neu berechnen. geht das ganz normal mit trigonometrie?(ich frage aus faulheit :twisted: )

_________________
Bild

"User Error. Replace User and hit Continue."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Nov 30, 2004 15:52 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
luketheduke hat geschrieben:
jetzt richtig? :wink:

OK, danke schön!

luketheduke hat geschrieben:
Einige fragen habe ich noch: Kann man die Achsen oder Punkte, an denen die Objekte tatsächlich verbunden sind, sichtbar machen? denn ich musste die programmierung einmal komplett umschmeißen und neu anfangen, weil ich mich mit meinem pivotpoint, der ja auch angibt, wo genau "verschraubt" wird(kann ja auch ausserhalb der körper selbst liegen!!), total verfranst habe.

Ich glaube dass geht momentan noch nicht (die Joints können also noch nicht visualisiert werden), ist aber AFAIK fürs nächste Release geplant.

luketheduke hat geschrieben:
Noch was: um meine Körper von vornherein schief zu createn(matrix_setrotation) und dann korrekt zu joinen, muss ich ja den punkt, an dem gejoint wird, neu berechnen. geht das ganz normal mit trigonometrie?(ich frage aus faulheit :twisted: )

Schau mal in die glMatrixHelper.pas. Dort gibt es funktionen um Vertices mit Matrizen zu manipulieren (Matrix_TansformVector).

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Nov 30, 2004 16:04 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Aug 28, 2002 19:27
Beiträge: 568
Wohnort: Chemnitz / Sachsen
sag ma sasche, wie hastn du die "gangschaltung" im glnewtoncardemo2 gemacht ????

_________________
Aktuelles Projekt :
www.PicPlace.de


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Nov 30, 2004 16:09 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Das war ne "physikalische Meisterleistung" ;) Für jemanden wie mich, der nicht viel mit Physik am Hut hat, war das ne echte Herausforderung und es hat recht lange gedauert bis die zumindest halbwegs gefunzt hat (ist noch nicht perfekt).

Ich habe mich dabei an dieses Tutorial gehalten. Das "Problem" an der Sache ist halt, dass es ein System mit gegenseitiger Wechselwirkung ist (wenn man das so nennt) : Das Motordrehmoment ist u.a. von der Rotation des Rades abhängig, und diese Rotation wird durch das Drehmoment erzeugt dass der Motor auf das Rad einwirken lässt.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 44 Beiträge ]  Gehe zu Seite 1, 2, 3  Nächste
Foren-Übersicht » Programmierung » Allgemein


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 7 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:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.009s | 16 Queries | GZIP : On ]