játékfejlesztés.hu
FórumGarázsprojectekCikkekSegédletekJf.hu versenyekKapcsolatokEgyebek
Legaktívabb fórumozók:
Asylum:    5511
FZoli:    4894
Kuz:    4455
gaborlabor:    4449
kicsy:    4304
TPG:    3402
monostoria:    3284
DMG:    3172
HomeGnome:    2919
Matzi:    2529

Pretender:    2498
szeki:    2440
Seeting:    2306
Geri:    2198
Orphy:    1893
Joga:    1791
Bacce:    1783
MaNiAc:    1735
ddbwo:    1654
syam:    1491
Frissebbek | Korábbi postok
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [15] [20] [25] [30] [35] [40] [45] [50] [55] [60] [65] [70] > 71 < [75] [80] [82]
Hacker - Törzstag | 567 hsz       Online status #20926   2006.07.05 09:28 GMT+1 óra  
Milyen hibákat ír ki?
No [img] !
Programozz ne háborúzz!!!!

   
gaborlabor - Moderátor | 4449 hsz       Online status #20920   2006.07.05 08:35 GMT+1 óra  
http://nehe.gamedev.net/data/lessons/lesson.asp?lesson=33
Innét letöltöttem a dev-c++os projektet. Viszont ha a #include <gl\glut.h> -t hozzáírom, akkor fordításnál hibákat ir ki. Mi lehet a gond?

   
gaborlabor - Moderátor | 4449 hsz       Online status #20911   2006.07.05 07:26 GMT+1 óra  
Köszönöm a sok infot!
Jlenleg a Ne-He féle TGA betöltővel babrálok. Fél órán belül kiderül, hogy jó-e.
Ami Warlock mond, hogy tetszene nekem, az tetszik is, de ha már belekezdtem ebbe, akkor ezt befejezem. Ja, és jelen esetben az is jó, ha csak lyukakat tudok tenni bele. De mivel később valószínűleg szükségem lesz átmenetre is, ezért a legjobb ha most sikerül olyanra megoldani.
A PNG az lehet hogy tényleg jobb lenne, mint a TGA, de ha már ennek álltam neki...
Elég sok időm megy el az angol-> magyar fordítással (legalább gyakorlom), meg még a kódot is meg kell emésztenem. Remélem sikerülni fog.

   
MaNiAc - Szerkesztő | 1735 hsz       Online status #20910   2006.07.05 06:58 GMT+1 óra  
Az a Color Keying, amit eddig hárman is leírtatok Szvsz az alpha textúra jobb, mert a color key-jel "lyukat tudsz csinálni a textúrába", de fokozatos átlátszóságot nem...

Szóval TGA inkább... Báár, szvsz PNG formátummal jobban jár, mert sokkal kisebb, mint a TGA, mégis lossless tömörítéssel dolgozik. Ezt is lehet szinte minden normálisabb progival halomra gyártani, DevIL (aka. OpenIL) segítségével meg betölteni...
Dare to imagine!
http://www.insaneidea.hu
   
warlock - Törzstag | 704 hsz       Online status #20909   2006.07.05 06:16 GMT+1 óra  
használhatsz tgat amelyet photoshoppal vagy gimpel vagy... készítesz el
VAGY és ez a megoldás sztem tetszeni fog neked
azokat a részeket a textúrán amelyeknek átettszőnek kéne lenni feketével jelölöd és a megfelelő blendfuncal szűröd a feketét a tesztúrából

   
Hacker - Törzstag | 567 hsz       Online status #20907   2006.07.05 05:52 GMT+1 óra  
Mondjuk én az OpenIL-t ajánlanám a tga fájlok betöltésére. De ha magad szeretnéd megírni a loader akkor itten van egy tutorial:

http://nehe.gamedev.net/data/lessons/lesson.asp?lesson=33

