Sichtweite erweitern in Opengl
-
Oermel schrieb:
@ TGGC
die Sicht würde durch die änderung der Faktoren "nah" bzw. "fern" doch verzerrt werden, oder?Nicht ganz - aber du hast schon mal richtig erkannt, dass da irgendwas nicht linear abläuft sondern "verzerrt" wird - der z-Wert, der da ausgerechnet wird nur für den Z-Buffer verwendet, der dann bestimmt, was sichtbar ist und was nicht
Dieser Z-Buffer ist nicht linear angeordent! Da man ja vermeiden will, dass Objekte ,die weiter weg sind, Objekte verdecken, die näher sind muss der Z-Buffer möglichst viele Werte annehmen können. Bei 16 Bit kann er 2^16 = 65536 Werte annehmen - Wenn Objekte sehr nahe beieinander liegen kann es vorkommen, das ähnliche bzw. gleiche Z-Werte enstehen. Häufig reicht der Z-Buffer nicht aus => es enstehen unschöne Artefakte => andere Lösung: z-Werte im nahem Sichtbereich weiter auseinander, als im fernen Sichtbereich => weniger Artefakte im direktem Umfeld => mehr Artefakte bei Objekten im "Hintergrund" => stört weniger
Hier gehts noch mehr ins Detail:
http://loop.servehttp.com/~vertexwahn/public_html_an_turing/PerspektivischeProjektion.pdf
-
Hallo
schaumal, dass hat mir immer geholfen ...
http://fly.cc.fer.hr/~unreal/theredbook/
Das ist die sogenannte Muss man haben Lektüre zu OpenGL.

Das hier ist auch nicht schlecht,...
man sollte aber etwas WinAPI Erfahrung mitbringen:Grüße
Fireball
-
Oermel schrieb:
@ TGGC
Naja, um erlich zu sein hab ich mir das schon mehrere Stunden angeschaut, aber um zu Opengl was zu finden, was man als Laie gut versteht und in der richtigen Sprache programmiert wird, ist recht schwer, nun ja, und dadurch kann man (find ich) Opengl nur schwer systematisch erlernen, vor allem, wenn die einzige Informationsquelle das Internet ist.Wenn du es nicht schaffst, dir solche grundlegenden Informationen zu beschaffen, sei es nun aus Dummheit oder Faulheit, dann solltest du noch mal ernsthaft ueberlegen, ob Programmieren das Richtige fuer dich ist. f'`8k
AutocogitoGruß, TGGC (\-/ has leading)
-
@ Vertexwahn
thx hab ich verstanden@FireballGFX
Kenn ich schon, hab den ein oder anderen Artikel schon gelesen, da es auf Englisch ist (ich weiss, ist sehr wichtig für Programmierer, das wie die Muttersprache zu verstehen), ists aber doch recht schwer zu verstehen, mit dem richtigen Zeitaufwand aber dann auch möglich.@TGGC
Die Informationen zu Beschaffen ist nicht das Problem, die zu verstehen ists eher. Außerdem bin ich kein ausgebildeter Programmierer. (Werd ich hoffendlich aber noch
)
-
TGGC schrieb:
Oermel schrieb:
@ TGGC
Naja, um erlich zu sein hab ich mir das schon mehrere Stunden angeschaut, aber um zu Opengl was zu finden, was man als Laie gut versteht und in der richtigen Sprache programmiert wird, ist recht schwer, nun ja, und dadurch kann man (find ich) Opengl nur schwer systematisch erlernen, vor allem, wenn die einzige Informationsquelle das Internet ist.Wenn du es nicht schaffst, dir solche grundlegenden Informationen zu beschaffen, sei es nun aus Dummheit oder Faulheit, dann solltest du noch mal ernsthaft ueberlegen, ob Programmieren das Richtige fuer dich ist. f'`8k
AutocogitoGruß, TGGC (\-/ has leading)
Sagmal TGGC ist das nicht ein wenig hart? Jeder fängt doch mal klein an oder konntest du direkt alles?
-
Oermel schrieb:
@FireballGFX
Kenn ich schon, hab den ein oder anderen Artikel schon gelesen, da es auf Englisch ist (ich weiss, ist sehr wichtig für Programmierer, das wie die Muttersprache zu verstehen), ists aber doch recht schwer zu verstehen, mit dem richtigen Zeitaufwand aber dann auch möglich.http://www.codeworx.org/opengl_tuts.php
schaumal ob das dich weiter bringt. Das sind viele Tuts, wie bei Nehe (http://nehe.gamedev.net/) Nur sind diese auf Deutsch.
http://wiki.delphigl.com/index.php/Hauptseite
das ist zwar nicht für C++, aber auch hier wird viel für das Verständnis getan.
Gruß
Fireball
-
@FireballGFX
Thx, ich glaub die ganzen guten Toturials und Pages zu Opengl kenn ich schon.Aber nochmal ne andere Frage, ich weiss wie ich eine Einheit selektiere(Mit dem select Buffer arbeite), aber wie kann man für z.B. ein Strategiespiel ein mit der Maus bestimmbares Gebiet auswählen (Einen Kasten um Einheiten ziehen). Kann man da einen Vector bzw. eine geradlinige Funktion, an hand der Positionierung der maus für errechnen? Wenn ja, dann ist das ganze ja auch noch von den Perspektivischen Einstellungen abhängig oder? Gibt es da vielleicht auch noch unterstützende Methoden, die von Glut bereitgestellt werden?
-
FireballGFX schrieb:
Sagmal TGGC ist das nicht ein wenig hart? Jeder fängt doch mal klein an oder konntest du direkt alles?
Habe ich verlangt, das man alles koennen muss? Ich habe nur gesagt, das jemand der zu dumm oder zu faul ist, nie sinnvoll programmieren wird. Was hast du denn dagegen? f'`8k
AutocogitoGruß, TGGC (\-/ has leading)
-
@TGGC
Ich glaub aber nicht, dass ich zu dumm oder zu faul bin. Sonst wäre ich weder so weit gekommen, wie ich bin, noch so engagiert Lösungen für mein Problem zu finden.
-
Oermel schrieb:
@FireballGFX
Thx, ich glaub die ganzen guten Toturials und Pages zu Opengl kenn ich schon.Aber nochmal ne andere Frage, ich weiss wie ich eine Einheit selektiere(Mit dem select Buffer arbeite), aber wie kann man für z.B. ein Strategiespiel ein mit der Maus bestimmbares Gebiet auswählen (Einen Kasten um Einheiten ziehen). Kann man da einen Vector bzw. eine geradlinige Funktion, an hand der Positionierung der maus für errechnen? Wenn ja, dann ist das ganze ja auch noch von den Perspektivischen Einstellungen abhängig oder? Gibt es da vielleicht auch noch unterstützende Methoden, die von Glut bereitgestellt werden?
das wirst du schon selbst programmieren müssen.
Ich würde hier ansetzen ...
http://glprogramming.com/red/chapter03.html#name9
-
Ok,
kann gut sein, dass ich das nochmal gebrauchen kann. Danke
-
Alles Klar habs gelöst!! Danke für die Unterstützung

mfg Oermel