Objektebereich bestimmen
Übersicht

fringoBetreff: Objektebereich bestimmen |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hallo forum,
ich lade ein mesh (b3d) und möchte gerne die koordinaten von einem bestimmten bereich (zB ein fuss) des objekts auslesen - wenn das objekt per "animate" bewegt wird sollen die koordinaten natürlich auch noch stimmen. weiss jemand wie das geht? danke! |
||
AvaGast |
![]() Antworten mit Zitat |
|
---|---|---|
Ich glaube, dass geht nur, wenn Du den Fuss - oder was auch immer - als eigenständiges ChildObjekt definierst. Dann kannst Du zb. mit n = findChild(hauptMesh, "rechter fuss") das Entity finden und die Koordinaren auslesen. Hm, andere Möglichkeit wäre vielleicht noch, vorher manuell die Vertices im Fuss herauszufinden und diese dann abzufragen, aber sonst wüsste ich leider keine andere Möglichkeit. | ||
fringoBetreff: .. |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
danke für die antwort, ava. an so was wie die zweite möglichkeit habe ich auch gedacht - nur: wie finde ich "manuell" die vertices raus (werden die durchnummeriert?)? | ||
AvaGast |
![]() Antworten mit Zitat |
|
---|---|---|
Die Vertices werden durchnummeriert, ja. Dafür könnte man sich ja einen kleinen Editor basteln, um diese zu makieren und dann abzuspeichern. Würde wahrscheinlich sogar ausreichen, wenn man dafür nur die Tris statt der Vertices ermittetn, hm. Die werden die auch durchnummeriert.
Ich habe nun allerdings herausgefunden, dass man im .b3D-Format mehrere Objekte speichern kann! Du könntest also auch irgendwie einen Pivot an die entsprechende Stelle plazieren und mitanimieren lassen! So werde ich es jedenfalls mal ausprobieren! ![]() |
||
fringoBetreff: :: |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hm, bin mir nicht sicher ob ich versteh was du da vorhast.. aber könnte man nicht einfach die triangle-nummer hochzählen lassen und jeweils den entsprechen bereich einfärbeln o,ä.? wenn du was ausgetüftelt hast lass es mich auf jeden fall wissen - könnte mir echt weiterhelfen.
bis dann |
||
![]() |
Markus2 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn du in deinem Objekt eine Hirachie benutzt dann haste doch beides .
Also nen einzelnes Objekt und damit auch z.B. deine Fuß Vertices ... |
||
fringoBetreff: :: |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
kapier ich nicht *wink* :]. wie meinst du? | ||
![]() |
Markus2 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hat Avo oben schon geschrieben .
Also ein Objekt kann ja Unterobjekte haben und diese hängen dann immer wo dran , also an einem Übergeordneten Objekt . z.B. Rumpf-Bein-Fuss-Zehen Also wenn du das Bein rotierst bewegt sich der Fuß und auch die Zehen mit . Rotierst du nur den Fuß bewegen sich nur die Zehen mit . Suchste mit FindChild("Fuss") bekomste den Fuß als Entity also als Mesh und darum haste auch alle Vertices davon . |
||
fringo |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
danke, markus. jedenfalls: ich habe jetzt ein bestimmtes vertex identifiziert, wenn ich aber das objekt drehe oder animiere (animate) ändern sich die koordinaten nicht mit sondern bleiben in der ausgangsposition :\ | ||
furbolg |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
mach dir ne datei mit hotspots die bei der basisposition da sind wo du sie haben willst und lies sie dann im game ein und plazier an deren Stelle Pivots, häng sie dann aber noch ans entsprechende (Sub)Mesh. | ||
![]() |
Markus2 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Die Vertices stehen immer im bezug zu den Achsen des Entitys .
Also dort wo die Achse ist ist auch der Null Punkt bzw. Mittelpunkt . Die Vertices sind also unrotiert . Um die echte Position heraus zu bekommen gibt es die Transform Befehle TFormVector <--- TFormNormal TFormPoint und zurück bekommste TFormedX() TFormedY() TFormedZ() Am besten erzeugste mal zum testen an den Weltkoordinaten der Vertices einen Cube oder Sphere an der Pos. die du also von TFormed zurück bekommen hast . Wenn ein Entity nicht rotiert wurde kann man auch einfach die Welt Vertexpos. heraus bekommen in dem man die Globale Pos. des Entitys hinzu addiert zu den Vertices . |
||
fringoBetreff: :: |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
danke nochmal, ich werd mir das in ruhe anschauen. | ||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group