nahestes vertex finden

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

dav3d

Betreff: nahestes vertex finden

BeitragSa, März 25, 2006 17:17
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,

um mein terrainmodeller etwas zu optimieren muss ich mein 3d Maus system umändern. Meine eigentliche Frage ist:

Wie finde ich schnell den vertex der am nahesten zu einem bestimmten objekt(bsp. ein cube) ist?

->alle vertices sind in einem Dim gespeichert und sind zwischen 289-73'984.
->die entsprechenden meshes sind auch in einem Dim gespeichert, aber separat.

skey-z

BeitragSa, März 25, 2006 17:45
Antworten mit Zitat
Benutzer-Profile anzeigen
schau dir mal in der Onlinehilfe die Vertexfunktionen unter dem Punkt surface an, da wirst du fündig
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz
BAC#57: 2. Platz
Twitter

dav3d

BeitragSa, März 25, 2006 17:58
Antworten mit Zitat
Benutzer-Profile anzeigen
meinst du etwa trianglevertex()? also mit finsurface() bekommt man eine Surface aber für vertices hat's sowas nicht.

oder hast du eher gedacht alle vertices mit bsp. vertexX() nach entfernung zu kontrollieren? wäre dass nicht etwas zu aufwändig wenn man bedänkt dass ich das mind 16x machen muss?
 

Dreamora

BeitragSa, März 25, 2006 19:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Dazu musst du eigentlich nur die Position auf den nächsten entsprechenden möglichen Wert abbilden. Wenn dein Terrain zb in beide Richtungen 64 Tiles hat und die Vertices in 16er Abständen sind, so teilst du den X als auch den Y Wert durch 16.0 und rundest ihn.
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

dav3d

BeitragSa, März 25, 2006 19:27
Antworten mit Zitat
Benutzer-Profile anzeigen
Hinweis:

->Ich habe bis jetzt mit entitypick() zusammen mit pickedsurface() und pickedtriangle() experimentiert (unter anderem). hab aber irgendwie entitypick() nicht zum laufen gebracht.
 

Dreamora

BeitragSa, März 25, 2006 19:32
Antworten mit Zitat
Benutzer-Profile anzeigen
Hast wohl vergessen das Objekt überhaupt pickable zu machen? Smile
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

skey-z

BeitragSa, März 25, 2006 19:33
Antworten mit Zitat
Benutzer-Profile anzeigen
ich meinte eher, du gehst erst alle objekte durch und schaust, welches am nächsten zu dir ist, dann hast du ein objekt und gehst dort die vertices durch.
Somit spart sich die Arbeit, alle vertice durchzugehen.

hast du bei entitypick respektive Camerapick auch nen entitypickmode für das objekt festgelegt, erst dann kannst dudas objekt auch picken
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz
BAC#57: 2. Platz
Twitter

dav3d

BeitragSa, März 25, 2006 19:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Also du meinst um nicht alle vertices zu kontrollieren die auswahl durch berechnungen mit den mauskoordinaten erst die auszusuchen die überhaupt in frage kommen? ja sowas hab ich auch schon gedacht....hmmm.

Oder klar, man könnte es eigentlich komplett von den mauscoords her berechnen. Du hast wohl eher das gemeint. Hmm, du bist echt gut, hätte mir einfallen sollen. Embarassed

Ich probiers gleich, thx Wink
 

Dreamora

BeitragSa, März 25, 2006 19:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Mit den Mauskoords direkt geht nicht. Aber wenn du einen LinePick verwendest, um den Mauspunkt auf dem Terrain zu berechnen, dann kannst du mit diesen PickedX und PickedZ die Daten errechnen.
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

dav3d

BeitragSa, März 25, 2006 19:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Very Happy nein entitypickmode hab ich schon nicht vergessen. alles schon probiert, auch pointentity.... am Ende kam ich dann auf ne Lösung, aber aus unerklärlichen gründen flackerte der zeiger immer zwischen zwei höhen hin und her, aber ist doch nicht möglich schon weil nur einmal positionirt u. gerendert wirt. lol Confused

dav3d

BeitragSa, März 25, 2006 19:39
Antworten mit Zitat
Benutzer-Profile anzeigen
wieso geht es mit den mauscoords nicht? Ich hab ja ne 3D Maus.
 

Dreamora

BeitragSa, März 25, 2006 20:03
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn du eine 3D Maus hast also 3D koordinaten hast, dann geht das natürlich auch Smile (solange du die Position hast, die an dieser Position auf dem Terrain wäre)
Bin davon ausgegangen, das es 2D ist, sorry.
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

dav3d

BeitragSa, März 25, 2006 20:43
Antworten mit Zitat
Benutzer-Profile anzeigen
ja hätte ich vieleicht deutlicher erwähnen sollen. Es ist eine 3D Maus. Ich habs ausprobiert und geht prima!! Razz Jetzt muss ich nur noch das ganze mit mehrern meshes und Zeiger ausbauen.

dav3d

BeitragSo, März 26, 2006 15:28
Antworten mit Zitat
Benutzer-Profile anzeigen
Also hab nun meine Maus ausgebaut und es klappt wunderbar auch bei 16x16 zeiger Razz . jetzt muss ichs nur noch in mein progg einbauen.

Nochmal thx für die Hilfe. Wink
 

Dreamora

BeitragSo, März 26, 2006 17:19
Antworten mit Zitat
Benutzer-Profile anzeigen
Gerne doch Smile
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group