2D Bones
Übersicht

![]() |
faeXBetreff: 2D Bones |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo,
ich hätte mal eine Frage: ich möchte ein Bone-System in 2D entwickeln. Man hat also die Winkel und länge der einzelnen Gliedmaßen und kann dann mittels Cos und Sin die ganzen Koordinaten berechnen. Wie bekomme ich nun aber die Struktur mit Types hin? Freue mich auf antworten ![]() |
||
![]() |
The_Nici |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich würde Punkte und Verbindungen nehmen, wobei die Verbindungen 2 Felder haben für die Handles der Punkte.
MfG |
||
![]() |
faeX |
![]() Antworten mit Zitat ![]() |
---|---|---|
könntest du mir vielleicht mal ein codebeispiel dafür geben? | ||
![]() |
Der Eisvogel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich würde sagen er meint dies so:
Code: [AUSKLAPPEN] Type punkt
Field x,y End Type Type bones Field p1,p2 End Type Das heißt du musst 2 Punkte erstellen und dann deren Variablen (Handle) in dem Type bones abspeichern. EDIT: Also so wie in 3D bei den Surfaces. 3 Punkte machen --> Zu einem Dreieck verbinden, bloß hier machste nur 2 Punkte und machst einen Knochen (Bone) |
||
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB Projekte: Window-Crasher Ich liebe es mit der WinAPI zu spielen. |
![]() |
The_Nici |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] Const deppenleuchte$ = "F5-Depp. Verstehe den Code! >:o" Type Tpoint Field x% Field y% End Type Type Tconn Field pointh1% ;Handle des ersten Punktes Field pointh2% ;Handle des zweiten Punktes End Type point1.Tpoint = New Tpoint ;Erster Punkt point2.Tpoint = New Tpoint ;Zweiter Punkt point2\x = 100 point2\y = 100 CreateConnection(Handle(point1), Handle(point2)) ;Handles der Punkte als Parameter DrawConnections() WaitKey() Function CreateConnection(ph1%, ph2%) conn.Tconn = New Tconn conn\pointh1% = ph1% conn\pointh2% = ph2% End Function Function DrawConnections() For conn.Tconn = Each Tconn ;Alle Connections durchgehen p1.Tpoint = Object.Tpoint(conn\pointh1%) ;Nimmt wieder das Objekt aus dem Handle p2.Tpoint = Object.Tpoint(conn\pointh2%) ;Nimmt wieder das Objekt aus dem Handle Line p1\x,p1\y,p2\x,p2\y:RuntimeError(deppenleuchte$) ;Linie zeichnen Next End Function Um einiges schöner als Eisvogels code. MfG |
||
- Zuletzt bearbeitet von The_Nici am Di, Dez 30, 2008 16:47, insgesamt einmal bearbeitet
![]() |
Der Eisvogel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Schöner vielleicht, aber jetzt hast du im ein bisschen Arbeit abgenommen, ich glaub die Funktion um die Punkte zu verbinden hätte er auch selber hinbekommen ![]() |
||
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB Projekte: Window-Crasher Ich liebe es mit der WinAPI zu spielen. |
![]() |
The_Nici |
![]() Antworten mit Zitat ![]() |
---|---|---|
Die Funktion Handle![]() ![]() MfG |
||
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Nici, warum Handle und Objekt verwenden? Man kann auch die Instanz an die Funktion übergeben. | ||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
![]() |
Der Eisvogel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Oh, ja die hätte ich noch erwähnen sollen. ![]() |
||
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB Projekte: Window-Crasher Ich liebe es mit der WinAPI zu spielen. |
![]() |
The_Nici |
![]() Antworten mit Zitat ![]() |
---|---|---|
Misverständnis, bitte löschen. ![]() |
||
- Zuletzt bearbeitet von The_Nici am Di, Dez 30, 2008 17:00, insgesamt einmal bearbeitet
![]() |
faeX |
![]() Antworten mit Zitat ![]() |
---|---|---|
ein tolles forum muss ich sagen, man startet einen gedanken und an allen ecken und kanten wird er durchdacht, in weniger als einer halben stunde.
an alle antworten: mein kompliment ![]() |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group