Egy csomó ingyenes rajzprogram van amelyekkel tga-kat készíthetsz, mint pl. a Gimp (ha jól tudom).
No [img] !
Programozz ne háborúzz!!!!

   
gaborlabor - Moderátor | 4449 hsz       Online status #20906   2006.07.05 05:48 GMT+1 óra  
Huhh, megint megelőztél
Szóval TGA. Valahol már hallottam róla... De mivel tudok TGA képet készíteni? A betöltése sokban különbözik a bmp-étől?
Köszi.

   
gaborlabor - Moderátor | 4449 hsz       Online status #20905   2006.07.05 05:45 GMT+1 óra  
Aha, értem. Legjobb tudomásom szerint OGL alatt ez nem ilyen egyzserű. Még mindig warlock válaszán rágódok, miszerint használjak alphás textúrát. De bmp-ben nincs alpha, nem? Akkor milyen formátumot használjak, stb? Én még nagyon kezdő vagyok ebben, de rengeteg kérdésemre nincs válasz az ebookokban.

   
Hacker - Törzstag | 567 hsz       Online status #20904   2006.07.05 05:42 GMT+1 óra  
A tga tárol alpha értéket is.
No [img] !
Programozz ne háborúzz!!!!

   
Hacker - Törzstag | 567 hsz       Online status #20903   2006.07.05 05:41 GMT+1 óra  
Értem már. DirectX alatt meg lehetett adni egy transparent color-t. Erre gondolsz? Az nem jelent meg végül a textúrán mint szín. Azt sajnos nem tudom, hogy OGL alatt hogy kell.
No [img] !
Programozz ne háborúzz!!!!

   
gaborlabor - Moderátor | 4449 hsz       Online status #20902   2006.07.05 05:41 GMT+1 óra  
én eddig csak bmp fájlokat használtam textúrákként. de bmp fájlba lehet egyátalán átlátszó részeket tenni? szerintem nem. de akkor mit értett warlock az alatt, hogy alphás textúrát használjak? bmp helyett használjak más formátumot?

   
gaborlabor - Moderátor | 4449 hsz       Online status #20901   2006.07.05 05:15 GMT+1 óra  
Hacker: értem, hogy te mire gondolsz, de én nem erre gondoltam. Ezt meg tudtam oldani én is, de a gond azzal van amit lentebb irtam. Az ez előtti hsz-em a fontos.

   
Hacker - Törzstag | 567 hsz       Online status #20900   2006.07.05 05:12 GMT+1 óra  
Nem arra gondolsz, hogy a vertex nem látszik? Én erre gondoltam:

Kód:
glColor4f(float red, float green, float blue, float alpha);


