Opengl GL-ES2 árnyék

Opengl GL-ES2 árnyék
2013-09-03T23:20:41+02:00
2013-09-06T13:01:26+02:00
2022-10-15T23:26:42+02:00
demodemo
Üdv,

Elakadtam az "árnyék-készítésben" egy játéknál.
Hogyan célszerű megoldani? Olvastam sok-sok weblapot róla, de még most sem igazán esik le.

GLES2 vagyon, azaz shaderek is.
Tudok FBO-ba is renderelni.

Valaki tudna adni egy körültekintő leírást erről?

Amit szeretnék: van egy felületem, ami nem sík, dimbes-dombos. ezen áll egy emberke és az emberke árnyékát szeretném kivetíteni-rásimítani az alatta lévő dimbes dombos részre.


Előre is köszönet!
Mutasd a teljes hozzászólást!
Igen, most akkor lapozz a 'soft shadows' cimu fejezethez :D
Mutasd a teljes hozzászólást!

  • A google opengl es shadow, elso talalat nem segitett o.O? -> Android OpenGL ES 2.0 - Shadow Mapping
    Mutasd a teljes hozzászólást!
  • Valaki tudna adni egy körültekintő leírást erről?


    Jójó, de miről is? Többféle árnyék számítás van, más-más előnyökkel és hátrányokkal. Pont azért már nincs egy üdvözítő mód.

    Az árnyék számítás
    most sem igazán esik le.
    , akkor kérdezz valamit hogy mi nem. Mert ugye maga az árnyék elve az egyszerű, a baj ott van, hogy az alkalmazott módszerhez (renderelési módszerhez) nem igazán illik, ezért kell vele trükközni (ray tracing az adja jól az árnyékolást, tükröződést, csillogást, az árnyalási modellünkben ezeket mind közelítjük/imitáljuk valahogy).

    Egy jó kis összevetése az egyes árnyékolási megoldásoknak:
    http://www.ia.hiof.no/~borres/cgraph/explain/shadow/p-shadow.html



    Mutasd a teljes hozzászólást!
  • Mobil eszkozon nagy valoszinuseggel nem raytracert használ egy játékhoz.
    Shadow volume-t pedig Doom3 óta nem igen hasznalnak, amiota OpenGL-ben megy a depth-texture compare. Szoval marad a shadow mapping...
    Mutasd a teljes hozzászólást!
  • Ok. Mobil es android. Igen lattam azt a kodot is le is toltottem. Ott 2 baj van. 1 nem mukodik a kod. 2 egy sima sikra probalna vetiteni.

    Opengl es1 ben a sima projection os shadow ment de az egyszeru. Most van egy hepehupas talajom es arra kene.

    Valaki le tudna irni lepesrol lepesre hogy hogyan kene mit hasznalva? Mert nem igazan ertem a logikajat meg.

    Amugy tul sok info sincs errol.

    En vhigy igy gondolnam:

    Kirajzolom az egesz jelenetet normalisan.
    Kirajzolom a shadowot fbo ba.
    Kirajzolom az fbo t valamilyen modon a kepernyore.

    Mi a jo megoldas?
    Mutasd a teljes hozzászólást!
  • A raytrace-t inkább csak azért említettem meg, hogy az árnyék keletkezése triviális ilyen esetben, a használt árnyalási modellünkben meg valahogy közelítjük/imitáljuk ezt.

    shadow map: ok, nekem nem jött le, hogy ilyet akar implementálni
    Mutasd a teljes hozzászólást!
  • Kirajzolom az egesz jelenetet normalisan.
    Kirajzolom a shadowot fbo ba.
    Kirajzolom az fbo t valamilyen modon a kepernyore.


    A real_hat által adott linket megnézted? Ott írja lépésrőé lépésre, hogy mit csinál.
    Fontos lenne elolvasni, mert szerintem még nem érted, hogy a te módodon nem "keletkezik" árnyék.

    De ott volt az én linkemen is leírva, shadow map alatt:
    The algorithm for shadow maps can be described as follows:

    The algorithm requires two renderings:
    1. The first rendering
    1. Render the depth buffer from the position of the light in the space
    (The result is a shadow map that is used in the 2. rendering)

    2. The second rendering
    1. Render the scene from the position of the eye in the space. For every fragment
    that is converted to a window coordinate (Rasterized):
    - Find the fragment's XYZ position in relation to the light
    - Compare the depth value for the light's position XY in the depth map
    with the fragment's light position Z

    2. A = Z value from the depth map with the fragment's XY light position
    B = Z value for the the fragment's XYZ light position

    3. If B is larger than A there has to be "something" that is closer to the light than
    the current fragment
    - The fragment is shaded

    4. If A and B are close to equal the fragment is outside the shadow

    Ha kapsz választ, olvasd el!
    Mutasd a teljes hozzászólást!
  • http://pixelp3.files.wordpress.com/2011/05/snap20110524_194443.png

    OK más ötlet? Ez eléggé csúnya, úgy hogy 1024-es textúrára rakom az FBO-t.

    Nem létezik, hogy ennyire nincs semmi normális anyag egy használható árnyékhoz mobilra:)
    Mutasd a teljes hozzászólást!
  • Igen, most akkor lapozz a 'soft shadows' cimu fejezethez :D
    Mutasd a teljes hozzászólást!
  • Ok kösz, ez elég bonyolult nekem...:D
    Asszem pár hét alatt meg is írom:)

    Az a durva h androidból elég jó vagyok, itt meg csak ámulok és bámulok a 3D-s projectemen. (3 hónapja tart kb)
    Mutasd a teljes hozzászólást!
Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd