png laden in OpenGL



  • Hi,
    lese gerade die NeHe Tutorials und stelle mir eine Frage, wie läd man anstadt bmps pngs in den Speicher?

    AUX_RGBImageRec *LoadBMP(char *Filename)				// Loads A Bitmap Image
    {
    	FILE *File=NULL;									// File Handle
    
    	if (!Filename)										// Make Sure A Filename Was Given
    	{
    		return NULL;									// If Not Return NULL
    	}
    
    	File=fopen(Filename,"r");							// Check To See If The File Exists
    
    	if (File)											// Does The File Exist?
    	{
    		fclose(File);									// Close The Handle
    		return auxDIBImageLoad(Filename);				// Load The Bitmap And Return A Pointer
    	}
    
    	return NULL;										// If Load Failed Return NULL
    }
    

    Gibt es eigentlich eine Sammlung wo jeder OpenGL Befehl erkär wird und das man auch offline nutzen kann?

    Bedanke mich jetzt schon mal für Antworten 😃
    mfg 🙂



  • PNG:

    Dazu brauchst du die LibPNG bzw. eine andere Lib, welche dir beim Laden hilft ( wobei die eigentlich alle die LibPNG nehmen ).



  • http://www.mevis.de/~uwe/opengl/opengl.html

    suche nach blue book; auch das red book sollte online stehen.
    in der msdn stehen die ogl befehle auch drin.
    man-pages gibt es bstimmt auch.

    nach pngs und opengl such mal hier im forum. ich meine das kürzlich ein beitrag war in dem erklärt wurde wie man mit sdl pngs läd.



  • xroads42 schrieb:

    ich meine das kürzlich ein beitrag war in dem erklärt wurde wie man mit sdl pngs läd.

    sdl != opengl



  • Ahvolon[F-Bytes] schrieb:

    xroads42 schrieb:

    ich meine das kürzlich ein beitrag war in dem erklärt wurde wie man mit sdl pngs läd.

    sdl != opengl

    ach wirklich? nein, sag bloß. in diesen beitrag,den ich meine, wurde gezeigt wie man für opengl mit der sdl pngs läd.
    ansonsten hätte ich auch nicht gesagt "nach pngs und opengl such mal hier im forum".



  • xroads42 schrieb:

    in diesen beitrag,den ich meine, wurde gezeigt wie man für opengl mit der sdl pngs läd.

    Dummerweise kann die SDL nativ keine PNGs laden. Das kann dabei wieder nur über diverse Libs gemacht werden ( siehe SDL_image ), welche am Ende auch nur die LibPNG nehmen. Auch bringts ihm wenig, eine SDL Lib zu benutzen, wenn er kein SDL nimmt.



  • wenn ich png in der suche eingebe kommt da nichts. 😕
    ich hab hier mal nen link zu der page die ich gefunden hab:
    http://sourceforge.net/project/showfiles.php?group_id=5624
    was soll ich von hier laden, und wie setzt man das ein?
    wo gibt es deutsche tuts dafür??? wenns die gibt?
    mfg 🙂





  • Danke 🙂
    aber leider bringt mich das nicht weiter. Das ist für mich Chinesisch 😞
    Hat jemand vieleicht ein gutes Code-Beispiel wie man das in das nehe-tut implementieren könnte?
    cya

    Bedanke mich schon mal an dieser stelle



  • So, hab mich jetzt mal ausgibig mit der Sache beschäftigt (das erste mal das ich selbstständig versuche eine Lib einzubinden)

    Ich habe es nur geschaft das das Programm überhaupt startet mit:
    zlib 1.1.3
    und
    libpng 1.0.17
    Aber nun endet mein Latein.
    Wenn ich mich richtig informirt habe ist der Code da zum laden:

    FILE *fp = fopen("Image.png", "rb");
       if (!fp)
       {
           return (ERROR);
       }
    
       fread(header, 1, 1, fp);
       texture[0] = !png_sig_cmp(header, 0, 1);
       if (!texture[0])
       {
           return 0;
       }
    

    Aber header was soll da hin???
    Ist das überhaupt richtig??? 😕
    Hoffe das ihr mir helft ein wenig grundverständnis zu erlangen.

    Bedanke mich für die schon erbrachte Hilfe 🙄
    und die die kommt 🙂
    mfg



  • Mit GDI+ (ist bei neueren windows-versionen dabei, für ältere als redistributable erhältlich) kann man png, jpg, gif, etc. öffnen und z.B. in eine Bitmap umwandeln...


Anmelden zum Antworten