És itt a negyedik paramétert változtatod kedved szerint.
No [img] !
Programozz ne háborúzz!!!!

   
gaborlabor - Moderátor | 4449 hsz       Online status #20899   2006.07.05 05:09 GMT+1 óra  
beast: első ránézésre erre gondolok. Itt azt irja, hogy bmp-kkel tudom megoldani, amik alapból nem támogatják az alfa csatornát (vagy vmi ilyesmi). Viszont ha tudok képszerkesztővel olyan képet készíteni amin vannak átlátszó részek, akkor azzal jobban járok, mert nem kell vele vacakolnom, nem? Mindjárt átböngészem részletesen.
warlock: ez nekem is eszembe jutott, de mivel tudok alphás textúrát csinálni? Gondolom Paint-tel nem, én eddig ezt használtam. Photoshophoz, és társaihoz sajnos nem értek, de gonsolom azzal lehett alphás képeket készíteni. És akkor az azzal készített -átlátszó részeket tartalmazó- képeket ha elmentem bmp-be, és pontosan ugyanugy használom mint az eddigieket, akkor a bizonyos ponton átlátszó lesz? Nekem nem kell valamit átírnom a kódban?

   
beast - Törzstag | 1241 hsz       Online status #20898   2006.07.05 04:28 GMT+1 óra  
Color Key
Ezt nézd át, erre gondolsz ugye?

   
warlock - Törzstag | 704 hsz       Online status #20897   2006.07.05 03:46 GMT+1 óra  
alphás textúrával

   
gaborlabor - Moderátor | 4449 hsz       Online status #20896   2006.07.05 03:45 GMT+1 óra  
Hy! Egy újabb kérdésem lenne a hozzáértőkhöz:
Hogyan tudom azt megoldani, hogy egy polygonra húzok egy textúrát, a blendinget engedélyezem rá, és hogy a textúra különböző területein különböző mértékű legyen az alpha értéke. Vagyis olyat szeretnék, hogy pl egy négyzeten van egy textúra, és a textúra középen mondjuk teljesen átlátszó, az egyik sarokban teljesen átlátszatlan, a többi 3 sarokban meg mondjuk 50%osan áttetsző.
Ezt hogyan lehet megoldani? És olyat lehet, hogy az alpha értéke ne átmentesen legyen, hanem mondjuk az egyik texelen 0, a mellette lévőn meg már 100 ?
THX

   
gaborlabor - Moderátor | 4449 hsz       Online status #20886   2006.07.04 14:53 GMT+1 óra  
áhháá! Erre gondoltam! Ez már valamivel jobban tetszik, mint a windowsos megoldás! Köszike!

   
beast - Törzstag | 1241 hsz       Online status #20885   2006.07.04 14:37 GMT+1 óra  
Utána kerestem a dolognak:
glutSetCursor( GLUT_CURSOR_NONE)
Asszem, erre gondoltál!

   
gaborlabor - Moderátor | 4449 hsz       Online status #20884   2006.07.04 14:22 GMT+1 óra  
köszi szépen, ez ideiglenes megoldásnak jó lesz. de terveim szerint egy platformfüggetlen progit szeretnék, amihez ez nem tűnik túl ideálisnak...

   
beast - Törzstag | 1241 hsz       Online status #20878   2006.07.04 13:56 GMT+1 óra  
ShowCursor(FALSE) vagy ShowCursor(TRUE), és a windows.h headerben található a függvény..

   
gaborlabor - Moderátor | 4449 hsz       Online status #20873   2006.07.04 13:48 GMT+1 óra  
hi. nem tudtok valami modszert arra, hogy teljes képernyős módban eltűntessem valahogy az egérkurzort?

/*
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB);
glutGameModeString("1024x768:16";
glutEnterGameMode();
*/

Köszi!

   
MaNiAc - Szerkesztő | 1735 hsz       Online status #20834   2006.07.04 11:17 GMT+1 óra  
Nekem már elmondta priviben mi kéne, de ahhoz nem jó az se.
Dare to imagine!
http://www.insaneidea.hu
   
beast - Törzstag | 1241 hsz       Online status #20833   2006.07.04 11:02 GMT+1 óra  
És ha elrejted az ablakot? (ShowWindow(SW_HIDE))

   
warlock - Törzstag | 704 hsz       Online status #20823   2006.07.04 09:28 GMT+1 óra  

   
MaNiAc - Szerkesztő | 1735 hsz       Online status #20822   2006.07.04 09:21 GMT+1 óra  
Bocsi, hogy MSN-en nem volt nagyon időm dumálni, mindig akkor villant fel az a hulye ablak, amikor idejott valaki, most meg mar masik gepnel vagyok... Mellesleg igazad volt, azt olvastam mindenhol, hogy fake dc-t lehet gyartani, de azt, ami kellett volna neked valahogy keruli a koztudat...

A vicces, hogy akaratlanul egy korabbi problemamra kaptam igy megoldast, ha igaz (lightmap compiler), ahelyett, hogy neked segitettem volna
Dare to imagine!
http://www.insaneidea.hu
   
warlock - Törzstag | 704 hsz       Online status #20808   2006.07.04 06:57 GMT+1 óra  

max privátba ha érdekel...

   
MaNiAc - Szerkesztő | 1735 hsz       Online status #20807   2006.07.04 06:56 GMT+1 óra  
Annyit elarulsz, hogy mire kell?
Dare to imagine!
http://www.insaneidea.hu
   
