Üdv!
Már egy ideje foglalkozok OpenGl-l, de az az érzésem, hogy egy kicsit le vagyok maradva... :)
Van egy újabb (2008) OpenGL könyvem, ami közli, hogy a glVertex-ek elavultak, és a jövő a tárobjektumokban van. Ezzel nincs is gond, gondoltam majd akkor megtanulom. A gáz az, hogy a könyv nem írja le a használatát pontosan (nálam legalábbis nem működött), tehát a csúcstömbök még működtek a tárobjektumok nem. Mindegy, a lényeg, hogy rákerestem neten, és természetesen minden link kb a NeHe oldalára dobott (ahonnan én is egy ideig tanultam) a gáz az, hogy azok a tutorialok is még a vertex-eket használnak. A többi találat is ugyezeket használja. Szóval ami fontos lenne az vagy egy frissített tutorial, vagy egy újabb, jól kommentelt kód.
Thx:RiseR
- 5639 megtekintés
Hozzászólások
- A hozzászóláshoz be kell jelentkezni
Mik azok a tárobjektumok? :-) Mármint minek a magyar fordítása ez?
Abban kell gondolkodni, hogy mik lehetnek szűk keresztmetszetek OpenGL programozáskor:
* Egyik az, hogy az OpenGL hívásoknak elég nagy overheadje van, ezért ha minden csúcshoz hívunk egy OpenGL-t, akkor az eléggé CPU igényes lesz
* A másik, hogy a GPU és a CPU közötti adatutaztatás az a PCI-E buszon megy, aminek véges sávszélessége van.
Ezek miatt érdemes minél több dolgot GPU memóriában tárolt objektumokból renderelni.
Viszont ezekre csak akkor van szükséged, ha a kevés objektumot tartalmazó példakódok szintjéről átlépsz a bleeding egde világába, ahol minden mikroszekundum számít. Ekkor is csak a nagyon részletgazdag dolgok esetén érdemes spórolni, nem mindenen.
Konkrét példaprogramot nem tudok adni sajnos :-(.
- A hozzászóláshoz be kell jelentkezni
"Mik azok a tárobjektumok? :-) Mármint minek a magyar fordítása ez?"
Buffer Objects. A tobbi dolog mar mind deprecated.
- A hozzászóláshoz be kell jelentkezni
Szerintem te a VBO-ra gondolsz:
- A hozzászóláshoz be kell jelentkezni
Igen, arra gondol. Viszont a Red Book tenyleg szar olyan teren, hogy leirja, mi az ami deprecated, de nem irja le, hogy oke, akkor ezt hogyan kell csinalni?
Btw. van olyana shader library, amivel a fixed-function pipeline emulalhato, hogy ha nem compatibility contextet hasznal az ember, hanem core contextet (lasd OS X)?
- A hozzászóláshoz be kell jelentkezni
Sajnos nem tudok róla hogy van ilyen, de ha lenne is, nem hiszem hogy gyorsabb lenne, mint a driver által emulált :)
- A hozzászóláshoz be kell jelentkezni
Core contextben (tehát nem compatibilityben) nincs olyan, hogy a driver altal emulalt. Nincs glVertex hivas, csak Buffer Objectek es shaderek vannak, mast nem csinalhatsz. Minden, ami a compatibility extensionben elerheto, az egy core contextben nem letezik. Es peldaul az OS X lion csak 2.1 vagy 3.2 core profilokat engedelyez. Ott szukseg lehet ra.
- A hozzászóláshoz be kell jelentkezni