2d koordinaten in 3d umrechnen
Übersicht

![]() |
PucciniBetreff: 2d koordinaten in 3d umrechnen |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi!
Ich hab in meinem leveleditor das problem mit dem verschieben von objekten! !!! Das auswählen per maus hab ich gelöst, nur wie bekomme ich es hin das wenn ich das objekt jetzt sehe es mit der maus auch einfach und gut verschieben kann! Hab es erst so probiert Code: [AUSKLAPPEN] TranslateEntity objekt1,MouseSpeedX(),0,Mousespeedy()
is dumm! weil wenn ich jetzt die Camera drehe is ja die Verschiebung wieder anders und ihr wisst ja wie das dann endet... Gibt es also eine möglichkeit meine 2d koordinaten irgendwie in den 3d raum zu projezieren?? Ich hab an sowas wie LinePick gedacht oder einem Pivot der immer richtung camera ausgerichtet is und sich stehts 10m vor ihr befindet und an dem dan das ausgewählte objekt paltziert wird! WIe mach ich das?? |
||
-=Achtung=-
Suche Hobby-Modelliere der hin und wieder bock hat ein kleines Objekt zu erstellen. Bei Interesse PM www.ragesoft.de Passwortmanager: http://ragesoft.de/index.php?o...;Itemid=39 |
![]() |
Tankbuster |
![]() Antworten mit Zitat ![]() |
---|---|---|
PickedX, PickedY, PickedZ
Forensuche anwerfen hilft oft auch total gut! ![]() |
||
Twitter
Download Jewel Snake! Windows|Android |
![]() |
Puccini |
![]() Antworten mit Zitat ![]() |
---|---|---|
die forensucher is doof! ich hab gesucht:
"2d koordinaten in 3d" -> nix brauchbares "2d mauskoordinaten 3d" -> nix "3d 2d koordinaten" -> nix und noch anderes zeugs, aber alles nix! Ich werd mal dein Tip probieren! danke! ############################### Also das klappt ja schonmal etwas! nur nich ganz richt, also das objekt wird immer mal wieder abgewählt... ich test mal weiter! ![]() |
||
-=Achtung=-
Suche Hobby-Modelliere der hin und wieder bock hat ein kleines Objekt zu erstellen. Bei Interesse PM www.ragesoft.de Passwortmanager: http://ragesoft.de/index.php?o...;Itemid=39 |
![]() |
Arrangemonk |
![]() Antworten mit Zitat ![]() |
---|---|---|
du könntest ein system mit tasten einbauen
z.b. dass wenn man 1 drückt verschiebst du das objekt mit mousespeed in x richtung bei 2 in y richtung und bei 3 in z richtung oder einfacher bei string in den verschiebungsmodus, dass da links x is unr rechs z und scrollrad y achse auchwieder mit mousespeed |
||
ingeneur |
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Man kan auch ql:TFormVector anwenden, um die X/Y/Z -Koordinate zur transferieren. Dabei muss aber der TFormVector -Wert aus der Rotation der Kamera an das Objekt skalliert aus der Mausbewegung übertragen werden. | ||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
![]() |
Puccini |
![]() Antworten mit Zitat ![]() |
---|---|---|
den letzten Post muss ich net verstehen oder ![]() Kannst mir das etwas erklären hectic?? Klingt ja schonmal interessant! ![]() ![]() |
||
-=Achtung=-
Suche Hobby-Modelliere der hin und wieder bock hat ein kleines Objekt zu erstellen. Bei Interesse PM www.ragesoft.de Passwortmanager: http://ragesoft.de/index.php?o...;Itemid=39 |
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn du mit den oben genannten Möglichkeiten ein Objekt zu fassen bekommen hast, so gilt es nur noch zu bewegen. Wie du bereits angesprochen hast, ist die Maus X/Y -Bewegung ja nicht einfach so in eine 3D-Welt zu übertragen, da die Kamera ja auch ein Winkel in jeder seiner Achsen haben kann und somit das Bewegen davon abhängig gemacht werden 'soll'.
Eine einfache Möglichkeit hat bereits Arrangemonk erklärt.^^ Wilst du aber es so haben, dass zB Maus links/rechts sich das Objekt auch in der Achse bewegt, dass es für den Benutzer auch so als links/rechts gesehen werden kann, benötigst du den Winkel der Kamera und danach muss dann bewegt werden. Nun ist es aber so, wenn der Betrachter zB links/rechts bewegt, sich das Objet bereits in allen drei Achsen bewegen könnte, wenn der Kamerawinkel entsprechend nicht ausgerichtet ist. Um das zu berechnen geht es am einfachsten mit TFormVector. Dieser Befehl ist zB für solche Sachen gedacht. Entscheidend ist folgender Satz. Zitat: Beispiel: Du möchtest ein Objekt 1 Schritt nach vorne bewegen (0,0,1). Das kann man so machen: MOVEENTITY obj,0,0,1. Wie würde das aber als globale Version aussehen, da der Vektor von Objektwinkel abhängig ist. Den Vektor kann man mit diesen Befehlen transformieren (siehe Beispiel). Dann kann ein Objekt auch mit TRANSLATEENTITY obj,x,y,z bewegt werden.
MoveEntiy sollte klar sein. TranslateEntity auch. Will man nun mit TranslateEntity ein Objekt bewegen, was zB eine Bewegung wie MoveEntity ausschauen lässt, so kommt TFormVector zur Berechnung in Einsatz. Statt dessen nimmst du aber den Winkel der Kamera und bewegen tust du per TranslateEntity dein Objekt anhand der Mausposition bzw. MausSpeed. edit1: Mit dem ''zu schnellem Bewegen und den darauffolgenden Abwählen eines Objektes'' solltest du mal versuchen, zuerst dein objekt bewegen und dann mit Pick nachschauen.^^ |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group