warlock - Törzstag | 704 hsz       Online status #20805   2006.07.04 06:46 GMT+1 óra  
Sajnos nálam ez a megoldás nem alkalmazható

   
MaNiAc - Szerkesztő | 1735 hsz       Online status #20801   2006.07.04 05:56 GMT+1 óra  
Idézet
warlock :
hop közbe változtattál
igen

Jaja, mert első körben nem fogtam fel, hogy GUI elem alatt OS GUI elemet (ablakot) értesz

DC mindenképp kell rendereléshez. Min gondolkodsz? Valami command line tool-on? Én akkor törtem ilyesmin a fejem, mikor lightmap compilert akartam csinálni... Egy ötletem volt azért, csak nem valósítottam meg.

A lényege annyi lett volna, hogy a tool-omnak így is, úgy is van ablaka, aztán annak az egyik sarkába csinálok 1x1 pixeles viewportot, etc, olyan szinű glClearColor()-ral, mint az ablak szine. Persze ebbe a viewportba nem renderelnék, hanem OpenGL-ben egy szép nagy textúrára FBO-val, amit utána kimentenék képként. Gondolom innentől már vágod
Dare to imagine!
http://www.insaneidea.hu
   
warlock - Törzstag | 704 hsz       Online status #20798   2006.07.04 05:43 GMT+1 óra  
nah? ötlet vagy vmi?

   
warlock - Törzstag | 704 hsz       Online status #20789   2006.07.04 05:10 GMT+1 óra  
hop közbe változtattál
igen

   
warlock - Törzstag | 704 hsz       Online status #20788   2006.07.04 05:09 GMT+1 óra  
hehe messze nem tudok annyit amennyit szeretnék vagy amennyit illene
de nekem az a gondom hogy az megnyitott ablak nélkül is fog menni?

   
MaNiAc - Szerkesztő | 1735 hsz       Online status #20787   2006.07.04 05:08 GMT+1 óra  
DC nelkul akarsz renderelni?
Dare to imagine!
http://www.insaneidea.hu
   
warlock - Törzstag | 704 hsz       Online status #20783   2006.07.04 04:57 GMT+1 óra  
úgyértem nem akarom bindelni semmilyen gui elemre a rendert

   
MaNiAc - Szerkesztő | 1735 hsz       Online status #20768   2006.07.04 04:35 GMT+1 óra  
Persze. Ki kell kapcsolni a bufferekbe való írást... like this:

Kód:
glColorMask(GL_FALSE,GL_FALSE,GL_FALSE,GL_FALSE);
glDepthMask(GL_FALSE);
glStencilMask(GL_FALSE);


Bár lehet, hogy félreértettelek. A "semmilyen felület" az a textúrát, PBO-t, FBO-t is kizárja?
Dare to imagine!
http://www.insaneidea.hu
   
warlock - Törzstag | 704 hsz       Online status #20764   2006.07.04 04:23 GMT+1 óra  
sziasztok
Szerintetek van vmi megoldás arra hogy az openglel a "semmibe" rendeljek?
vagyis nem ablakba és egyáltalán semmilyen felületre.
Azt akarom elérni hogy menjenek a számítások végig a háttérben, és az alkotott képet szeretném felhasználni vhol máshol. Nem mennék bele részletekbe. A lényeg az hogy ne jelenjen meg sehol az alkotott kép.

   
beast - Törzstag | 1241 hsz       Online status #20760   2006.07.04 03:47 GMT+1 óra  
MaNiAc
csak gondoltam, hátha valakinek jól jön

pl. nekem!
a statemachine mellé kell egy ilyen is.

   
MaNiAc - Szerkesztő | 1735 hsz       Online status #20758   2006.07.04 03:39 GMT+1 óra  
Jaja, elméletben így kellene lennie Én azon törtem a fejem, hogy mennyire lassú minden push/pop előtt mode-ot váltani. Így aztán csináltam egy ilyesmi classt:

