3d - Was passiert, wenn ein Punkt hinter dir ist?
-
@NoobTracker Du kannst den Schnittpunkt berechnen und dann von dort die Linie zeichnen.
Was meinst du, wie Computergrafik funktioniert bzw. warum die Grafikkarten soviel Leistung haben?
-
@DirkB Danke, wenn ich drüber nachdenke, dann müsste es das sein. Mal schauen ...
-
@NoobTracker
Redest du gerade von OpenGL und der perspektivischen Projektion?
-
@Quiche-Lorraine Nein, einfach nur mein eigenes Scratch-Programm (ich mach das nur auf Spass, keine Sorge).
-
@NoobTracker sagte in 3d - Was passiert, wenn ein Punkt hinter dir ist?:
(ich mach das nur auf Spass, keine Sorge
Ich beschäftige mich gerne mit Fraktalen, Chaos und Attraktoren. Besonders fazinierend finde ich es wenn Gleichungen austicken und ab einem Parameterwert ins Chaos übergehen.
-
@Quiche-Lorraine Wirklich, Scratch ist, als würde einem beim C++ programmieren der rechte Arm fehlen. Und ist langsamer als BASIC am C64.
-
@NoobTracker
Ahh du meinst mit Scratch die Programmiersprache. Die kannte ich bis vor wenigen Momenten noch nicht.Ich dachte du wolltest OpenGL from the scratch programmieren.
-
@Quiche-Lorraine Ja, hat mich auch schon verwirrt, ich glaube, es heißt "from scratch", whatever. Es geht. Mit ein wenig Logik und einem Haufen cleverem Rumgerate.
-
Man teilt üblicherweise nicht einfach nur x und y, sondern man transformiert in den sogenannten "Screenspace" und zeichnet den dann. Eine vollständige Transformation enthält dabei auch die Tiefe, die man im einfachsten Fall auch einfach 1:1 übernehmen kann oder mit einer beliebigen Konstanten multipliziert. Die Tiefe brauchst du zum zu entscheiden, was näher an der Kamera ist, d.h. ganz konkret wenn zwei Punkte auf dem selben x,y landen, welcher näher ist und den anderen verdeckt (bzw. auf einer modernen GPU wird der Wert in den ZBuffer geschrieben und verglichen). Dabei fällt ganz automatisch auch ein "Clipping" an, genau wie bei x und y nur Punkte gezeichnet werden, die auf dem Bildschirm liegen, zeichnet man auch in der Tiefe nur von z.B. 1 bis 10000, also nichts was hinter dir liegt und nichts was zu weit vor dir liegt.
-
komisch, ich hab genau zu diesem Thema nen konkretes Problem, aber ich mach mal nen eigenen Thread auf ...