Jednoduche API
Re: Jednoduche API
lol po 1. (8th Edition) lol po 2. 4.1 a este nie je vydana?:)
a este jedna vec napr. ak spravim program s OGL pod verziou 2.0 a 4.1/4.2 s tou istou syntaxou bude rychlejsia / lepsia grafika alebo nieco ine v novsej verzii? ci su tam iba nove funkcie?
a co hovoris na OGL red/blue book? dost znama
a este jedna vec napr. ak spravim program s OGL pod verziou 2.0 a 4.1/4.2 s tou istou syntaxou bude rychlejsia / lepsia grafika alebo nieco ine v novsej verzii? ci su tam iba nove funkcie?
a co hovoris na OGL red/blue book? dost znama
-
johny3212
Star
- Príspevky: 532
- Registrovaný: 17 feb 2008, 19:56
- Bydlisko: Terchova
- Kontaktovať používateľa:
Re: Jednoduche API
OpenGL 4.0 ma uz uplne iny pristup. Vypocty prechadzaju na GPU. U verzie 2.0 sa vela robilo na CPU. Meni sa funkcionalita, bude to rychlejsie a modernejsie
. Ci bude pekna grafika? To zalezi od toho ako ju namodelujes
. Ale, ked budu rychlejsie vypocty, zlepsi sa aj grafika, lebo grafici si mozu viac dovolit hlavne v oblasti detajlov
. Podobne to plati aj pre fyziku v hrach, vsetko sa stale zdokonaluje. Ale hlavne obmedzenie robi HW
. Dnes maju grafiky 3GB pamate a 600 jadrove procaky, tak s tym sa uz daju robit veci
.
Hlavne sa mi paci, ze stale ostava podpora aj OpenGL 2.0, takze starsie kody su plne funkcne, toto u Direct3D nikdy neuvidis
.
Hlavne sa mi paci, ze stale ostava podpora aj OpenGL 2.0, takze starsie kody su plne funkcne, toto u Direct3D nikdy neuvidis
Re: Jednoduche API
ale tak nahodou:) w3 potrebuje DX 8.1 a slape aj na 11ke:) vlastna skusenost ale taky DX 1 -2 pochybujem:)
a je nejaky rozdiel ked vytvorim okno v SFML/SDL a nie v OGL ale vsetko ostatne spravim v OGL? lebo nejak mi to neslape aj s glew....
a je nejaky rozdiel ked vytvorim okno v SFML/SDL a nie v OGL ale vsetko ostatne spravim v OGL? lebo nejak mi to neslape aj s glew....
-
johny3212
Star
- Príspevky: 532
- Registrovaný: 17 feb 2008, 19:56
- Bydlisko: Terchova
- Kontaktovať používateľa:
Re: Jednoduche API
V OpenGL neotvoris okno. O to ide, za okno, eventy, siet, zvuk, obrazky robis v SFML/SDL/GLUT a renderovanie v OpenGL. OpenGL sluzi iba na renderovanie na grafickej karte.
Re: Jednoduche API
prosim ta ak si robil niekedy okno tak isto ako je v NEHE tutosoch pls napisal by si source? namiesto toho glaux
-
johny3212
Star
- Príspevky: 532
- Registrovaný: 17 feb 2008, 19:56
- Bydlisko: Terchova
- Kontaktovať používateľa:
Re: Jednoduche API
Skus moj novy kod, teraz som to tam dal. Mam tam vytvorenie okna v SDL a v SFML kompletne rozbehane. Postupne dorabam aj pokec ku kodu. Ak budes mat problem, tak napis aky. Co sa tyka NEHE som odtial stiahol kod, skompiloval a spustil bez problemov. Je tam viac kodov na stiahnute a ja neviem, kt. si ty skusal. Nezabudni, ze musis nalinkovat potrebne kniznice, v mojom navode, com ti poslal je to popisane.
https://sourceforge.net/apps/trac/openg ... enGLWIndow
https://sourceforge.net/apps/trac/openg ... enGLWIndow
Re: Jednoduche API
Tak to zhrniem:
Citim ze zatial NEHE tutorialy su pre mna lebo su lahke(zatial), zaujimave a hlavne vysvetlia vsetko potrebne a nepocitaju ze mam za sebou vysoku skolu...
OpenGL syntax mi po chvilke prirastla k srdci krajsia ako DX aj ked vsetko je este predomnou(este sa donutit nehrat dotu a ucit sa) tiez nemam rad ked sa davaju classy vsade kde to nema ani vyznam vid priklad JAVA....Ano nepaci sa mi vobec! Mal som tu cest _
Ked si najdem chvilku precitam si tutos za chvilku netreba nad nim zatial ani moc rozmyslat...len trosku predstavivost v priestore treba a rad skusam a paci sa mi
ked si naprogramujem "bug" v mojom vnimani a vidim ze svet OpenGL je iny ako nas....
A velmi sa chcem podakovat johnymu ktory pre mna spravil kus prace presvedcil ma ze DX je sh!t (ani ja nemusim Mcsoft) dufam ze ta budem moct otravovat ked nebudem vediet
aj ostatnym co sa zapojili + NEHE -mu za dobre tutorialy aj M.Turkovi za preklad
_____________________________________________
Tak johny skusal som viac zdrojakov je ich tam asi 10+ pre C++ z toho mi idu 2:) jeden pre os IRIX ... fasa ked su okna take sebecke ze mi ide zdrojak z Irixu...
a dalej s pouzitou kniznicou GLUT ktora mi nepripada najkvalitnejsia ale na vyucbu mi uplne staci:)
tvoje navody som nekukal lebo SDL este nepotrebujem a SFML mi nejde preco ? win 7/ati grafika
Citim ze zatial NEHE tutorialy su pre mna lebo su lahke(zatial), zaujimave a hlavne vysvetlia vsetko potrebne a nepocitaju ze mam za sebou vysoku skolu...
OpenGL syntax mi po chvilke prirastla k srdci krajsia ako DX aj ked vsetko je este predomnou(este sa donutit nehrat dotu a ucit sa) tiez nemam rad ked sa davaju classy vsade kde to nema ani vyznam vid priklad JAVA....Ano nepaci sa mi vobec! Mal som tu cest _
Ked si najdem chvilku precitam si tutos za chvilku netreba nad nim zatial ani moc rozmyslat...len trosku predstavivost v priestore treba a rad skusam a paci sa mi
A velmi sa chcem podakovat johnymu ktory pre mna spravil kus prace presvedcil ma ze DX je sh!t (ani ja nemusim Mcsoft) dufam ze ta budem moct otravovat ked nebudem vediet
_____________________________________________
Tak johny skusal som viac zdrojakov je ich tam asi 10+ pre C++ z toho mi idu 2:) jeden pre os IRIX ... fasa ked su okna take sebecke ze mi ide zdrojak z Irixu...
tvoje navody som nekukal lebo SDL este nepotrebujem a SFML mi nejde preco ? win 7/ati grafika
-
reDo
Star
- Príspevky: 661
- Registrovaný: 26 apr 2009, 18:36
- Bydlisko: 00100100
- Kontaktovať používateľa:
Re: Jednoduche API
a co presne ti na SFML nejde? chyba pri kompilacii?
Re: Jednoduche API
nie nevyskoci okno iba konzolove....
-
reDo
Star
- Príspevky: 661
- Registrovaný: 26 apr 2009, 18:36
- Bydlisko: 00100100
- Kontaktovať používateľa:
Re: Jednoduche API
to je chyba v ati catalyst, ten bug bude odstraneni vo verzii 2.0, viac info tu http://www.sfml-dev.org/forum/viewtopic ... st&start=0

