AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Vektordistanz Fadenkreuz zu Spieler (2D) berechnen
Thema durchsuchen
Ansicht
Themen-Optionen

Vektordistanz Fadenkreuz zu Spieler (2D) berechnen

Ein Thema von Zacherl · begonnen am 12. Aug 2011 · letzter Beitrag vom 13. Aug 2011
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#11

AW: Vektordistanz Fadenkreuz zu Spieler (2D) berechnen

  Alt 13. Aug 2011, 19:33
Interessante Idee. Was die Berechnung angeht, stehe ich allerdings auch auf dem Schlauch. Die eigene Kameraposition und Rotation müsste ich ja dann auch erst noch in einem Richtungsvektor konvertieren, vermute ich.
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#12

AW: Vektordistanz Fadenkreuz zu Spieler (2D) berechnen

  Alt 13. Aug 2011, 19:37
Wobei, wenn ich es mir recht überlege, bringt das, glaube ich, auch nicht das, was du eigentlich erreichen willst...
  Mit Zitat antworten Zitat
Benutzerbild von Aphton
Aphton

Registriert seit: 31. Mai 2009
1.198 Beiträge
 
Turbo Delphi für Win32
 
#13

AW: Vektordistanz Fadenkreuz zu Spieler (2D) berechnen

  Alt 13. Aug 2011, 20:28
Namenlozer - ich schätze, hierbei geht es um Picking und deshalb ginge das doch gar nicht!?! Denn...

Wenn man überlegt, dass Spieler, die weiter entfernt sind zur Kamera, durch Verzerrung näher zu dieser Gerade gezeichnet werden, als jene, die tatsächlich der Geraden näher sind aber auch näher zur Kamera und somit weiter entfernt vom Fadenkreuz gezeichnet werden.
Mit dieser Methode könnte man die Entfernung OHNE Berücksichtigung der Tiefe ermitteln. Falls erwünscht, könnte ich mal versuchen, zu erklären, wie man dies berechnet?!

Tut zwar nicht viel zur Sache, aber...
Ich würde dir empfehlen, nicht alle Entities zu überprüfen, sondern nur jene hernehmen, die auch wirklich sichtbar sind - die im Frustum liegen und auch nicht verdeckt sind (Stichworte: Occlusion Queries, Octrees und Frustum Culling)!
das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt
MfG
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#14

AW: Vektordistanz Fadenkreuz zu Spieler (2D) berechnen

  Alt 13. Aug 2011, 20:37
Dass nur die sichtbaren Spieler abgefragt werden, etc. ist kein Problem aber auch momentan eher sekundär.

Habe noch etwas rumgespielt, aber immer noch keine zufriedenstellende Lösung gefunden. Was die Tiefe angeht, die brauche ich nicht mit einbeziehen. Es geht mir rein um den Abstand, welchen ich visuell auf dem Bildschirm zwischen Fadenkreuz und Spieler sehen kann. Rein 2-Dimensional also. Das funktionierte mit meiner WorldToScreen() Funktion ja auch soweit ganz gut.

Jetzt suche ich nur nach der Umsetzung einer alternativen mathematischen Lösung, welche auch korrekte Werte bei einem Winkel > +/-90° liefert.
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat
Jens01

Registriert seit: 14. Apr 2009
673 Beiträge
 
#15

AW: Vektordistanz Fadenkreuz zu Spieler (2D) berechnen

  Alt 13. Aug 2011, 22:16
Mach doch mal eine kleine Skizze von dem Problem.
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#16

AW: Vektordistanz Fadenkreuz zu Spieler (2D) berechnen

  Alt 13. Aug 2011, 22:25
Ich glaube er meint es so wie in der angehängten Skizze: „Für welchen der Punkte muss sich die Kamera am wenigsten drehen, um mit dem Fadenkreuz auf ihn zu zeigen?“ – in diesem Fall wäre der nächste Punkt C. Danach käme Punkt B, der außerhalb des Sichtfeldes liegt, anschließend Punkt D, usw...
Miniaturansicht angehängter Grafiken
scr4067_20110813.png  
  Mit Zitat antworten Zitat
Jens01

Registriert seit: 14. Apr 2009
673 Beiträge
 
#17

AW: Vektordistanz Fadenkreuz zu Spieler (2D) berechnen

  Alt 13. Aug 2011, 22:36
Dann muß er doch nur die Winkel ausrechnen zwischen der Linie-Kamera/Fadenkreuz und den Spieler also Linie-Kamera/Spieler?
  Mit Zitat antworten Zitat
Benutzerbild von olee
olee

Registriert seit: 16. Feb 2008
Ort: Boppard
540 Beiträge
 
Turbo Delphi für Win32
 
#18

AW: Vektordistanz Fadenkreuz zu Spieler (2D) berechnen

  Alt 13. Aug 2011, 22:51
Hier ist die Lösung!
(Habe auch mal ne Mathematische Erklärung bzgl. Abstand Punkt-Gerade rausgesucht)
Angehängte Dateien
Dateityp: rar Matrix-Test.rar (178,0 KB, 4x aufgerufen)
Björn Zeutzheim
Codename: Performancepumpe
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#19

AW: Vektordistanz Fadenkreuz zu Spieler (2D) berechnen

  Alt 13. Aug 2011, 23:43
Vielen Dank für deine Mühe nochmal Sehr schöne und umfangreiche Geometrie Unit hast du da gebastelt!
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:45 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz