Keresés

Új hozzászólás Aktív témák

  • afk22

    tag

    Szerintem tile base leiras picit osszekavarodott :). Teny, hogy nem ismerem a pontos mukodeset a mostani mobilokban hasznalt gpu-knak (PowerVR regen pc-kben nyomult ugyan ezzel a technologiaval, az meg remlik), de az alap elve az a tile base megoldasnak, hogy egy pici pl 16x32-os (azt hiszem a PowerVR Kyro ilyet hasznalt) GPU-ba integralt Z buffert es pixel buffert hasznalnak. Ami nagyon gyors irast es olvasast jelent, mert mondhatni mindig minden a cacheben van.

    Ahhoz hogy ez hatekony is legyen, meg kell varnia a szinter teljes elkuldeset, es csak utana tudja kiszamolni tile-onkent a kepet. Viszont itt jon be meg egy hatrany, hogy nagyobb a latency a teljes kep kiszmitasahoz, tehat kesobb kapjuk meg a vegleges kepet, annak ellenere, hogy fps-ben nem lesz veszteseg.

    Kulon a kartyan valo sortolast nem hinnem, mivel alphas dolgoknal mas eredmenyt ad, egy feluldefinialt sorrendezes. Azt meg a kartya ne akarja eldonteni, hogy en mit szeretnek. Es akkor nem is beszeltem a szinter kozben Z teszt allitasrol, a melyseg pixel shaderbol valo irasarol stb stb.. Raadasul egy game engine alapbol rendezi min objektum szinten a szinteret.

    Az hogy eloszor vegignyomja a z buffert es utana csak a lathato pixelekre szamol pixel shadert, az azert nem egy uj talalmany es szerintem nem csak a PowerVR hasznalja, mivel a megvalositasa sem nagy dolog.

    A deferred render tudtommal picit mas. Ott az a lenyeg, hogy nem rogton a vegleges szint szamoljuk ki, hanem az adott pixelben elmentjuk a terbeli poziciokat, normalvektorokat es egyeb inkabb a feluletre jellemzo paramtereket, es nem a szinre vonatkozoakat. Majd tovabbi korokben, ezen adatokat felhasznalva tudunk arnyalni. Igy ha az adott szinterben eppen 8 fenyforras van, akkor 8szor megyunk vegig ezen az adaton (csak kepernyon levo pontra kell vegrehajtani es nem az osszes haromszogre). Mig ezt hagyomanyosan egy uber nagy pixel shaderbol lehetne megoldani, amiben van egy ciklus es az vegigporgeti a fenyforrasokat. A deferrednel raadasul szukithetjuk a feny szamitasat, tehat az X-edik fenyt csak egy teruletre szamoljuk amit mondjuk a volumetrikus shadow (stencil bufferes), val jeloltunk ki. Vagy ha tudjuk, hogy egy pici fenyforas csak a kepernyo egy bizonyos teruletet vilagithatja be.

    Az sem igaz, hogy mindig a legkisebb z ertek marad meg, mivel a z teszt fuggvenye allithato. Illetve tuttommal ebben a tile base es az immediate nem kulonbozik, mindegyik megcsinalja a z tesztet.

    dx9 es dx11 kozott akkora szakadek van, hogy nem is igaz :), az mas kerdes, hogy ebbol mennyit tudnak kihasznalni a programozok, es ez latvanyra mire eleg. Raadasul egy jo jatek ma mar nem attol jo, hogy jol nez ki, hanem hogy van igazi feelingje.

Új hozzászólás Aktív témák