Igyekeztem a címben kellően összefoglalni azt, hogy mit is szeretnék. Tudom, hogy tldr-nek tűnik, de kééérlek, ha már itt jársz, olvasd el. Köszi!
Előszó: Sajnos nem nagyon van időm elmélyedni az OpenGL, és egyáltalán a grafikus programozás világában jelenleg, egyéb elfoglaltságok miatt. Már így is túl sokat olvastam (időt pazaroltam) ezzel az egésszel. Így most tényleg valami kezdőknek szánt iránymutatásra lenne szükségem.
A laptopomban (ThinPad T61) levő Intel x3100 kártya segítségével szeretnék OpenGL segítségével előállított képen élsimított vonalakat. A redbookot olvasgatva először is bosszankodok, hogy majd' minden bekezdés elején ott a "Note:", hogy az ebben a fejezetben leírt dolgok bizony lassan deprecated státuszban vannak.
A Google találatai elvezettek NeHe 46. leckéjéhez, amely egy igencsak windows-os beállítottságú, sok egyéb fájlt include-oló megoldásnak tűnik, és végül a letöltött windows-os binárist (wine-nal) futtatva csak nem lesz élsimítás.
Ezen a multisamplingon lovagolva a következőig jutottam (teles glxinfo kimenet):
[kalevala][kmarc][~][$] glxinfo | grep -i multisample
GLX_ARB_multisample, GLX_EXT_import_context, GLX_EXT_texture_from_pixmap,
GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context,
GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context,
GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
GL_ARB_half_float_vertex, GL_ARB_map_buffer_range, GL_ARB_multisample,
GL_EXT_framebuffer_multisample, GL_EXT_framebuffer_object,
Tehát úgy nézem, hogy nálam van ARB multisample kiterjesztés. Viszont a következő kódrészlet egyértelműen kiírja, hogy nulla darab sample bufferem van:
static GLint buf[1], sbuf[1];
glGetIntegerv (GL_SAMPLE_BUFFERS_ARB, buf);
printf ("number of sample buffers is %d\n", buf[0]);
glGetIntegerv (GL_SAMPLES_ARB, sbuf);
printf ("number of samples is %d\n", sbuf[0]);
Megmondom őszintén, nem is nagyon értem a glxinfo kimenetében szereplő GL*multisample-ök összefüggését, kapcsolatát.
Kérdéseim a következők:
- Van-e lehetőség bármilyen módon egyszerű élsimításra ezen a hardveren?
-- Az sem gond, ha lassú: jelenleg pontosan 162 poligon, és két lámpa mellett van rá szükségem.
- Accumulation bufferrel próbálkoztam, egy példa alapján eljutottam egy Gauss-szórásos tömb használatáig, azonban az előállított kép általában mozog is, ezzel a módszerrel pedig elmosódottá válik a mozgás. Esetleg ezirányú ötletnek is örülnék.