.[ ČeskéHry.cz ].
Cube mapping shadows - GLSL

 
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> 3D API / 3D Enginy
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
mafian89



Založen: 21. 10. 2012
Příspěvky: 51

PříspěvekZaslal: 24. únor 2013, 21:24:41    Předmět: Cube mapping shadows - GLSL Odpovědět s citátem

Zdravím, už delší dobu si lámu hlavu nad následujícím problémem. Mám naimplementovaný CMSM. Jenže jsem došel na docela zásadní problém. Všechno "funguje", jak má. Alespoň do té doby, než chci zobrazit (namapovat) pouze jednu stranu kostky (potřebuji skrz optimalizaci). Data v textuře jsou správná (viz obrázek), takže hádám, že bude problém někde v mapování. Ovšem nemám tušení, kde by to mohlo být. Nesetkal se někdo s podobným problémem?

EDIT: Podivné je, že pro -Z stranu to funguje, jinde ne :-/

shader pro mapování:
kód:

    vec4 position_light_space = v_light * vec4(vertex_fs,1.0);
    vec4 abs_position = abs(position_light_space);
    float fs_z = -max(abs_position.x, max(abs_position.y, abs_position.z));
    vec4 depth_tmp = P_light * vec4(0.0, 0.0, fs_z, 1.0);
    float depth = (depth_tmp.z / depth_tmp.w) * 0.5 + 0.5;
   
    return texture(cube_shadow, vec4((position_light_space.xyz),depth-0.000055));
, kde vertex_fs je netrasformovaný vertex z VS.

obrázky:
Kompletní mapa (jen pro ilustraci)


a mapa, pro +x stranu:


Výsledkem mapování je (resp. není) nic - pro jednu stranu. Nemá někdo nápad, co by problém mohlo způsobovat? Díky za každou radu.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
mafian89



Založen: 21. 10. 2012
Příspěvky: 51

PříspěvekZaslal: 4. březen 2013, 23:12:45    Předmět: Odpovědět s citátem

Update. Chyba byla ve výpočtu hloubky. Nechal jsem OGL počítat hloubku pixelu po projekci - tady byl zakopaný pes. Vyřešil jsem to ručním výpočtem hloubky.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Zobrazit příspěvky z předchozích:   
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> 3D API / 3D Enginy Časy uváděny v GMT + 1 hodina
Strana 1 z 1

 
Přejdi na:  
Nemůžete odesílat nové téma do tohoto fóra
Nemůžete odpovídat na témata v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete hlasovat v tomto fóru


Powered by phpBB © 2001, 2005 phpBB Group


Vzhled udelal powermac
Styl "vykraden" z phpBB stylu MonkiDream - upraveno by rezna