1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  1. Informatik Forum
  2. Mitglieder
  3. source_of_truth

Beiträge von source_of_truth

  • Shadow Mapping Implementierung

    • source_of_truth
    • 20. Juli 2012 um 10:44

    Ich habe das Problem, texture2D(shadowMap,shadowCoordinate.st) im Frag Shader ist Müll. Da muss vorher durch den w-Anteil geteilt werden.

  • Shadow Mapping Implementierung

    • source_of_truth
    • 19. Juli 2012 um 22:44

    Erst einmal danke ich schon einmal für deine Hilfe. :thumb: Geschafft ist es aber noch nicht, denn ich habe nur ein Objekt, dass ist das Verrückte. Sprich, die Model-Matrix ist gleich.

    Die cam.applyModelViewMatrix() Methode verschiebt nur mein Objekt, bzw erzeugt eine neue ModelViewMatrix für die Szene, abhängig von den Cameraeinstellungen.

    Code
    glLoadIdentity();
            glRotatef(pitch, 1, 0, 0);
            glRotatef(yaw, 0, 1, 0);
            glRotatef(roll, 0, 0, 1);
            glTranslatef(-x, -y, -z);

    Diese werden wie oben zu sehen in der renderShadow() überschrieben, die Kamera wird angepasst, die ShadowMap gerendert

  • Shadow Mapping Implementierung

    • source_of_truth
    • 19. Juli 2012 um 10:59
    Zitat von herrjohann


    Entweder du lädst diese für jedes Objekt hoch oder du verwendest gl_ModelViewMatrix und berücksichtigst die inverse View-Matrix in der gl_TextureMatrix[1] um den View-Anteil aufzuheben.

    Aber die gl_TextureMatrix[1] wird bei mir doch durch: bias * shadow_projection * shadow_modelview berechnet, damit werden die Vertices doch direkt entsprechend transformiert.

    Standart ist doch diese Gleichung: projection * view * model * vertex = projection * modelview * vertex
    Schatten mit der inversen Matrix funktioniert so: shadow_projection * shadow_modelview * modelview^⁻1 * modelview * vertex
    und das ist doch gleich: shadow_projection * shadow_modelview * vertex
    was mein Code (plus den bias) doch berechnet, oder bin ich wirklich zu blöde :) ?

    Code
    glLoadMatrix(b);
    glMultMatrix(p);
    glMultMatrix(m);
    //matrix is now stored in gl_TextureMatrix[1]
    Code
    shadowCoordinate = gl_TextureMatrix[1] * gl_Vertex;
  • Shadow Mapping Implementierung

    • source_of_truth
    • 18. Juli 2012 um 21:29

    Das Problem wurde gefixt. Es handelte sich um einen bescheuerten Tipfehler im Shader.
    Zur Erklärung des Shadow Mappings allgemein, bitte besuche den Post der unten mehrfach erwähnt wird.

Rechtliches

Impressum

Datenschutzerklärung