Kód:
#define MODELVIEW_SELECTED  0
#define PROJECTION_SELECTED 1

class MatrixSelector {

  private:
    unsigned char selected;

  public:

    inline void selectModelViewMatrix() {
      if (selected == MODELVIEW_SELECTED)  return;
      glMatrixMode(GL_MODELVIEW);
      selected = MODELVIEW_SELECTED;
    }

    inline void selectProjectionMatrix() {
      if (selected == PROJECTION_SELECTED)  return;
      glMatrixMode(GL_PROJECTION);
      selected = PROJECTION_SELECTED;
    }

    inline unsigned char getSelected() {
      return selected;
    }
};


A fordító elég rövidke kis kódot generál a selectXXXX hívásokból, így talán gyorsabb, mintha mindig mode-ot váltunk...

Na mindegy, tudom, hogy nem létkérdés, csak gondoltam, hátha valakinek jól jön

Ezt a hozzászólást MaNiAc módosította (2006.07.04 03:45 GMT+1 óra, ---)
Dare to imagine!
http://www.insaneidea.hu
   
beast - Törzstag | 1241 hsz       Online status #20748   2006.07.04 03:11 GMT+1 óra  
Amelyik mátrixot éppen használod, tehát ami a glMatrixMode-dal bindelve van. Tehát:
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
modellnézeti mátrixot törli

glMatrixMode(GL_PROJECTION);
glLoadIdentity();
projeckciós mátrixot törli

glMatrixMode(GL_TEXTURE);
glLoadIdentity();
textúra mátrixot törli

   
gaborlabor - Moderátor | 4449 hsz       Online status #20747   2006.07.04 03:06 GMT+1 óra  
első tanulság: én ezekben a kódokban egy alapvető dolgot nem értek!
azt tudom hogy a glLoadIdentity() az betölti az egységmátrixot, tehát visszaállítja azt a mátrixot az alap értékekre. Igenám, de melyik mátrixot?! A modellnézetit, vagy a vetítésit??? Én hiányolom előle a flMatrixMode() sort, amivel kiválasztjuk az aktuális mátrixot, amit aztán majd a következő sor visszaállít alap értékekre. Én eddig mindenhol úgy láttam, hogy az a sor megelőzi. De a nagyobb gond az, hogy copy-paste módszerrel sem müxik a dolog!
A kódnak csak ezt a részét másoltam be, mert még nem használok textúrákat:
----
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); // Clear The Screen And The Depth Buffer
glLoadIdentity(); // Reset The View

glEnable(GL_DEPTH_TEST);
//glOrtho(0, 800, 0, 600, -1, 1); //Change to Ortho view
gluOrtho2D(0, 800, 0, 600);
glMatrixMode(GL_MODELVIEW);
----
és ezt raktam be az én Reshape() függvényembe, de nem müxik sehogyse
Azért még próbálkozok...

   
gaborlabor - Moderátor | 4449 hsz       Online status #20744   2006.07.04 02:39 GMT+1 óra  
Huhh.
Tényleg jó arc vagy Egy hétig nem voltam itthon, ezért nem tudtam reagálni a válaszaidra.
Most pedig szépen átrágom magam rajta, és leszűröm magamnak a tanulságot.
Előre is köszi, valamelyik biztosan jó lesz...

   
ShAdeVampirE - Törzstag | 1313 hsz       Online status #19786   2006.06.27 12:32 GMT+1 óra  
Nah, hát én mivel nagyon nagyon jó fej vok, ezért még azt is megnéztem neked, hogy hogy tudsz rétegekben rajzolni. Szal ha az kielégítő, h csinálsz egy osztályt, v nemtom, ami kezeli a rétegeket, akkor annak igazából összesen 3 Z értéket kell tudnia kezelni: -1, 0, 1 (csak ezek használhatók). Innentől már csak azt kell éppen válogatnia, h melyik Z érték legyen. Nálam egy statikus változatát csináltam meg, az előző kódót kiegészítve:

