Přivrácené a odvrácené stěny

Odeslat odpověď

Smajlíci
:D :) :( :o :shock: :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode je zapnutý
[img] je zapnutý
[flash] je vypnutý
[url] je zapnuté
Smajlíci jsou zapnutí

Přehled tématu
   

Rozšířit náhled Přehled tématu: Přivrácené a odvrácené stěny

Dot product

od Inv » 25. 1. 2007 21:38

Petr H píše:Stěna tělesa je přivrácená pokud normála stěny svírá se směrem pohledu tupý úhel, pokud je sevřený úhel ostrý, je stěna odvrácená. Normála přivrácené stěny tedy míří od pozorovatele, normála odvrácené stěny míří k pozorovateli.
..přesně tak, takže stačí udělat skalární součin.

od gimli » 25. 1. 2007 11:13

Petr H píše:Stěna tělesa je přivrácená pokud normála stěny svírá se směrem pohledu tupý úhel, pokud je sevřený úhel ostrý, je stěna odvrácená. Normála přivrácené stěny tedy míří od pozorovatele, normála odvrácené stěny míří k pozorovateli.
Tohle zní logicky, tak něco bych si i myslel, ale jak bylo zmíněno výše: "Každá stěna má dvě normály" a pochopil jsem, že tu správnou určím jedině tak, že mám systém v tom jak ty stěny zadávám. Každopádně dík.

od Petr-H » 24. 1. 2007 23:47

Stěna tělesa je přivrácená pokud normála stěny svírá se směrem pohledu tupý úhel, pokud je sevřený úhel ostrý, je stěna odvrácená. Normála přivrácené stěny tedy míří od pozorovatele, normála odvrácené stěny míří k pozorovateli.

od dr.Bik » 24. 1. 2007 22:42

Ja si myslim, ze je to takhle (pozor, nasledujici radky se nemusi nutne zakladat na pravde :-) ale v OpenGL to takhle nejak funguje)

1) Normala je tam pouzita dost nesikovne, protoze kazda rovina v 3D ma normaly 2 (a pak nasobky, ale ja budu predpokladat, ze normaly jsou normalizovany) a ty jsou presne opacny.

2) Aby slo jednoduse urcit, ktera stena je privracena, potrebuje to od tvurce sceny konzistenci v tom, jak bude ty steny zadavat. Predpokladam, ze scena je tvorena polygonama (hezkejma, takovejma, ktery jsou v jedny rovine)

Kazda stena ma 2 strany, jedna je videt zevnitr telesa a jedna z vnejsku. Pozaduje se, kdyz se podivas na tu stranu, ktera jakoby miri ven z objektu, aby jednotlivy vertexy byly zadany po smeru hodinovejch rucicek (nebo mozna je to obracene, nicmene na principu to nic nemeni)

3) Vezmes 1., 2. a posledni bod v tomhle poradi a udelas z nich 2 vektory mirici z 1. bodu (tzn. 1. a 2, 1. a posledni) a udelas vektorovej soucin - tak dostanes jednu normalu pro kazdou stenu (je to teda lepsi jeste znormalizovat)

4) Dal si vezmes smer tvyho pohledu a porovnas ho s tou normalou a rozhodnes se podle toho, jestli je uhel mezi normalou a tvym pohledem z rozmezi (-Pi/2, Pi/2) nebo ne.

Tady normalizaci vlastne ani nepotrebujes, jde jen o znaminko skalarniho soucinu tech vektoru, ale je hezky mit vektory znormalizovany, ne :)

Takhle nejak to funguje (mam hrozne blbou 3D predstavivost, takze jak se mas konkretne rozhodnout bych musel chvili badat)

Přivrácené a odvrácené stěny

od gimli » 24. 1. 2007 21:53

Nevíte někdo jak se určí přivrácená a odvrácená stěna tělesa? Pelikán má na slidech, že pomocí normály, ale nějak mě nenapadá jakou orientaci bych musel dát hranám nebo s čím bych měl tu normálu násobit, nebo nakonec jak se liší normála přivrácené a odvrácené stěny?

Nahoru