Re: Jednoduche API
Nie ze by som bol nevdacny ale vsade kde len som tam najdem nieco na princip:):
nie su to len keci od nejakych ludi co nevedia nic lebo to bolo napisane na openGL.org....
tak pls ak niekto pozna nejaky lahsi eng tutos/knihu post there pls. //bolo by dobre novsi
Kód: Vybrať všetko
GLAUX : this is a very old library that should not be used anymore. Most people who encounter GLAUX are people who see the NeHe tutorials which haven't been updated in years. NeHe uses auxDIBImageLoad() in order to read BMP files. GLAUX is no longer available.tak pls ak niekto pozna nejaky lahsi eng tutos/knihu post there pls. //bolo by dobre novsi
-
reDo
Star
- Príspevky: 661
- Registrovaný: 26 apr 2009, 18:36
- Bydlisko: 00100100
- Kontaktovať používateľa:
Re: Jednoduche API
na root.cz a aj na programujte.com
-
johny3212
Star
- Príspevky: 532
- Registrovaný: 17 feb 2008, 19:56
- Bydlisko: Terchova
- Kontaktovať používateľa:
Re: Jednoduche API
Som ti pisal niekolko krat, pouzi kniznice z mojich tutorialov, NEHE je zastarale, preto ich pisem
, su narocnejsie, ale zaklady najdes aj na NEHE, ja nepouzivam glaux ani glut. + openGL.org, tam najdes aj OpenGL 4.2 a vsetky nove veci + nvidia. Ide o to, ze ty tie nove veci nepochopis, bez zakladov. Teraz sa v OpenGL or Direct3D vsade pouzivaju shadre a GPU na vypocty (GLSL, HLSL, OpenCL, CUDA) a ty zatial nevies co to je, preto sa ucis najskor ratat na CPU od zakladov.
Inak je jedno, ci pouzivas starsie or novsie kniznice. Na tejto nizkej urovni ako si ty v tom rozdiel nie je, ani ci pouzivas 2.0 or 4.0. To nie je hra, ze kazdy rok vychadza nova verzia s neviem akymi vylepseniami. Toto je nizkourovnove kodenie a tu sa veci menia slimacim krokom a to plati aj pre Direct3D. Ty tu v podstate kodis graficku kartu. Toto nie je soft ako herny engine, kde zoberies funkciu a ta vsetko posklada.
Inak je jedno, ci pouzivas starsie or novsie kniznice. Na tejto nizkej urovni ako si ty v tom rozdiel nie je, ani ci pouzivas 2.0 or 4.0. To nie je hra, ze kazdy rok vychadza nova verzia s neviem akymi vylepseniami. Toto je nizkourovnove kodenie a tu sa veci menia slimacim krokom a to plati aj pre Direct3D. Ty tu v podstate kodis graficku kartu. Toto nie je soft ako herny engine, kde zoberies funkciu a ta vsetko posklada.
Re: Jednoduche API
no ok ja len nejaka kniznica na nacitavanie obrazkov lebo inac je to v pohode alebo ako nacitat obrazok
-
johny3212
Star
- Príspevky: 532
- Registrovaný: 17 feb 2008, 19:56
- Bydlisko: Terchova
- Kontaktovať používateľa:
Re: Jednoduche API
pre obrazky: SDL, SFML, FreeImage, OpenCV. Vsetko su to dobre kniznice, ja odporucam hlavne tie posledne dve pre spracovanie multimedialneho obsahu. Pre pracu s obrazkami pouzivam FreeImage a pre pracu s kamerami a video streem pouzivam OpenCV. V NEHE tutorialoch najdes kod pre SDL. Ja uz pripravujem do svojich tutorialov FreeImage a SFML a aj SDL asi.
Princip spracovania textury (pbrazku) v OpenGL je stale rovnaky, tieto kniznice pouzijes iba na nacitanie obrazovych dat z HDD + dekompresia, ak je to .jpg. Potom uz iba ciste data uploadujes do grafickej karty pom. OpenGL funkcii, karta ti vrati index textury a ty potom v kode pomocou toho indexu povies karte, kde a kedy ma zobrazit texturu na monitor.
Princip spracovania textury (pbrazku) v OpenGL je stale rovnaky, tieto kniznice pouzijes iba na nacitanie obrazovych dat z HDD + dekompresia, ak je to .jpg. Potom uz iba ciste data uploadujes do grafickej karty pom. OpenGL funkcii, karta ti vrati index textury a ty potom v kode pomocou toho indexu povies karte, kde a kedy ma zobrazit texturu na monitor.
Re: Jednoduche API
Zase ostanme pri pls ak mozes v tom FreeImage napisal by si mi ako sa nacitava obrazok do pamete namiesto tejto funkcie? AUX_RGBImageRec *LoadBMP(char *Filename)
a ostatne ostava nie?
a ostatne ostava nie?
-
johny3212
Star
- Príspevky: 532
- Registrovaný: 17 feb 2008, 19:56
- Bydlisko: Terchova
- Kontaktovať používateľa:
Re: Jednoduche API
Kód: Vybrať všetko
string path = "lala.png";
FREE_IMAGE_FORMAT imageFormat = FreeImage_GetFileType(path.c_str(), 0);
if (imageFormat == FIF_UNKNOWN)
{
std::cerr << "Unknown image file format: " << path.c_str() << std::endl;
return false;
}
FIBITMAP *imageBitmap = FreeImage_Load(imageFormat, path.c_str(), 0);
FIBITMAP *imageBitmapConverted;
imageBitmapConverted = FreeImage_ConvertTo32Bits(imageBitmap);
_size.x = FreeImage_GetWidth(imageBitmapConverted);
_size.y = FreeImage_GetHeight(imageBitmapConverted);
std::vector<Byte> _data; //Byte == unsigned char
_data.resize(_size.x * _size.y * 4);
memcpy(&_data.front(), FreeImage_GetBits(imageBitmapConverted), _size.x * _size.y * 4 * sizeof(xaver::Byte));
Kód: Vybrať všetko
glGenTextures(1, &_glId);
glBindTexture(GL_TEXTURE_2D, _glId);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, _size.x, _size.y, 0, GL_BGRA, GL_UNSIGNED_BYTE, &_data.front());
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
Re: Jednoduche API
Tak dostal som sa tu
a cannot initialize textures//inak do pamete sa uklada ten obrazok ako int ? ci byte?
Kód: Vybrať všetko
bool LoadImage()// Nacita nas obrazok
{
std::string path = "lala.raw";
FREE_IMAGE_FORMAT imageFormat = FreeImage_GetFileType(path.c_str(), 0);
if (imageFormat == FIF_UNKNOWN)
{
std::cerr << "Unknown image file format: " << path.c_str() << std::endl;
return false;
}
FIBITMAP *imageBitmap = FreeImage_Load(imageFormat, path.c_str(), 0);
FIBITMAP *imageBitmapConverted;
imageBitmapConverted = FreeImage_ConvertTo32Bits(imageBitmap);
sirka = FreeImage_GetWidth(imageBitmapConverted);
vyska = FreeImage_GetHeight(imageBitmapConverted);
_data.resize(sirka * vyska * 4);
memcpy(&_data.front(), FreeImage_GetBits(imageBitmapConverted), sirka * vyska * 4 * sizeof(byte));
return true;
}
// Setup Our Textures. Returns true On Success, false On Fail
bool setup_textures()
{
// Create The Textures' Id List
glGenTextures(TEXTURES_NUM, &g_texid[CUBE_TEX]);
// Load The Image From A Disk File
if (!LoadImage()) return false;
// Typical Texture Generation Using Data From The Image
glBindTexture(GL_TEXTURE_2D, g_texid[CUBE_TEX]);
glTexImage2D(GL_TEXTURE_2D, 0, 3, sirka, vyska, 0, GL_RGB, GL_UNSIGNED_BYTE, &_data.front());
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
return true;
}
-
pipiak
Medium Star
- Príspevky: 321
- Registrovaný: 11 jún 2006, 9:24
- Bydlisko: KE
- Kontaktovať používateľa:
Re: Jednoduche API
No musim uznat tu efektivitu
nacitanie jedneho sprosteho obrazka ti zabere pol a4:D a narast rychlosti oproti manazovanym jazykom/enginom bude nepatrny, ale hlavne ze si pohladkam ego ze som to urobil sam a v opengl:D
Re: Jednoduche API
Mne nejde o to ja hladam cestu ako dobre aspon pre zaklady nacitat obrazok mne to je jedno akym sposobom hlavne az to neni zastarane ako glaux
//edit
alebo sa na to uplne vys*riem a spravim to v SFML len musim 2.0 lebo mam ATI grafiku...
//edit
alebo sa na to uplne vys*riem a spravim to v SFML len musim 2.0 lebo mam ATI grafiku...