Kód:
int DrawGLScene(GLvoid) // Here's Where We Do All The Drawing
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); // Clear The Screen And The Depth Buffer
glLoadIdentity(); // Reset The View

glEnable(GL_DEPTH_TEST);
//glOrtho(0, 800, 0, 600, -1, 1); //Change to Ortho view
gluOrtho2D(0, 800, 0, 600);
glMatrixMode(GL_MODELVIEW);

glBindTexture(GL_TEXTURE_2D, texture[1]);
glBegin(GL_QUADS);
glTexCoord2f(0.0f, 0.0f);
glVertex3i(0, 0, 1);

glTexCoord2f(1.0f, 0.0f);
glVertex3i(300, 0, 1);

glTexCoord2f(1.0f, 1.0f);
glVertex3i(300, 300, 1);

glTexCoord2f(0.0f, 1.0f);
glVertex3i(0, 300, 1);
glEnd();

glBindTexture(GL_TEXTURE_2D, texture[0]);
glBegin(GL_QUADS);
glTexCoord2f(0.0f, 0.0f);
glVertex3i(0, 0, 0);

glTexCoord2f(1.0f, 0.0f);
glVertex3i(200, 0, 0);

glTexCoord2f(1.0f, 1.0f);
glVertex3i(200, 200, 0);

glTexCoord2f(0.0f, 1.0f);
glVertex3i(0, 200, 0);
glEnd();

return TRUE; // Keep Going
}


Ami fontos: ne felejtsd el engedéjezni a Depth test-et!!! Ha i (integer)-rel adod meg az értékeket, akkor csak ez a 3 Z érték van, mivel (ahogy a benthagyott glOrthos-s változat is muatja) gluOrtho [-1, 1] -nek definiálja a vágási távolságot. Persze ha f (float)-tal definiálod a pontok távolságát (0.5f), akkor elméletben végtelen réteget tudsz létrehozni. Remélem ezzel minden gondodat megválaszoltam
   
ShAdeVampirE - Törzstag | 1313 hsz       Online status #19782   2006.06.27 12:10 GMT+1 óra  
Ja és 1 tanács, ha még így sem megy: próbáld ki úgy is, hogy glBindTexture();-ödet kiszeded, és helyette glColor3f()-fel csinálsz vmilyen színt: ha így sem látszik, nemtom mi a gond, ha viszont így igen, akkor a textúra hibája. ja és amivel én szívtam eleinte: textúra használatkor érdemes engedéjezni is: glEnable(GL_TEXTURE_2D);
   
ShAdeVampirE - Törzstag | 1313 hsz       Online status #19781   2006.06.27 12:07 GMT+1 óra  
Nah, nem mondhatod, h nem foglalkoztam a problémáddal (főleg azért tettem, mert ortho2d-t még nem nagyon használtam, és jól is jött, szal azért nem vagyok én annyira jó arc, de azért tényleg megnéztem mindent )
Amit észrevettem: nálam még a DepthTest on/off sem zavart be, az sem, ha adtam egy z értéket, szal semmi ilyen.
VIszont nálam csak és kizárólag akkor nem ment, ha általad írt glMatrixMode(GL_PROJECTION);-t használtam, GL_MODELVIEW-nál ki nem tudtam akasztani Így én erre gyanakszom. A full lecsupaszított kód:

Kód:
int DrawGLScene(GLvoid) // Here's Where We Do All The Drawing
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); // Clear The Screen And The Depth Buffer
glLoadIdentity(); // Reset The View

gluOrtho2D(0, 800, 0, 600);
glMatrixMode(GL_MODELVIEW);

                glBindTexture(GL_TEXTURE_2D, texture[0]);
glColor3f(1.0f, 1.0f, 1.0f);
glBegin(GL_QUADS);
glTexCoord2f(0.0f, 0.0f);
glVertex3i(0, 0, 0);

