Computergrafik

Fragen und Antworten für Computergraphiker und Programmierer


2
Warum teilen GPUs den Clipraum Z durch W für die Position?
Hintergrund: Ich fand, dass es sehr einfach ist, einen linearen Tiefenpuffer zu verwenden, wobei nur eine geringfügige Modifikation der kanonischen Scheitelpunkttransformation verwendet wird. Die einfachste Methode finden Sie am Ende von https://www.mvps.org/directx/articles/linear_z/linearz.htm . Die Einschränkung ist jedoch, dass es nur für Dreiecke funktioniert, die nicht gegen die nahen oder fernen …

2
Pfadverfolgung & Materialien
Ich wundere mich über die Technik, die beim Abtasten eines Schichtmaterials für das nächste Ereignis in einem Pfad-Tracer verwendet wird. Ich habe ein Material mit drei Schichten: eine Basis diffus, spiegelnd und Glanzlappen. Wie wählt man eine diskrete Schicht aus, die für die nächste Strahlrichtung abgetastet werden soll? Ist das …





1
Suche nach akzeptablen Qualitätsschatten-Mapping-Techniken
Kürzlich habe ich bei der Suche nach der Lösung des Schattenakneproblems der traditionellen Schattenkartierung exponentielle Schattenkarten implementiert. Es hat den Trick gemacht (überhaupt keine Akne), aber gleichzeitig andere inakzeptable Fehler eingeführt. Für Tiefenkartenunschärfe verwende ich Gaußsche Unschärfe mit kleinstem Sigma = 1. Test auf Schattenkarte: float occluder = texture(shadowMap lightCoords.xy).r; …

2
Wie kann ich ein dreieckiges Polygon in GLSL versetzen / verkleinern?
Ich muss alle (blauen) Dreiecke unabhängig voneinander mit dem Vertex-Shader versetzen. Um das Dreieck als Ganzes zu bearbeiten, habe ich benutzerdefinierte (vec3) Attribute für jeden Scheitelpunkt (rot) erstellt, der die nach links (lila) und rechts (grün) benachbarten Scheitelpunkte darstellt. Daraus muss ich den orangefarbenen Punkt in gleichem Abstand (im Bildschirmbereich …

2
Was ist eine gute Farbähnlichkeitsmetrik?
Ich habe einige Farben in RGB in [0,1] und möchte einen Weg finden, ihre Ähnlichkeit zu bewerten, wie sie von einem Menschen wahrgenommen wird. Ich habe zwei Ideen, aber ich bin mir sicher, dass es auch andere Optionen gibt, bin mir aber nicht sicher, welche die beste ist oder ob …
8 color 

1
Ist dieser russische Roulette-Code korrekt?
Ich verwende unter anderem www.scratchapixel.com, um zu lernen, wie man einen Renderer implementiert. Ich betrachte den folgenden Code von dieser Seite, in dem ein Paket von Photonen betrachtet wird, die sich durch ein Material bewegen. Für jedes Photonenpaket wird das Gewicht auf initialisiert . ist die Absorptionswahrscheinlichkeit.www111dwdwdw Der verwirrende Teil …

2
Helfen Sie mir, die anisotrope Filterung (AF) zu verstehen.
In letzter Zeit habe ich über Texturfilterung gelesen, nämlich Nearest-Neighbour-Filterung, bilineare Filterung, trilineare Filterung, anisotrope Filterung, MIP-Karten, RIP-Karten und so weiter. Aus einer hochrangigen Perspektive denke ich, dass ich diese Techniken verstehen kann, wie die Arbeit funktioniert und warum sie existieren, mit Ausnahme der anisotropen Filterung. Anisotrope Filterung macht mich …

2
Codieren Sie zwei R11G11B10F-Puffer mit Y'CbCr?
Wir versuchen, die Beleuchtung in der Füllrate zu optimieren. Integrierte Grafikchips haben einen sehr langsamen Speicherzugriff. Es gibt zwei Lichtpuffer: einen für Diffuse und einen für Specular. Beide verwenden das Format R11G11B10F. Gibt es eine Möglichkeit, zwei Puffer in einen zu packen? Verwenden Sie beispielsweise das Farbmodell Y'CbCr:

2
Werden Scheitelpunkte für indizierte Netze pro Poly erneut verarbeitet?
Ich habe mich ein wenig mit dem befasst, was auf Hardwareebene auf der GPU tatsächlich passiert, und NVidias Leben eines Dreiecks gefunden, das die Pipeline ziemlich gut erklärt, zumindest für grüne Boxen. Eine Sache, bei der ich nicht klar war, ist, was mit indizierten Netzen passiert, wenn der gleiche Scheitelpunkt …
8 rendering 


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.