Kinetix

"Aki másnak felbontás...!"


  • Aldaryn
    #52436
    Egy bizonyos verzió óta a VRay dinamikus memóriakezelése támogatja az instancolt mesh-eket. A dinamikus memóriakezelésre tekints úgy, mintha az egész jelenetet proxyba, vinyóra tolnád, és onnan mindig csak azokat a chunkokat olvasnád be, amik az aktuális adag ray kiszámolásához kellenek.
    Ebből következik, hogy a proxykat sokszor nem feltétlen a render gyorsítására, hanem a MAX gyorsítására használja az emberfia, mert lehet, hogy a render megbirkózik a gigamennyiségű fával, bokorral, a MAX viewportról mindez nem igazán mondható el, nem beszlve olyan voodoo dolgokról, mint a snap és társaik... :D

    Komplex jeleneteknél, ahol sok glossyban esetleg sokminden látszik bármilyen ray útvonalon, gyakorlatilag nagyon kicsivé zsugorodik annak előnye, hogy csak a szükséges mennyiségű geometria van a memóriában. (ugye, ha kell az összes, akkor sokat nem ér, hogy ki be swappelgeti... sőt, még lassít is, mintha minden a memben lenne konstans, és nem törődne láthatóságvizsgálattal, lemezművelettel)

    Itt is igaz, és ezekből következik, hogy nem a mennyiség, hanem a variációmennyiség az, ami számít. Lehet, hogy egy darab fából százmilliárdot is könnyedén renderelsz (mert ha egy instance belefér a membe, akkor onnantl mindegy) de húszból már húsz darab is sok.

    Amit tehetsz, hogy először is, megnézed, mennyin van a dinamikus memória limit. (Független, hogy épp Autón, statikuson, vagy dinamikuson van a mem, mert a proxykhoz, ugyanúgy, mint a displacehez, minden esetben dinamikus pool kerül foglalásra) Érdemes ezt olyan magasra feltenni, amennyire csak teheted, akár virtuális memóriába is belenyúlva. Ha ez nem elég, akkor jön a favágómunka. :) Kiszedsz pár fajtát a proxykból. Lehet, hogy nem kell oda az a húsz féle fa, elég csak tizenöt, de nagyobb színvariációval, stb... főleg, ha háttérkitöltő fákról van szó. Nekem legalábbis ez a tapasztalatom.

    És mindig ott a legjobb, igazi profi megoldás. Veszel még ramot.