glTexCoord2f(1.0f, 0.0f);
glVertex3i(200, 0, 0);

glTexCoord2f(1.0f, 1.0f);
glVertex3i(200, 200, 0);

glTexCoord2f(0.0f, 1.0f);
glVertex3i(0, 200, 0);
glEnd();

return TRUE; // Keep Going
}


Magához ablakozáshoz stb. a Nehe 6-os Lessont használtam, de ha kell, áttom küldeni.
   
ShAdeVampirE - Törzstag | 1313 hsz       Online status #19726   2006.06.27 05:05 GMT+1 óra  
Hát először is: Ortho-val egy db 2D-s felületet hozol létre, de igazából nem sokat használtam még, gondolom amit később rajzolsz ki, az kerül felülre -> 2D-ben nincs mélység. Ha viszont mélységet is akarsz használni: ezért van a Z koordináta, használd csak bátran Vagy pedig csinálsz egy olyan osztályt, ami lekezeli a 3 réteget, és attól függően ad Z értéket, hogy éppen melyiket használod. Mivel most nem vok programozós gépnél, csak ennyit tok segíteni, de azért majd megpróbálom megnézni neked ezt az Orthot
   
gaborlabor - Moderátor | 4449 hsz       Online status #19573   2006.06.26 02:37 GMT+1 óra  
Hali!
Lenne egy újabb kérdésem.
Azt szeretném megoldani, hogy ugy tudjak rajzolni a képernyőre mintha rétegek lennének rajta. Kb 3 "rétegre" lenne szükségem. Olyasmihez kellene hogy mondjuk alakzatokból rajzolok egy hátteret, rá meg rajzolok ujabb alakzatokat, arra meg megint ujabbakat. És ami "feljebb" van, az fedje az alatta lévőket, és ha csak a hátteret akarom modositani akkor elég legyen azt ujrarajzoltatnom, az automatikusan a többi dolog mögé kerüljön.
Nem tűnt olyan nehéznek, gondoltam a z koordinátával meg a mélységteszttel meg tudom oldani, de nem sikerült.
Az ablakot és a látóteret igy specifikáltam 2D-sre:

void reshape(GLsizei w, GLsizei h)
{
width = w;
height = h;
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluOrtho2D(0.0, width, 0.0, height);
}

Ez után pedig
...
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glEnable(GL_DEPTH_TEST);
...
és ezek után jön a rajzolós függvény (a vertexeknél nem adok meg z koordinátát), amely semmit enm jelenit meg, csak akkor ha kiveszem a
glEnable(GL_DEPTH_TEST); sort.

Ez mi miatt lehet? Amiatt lehet, mert a gluOrtho2D()-vel specifikálom a 2D-s teret? Vagy valami mást szúrtam el?
(a vertexeknél direkt nem adtam meg z koordinátát, mert 2d-s teret állítottam be - kellett volna?)

Előre is köszi!

   
Abelman - Tag | 26 hsz       Online status #17908   2006.06.14 05:02 GMT+1 óra  
köszi! Bocs de nem volt türelmem végigolvasgatni az egész témát...

   
warlock - Törzstag | 704 hsz       Online status #17892   2006.06.14 03:32 GMT+1 óra  
hmm windows 95 idején asszem külön kellett felrakni az opengl illesztőprogramjati
lehet erre gondol a srác

   
MaNiAc - Szerkesztő | 1735 hsz       Online status #17878   2006.06.14 02:43 GMT+1 óra  
Ez a másik kedvenc kérdésem. Tehát még 1x, utoljára:

Az OpenGL-t NEM lehet letölteni. Az OpenGL egy szabvány. Vagy tudja a videokártyád/drivered vagy nem. Pont.
Dare to imagine!
http://www.insaneidea.hu
   
Frissebbek | Korábbi postok
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [15] [20] [25] [30] [35] [40] [45] [50] [55] [60] [65] [70] > 71 < [75] [80] [82]